Monado OpenXR Runtime

Data associated with an Action that has been attached to a Session. More...

#include <oxr/oxr_objects.h>

Collaboration diagram for oxr_action_attachment:

Public Member Functions

static void oxr_action_attachment_teardown (struct oxr_action_attachment *act_attached)
 Tear down an action attachment struct. More...
 
static XrResult oxr_action_attachment_init (struct oxr_logger *log, struct oxr_action_set_attachment *act_set_attached, struct oxr_action_attachment *act_attached, struct oxr_action *act)
 Set up an action attachment struct. More...
 
static XrResult oxr_action_attachment_bind (struct oxr_logger *log, struct oxr_action_attachment *act_attached, const struct oxr_profiles_per_subaction *profiles)
 

Data Fields

struct oxr_action_set_attachmentact_set_attached
 The owning action set attachment. More...
 
struct oxr_action_refact_ref
 This action's refcounted data. More...
 
struct oxr_sessionsess
 The corresponding session. More...
 
uint32_t act_key
 Unique key for the session hashmap. More...
 
struct oxr_subaction_paths any_pose_subaction_path
 For pose actions any subaction paths are special treated, at bind time we pick one subaction path and stick to it as long as the action lives. More...
 
struct oxr_action_state any_state
 
struct oxr_action_cache left
 
struct oxr_action_cache right
 
struct oxr_action_cache head
 
struct oxr_action_cache gamepad
 
struct oxr_action_cache eyes
 
struct oxr_action_cache user
 

Detailed Description

Data associated with an Action that has been attached to a Session.

More information on the action vs action attachment and action set vs action set attachment parallel is in the docs for OpenXR input

See also
oxr_action

Member Function Documentation

◆ oxr_action_attachment_bind()

static XrResult oxr_action_attachment_bind ( struct oxr_logger log,
struct oxr_action_attachment act_attached,
const struct oxr_profiles_per_subaction profiles 
)

The any sub path is special cased for poses, it binds to one sub path and sticks with it.

Referenced by oxr_action_sync_data().

◆ oxr_action_attachment_init()

static XrResult oxr_action_attachment_init ( struct oxr_logger log,
struct oxr_action_set_attachment act_set_attached,
struct oxr_action_attachment act_attached,
struct oxr_action act 
)

Set up an action attachment struct.

References act_set_attached, oxr_action_set_attachment::sess, and sess.

◆ oxr_action_attachment_teardown()

static void oxr_action_attachment_teardown ( struct oxr_action_attachment act_attached)

Tear down an action attachment struct.

Does not deallocate the struct itself.

References sess.

Referenced by oxr_action_set_attachment::oxr_action_set_attachment_teardown().

Field Documentation

◆ act_key

uint32_t oxr_action_attachment::act_key

Unique key for the session hashmap.

◆ act_ref

struct oxr_action_ref* oxr_action_attachment::act_ref

This action's refcounted data.

◆ act_set_attached

struct oxr_action_set_attachment* oxr_action_attachment::act_set_attached

The owning action set attachment.

Referenced by oxr_action_attachment_init(), and oxr_action_sync_data().

◆ any_pose_subaction_path

struct oxr_subaction_paths oxr_action_attachment::any_pose_subaction_path

For pose actions any subaction paths are special treated, at bind time we pick one subaction path and stick to it as long as the action lives.

◆ sess

struct oxr_session* oxr_action_attachment::sess

The corresponding session.

This will always be valid: the session outlives this object because it owns act_set_attached.

Referenced by oxr_action_attachment_init(), oxr_action_attachment_teardown(), and oxr_session::oxr_session_attach_action_sets().


The documentation for this struct was generated from the following files: