Skip to content

Struct ILLIXR::data_format::pose::hand_interaction_pose

ClassList > ILLIXR > data_format > pose > hand_interaction_pose

Pose, gesture-strength value, and readiness flag for a single hand interaction action space. More...

  • #include <hand_interaction_pose.hpp>

Inherits the following classes: xrt_space_relation

Public Attributes

Type Name
int64_t predicted_time
bool ready
Whether the runtime considers the gesture activatable; see struct documentation.
float value
Gesture-strength scalar in [0, 1]; see struct documentation for per-type semantics.

Public Functions

Type Name
hand_interaction_pose ()
Default constructor. Pose is invalid; value is 0; ready is false.
hand_interaction_pose (xrt_pose & in_pose, float val=0.f, bool rdy=false, int64_t p_time=0)
Construct from explicit components.
bool valid () const

Detailed Description

Extends pose_base with the two scalar bindings that accompany each interaction pose in XR_EXT_hand_interaction. The meaning of value and ready depends on which interaction_pose_type this struct represents:

Type value semantics ready semantics
AIM /input/aim_activate_ext/value /input/aim_activate_ext/ready_ext
GRIP /input/grasp_ext/value /input/grasp_ext/ready_ext
PINCH /input/pinch_ext/value /input/pinch_ext/ready_ext
POKE unused — always 0 unused — always false

value is in [0, 1], where 0 means the gesture is not performed and 1 means it is fully activated.

ready indicates that the runtime considers the hand to be in a position where the gesture could be meaningfully performed (e.g. the index finger is extended and the hand is visible). An interaction should only be triggered when ready is true and value crosses the application's chosen threshold.

Public Attributes Documentation

variable predicted_time

int64_t ILLIXR::data_format::pose::hand_interaction_pose::predicted_time;

variable ready

Whether the runtime considers the gesture activatable; see struct documentation.

bool ILLIXR::data_format::pose::hand_interaction_pose::ready;


variable value

Gesture-strength scalar in [0, 1]; see struct documentation for per-type semantics.

float ILLIXR::data_format::pose::hand_interaction_pose::value;


Public Functions Documentation

function hand_interaction_pose [1/2]

Default constructor. Pose is invalid; value is 0; ready is false.

inline ILLIXR::data_format::pose::hand_interaction_pose::hand_interaction_pose () 


function hand_interaction_pose [2/2]

Construct from explicit components.

inline explicit ILLIXR::data_format::pose::hand_interaction_pose::hand_interaction_pose (
    xrt_pose & in_pose,
    float val=0.f,
    bool rdy=false,
    int64_t p_time=0
) 

Parameters:

  • in_pose The pose of the gesture
  • value_ Gesture-strength scalar in [0, 1], defaults to 0
  • ready_ Whether the gesture is activatable, defaults to false
  • p_time The time the gesture was detected

function valid

inline bool ILLIXR::data_format::pose::hand_interaction_pose::valid () const


The documentation for this class was generated from the following file /home/friedel/devel/ILLIXR/illixr_release/ILLIXR/include/illixr/data_format/poses/hand_interaction_pose.hpp