Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVRChaperoneSetup.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 latest IVRChaperoneSetup interface version.
6 *
7 * @author Beyley Cardellio <ep1cm1n10n123@gmail.com>
8 * @ingroup openvr_interfaces
9 */
10
11#pragma once
12
13#include "openvr_interfaces_unified.h"
14#include "openvr_forward_macros.h"
15
16#include "XRTVRClientCore.hpp"
17
18
19namespace xrt::state_trackers::openvr {
20
21using namespace vr;
22
23class XRTVRChaperoneSetup_006 : public vr::IVRChaperoneSetup_006
24{
25private:
27
28public:
30
31 virtual ~XRTVRChaperoneSetup_006() = default;
32
33 FnTable_IVRChaperoneSetup_006();
34
35 bool
36 CommitWorkingCopy(vr::EChaperoneConfigFile configFile) override;
37
38 void
39 RevertWorkingCopy() override;
40
41 bool
42 GetWorkingPlayAreaSize(float *pSizeX, float *pSizeZ) override;
43
44 bool
45 GetWorkingPlayAreaRect(vr::HmdQuad_t *rect) override;
46
47 bool
48 GetWorkingCollisionBoundsInfo(VR_OUT_ARRAY_COUNT(punQuadsCount) vr::HmdQuad_t *pQuadsBuffer,
49 uint32_t *punQuadsCount) override;
50
51 bool
52 GetLiveCollisionBoundsInfo(VR_OUT_ARRAY_COUNT(punQuadsCount) vr::HmdQuad_t *pQuadsBuffer,
53 uint32_t *punQuadsCount) override;
54
55 bool
56 GetWorkingSeatedZeroPoseToRawTrackingPose(vr::HmdMatrix34_t *pmatSeatedZeroPoseToRawTrackingPose) override;
57
58 bool
59 GetWorkingStandingZeroPoseToRawTrackingPose(vr::HmdMatrix34_t *pmatStandingZeroPoseToRawTrackingPose) override;
60
61 void
62 SetWorkingPlayAreaSize(float sizeX, float sizeZ) override;
63
64 void
65 SetWorkingCollisionBoundsInfo(VR_ARRAY_COUNT(unQuadsCount) vr::HmdQuad_t *pQuadsBuffer,
66 uint32_t unQuadsCount) override;
67
68 void
69 SetWorkingPerimeter(VR_ARRAY_COUNT(unPointCount) const vr::HmdVector2_t *pPointBuffer,
70 uint32_t unPointCount) override;
71
72 void
73 SetWorkingSeatedZeroPoseToRawTrackingPose(
74 const vr::HmdMatrix34_t *pMatSeatedZeroPoseToRawTrackingPose) override;
75
76 void
77 SetWorkingStandingZeroPoseToRawTrackingPose(
78 const vr::HmdMatrix34_t *pMatStandingZeroPoseToRawTrackingPose) override;
79
80 void
81 ReloadFromDisk(vr::EChaperoneConfigFile configFile) override;
82
83 bool
84 GetLiveSeatedZeroPoseToRawTrackingPose(vr::HmdMatrix34_t *pmatSeatedZeroPoseToRawTrackingPose) override;
85
86 bool
87 ExportLiveToBuffer(VR_OUT_STRING() char *pBuffer, uint32_t *pnBufferLength) override;
88 bool
89 ImportFromBufferToWorking(const char *pBuffer, uint32_t nImportFlags) override;
90
91 void
92 ShowWorkingSetPreview() override;
93
94 void
95 HideWorkingSetPreview() override;
96
97 void
98 RoomSetupStarting() override;
99};
100
101} // namespace xrt::state_trackers::openvr
Implementation of the latest IVRClientCore interface version.
Definition XRTVRChaperoneSetup.hpp:24
Definition XRTVRClientCore.hpp:47
Definitions missing from C++ header, present in C.
Definition blockqueue.hpp:15