| Monado OpenXR Runtime
    | 
Common defines and enums for XRT. More...
#include "xrt/xrt_compiler.h"

Go to the source code of this file.
| Data Structures | |
| struct | xrt_reference | 
| A base class for reference counted objects.  More... | |
| struct | xrt_quat | 
| A quaternion with single floats.  More... | |
| struct | xrt_vec1 | 
| A 1 element vector with single floats.  More... | |
| struct | xrt_vec2 | 
| A 2 element vector with single floats.  More... | |
| struct | xrt_vec3 | 
| A 3 element vector with single floats.  More... | |
| struct | xrt_vec3_i32 | 
| A 3 element vector with 32 bit integers.  More... | |
| struct | xrt_vec2_i32 | 
| A 2 element vector with 32 bit integers.  More... | |
| struct | xrt_colour_rgb_u8 | 
| A 3 element colour with 8 bits per channel.  More... | |
| struct | xrt_colour_rgba_u8 | 
| A 4 element colour with 8 bits per channel.  More... | |
| struct | xrt_colour_rgb_f32 | 
| A 3 element colour with floating point channels.  More... | |
| struct | xrt_colour_rgba_f32 | 
| A 4 element colour with floating point channels.  More... | |
| struct | xrt_size | 
| Image size.  More... | |
| struct | xrt_pose | 
| A pose composed of a position and orientation.  More... | |
| struct | xrt_fov | 
| Describes a projection matrix fov.  More... | |
| struct | xrt_matrix_2x2 | 
| A tightly packed 2x2 matrix of floats.  More... | |
| struct | xrt_matrix_3x3 | 
| A tightly packed 3x3 matrix of floats.  More... | |
| struct | xrt_matrix_4x4 | 
| A tightly packed 4x4 matrix of floats.  More... | |
| struct | xrt_api_requirements | 
| A range of API versions supported.  More... | |
| struct | xrt_space_relation | 
| A relation with two spaces, includes velocity and acceleration.  More... | |
| union | xrt_input_value | 
| A union of all input types.  More... | |
| union | xrt_output_value | 
| A union of all output types.  More... | |
| Macros | |
| #define | XRT_INPUT_NAME(id, type) ((id << 8) | XRT_INPUT_TYPE_##type) | 
| Create an enum value for xrt_input_name that packs an ID and input type.  More... | |
| #define | XRT_GET_INPUT_TYPE(name) (name & 0xff) | 
| Extract the xrt_input_type from an xrt_input_name.  More... | |
| #define | XRT_OUTPUT_NAME(id, type) ((id << 8) | XRT_OUTPUT_TYPE_##type) | 
| Enumerations | |
| enum | xrt_blend_mode { XRT_BLEND_MODE_OPAQUE = 1 << 0, XRT_BLEND_MODE_ADDITIVE = 1 << 1, XRT_BLEND_MODE_ALPHA_BLEND = 1 << 2 } | 
| Which blend mode does the device support, used as both a bitfield and value.  More... | |
| enum | xrt_distortion_model { XRT_DISTORTION_MODEL_NONE = 1 << 0, XRT_DISTORTION_MODEL_PANOTOOLS = 1 << 1, XRT_DISTORTION_MODEL_VIVE = 1 << 2, XRT_DISTORTION_MODEL_MESHUV = 1 << 3 } | 
| Which distortion model does the device expose, used both as a bitfield and value.  More... | |
| enum | xrt_format { XRT_FORMAT_R8G8B8X8, XRT_FORMAT_R8G8B8A8, XRT_FORMAT_R8G8B8, XRT_FORMAT_R8G8, XRT_FORMAT_R8, XRT_FORMAT_L8, XRT_FORMAT_BITMAP_8X1, XRT_FORMAT_BITMAP_8X8, XRT_FORMAT_YUV888, XRT_FORMAT_YUV422, XRT_FORMAT_MJPEG } | 
| Common formats, use u_format_*functions to reason about them.  More... | |
| enum | xrt_stereo_format { XRT_STEREO_FORMAT_NONE, XRT_STEREO_FORMAT_SBS, XRT_STEREO_FORMAT_INTERLEAVED, XRT_STEREO_FORMAT_OAU } | 
| What type of stereo format a frame has.  More... | |
| enum | xrt_space_relation_flags { XRT_SPACE_RELATION_ORIENTATION_VALID_BIT = 0x00000001, XRT_SPACE_RELATION_POSITION_VALID_BIT = 0x00000002, XRT_SPACE_RELATION_LINEAR_VELOCITY_VALID_BIT = 0x00000004, XRT_SPACE_RELATION_ANGULAR_VELOCITY_VALID_BIT = 0x00000008, XRT_SPACE_RELATION_LINEAR_ACCELERATION_VALID_BIT = 0x00000010, XRT_SPACE_RELATION_ANGULAR_ACCELERATION_VALID_BIT = 0x00000020, XRT_SPACE_RELATION_ORIENTATION_TRACKED_BIT = 0x00000040, XRT_SPACE_RELATION_POSITION_TRACKED_BIT = 0x00000080, XRT_SPACE_RELATION_BITMASK_ALL, XRT_SPACE_RELATION_BITMASK_NONE = 0 } | 
| Flags of which components of a xrt_space_relation is valid.  More... | |
| enum | xrt_device_name { XRT_DEVICE_GENERIC_HMD = 1, XRT_DEVICE_PSMV = 2, XRT_DEVICE_HYDRA = 3, XRT_DEVICE_DAYDREAM = 4 } | 
| A enum that is used to name devices so that the state trackers can reason about the devices easier.  More... | |
| enum | xrt_input_type { XRT_INPUT_TYPE_VEC1_ZERO_TO_ONE = 0x00, XRT_INPUT_TYPE_VEC1_MINUS_ONE_TO_ONE = 0x01, XRT_INPUT_TYPE_VEC2_MINUS_ONE_TO_ONE = 0x02, XRT_INPUT_TYPE_VEC3_MINUS_ONE_TO_ONE = 0x03, XRT_INPUT_TYPE_BOOLEAN = 0x04, XRT_INPUT_TYPE_POSE = 0x05 } | 
| Base type of this inputs.  More... | |
| enum | xrt_input_name { XRT_INPUT_GENERIC_HEAD_POSE = XRT_INPUT_NAME(0x0000, POSE), XRT_INPUT_GENERIC_HEAD_DETECT = XRT_INPUT_NAME(0x0001, BOOLEAN), XRT_INPUT_PSMV_PS_CLICK = XRT_INPUT_NAME(0x0020, BOOLEAN), XRT_INPUT_PSMV_MOVE_CLICK = XRT_INPUT_NAME(0x0021, BOOLEAN), XRT_INPUT_PSMV_START_CLICK = XRT_INPUT_NAME(0x0022, BOOLEAN), XRT_INPUT_PSMV_SELECT_CLICK = XRT_INPUT_NAME(0x0023, BOOLEAN), XRT_INPUT_PSMV_SQUARE_CLICK = XRT_INPUT_NAME(0x0024, BOOLEAN), XRT_INPUT_PSMV_CROSS_CLICK = XRT_INPUT_NAME(0x0025, BOOLEAN), XRT_INPUT_PSMV_CIRCLE_CLICK = XRT_INPUT_NAME(0x0026, BOOLEAN), XRT_INPUT_PSMV_TRIANGLE_CLICK = XRT_INPUT_NAME(0x0027, BOOLEAN), XRT_INPUT_PSMV_TRIGGER_VALUE = XRT_INPUT_NAME(0x0028, VEC1_ZERO_TO_ONE), XRT_INPUT_PSMV_BODY_CENTER_POSE = XRT_INPUT_NAME(0x0029, POSE), XRT_INPUT_PSMV_BALL_CENTER_POSE = XRT_INPUT_NAME(0x002A, POSE), XRT_INPUT_PSMV_BALL_TIP_POSE = XRT_INPUT_NAME(0x002B, POSE), XRT_INPUT_HYDRA_1_CLICK = XRT_INPUT_NAME(0x0030, BOOLEAN), XRT_INPUT_HYDRA_2_CLICK = XRT_INPUT_NAME(0x0031, BOOLEAN), XRT_INPUT_HYDRA_3_CLICK = XRT_INPUT_NAME(0x0032, BOOLEAN), XRT_INPUT_HYDRA_4_CLICK = XRT_INPUT_NAME(0x0033, BOOLEAN), XRT_INPUT_HYDRA_MIDDLE_CLICK = XRT_INPUT_NAME(0x0034, BOOLEAN), XRT_INPUT_HYDRA_BUMPER_CLICK = XRT_INPUT_NAME(0x0035, BOOLEAN), XRT_INPUT_HYDRA_JOYSTICK_CLICK = XRT_INPUT_NAME(0x0036, BOOLEAN), XRT_INPUT_HYDRA_JOYSTICK_VALUE = XRT_INPUT_NAME(0x0037, VEC2_MINUS_ONE_TO_ONE), XRT_INPUT_HYDRA_TRIGGER_VALUE = XRT_INPUT_NAME(0x0038, VEC1_ZERO_TO_ONE), XRT_INPUT_HYDRA_POSE = XRT_INPUT_NAME(0x0039, POSE), XRT_INPUT_DAYDREAM_TOUCHPAD_CLICK = XRT_INPUT_NAME(0x0040, BOOLEAN), XRT_INPUT_DAYDREAM_BAR_CLICK = XRT_INPUT_NAME(0x0041, BOOLEAN), XRT_INPUT_DAYDREAM_CIRCLE_CLICK = XRT_INPUT_NAME(0x0042, BOOLEAN), XRT_INPUT_DAYDREAM_VOLUP_CLICK = XRT_INPUT_NAME(0x0043, BOOLEAN), XRT_INPUT_DAYDREAM_VOLDN_CLICK = XRT_INPUT_NAME(0x0044, BOOLEAN), XRT_INPUT_DAYDREAM_TOUCHPAD_VALUE_X = XRT_INPUT_NAME(0x0045, VEC1_ZERO_TO_ONE), XRT_INPUT_DAYDREAM_TOUCHPAD_VALUE_Y = XRT_INPUT_NAME(0x0046, VEC1_ZERO_TO_ONE), XRT_INPUT_DAYDREAM_POSE = XRT_INPUT_NAME(0x0047, POSE) } | 
| Name of a input with a baked in type.  More... | |
| enum | xrt_output_type { XRT_OUTPUT_TYPE_VIBRATION = 0x00 } | 
| Base type of this output.  More... | |
| enum | xrt_output_name { XRT_OUTPUT_NAME_PSMV_RUMBLE_VIBRATION = XRT_OUTPUT_NAME(0x0020, VIBRATION) } | 
| Name of a output with a baked in type.  More... | |
Common defines and enums for XRT.
| enum xrt_device_name | 
A enum that is used to name devices so that the state trackers can reason about the devices easier.
| enum xrt_distortion_model | 
Which distortion model does the device expose, used both as a bitfield and value.
| enum xrt_format | 
Common formats, use u_format_* functions to reason about them. 
 1.8.13
 1.8.13