Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVRCompositor_021.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 IVRCompositor interface version 021.
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
20
21namespace xrt::state_trackers::openvr {
22
23using namespace vr;
24
25class XRTVRCompositor_021 : public XRTVRCompositor_029, public vr::IVRCompositor_021
26{
27public:
28 // @todo Remove when clang-format is updated in CI
29 // clang-format off
31 // clang-format on
32
33 FnTable_IVRCompositor_021();
34
35 ForwardDeclareBase_IVRCompositor(XRTVRCompositor_029);
36
37 Forward_IVRCompositor_SetTrackingSpace_029();
38 Forward_IVRCompositor_GetTrackingSpace_029();
39 Forward_IVRCompositor_WaitGetPoses_029();
40 Forward_IVRCompositor_GetLastPoses_029();
41 Forward_IVRCompositor_GetLastPoseForTrackedDeviceIndex();
42 Forward_IVRCompositor_Submit_029();
43 Forward_IVRCompositor_ClearLastSubmittedFrame();
44 Forward_IVRCompositor_PostPresentHandoff();
45 Forward_IVRCompositor_GetFrameTiming();
46
47 uint32_t
48 GetFrameTimings(Compositor_FrameTiming *pTiming, uint32_t nFrames) override
49 {
50 openvr_logger logger;
51 OPENVR_LOGGER_INIT(logger);
52
53 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "GetFrameTimings(pTiming=%p, nFrames=%llu) -> 0", 0,
54 static_cast<const void *>(pTiming),
55 static_cast<unsigned long long>(nFrames));
56 }
57
58 Forward_IVRCompositor_GetFrameTimeRemaining();
59 Forward_IVRCompositor_GetCumulativeStats();
60 Forward_IVRCompositor_FadeToColor();
61 Forward_IVRCompositor_GetCurrentFadeColor();
62 Forward_IVRCompositor_FadeGrid_026();
63 Forward_IVRCompositor_GetCurrentGridAlpha();
64 Forward_IVRCompositor_SetSkyboxOverride_029();
65 Forward_IVRCompositor_ClearSkyboxOverride();
66 Forward_IVRCompositor_CompositorBringToFront();
67 Forward_IVRCompositor_CompositorGoToBack();
68 Forward_IVRCompositor_CompositorQuit();
69 Forward_IVRCompositor_IsFullscreen();
70 Forward_IVRCompositor_GetCurrentSceneFocusProcess();
71 Forward_IVRCompositor_GetLastFrameRenderer();
72 Forward_IVRCompositor_CanRenderScene();
73 Forward_IVRCompositor_ShowMirrorWindow();
74 Forward_IVRCompositor_HideMirrorWindow();
75 Forward_IVRCompositor_IsMirrorWindowVisible();
76 Forward_IVRCompositor_CompositorDumpImages();
77 Forward_IVRCompositor_ShouldAppRenderWithLowResources();
78 Forward_IVRCompositor_ForceInterleavedReprojectionOn();
79 Forward_IVRCompositor_ForceReconnectProcess();
80 Forward_IVRCompositor_SuspendRendering();
81 Forward_IVRCompositor_GetMirrorTextureD3D11();
82 Forward_IVRCompositor_ReleaseMirrorTextureD3D11();
83 Forward_IVRCompositor_GetMirrorTextureGL();
84 Forward_IVRCompositor_ReleaseSharedGLTexture();
85 Forward_IVRCompositor_LockGLSharedTextureForAccess();
86 Forward_IVRCompositor_UnlockGLSharedTextureForAccess();
87 Forward_IVRCompositor_GetVulkanInstanceExtensionsRequired();
88 Forward_IVRCompositor_GetVulkanDeviceExtensionsRequired();
89
90 void
91 SetExplicitTimingMode(bool bExplicitTimingMode) override
92 {
93 openvr_logger logger;
94 OPENVR_LOGGER_INIT(logger);
95
96 OPENVR_LOG_UNIMPLEMENTED(logger, "SetExplicitTimingMode(bExplicitTimingMode=%d)",
97 static_cast<int>(bExplicitTimingMode));
98 }
99
100 Forward_IVRCompositor_SubmitExplicitTimingData();
101};
102
103}; // namespace xrt::state_trackers::openvr
Implementation of the latest IVRCompositor interface version.
Definition XRTVRClientCore.hpp:152
Definition XRTVRCompositor_021.hpp:26
Definition XRTVRCompositor.hpp:26
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