Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVRApplications_001.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 IVRApplications interface version 001.
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
20
21
22namespace xrt::state_trackers::openvr {
23
24using namespace vr;
25
26class XRTVRApplications_001 : public XRTVRApplications_005, public vr::IVRApplications_001
27{
28public:
29 // @todo Remove when clang-format is updated in CI
30 // clang-format off
32 // clang-format on
33
34 void *
35 getFnTable()
36 {
37 // No FnTable available for IVRApplications_001.
38 return nullptr;
39 }
40
41 ForwardDeclareBase_IVRApplications(XRTVRApplications_005);
42
43 Forward_IVRApplications_AddApplicationManifest();
44 Forward_IVRApplications_RemoveApplicationManifest();
45 Forward_IVRApplications_IsApplicationInstalled();
46 Forward_IVRApplications_GetApplicationCount();
47 Forward_IVRApplications_GetApplicationKeyByIndex_005();
48 Forward_IVRApplications_GetApplicationKeyByProcessId_005();
49 Forward_IVRApplications_LaunchApplication();
50 Forward_IVRApplications_LaunchDashboardOverlay();
51 Forward_IVRApplications_IdentifyApplication();
52 Forward_IVRApplications_GetApplicationProcessId();
53 Forward_IVRApplications_GetApplicationsErrorNameFromEnum();
54 Forward_IVRApplications_GetApplicationPropertyString_005();
55 Forward_IVRApplications_GetApplicationPropertyBool();
56
57 EVRApplicationError
58 GetHomeApplication(char *pchAppKeyBuffer, uint32_t unAppKeyBufferLen) override
59 {
60 openvr_logger logger;
61 OPENVR_LOGGER_INIT(logger);
62
64 logger, "GetHomeApplication(pchAppKeyBuffer=%p, unAppKeyBufferLen=%llu) -> VRApplicationError_None",
65 EVRApplicationError::VRApplicationError_None, static_cast<const void *>(pchAppKeyBuffer),
66 static_cast<unsigned long long>(unAppKeyBufferLen));
67 }
68
69 EVRApplicationError
70 SetHomeApplication(const char *pchAppKey) override
71 {
72 openvr_logger logger;
73 OPENVR_LOGGER_INIT(logger);
74
75 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "SetHomeApplication(pchAppKey=%s) -> VRApplicationError_None",
76 EVRApplicationError::VRApplicationError_None, pchAppKey);
77 }
78
79 Forward_IVRApplications_SetApplicationAutoLaunch();
80 Forward_IVRApplications_GetApplicationAutoLaunch();
81 Forward_IVRApplications_GetStartingApplication_005();
82 Forward_IVRApplications_GetTransitionState();
83 Forward_IVRApplications_PerformApplicationPrelaunchCheck();
84 Forward_IVRApplications_GetApplicationsTransitionStateNameFromEnum();
85};
86
87}; // namespace xrt::state_trackers::openvr
Implementation of the latest IVRApplications_008 interface version.
Implementation of the IVRApplications interface version 005.
Definition XRTVRApplications_001.hpp:27
Definition XRTVRApplications_005.hpp:28
Definition XRTVRClientCore.hpp:152
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