23#include "openvr_interfaces_unified.h"
30namespace xrt::state_trackers::openvr {
38 vr::TrackedDeviceClass tracked_class{vr::TrackedDeviceClass_Invalid};
51 operator=(
Device &&) =
delete;
55 xrt_space_reference(&this->pose_space,
nullptr);
65 std::shared_ptr<Events> events{};
67 std::array<Device, vr::k_unMaxTrackedDeviceCount> device_array{};
73 std::array<xrt_space *, vr::ETrackingUniverseOrigin::TrackingUniverseRawAndUncalibrated + 1>
space_mappings{};
84 std::shared_ptr<Events> &events);
92 std::optional<Device *>
93 GetDevice(vr::TrackedDeviceIndex_t index);
98 vr::ETrackingUniverseOrigin universe,
99 vr::TrackedDevicePose_t *poses,
100 uint32_t pose_count);
104 vr::TrackedDeviceIndex_t device_index,
105 vr::ETrackedDeviceProperty prop,
106 std::string &out_str,
107 vr::ETrackedPropertyError *pError);
int64_t timepoint_ns
Integer timestamp type.
Definition u_time.h:77
Implementation of OpenVR event handling and related functionality.
Definition openvr_devices.hpp:35
Definition openvr_devices.hpp:60
std::optional< Device * > GetDevice(vr::TrackedDeviceIndex_t index)
Retrieves a device by its tracked device index.
Definition openvr_devices.cpp:119
std::array< xrt_space *, vr::ETrackingUniverseOrigin::TrackingUniverseRawAndUncalibrated+1 > space_mappings
Mapping of OpenVR tracking universe origins to xrt_spaces, populated during session creation.
Definition openvr_devices.hpp:73
Definition openvr_logger.hpp:30
A single HMD or input device.
Definition xrt_device.h:311
Object that oversees and manages spaces, one created for each XR system.
Definition xrt_space.h:97
A space very similar to a OpenXR XrSpace but not a full one-to-one mapping, but used to power XrSpace...
Definition xrt_space.h:32
A collection of xrt_device, and an interface for identifying the roles they have been assigned.
Definition xrt_system.h:215
Time-keeping: a clock that is steady, convertible to system time, and ideally high-resolution.
Header defining an xrt display or controller device.
Header defining xrt space and space overseer.
Header for system objects.