Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVRSystem_017.hpp
Go to the documentation of this file.
1// Copyright 2026, Beyley Cardellio
2// SPDX-License-Identifier: BSL-1.0
3/*!
4 * @file
5 * @brief Implementation of the IVRSystem interface version 017.
6 *
7 * @author Beyley Cardellio <ep1cm1n10n123@gmail.com>
8 * @ingroup openvr_interfaces
9 */
10
11#pragma once
12
14
15#include "openvr_interfaces_unified.h"
16#include "openvr_forward_macros.h"
17
19#include "XRTVRSystem_019.hpp"
20
21
22namespace xrt::state_trackers::openvr {
23
24using namespace vr;
25
26class XRTVRSystem_017 : public XRTVRSystem_019, public vr::IVRSystem_017
27{
28public:
29 // @todo Remove when clang-format is updated in CI
30 // clang-format off
32 // clang-format on
33
34 FnTable_IVRSystem_017();
35
36 ForwardDeclareBase_IVRSystem(XRTVRSystem_019);
37
38 Forward_IVRSystem_GetRecommendedRenderTargetSize();
39 Forward_IVRSystem_GetProjectionMatrix_026();
40 Forward_IVRSystem_GetProjectionRaw_026();
41 Forward_IVRSystem_ComputeDistortion_026();
42 Forward_IVRSystem_GetEyeToHeadTransform_026();
43 Forward_IVRSystem_GetTimeSinceLastVsync();
44 Forward_IVRSystem_GetD3D9AdapterIndex();
45 Forward_IVRSystem_GetDXGIOutputInfo_026();
46 Forward_IVRSystem_GetOutputDevice_026();
47 Forward_IVRSystem_IsDisplayOnDesktop();
48 Forward_IVRSystem_SetDisplayVisibility();
49 Forward_IVRSystem_GetDeviceToAbsoluteTrackingPose_026();
50 Forward_IVRSystem_ResetSeatedZeroPose();
51 Forward_IVRSystem_GetSeatedZeroPoseToStandingAbsoluteTrackingPose();
52 Forward_IVRSystem_GetRawZeroPoseToStandingAbsoluteTrackingPose();
53 Forward_IVRSystem_GetSortedTrackedDeviceIndicesOfClass_026();
54 Forward_IVRSystem_GetTrackedDeviceActivityLevel();
55 Forward_IVRSystem_ApplyTransform_026();
56 Forward_IVRSystem_GetTrackedDeviceIndexForControllerRole();
57 Forward_IVRSystem_GetControllerRoleForTrackedDeviceIndex();
58 Forward_IVRSystem_GetTrackedDeviceClass_026();
59 Forward_IVRSystem_IsTrackedDeviceConnected();
60 Forward_IVRSystem_GetBoolTrackedDeviceProperty_026();
61 Forward_IVRSystem_GetFloatTrackedDeviceProperty_026();
62 Forward_IVRSystem_GetInt32TrackedDeviceProperty_026();
63 Forward_IVRSystem_GetUint64TrackedDeviceProperty_026();
64 Forward_IVRSystem_GetMatrix34TrackedDeviceProperty_026();
65 Forward_IVRSystem_GetStringTrackedDeviceProperty_026();
66 Forward_IVRSystem_GetPropErrorNameFromEnum_026();
67 Forward_IVRSystem_PollNextEvent_026();
68 Forward_IVRSystem_PollNextEventWithPose_026();
69 Forward_IVRSystem_GetEventTypeNameFromEnum();
70 Forward_IVRSystem_GetHiddenAreaMesh_026();
71 Forward_IVRSystem_GetControllerState_026();
72 Forward_IVRSystem_GetControllerStateWithPose_026();
73 Forward_IVRSystem_TriggerHapticPulse();
74 Forward_IVRSystem_GetButtonIdNameFromEnum();
75 Forward_IVRSystem_GetControllerAxisTypeNameFromEnum();
76
77 bool
78 CaptureInputFocus() override
79 {
80 openvr_logger logger;
81 OPENVR_LOGGER_INIT(logger);
82
83 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "CaptureInputFocus() -> true", true);
84 }
85
86 void
87 ReleaseInputFocus() override
88 {
89 openvr_logger logger;
90 OPENVR_LOGGER_INIT(logger);
91
92 OPENVR_LOG_UNIMPLEMENTED(logger, "ReleaseInputFocus()");
93 }
94
95 bool
96 IsInputFocusCapturedByAnotherProcess() override
97 {
98 openvr_logger logger;
99 OPENVR_LOGGER_INIT(logger);
100
101 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "IsInputFocusCapturedByAnotherProcess() -> false", false);
102 }
103
104 uint32_t
105 DriverDebugRequest(vr::TrackedDeviceIndex_t unDeviceIndex,
106 const char *pchRequest,
107 char *pchResponseBuffer,
108 uint32_t unResponseBufferSize) override
109 {
110 openvr_logger logger;
111 OPENVR_LOGGER_INIT(logger);
112
114 "DriverDebugRequest(unDeviceIndex=%llu, pchRequest=%s, "
115 "pchResponseBuffer=%p, unResponseBufferSize=%llu) -> 0",
116 0, static_cast<unsigned long long>(unDeviceIndex), pchRequest,
117 static_cast<const void *>(pchResponseBuffer),
118 static_cast<unsigned long long>(unResponseBufferSize));
119 }
120
121 Forward_IVRSystem_PerformFirmwareUpdate_026();
122 Forward_IVRSystem_AcknowledgeQuit_Exiting();
123 Forward_IVRSystem_AcknowledgeQuit_UserPrompt();
124};
125
126}; // namespace xrt::state_trackers::openvr
Implementation of the latest IVRSystem interface version.
Implementation of the IVRSystem interface version 019.
Definition XRTVRClientCore.hpp:152
Definition XRTVRSystem_017.hpp:27
Definition XRTVRSystem_019.hpp:27
Definitions missing from C++ header, present in C.
Definition blockqueue.hpp:15
Logging functions.
#define OPENVR_LOG_UNIMPLEMENTED(logger, fmt,...)
Specialized macro for logging an unimplemented function.
Definition openvr_logger.hpp:51
#define OPENVR_LOG_UNIMPLEMENTED_RET(logger, fmt, ret,...)
Specialized macro for logging an unimplemented function and returning a value.
Definition openvr_logger.hpp:57
Definition openvr_logger.hpp:30