14#include "oxr_extension_support.h"
16#include "oxr_generated_bindings.h"
33 const struct oxr_dpad_emulation_template *
templ;
108 const struct oxr_binding_point_template *
templ;
126 enum oxr_binding_point_kind
kind;
144static inline const char *
148 case OXR_BINDING_POINT_KIND_INPUT:
return "INPUT";
149 case OXR_BINDING_POINT_KIND_OUTPUT:
return "OUTPUT";
150 case OXR_BINDING_POINT_KIND_UPGRADE:
return "UPGRADE";
151 case OXR_BINDING_POINT_KIND_DPAD:
return "DPAD";
152 default:
return "UNKNOWN";
xrt_input_name
Every internal input source known to monado with a baked in type.
Definition xrt_defines.h:952
xrt_output_name
Name of a output with a baked in type.
Definition xrt_defines.h:1636
static const char * oxr_binding_point_kind_to_string(enum oxr_binding_point_kind kind)
Short name for a binding point kind, for debug printing.
Definition oxr_binding_point.h:145
Shared internal defines and enums in the state tracker.
Forward declarations for OpenXR state tracker structs.
Store of registry-wide OpenXR subaction path payloads.
Payload for a binding point that represents a DPAD emulation region.
Definition oxr_binding_point.h:81
struct oxr_dpad_emulation * emulation
DPAD emulation that backs this region.
Definition oxr_binding_point.h:83
enum oxr_dpad_binding_point binding_point
Region represented by this binding point.
Definition oxr_binding_point.h:85
Payload for a binding point that directly targets an XRT output.
Definition oxr_binding_point.h:60
enum xrt_output_name name
XRT output name.
Definition oxr_binding_point.h:62
Payload for a binding point that resolves to another concrete binding point.
Definition oxr_binding_point.h:69
Runtime description of one bindable path on an interaction profile.
Definition oxr_binding_point.h:103
XrPath source_path
Unique source path returned to applications for this binding point.
Definition oxr_binding_point.h:117
struct oxr_binding_profile * profile
Owning interaction profile.
Definition oxr_binding_point.h:105
enum oxr_binding_point_kind kind
Controls which fields are valid.
Definition oxr_binding_point.h:126
enum oxr_binding_value_transform value_transform
Transform needed to interpret this binding point's raw input value.
Definition oxr_binding_point.h:129
XrPath priority_group
Runtime XrPath for the priority group used for action priority suppression.
Definition oxr_binding_point.h:123
const struct oxr_binding_point_template * templ
Immutable generated source template.
Definition oxr_binding_point.h:108
const struct oxr_binding_subaction * subaction
Subaction path this binding point belongs to.
Definition oxr_binding_point.h:111
XrPath path
Runtime XrPath identity for this binding point.
Definition oxr_binding_point.h:114
const char * localized_name
User-facing localized name for this binding point.
Definition oxr_binding_point.h:120
Runtime interaction profile binding data cloned from generated templates.
Definition oxr_binding_profile.h:26
Runtime payload for one OpenXR subaction path.
Definition oxr_subaction_store.h:33
Runtime metadata for one DPAD emulation source, for example /user/hand/left/input/thumbstick.
Definition oxr_binding_point.h:29
XrPath subaction_path
Runtime XrPath for the top-level subaction path.
Definition oxr_binding_point.h:37
struct oxr_binding_profile * profile
Owning interaction profile.
Definition oxr_binding_point.h:31
const struct oxr_dpad_emulation_template * templ
Immutable generated source template.
Definition oxr_binding_point.h:33
enum xrt_input_name activate
Optional XRT input used to activate DPAD emulation.
Definition oxr_binding_point.h:44
XrPath path
Runtime XrPath for the DPAD source path.
Definition oxr_binding_point.h:35
enum xrt_input_name input
XRT position input that DPAD regions are derived from, this must be of type XRT_INPUT_TYPE_VEC2_MINUS...
Definition oxr_binding_point.h:42
Common defines and enums for XRT.