Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVROverlay_018.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 IVROverlay interface version 018.
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 "XRTVROverlay_019.hpp"
20
21
22namespace xrt::state_trackers::openvr {
23
24using namespace vr;
25
26class XRTVROverlay_018 : public XRTVROverlay_019, public vr::IVROverlay_018
27{
28public:
29 // @todo Remove when clang-format is updated in CI
30 // clang-format off
32 // clang-format on
33
34 FnTable_IVROverlay_018();
35
36 ForwardDeclareBase_IVROverlay(XRTVROverlay_019);
37
38 Forward_IVROverlay_FindOverlay_028();
39 Forward_IVROverlay_CreateOverlay_028();
40 Forward_IVROverlay_DestroyOverlay_028();
41 Forward_IVROverlay_SetHighQualityOverlay_019();
42 Forward_IVROverlay_GetHighQualityOverlay();
43 Forward_IVROverlay_GetOverlayKey_028();
44 Forward_IVROverlay_GetOverlayName_028();
45 Forward_IVROverlay_SetOverlayName();
46 Forward_IVROverlay_GetOverlayImageData_028();
47 Forward_IVROverlay_GetOverlayErrorNameFromEnum_028();
48 Forward_IVROverlay_SetOverlayRenderingPid();
49 Forward_IVROverlay_GetOverlayRenderingPid();
50 Forward_IVROverlay_SetOverlayFlag_028();
51 Forward_IVROverlay_GetOverlayFlag_028();
52 Forward_IVROverlay_SetOverlayColor_028();
53 Forward_IVROverlay_GetOverlayColor_028();
54 Forward_IVROverlay_SetOverlayAlpha_028();
55 Forward_IVROverlay_GetOverlayAlpha_028();
56 Forward_IVROverlay_SetOverlayTexelAspect();
57 Forward_IVROverlay_GetOverlayTexelAspect();
58 Forward_IVROverlay_SetOverlaySortOrder();
59 Forward_IVROverlay_GetOverlaySortOrder();
60 Forward_IVROverlay_SetOverlayWidthInMeters_028();
61 Forward_IVROverlay_GetOverlayWidthInMeters_028();
62 Forward_IVROverlay_SetOverlayAutoCurveDistanceRangeInMeters_020();
63 Forward_IVROverlay_GetOverlayAutoCurveDistanceRangeInMeters_020();
64 Forward_IVROverlay_SetOverlayTextureColorSpace();
65 Forward_IVROverlay_GetOverlayTextureColorSpace();
66 Forward_IVROverlay_SetOverlayTextureBounds_028();
67 Forward_IVROverlay_GetOverlayTextureBounds_028();
68 Forward_IVROverlay_GetOverlayRenderModel_022();
69 Forward_IVROverlay_SetOverlayRenderModel();
70 Forward_IVROverlay_GetOverlayTransformType_028();
71 Forward_IVROverlay_SetOverlayTransformAbsolute_028();
72 Forward_IVROverlay_GetOverlayTransformAbsolute_028();
73 Forward_IVROverlay_SetOverlayTransformTrackedDeviceRelative_028();
74 Forward_IVROverlay_GetOverlayTransformTrackedDeviceRelative_028();
75 Forward_IVROverlay_SetOverlayTransformTrackedDeviceComponent();
76 Forward_IVROverlay_GetOverlayTransformTrackedDeviceComponent_028();
77 Forward_IVROverlay_GetOverlayTransformOverlayRelative();
78 Forward_IVROverlay_SetOverlayTransformOverlayRelative();
79 Forward_IVROverlay_ShowOverlay_028();
80 Forward_IVROverlay_HideOverlay_028();
81 Forward_IVROverlay_IsOverlayVisible();
82 Forward_IVROverlay_GetTransformForOverlayCoordinates();
83 Forward_IVROverlay_PollNextOverlayEvent_028();
84 Forward_IVROverlay_GetOverlayInputMethod_028();
85 Forward_IVROverlay_SetOverlayInputMethod_028();
86 Forward_IVROverlay_GetOverlayMouseScale_028();
87 Forward_IVROverlay_SetOverlayMouseScale_028();
88 Forward_IVROverlay_ComputeOverlayIntersection();
89 Forward_IVROverlay_IsHoverTargetOverlay();
90 Forward_IVROverlay_GetGamepadFocusOverlay();
91 Forward_IVROverlay_SetGamepadFocusOverlay_020();
92 Forward_IVROverlay_SetOverlayNeighbor_020();
93 Forward_IVROverlay_MoveGamepadFocusToNeighbor_020();
94
95 EVROverlayError
96 SetOverlayDualAnalogTransform(VROverlayHandle_t ulOverlay,
97 EDualAnalogWhich eWhich,
98 const HmdVector2_t &vCenter,
99 float fRadius) override
100 {
101 openvr_logger logger;
102 OPENVR_LOGGER_INIT(logger);
103
105 "SetOverlayDualAnalogTransform(ulOverlay=%llu, eWhich=?, vCenter=?, "
106 "fRadius=%f) -> VROverlayError_None",
107 EVROverlayError::VROverlayError_None,
108 static_cast<unsigned long long>(ulOverlay), fRadius);
109 }
110
111 Forward_IVROverlay_GetOverlayDualAnalogTransform();
112 Forward_IVROverlay_SetOverlayTexture_028();
113 Forward_IVROverlay_ClearOverlayTexture_028();
114 Forward_IVROverlay_SetOverlayRaw_021();
115 Forward_IVROverlay_SetOverlayFromFile_028();
116 Forward_IVROverlay_GetOverlayTexture_028();
117 Forward_IVROverlay_ReleaseNativeOverlayHandle();
118 Forward_IVROverlay_GetOverlayTextureSize();
119 Forward_IVROverlay_CreateDashboardOverlay_028();
120 Forward_IVROverlay_IsDashboardVisible();
121 Forward_IVROverlay_IsActiveDashboardOverlay();
122 Forward_IVROverlay_SetDashboardOverlaySceneProcess_028();
123 Forward_IVROverlay_GetDashboardOverlaySceneProcess_028();
124 Forward_IVROverlay_ShowDashboard();
125 Forward_IVROverlay_GetPrimaryDashboardDevice();
126 Forward_IVROverlay_ShowKeyboard_022();
127 Forward_IVROverlay_ShowKeyboardForOverlay_022();
128 Forward_IVROverlay_GetKeyboardText();
129 Forward_IVROverlay_HideKeyboard();
130 Forward_IVROverlay_SetKeyboardTransformAbsolute();
131 Forward_IVROverlay_SetKeyboardPositionForOverlay();
132 Forward_IVROverlay_SetOverlayIntersectionMask();
133 Forward_IVROverlay_GetOverlayFlags();
134 Forward_IVROverlay_ShowMessageOverlay();
135 Forward_IVROverlay_CloseMessageOverlay();
136};
137
138}; // namespace xrt::state_trackers::openvr
Implementation of the latest IVROverlay_028 interface version.
Implementation of the IVROverlay interface version 019.
Definition XRTVRClientCore.hpp:152
Definition XRTVROverlay_018.hpp:27
Definition XRTVROverlay_019.hpp:27
Definitions missing from C++ header, present in C.
Definition blockqueue.hpp:15
Logging functions.
#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