|
Monado OpenXR Runtime
|
A big struct that contains all data that is shared to a client, no pointers allowed in this. More...
#include </builds/monado/monado/src/xrt/ipc/shared/ipc_protocol.h>

Data Fields | |
| char | u_git_tag [64] |
| The git revision of the service, used by clients to detect version mismatches. More... | |
| uint32_t | itrack_count |
| Number of elements in itracks that are populated/valid. More... | |
| struct ipc_shared_tracking_origin | itracks [XRT_SYSTEM_MAX_DEVICES] |
| Array of shared tracking origin data. More... | |
| uint32_t | isdev_count |
| Number of elements in isdevs that are populated/valid. More... | |
| struct ipc_shared_device | isdevs [XRT_SYSTEM_MAX_DEVICES] |
| Array of shared data per device. More... | |
| struct { | |
| int32_t head | |
| int32_t eyes | |
| int32_t face | |
| int32_t body | |
| struct { | |
| struct { | |
| int32_t left | |
| int32_t right | |
| } unobstructed | |
| struct { | |
| int32_t left | |
| int32_t right | |
| } conforming | |
| } hand_tracking | |
| } | roles |
| Various roles for the devices. More... | |
| struct { | |
| struct { | |
| struct { | |
| uint32_t w_pixels | |
| uint32_t h_pixels | |
| } display | |
| Pixel properties of this display, not in absolute screen coordinates that the compositor sees. More... | |
| } views [2] | |
| uint32_t view_count | |
| enum xrt_blend_mode blend_modes [XRT_MAX_DEVICE_BLEND_MODES] | |
| uint32_t blend_mode_count | |
| } | hmd |
| struct xrt_input | inputs [1024] |
| struct xrt_output | outputs [128] |
| struct ipc_shared_binding_profile | binding_profiles [64] |
| struct xrt_binding_input_pair | input_pairs [1024] |
| struct xrt_binding_output_pair | output_pairs [128] |
| struct ipc_layer_slot | slots [128] |
| uint64_t | startup_timestamp |
| struct xrt_plane_detector_begin_info_ext | plane_begin_info_ext |
A big struct that contains all data that is shared to a client, no pointers allowed in this.
To get the inputs of a device you go:
| struct { ... } ipc_shared_memory::display |
Pixel properties of this display, not in absolute screen coordinates that the compositor sees.
So before any rotation is applied by xrt_view::rot.
The xrt_view::display::w_pixels & xrt_view::display::h_pixels become the recommended image size for this view.
| uint32_t ipc_shared_memory::isdev_count |
Number of elements in isdevs that are populated/valid.
| struct ipc_shared_device ipc_shared_memory::isdevs[XRT_SYSTEM_MAX_DEVICES] |
Array of shared data per device.
Only isdev_count elements are populated/valid.
Referenced by ipc_client_xdev::ipc_client_xdev_init().
| uint32_t ipc_shared_memory::itrack_count |
Number of elements in itracks that are populated/valid.
| struct ipc_shared_tracking_origin ipc_shared_memory::itracks[XRT_SYSTEM_MAX_DEVICES] |
Array of shared tracking origin data.
Only itrack_count elements are populated/valid.
| struct { ... } ipc_shared_memory::roles |
Various roles for the devices.
| char ipc_shared_memory::u_git_tag[64] |
The git revision of the service, used by clients to detect version mismatches.