Monado OpenXR Runtime
Loading...
Searching...
No Matches
XRTVRApplications_006.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 006.
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 XRTVRApplications_006 : public XRTVRApplications_008, public vr::IVRApplications_006
26{
27public:
28 // @todo Remove when clang-format is updated in CI
29 // clang-format off
31 // clang-format on
32
33 FnTable_IVRApplications_006();
34
35 ForwardDeclareBase_IVRApplications(XRTVRApplications_008);
36
37 Forward_IVRApplications_AddApplicationManifest();
38 Forward_IVRApplications_RemoveApplicationManifest();
39 Forward_IVRApplications_IsApplicationInstalled();
40 Forward_IVRApplications_GetApplicationCount();
41 Forward_IVRApplications_GetApplicationKeyByIndex_008();
42 Forward_IVRApplications_GetApplicationKeyByProcessId_008();
43 Forward_IVRApplications_LaunchApplication();
44 Forward_IVRApplications_LaunchTemplateApplication();
45 Forward_IVRApplications_LaunchApplicationFromMimeType();
46 Forward_IVRApplications_LaunchDashboardOverlay();
47 Forward_IVRApplications_CancelApplicationLaunch();
48 Forward_IVRApplications_IdentifyApplication();
49 Forward_IVRApplications_GetApplicationProcessId();
50 Forward_IVRApplications_GetApplicationsErrorNameFromEnum();
51 Forward_IVRApplications_GetApplicationPropertyString_008();
52 Forward_IVRApplications_GetApplicationPropertyBool();
53 Forward_IVRApplications_GetApplicationPropertyUint64();
54 Forward_IVRApplications_SetApplicationAutoLaunch();
55 Forward_IVRApplications_GetApplicationAutoLaunch();
56 Forward_IVRApplications_SetDefaultApplicationForMimeType();
57 Forward_IVRApplications_GetDefaultApplicationForMimeType();
58 Forward_IVRApplications_GetApplicationSupportedMimeTypes();
59 Forward_IVRApplications_GetApplicationsThatSupportMimeType();
60 Forward_IVRApplications_GetApplicationLaunchArguments();
61 Forward_IVRApplications_GetStartingApplication_008();
62
63 EVRApplicationTransitionState
64 GetTransitionState() override
65 {
66 openvr_logger logger;
67 OPENVR_LOGGER_INIT(logger);
68
69 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "GetTransitionState() -> VRApplicationTransition_None",
70 EVRApplicationTransitionState::VRApplicationTransition_None);
71 }
72
73 Forward_IVRApplications_PerformApplicationPrelaunchCheck();
74
75 const char *
76 GetApplicationsTransitionStateNameFromEnum(EVRApplicationTransitionState state) override
77 {
78 openvr_logger logger;
79 OPENVR_LOGGER_INIT(logger);
80
81 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "GetApplicationsTransitionStateNameFromEnum(state=%d)",
82 "TODO: GetApplicationsTransitionStateNameFromEnum", state);
83 }
84
85 bool
86 IsQuitUserPromptRequested() override
87 {
88 openvr_logger logger;
89 OPENVR_LOGGER_INIT(logger);
90
91 OPENVR_LOG_UNIMPLEMENTED_RET(logger, "IsQuitUserPromptRequested() -> false", false);
92 }
93
94 Forward_IVRApplications_LaunchInternalProcess();
95 Forward_IVRApplications_GetCurrentSceneProcessId();
96};
97
98}; // namespace xrt::state_trackers::openvr
Implementation of the latest IVRApplications_008 interface version.
Definition XRTVRApplications_006.hpp:26
Definition XRTVRApplications.hpp:24
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