Atlas - openvr_capi.h
Home / ext / SDL / src / video / openvr Lines: 1 | Size: 167520 bytes [Download] [Show on GitHub] [Search similar files] [Raw] [Raw (proxy)][FILE BEGIN]1/* 2 Copyright (c) 2015, Valve Corporation 3 All rights reserved. 4 5 Redistribution and use in source and binary forms, with or without modification, 6 are permitted provided that the following conditions are met: 7 8 1. Redistributions of source code must retain the above copyright notice, this 9 list of conditions and the following disclaimer. 10 11 2. Redistributions in binary form must reproduce the above copyright notice, 12 this list of conditions and the following disclaimer in the documentation and/or 13 other materials provided with the distribution. 14 15 3. Neither the name of the copyright holder nor the names of its contributors 16 may be used to endorse or promote products derived from this software without 17 specific prior written permission. 18 19 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 20 ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 21 WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 22 DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 23 ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 24 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 25 LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 26 ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 27 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 28 SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 29*/ 30//============================================================================= 31// 32// Purpose: Header for flatted SteamAPI. Use this for binding to other languages. 33// This file is auto-generated, do not edit it. 34// 35//============================================================================= 36 37#ifndef __OPENVR_API_FLAT_H__ 38#define __OPENVR_API_FLAT_H__ 39#if defined( _WIN32 ) || defined( __clang__ ) 40#pragma once 41#endif 42 43#ifdef __cplusplus 44#define EXTERN_C extern "C" 45#else 46#define EXTERN_C 47#endif 48 49#if defined( _WIN32 ) 50#define OPENVR_FNTABLE_CALLTYPE __stdcall 51#else 52#define OPENVR_FNTABLE_CALLTYPE 53#endif 54 55// OPENVR API export macro 56#if defined( _WIN32 ) && !defined( _X360 ) 57 #if defined( OPENVR_API_EXPORTS ) 58 #define S_API EXTERN_C __declspec( dllexport ) 59 #elif defined( OPENVR_API_NODLL ) 60 #define S_API EXTERN_C 61 #else 62 #define S_API extern "C" __declspec( dllimport ) 63 #endif // OPENVR_API_EXPORTS 64#elif defined( __GNUC__ ) 65 #if defined( OPENVR_API_EXPORTS ) 66 #define S_API EXTERN_C __attribute__ ((visibility("default"))) 67 #else 68 #define S_API EXTERN_C 69 #endif // OPENVR_API_EXPORTS 70#else // !WIN32 71 #if defined( OPENVR_API_EXPORTS ) 72 #define S_API EXTERN_C 73 #else 74 #define S_API EXTERN_C 75 #endif // OPENVR_API_EXPORTS 76#endif 77 78#ifndef USE_SDL 79#include <stdint.h> 80 81#if defined( __WIN32 ) 82typedef char bool; 83#else 84#include <stdbool.h> 85#endif 86#endif // USE_SDL 87 88// OpenVR Constants 89 90static const unsigned long k_nDriverNone = 4294967295; 91static const unsigned long k_unMaxDriverDebugResponseSize = 32768; 92static const unsigned long k_unTrackedDeviceIndex_Hmd = 0; 93static const unsigned long k_unMaxTrackedDeviceCount = 64; 94static const unsigned long k_unTrackedDeviceIndexOther = 4294967294; 95static const unsigned long k_unTrackedDeviceIndexInvalid = 4294967295; 96static const unsigned long long k_ulInvalidPropertyContainer = 0; 97static const unsigned long k_unInvalidPropertyTag = 0; 98static const unsigned long long k_ulInvalidDriverHandle = 0; 99static const unsigned long k_unFloatPropertyTag = 1; 100static const unsigned long k_unInt32PropertyTag = 2; 101static const unsigned long k_unUint64PropertyTag = 3; 102static const unsigned long k_unBoolPropertyTag = 4; 103static const unsigned long k_unStringPropertyTag = 5; 104static const unsigned long k_unErrorPropertyTag = 6; 105static const unsigned long k_unDoublePropertyTag = 7; 106static const unsigned long k_unHmdMatrix34PropertyTag = 20; 107static const unsigned long k_unHmdMatrix44PropertyTag = 21; 108static const unsigned long k_unHmdVector3PropertyTag = 22; 109static const unsigned long k_unHmdVector4PropertyTag = 23; 110static const unsigned long k_unHmdVector2PropertyTag = 24; 111static const unsigned long k_unHmdQuadPropertyTag = 25; 112static const unsigned long k_unHiddenAreaPropertyTag = 30; 113static const unsigned long k_unPathHandleInfoTag = 31; 114static const unsigned long k_unActionPropertyTag = 32; 115static const unsigned long k_unInputValuePropertyTag = 33; 116static const unsigned long k_unWildcardPropertyTag = 34; 117static const unsigned long k_unHapticVibrationPropertyTag = 35; 118static const unsigned long k_unSkeletonPropertyTag = 36; 119static const unsigned long k_unSpatialAnchorPosePropertyTag = 40; 120static const unsigned long k_unJsonPropertyTag = 41; 121static const unsigned long k_unActiveActionSetPropertyTag = 42; 122static const unsigned long k_unOpenVRInternalReserved_Start = 1000; 123static const unsigned long k_unOpenVRInternalReserved_End = 10000; 124static const unsigned long k_unMaxPropertyStringSize = 32768; 125static const unsigned long long k_ulInvalidActionHandle = 0; 126static const unsigned long long k_ulInvalidActionSetHandle = 0; 127static const unsigned long long k_ulInvalidInputValueHandle = 0; 128static const unsigned long k_unControllerStateAxisCount = 5; 129static const unsigned long long k_ulOverlayHandleInvalid = 0; 130static const unsigned long k_unMaxDistortionFunctionParameters = 8; 131static const unsigned long k_unScreenshotHandleInvalid = 0; 132static const char * IVRSystem_Version = "IVRSystem_022"; 133static const char * IVRExtendedDisplay_Version = "IVRExtendedDisplay_001"; 134static const char * IVRTrackedCamera_Version = "IVRTrackedCamera_006"; 135static const unsigned long k_unMaxApplicationKeyLength = 128; 136static const char * k_pch_MimeType_HomeApp = "vr/home"; 137static const char * k_pch_MimeType_GameTheater = "vr/game_theater"; 138static const char * IVRApplications_Version = "IVRApplications_007"; 139static const char * IVRChaperone_Version = "IVRChaperone_004"; 140static const char * IVRChaperoneSetup_Version = "IVRChaperoneSetup_006"; 141static const char * IVRCompositor_Version = "IVRCompositor_027"; 142static const unsigned long k_unVROverlayMaxKeyLength = 128; 143static const unsigned long k_unVROverlayMaxNameLength = 128; 144static const unsigned long k_unMaxOverlayCount = 128; 145static const unsigned long k_unMaxOverlayIntersectionMaskPrimitivesCount = 32; 146static const char * IVROverlay_Version = "IVROverlay_026"; 147static const char * IVROverlayView_Version = "IVROverlayView_003"; 148static const unsigned long k_unHeadsetViewMaxWidth = 3840; 149static const unsigned long k_unHeadsetViewMaxHeight = 2160; 150static const char * k_pchHeadsetViewOverlayKey = "system.HeadsetView"; 151static const char * IVRHeadsetView_Version = "IVRHeadsetView_001"; 152static const char * k_pch_Controller_Component_GDC2015 = "gdc2015"; 153static const char * k_pch_Controller_Component_Base = "base"; 154static const char * k_pch_Controller_Component_Tip = "tip"; 155static const char * k_pch_Controller_Component_OpenXR_Aim = "openxr_aim"; 156static const char * k_pch_Controller_Component_HandGrip = "handgrip"; 157static const char * k_pch_Controller_Component_OpenXR_Grip = "openxr_grip"; 158static const char * k_pch_Controller_Component_OpenXR_HandModel = "openxr_handmodel"; 159static const char * k_pch_Controller_Component_Status = "status"; 160static const char * IVRRenderModels_Version = "IVRRenderModels_006"; 161static const unsigned long k_unNotificationTextMaxSize = 256; 162static const char * IVRNotifications_Version = "IVRNotifications_002"; 163static const unsigned long k_unMaxSettingsKeyLength = 128; 164static const char * IVRSettings_Version = "IVRSettings_003"; 165static const char * k_pch_SteamVR_Section = "steamvr"; 166static const char * k_pch_SteamVR_RequireHmd_String = "requireHmd"; 167static const char * k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver"; 168static const char * k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd"; 169static const char * k_pch_SteamVR_DisplayDebug_Bool = "displayDebug"; 170static const char * k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe"; 171static const char * k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX"; 172static const char * k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY"; 173static const char * k_pch_SteamVR_SendSystemButtonToAllApps_Bool = "sendSystemButtonToAllApps"; 174static const char * k_pch_SteamVR_LogLevel_Int32 = "loglevel"; 175static const char * k_pch_SteamVR_IPD_Float = "ipd"; 176static const char * k_pch_SteamVR_Background_String = "background"; 177static const char * k_pch_SteamVR_BackgroundUseDomeProjection_Bool = "backgroundUseDomeProjection"; 178static const char * k_pch_SteamVR_BackgroundCameraHeight_Float = "backgroundCameraHeight"; 179static const char * k_pch_SteamVR_BackgroundDomeRadius_Float = "backgroundDomeRadius"; 180static const char * k_pch_SteamVR_GridColor_String = "gridColor"; 181static const char * k_pch_SteamVR_PlayAreaColor_String = "playAreaColor"; 182static const char * k_pch_SteamVR_TrackingLossColor_String = "trackingLossColor"; 183static const char * k_pch_SteamVR_ShowStage_Bool = "showStage"; 184static const char * k_pch_SteamVR_DrawTrackingReferences_Bool = "drawTrackingReferences"; 185static const char * k_pch_SteamVR_ActivateMultipleDrivers_Bool = "activateMultipleDrivers"; 186static const char * k_pch_SteamVR_UsingSpeakers_Bool = "usingSpeakers"; 187static const char * k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees"; 188static const char * k_pch_SteamVR_BaseStationPowerManagement_Int32 = "basestationPowerManagement"; 189static const char * k_pch_SteamVR_ShowBaseStationPowerManagementTip_Int32 = "ShowBaseStationPowerManagementTip"; 190static const char * k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses"; 191static const char * k_pch_SteamVR_SupersampleScale_Float = "supersampleScale"; 192static const char * k_pch_SteamVR_MaxRecommendedResolution_Int32 = "maxRecommendedResolution"; 193static const char * k_pch_SteamVR_MotionSmoothing_Bool = "motionSmoothing"; 194static const char * k_pch_SteamVR_MotionSmoothingOverride_Int32 = "motionSmoothingOverride"; 195static const char * k_pch_SteamVR_FramesToThrottle_Int32 = "framesToThrottle"; 196static const char * k_pch_SteamVR_AdditionalFramesToPredict_Int32 = "additionalFramesToPredict"; 197static const char * k_pch_SteamVR_WorldScale_Float = "worldScale"; 198static const char * k_pch_SteamVR_FovScale_Int32 = "fovScale"; 199static const char * k_pch_SteamVR_DisableAsyncReprojection_Bool = "disableAsync"; 200static const char * k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking"; 201static const char * k_pch_SteamVR_DefaultMirrorView_Int32 = "mirrorView"; 202static const char * k_pch_SteamVR_ShowLegacyMirrorView_Bool = "showLegacyMirrorView"; 203static const char * k_pch_SteamVR_MirrorViewVisibility_Bool = "showMirrorView"; 204static const char * k_pch_SteamVR_MirrorViewDisplayMode_Int32 = "mirrorViewDisplayMode"; 205static const char * k_pch_SteamVR_MirrorViewEye_Int32 = "mirrorViewEye"; 206static const char * k_pch_SteamVR_MirrorViewGeometry_String = "mirrorViewGeometry"; 207static const char * k_pch_SteamVR_MirrorViewGeometryMaximized_String = "mirrorViewGeometryMaximized"; 208static const char * k_pch_SteamVR_PerfGraphVisibility_Bool = "showPerfGraph"; 209static const char * k_pch_SteamVR_StartMonitorFromAppLaunch = "startMonitorFromAppLaunch"; 210static const char * k_pch_SteamVR_StartCompositorFromAppLaunch_Bool = "startCompositorFromAppLaunch"; 211static const char * k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch"; 212static const char * k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard"; 213static const char * k_pch_SteamVR_EnableHomeApp = "enableHomeApp"; 214static const char * k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec"; 215static const char * k_pch_SteamVR_RetailDemo_Bool = "retailDemo"; 216static const char * k_pch_SteamVR_IpdOffset_Float = "ipdOffset"; 217static const char * k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering"; 218static const char * k_pch_SteamVR_SupersampleManualOverride_Bool = "supersampleManualOverride"; 219static const char * k_pch_SteamVR_EnableLinuxVulkanAsync_Bool = "enableLinuxVulkanAsync"; 220static const char * k_pch_SteamVR_AllowDisplayLockedMode_Bool = "allowDisplayLockedMode"; 221static const char * k_pch_SteamVR_HaveStartedTutorialForNativeChaperoneDriver_Bool = "haveStartedTutorialForNativeChaperoneDriver"; 222static const char * k_pch_SteamVR_ForceWindows32bitVRMonitor = "forceWindows32BitVRMonitor"; 223static const char * k_pch_SteamVR_DebugInputBinding = "debugInputBinding"; 224static const char * k_pch_SteamVR_DoNotFadeToGrid = "doNotFadeToGrid"; 225static const char * k_pch_SteamVR_RenderCameraMode = "renderCameraMode"; 226static const char * k_pch_SteamVR_EnableSharedResourceJournaling = "enableSharedResourceJournaling"; 227static const char * k_pch_SteamVR_EnableSafeMode = "enableSafeMode"; 228static const char * k_pch_SteamVR_PreferredRefreshRate = "preferredRefreshRate"; 229static const char * k_pch_SteamVR_LastVersionNotice = "lastVersionNotice"; 230static const char * k_pch_SteamVR_LastVersionNoticeDate = "lastVersionNoticeDate"; 231static const char * k_pch_SteamVR_HmdDisplayColorGainR_Float = "hmdDisplayColorGainR"; 232static const char * k_pch_SteamVR_HmdDisplayColorGainG_Float = "hmdDisplayColorGainG"; 233static const char * k_pch_SteamVR_HmdDisplayColorGainB_Float = "hmdDisplayColorGainB"; 234static const char * k_pch_SteamVR_CustomIconStyle_String = "customIconStyle"; 235static const char * k_pch_SteamVR_CustomOffIconStyle_String = "customOffIconStyle"; 236static const char * k_pch_SteamVR_CustomIconForceUpdate_String = "customIconForceUpdate"; 237static const char * k_pch_SteamVR_AllowGlobalActionSetPriority = "globalActionSetPriority"; 238static const char * k_pch_SteamVR_OverlayRenderQuality = "overlayRenderQuality_2"; 239static const char * k_pch_SteamVR_BlockOculusSDKOnOpenVRLaunchOption_Bool = "blockOculusSDKOnOpenVRLaunchOption"; 240static const char * k_pch_SteamVR_BlockOculusSDKOnAllLaunches_Bool = "blockOculusSDKOnAllLaunches"; 241static const char * k_pch_SteamVR_HDCPLegacyCompatibility_Bool = "hdcp14legacyCompatibility"; 242static const char * k_pch_SteamVR_DisplayPortTrainingMode_Int = "displayPortTrainingMode"; 243static const char * k_pch_SteamVR_UsePrism_Bool = "usePrism"; 244static const char * k_pch_DirectMode_Section = "direct_mode"; 245static const char * k_pch_DirectMode_Enable_Bool = "enable"; 246static const char * k_pch_DirectMode_Count_Int32 = "count"; 247static const char * k_pch_DirectMode_EdidVid_Int32 = "edidVid"; 248static const char * k_pch_DirectMode_EdidPid_Int32 = "edidPid"; 249static const char * k_pch_Lighthouse_Section = "driver_lighthouse"; 250static const char * k_pch_Lighthouse_DisableIMU_Bool = "disableimu"; 251static const char * k_pch_Lighthouse_DisableIMUExceptHMD_Bool = "disableimuexcepthmd"; 252static const char * k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation"; 253static const char * k_pch_Lighthouse_DisambiguationDebug_Int32 = "disambiguationdebug"; 254static const char * k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation"; 255static const char * k_pch_Lighthouse_DBHistory_Bool = "dbhistory"; 256static const char * k_pch_Lighthouse_EnableBluetooth_Bool = "enableBluetooth"; 257static const char * k_pch_Lighthouse_PowerManagedBaseStations_String = "PowerManagedBaseStations"; 258static const char * k_pch_Lighthouse_PowerManagedBaseStations2_String = "PowerManagedBaseStations2"; 259static const char * k_pch_Lighthouse_InactivityTimeoutForBaseStations_Int32 = "InactivityTimeoutForBaseStations"; 260static const char * k_pch_Lighthouse_EnableImuFallback_Bool = "enableImuFallback"; 261static const char * k_pch_Null_Section = "driver_null"; 262static const char * k_pch_Null_SerialNumber_String = "serialNumber"; 263static const char * k_pch_Null_ModelNumber_String = "modelNumber"; 264static const char * k_pch_Null_WindowX_Int32 = "windowX"; 265static const char * k_pch_Null_WindowY_Int32 = "windowY"; 266static const char * k_pch_Null_WindowWidth_Int32 = "windowWidth"; 267static const char * k_pch_Null_WindowHeight_Int32 = "windowHeight"; 268static const char * k_pch_Null_RenderWidth_Int32 = "renderWidth"; 269static const char * k_pch_Null_RenderHeight_Int32 = "renderHeight"; 270static const char * k_pch_Null_SecondsFromVsyncToPhotons_Float = "secondsFromVsyncToPhotons"; 271static const char * k_pch_Null_DisplayFrequency_Float = "displayFrequency"; 272static const char * k_pch_WindowsMR_Section = "driver_holographic"; 273static const char * k_pch_UserInterface_Section = "userinterface"; 274static const char * k_pch_UserInterface_StatusAlwaysOnTop_Bool = "StatusAlwaysOnTop"; 275static const char * k_pch_UserInterface_MinimizeToTray_Bool = "MinimizeToTray"; 276static const char * k_pch_UserInterface_HidePopupsWhenStatusMinimized_Bool = "HidePopupsWhenStatusMinimized"; 277static const char * k_pch_UserInterface_Screenshots_Bool = "screenshots"; 278static const char * k_pch_UserInterface_ScreenshotType_Int = "screenshotType"; 279static const char * k_pch_Notifications_Section = "notifications"; 280static const char * k_pch_Notifications_DoNotDisturb_Bool = "DoNotDisturb"; 281static const char * k_pch_Keyboard_Section = "keyboard"; 282static const char * k_pch_Keyboard_TutorialCompletions = "TutorialCompletions"; 283static const char * k_pch_Keyboard_ScaleX = "ScaleX"; 284static const char * k_pch_Keyboard_ScaleY = "ScaleY"; 285static const char * k_pch_Keyboard_OffsetLeftX = "OffsetLeftX"; 286static const char * k_pch_Keyboard_OffsetRightX = "OffsetRightX"; 287static const char * k_pch_Keyboard_OffsetY = "OffsetY"; 288static const char * k_pch_Keyboard_Smoothing = "Smoothing"; 289static const char * k_pch_Perf_Section = "perfcheck"; 290static const char * k_pch_Perf_PerfGraphInHMD_Bool = "perfGraphInHMD"; 291static const char * k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore"; 292static const char * k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit"; 293static const char * k_pch_Perf_TestData_Float = "perfTestData"; 294static const char * k_pch_Perf_GPUProfiling_Bool = "GPUProfiling"; 295static const char * k_pch_CollisionBounds_Section = "collisionBounds"; 296static const char * k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle"; 297static const char * k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn"; 298static const char * k_pch_CollisionBounds_CenterMarkerOn_Bool = "CollisionBoundsCenterMarkerOn"; 299static const char * k_pch_CollisionBounds_PlaySpaceOn_Bool = "CollisionBoundsPlaySpaceOn"; 300static const char * k_pch_CollisionBounds_FadeDistance_Float = "CollisionBoundsFadeDistance"; 301static const char * k_pch_CollisionBounds_WallHeight_Float = "CollisionBoundsWallHeight"; 302static const char * k_pch_CollisionBounds_ColorGammaR_Int32 = "CollisionBoundsColorGammaR"; 303static const char * k_pch_CollisionBounds_ColorGammaG_Int32 = "CollisionBoundsColorGammaG"; 304static const char * k_pch_CollisionBounds_ColorGammaB_Int32 = "CollisionBoundsColorGammaB"; 305static const char * k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsColorGammaA"; 306static const char * k_pch_CollisionBounds_EnableDriverImport = "enableDriverBoundsImport"; 307static const char * k_pch_Camera_Section = "camera"; 308static const char * k_pch_Camera_EnableCamera_Bool = "enableCamera"; 309static const char * k_pch_Camera_ShowOnController_Bool = "showOnController"; 310static const char * k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds"; 311static const char * k_pch_Camera_RoomView_Int32 = "roomView"; 312static const char * k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR"; 313static const char * k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG"; 314static const char * k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB"; 315static const char * k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA"; 316static const char * k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength"; 317static const char * k_pch_Camera_RoomViewStyle_Int32 = "roomViewStyle"; 318static const char * k_pch_audio_Section = "audio"; 319static const char * k_pch_audio_SetOsDefaultPlaybackDevice_Bool = "setOsDefaultPlaybackDevice"; 320static const char * k_pch_audio_EnablePlaybackDeviceOverride_Bool = "enablePlaybackDeviceOverride"; 321static const char * k_pch_audio_PlaybackDeviceOverride_String = "playbackDeviceOverride"; 322static const char * k_pch_audio_PlaybackDeviceOverrideName_String = "playbackDeviceOverrideName"; 323static const char * k_pch_audio_SetOsDefaultRecordingDevice_Bool = "setOsDefaultRecordingDevice"; 324static const char * k_pch_audio_EnableRecordingDeviceOverride_Bool = "enableRecordingDeviceOverride"; 325static const char * k_pch_audio_RecordingDeviceOverride_String = "recordingDeviceOverride"; 326static const char * k_pch_audio_RecordingDeviceOverrideName_String = "recordingDeviceOverrideName"; 327static const char * k_pch_audio_EnablePlaybackMirror_Bool = "enablePlaybackMirror"; 328static const char * k_pch_audio_PlaybackMirrorDevice_String = "playbackMirrorDevice"; 329static const char * k_pch_audio_PlaybackMirrorDeviceName_String = "playbackMirrorDeviceName"; 330static const char * k_pch_audio_OldPlaybackMirrorDevice_String = "onPlaybackMirrorDevice"; 331static const char * k_pch_audio_ActiveMirrorDevice_String = "activePlaybackMirrorDevice"; 332static const char * k_pch_audio_EnablePlaybackMirrorIndependentVolume_Bool = "enablePlaybackMirrorIndependentVolume"; 333static const char * k_pch_audio_LastHmdPlaybackDeviceId_String = "lastHmdPlaybackDeviceId"; 334static const char * k_pch_audio_VIVEHDMIGain = "viveHDMIGain"; 335static const char * k_pch_audio_DualSpeakerAndJackOutput_Bool = "dualSpeakerAndJackOutput"; 336static const char * k_pch_audio_MuteMicMonitor_Bool = "muteMicMonitor"; 337static const char * k_pch_Power_Section = "power"; 338static const char * k_pch_Power_PowerOffOnExit_Bool = "powerOffOnExit"; 339static const char * k_pch_Power_TurnOffScreensTimeout_Float = "turnOffScreensTimeout"; 340static const char * k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout"; 341static const char * k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout"; 342static const char * k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress"; 343static const char * k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby"; 344static const char * k_pch_Dashboard_Section = "dashboard"; 345static const char * k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard"; 346static const char * k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode"; 347static const char * k_pch_Dashboard_Position = "position"; 348static const char * k_pch_Dashboard_DesktopScale = "desktopScale"; 349static const char * k_pch_Dashboard_DashboardScale = "dashboardScale"; 350static const char * k_pch_Dashboard_UseStandaloneSystemLayer = "standaloneSystemLayer"; 351static const char * k_pch_Dashboard_StickyDashboard = "stickyDashboard"; 352static const char * k_pch_modelskin_Section = "modelskins"; 353static const char * k_pch_Driver_Enable_Bool = "enable"; 354static const char * k_pch_Driver_BlockedBySafemode_Bool = "blocked_by_safe_mode"; 355static const char * k_pch_Driver_LoadPriority_Int32 = "loadPriority"; 356static const char * k_pch_WebInterface_Section = "WebInterface"; 357static const char * k_pch_VRWebHelper_Section = "VRWebHelper"; 358static const char * k_pch_VRWebHelper_DebuggerEnabled_Bool = "DebuggerEnabled"; 359static const char * k_pch_VRWebHelper_DebuggerPort_Int32 = "DebuggerPort"; 360static const char * k_pch_TrackingOverride_Section = "TrackingOverrides"; 361static const char * k_pch_App_BindingAutosaveURLSuffix_String = "AutosaveURL"; 362static const char * k_pch_App_BindingLegacyAPISuffix_String = "_legacy"; 363static const char * k_pch_App_BindingSteamVRInputAPISuffix_String = "_steamvrinput"; 364static const char * k_pch_App_BindingOpenXRAPISuffix_String = "_openxr"; 365static const char * k_pch_App_BindingCurrentURLSuffix_String = "CurrentURL"; 366static const char * k_pch_App_BindingPreviousURLSuffix_String = "PreviousURL"; 367static const char * k_pch_App_NeedToUpdateAutosaveSuffix_Bool = "NeedToUpdateAutosave"; 368static const char * k_pch_App_DominantHand_Int32 = "DominantHand"; 369static const char * k_pch_App_BlockOculusSDK_Bool = "blockOculusSDK"; 370static const char * k_pch_Trackers_Section = "trackers"; 371static const char * k_pch_DesktopUI_Section = "DesktopUI"; 372static const char * k_pch_LastKnown_Section = "LastKnown"; 373static const char * k_pch_LastKnown_HMDManufacturer_String = "HMDManufacturer"; 374static const char * k_pch_LastKnown_HMDModel_String = "HMDModel"; 375static const char * k_pch_DismissedWarnings_Section = "DismissedWarnings"; 376static const char * k_pch_Input_Section = "input"; 377static const char * k_pch_Input_LeftThumbstickRotation_Float = "leftThumbstickRotation"; 378static const char * k_pch_Input_RightThumbstickRotation_Float = "rightThumbstickRotation"; 379static const char * k_pch_Input_ThumbstickDeadzone_Float = "thumbstickDeadzone"; 380static const char * k_pch_GpuSpeed_Section = "GpuSpeed"; 381static const char * IVRScreenshots_Version = "IVRScreenshots_001"; 382static const char * IVRResources_Version = "IVRResources_001"; 383static const char * IVRDriverManager_Version = "IVRDriverManager_001"; 384static const unsigned long k_unMaxActionNameLength = 64; 385static const unsigned long k_unMaxActionSetNameLength = 64; 386static const unsigned long k_unMaxActionOriginCount = 16; 387static const unsigned long k_unMaxBoneNameLength = 32; 388static const int k_nActionSetOverlayGlobalPriorityMin = 16777216; 389static const int k_nActionSetOverlayGlobalPriorityMax = 33554431; 390static const int k_nActionSetPriorityReservedMin = 33554432; 391static const char * IVRInput_Version = "IVRInput_010"; 392static const unsigned long long k_ulInvalidIOBufferHandle = 0; 393static const char * IVRIOBuffer_Version = "IVRIOBuffer_002"; 394static const unsigned long k_ulInvalidSpatialAnchorHandle = 0; 395static const char * IVRSpatialAnchors_Version = "IVRSpatialAnchors_001"; 396static const char * IVRDebug_Version = "IVRDebug_001"; 397static const unsigned long long k_ulDisplayRedirectContainer = 25769803779; 398static const char * IVRProperties_Version = "IVRProperties_001"; 399static const char * k_pchPathUserHandRight = "/user/hand/right"; 400static const char * k_pchPathUserHandLeft = "/user/hand/left"; 401static const char * k_pchPathUserHandPrimary = "/user/hand/primary"; 402static const char * k_pchPathUserHandSecondary = "/user/hand/secondary"; 403static const char * k_pchPathUserHead = "/user/head"; 404static const char * k_pchPathUserGamepad = "/user/gamepad"; 405static const char * k_pchPathUserTreadmill = "/user/treadmill"; 406static const char * k_pchPathUserStylus = "/user/stylus"; 407static const char * k_pchPathDevices = "/devices"; 408static const char * k_pchPathDevicePath = "/device_path"; 409static const char * k_pchPathBestAliasPath = "/best_alias_path"; 410static const char * k_pchPathBoundTrackerAliasPath = "/bound_tracker_path"; 411static const char * k_pchPathBoundTrackerRole = "/bound_tracker_role"; 412static const char * k_pchPathPoseRaw = "/pose/raw"; 413static const char * k_pchPathPoseTip = "/pose/tip"; 414static const char * k_pchPathPoseGrip = "/pose/grip"; 415static const char * k_pchPathSystemButtonClick = "/input/system/click"; 416static const char * k_pchPathProximity = "/proximity"; 417static const char * k_pchPathControllerTypePrefix = "/controller_type/"; 418static const char * k_pchPathInputProfileSuffix = "/input_profile"; 419static const char * k_pchPathBindingNameSuffix = "/binding_name"; 420static const char * k_pchPathBindingUrlSuffix = "/binding_url"; 421static const char * k_pchPathBindingErrorSuffix = "/binding_error"; 422static const char * k_pchPathActiveActionSets = "/active_action_sets"; 423static const char * k_pchPathComponentUpdates = "/total_component_updates"; 424static const char * k_pchPathUserFootLeft = "/user/foot/left"; 425static const char * k_pchPathUserFootRight = "/user/foot/right"; 426static const char * k_pchPathUserShoulderLeft = "/user/shoulder/left"; 427static const char * k_pchPathUserShoulderRight = "/user/shoulder/right"; 428static const char * k_pchPathUserElbowLeft = "/user/elbow/left"; 429static const char * k_pchPathUserElbowRight = "/user/elbow/right"; 430static const char * k_pchPathUserKneeLeft = "/user/knee/left"; 431static const char * k_pchPathUserKneeRight = "/user/knee/right"; 432static const char * k_pchPathUserWaist = "/user/waist"; 433static const char * k_pchPathUserChest = "/user/chest"; 434static const char * k_pchPathUserCamera = "/user/camera"; 435static const char * k_pchPathUserKeyboard = "/user/keyboard"; 436static const char * k_pchPathClientAppKey = "/client_info/app_key"; 437static const unsigned long long k_ulInvalidPathHandle = 0; 438static const char * IVRPaths_Version = "IVRPaths_001"; 439static const char * IVRBlockQueue_Version = "IVRBlockQueue_005"; 440 441// OpenVR Enums 442 443typedef enum EVREye 444{ 445 EVREye_Eye_Left = 0, 446 EVREye_Eye_Right = 1, 447} EVREye; 448 449typedef enum ETextureType 450{ 451 ETextureType_TextureType_Invalid = -1, 452 ETextureType_TextureType_DirectX = 0, 453 ETextureType_TextureType_OpenGL = 1, 454 ETextureType_TextureType_Vulkan = 2, 455 ETextureType_TextureType_IOSurface = 3, 456 ETextureType_TextureType_DirectX12 = 4, 457 ETextureType_TextureType_DXGISharedHandle = 5, 458 ETextureType_TextureType_Metal = 6, 459} ETextureType; 460 461typedef enum EColorSpace 462{ 463 EColorSpace_ColorSpace_Auto = 0, 464 EColorSpace_ColorSpace_Gamma = 1, 465 EColorSpace_ColorSpace_Linear = 2, 466} EColorSpace; 467 468typedef enum ETrackingResult 469{ 470 ETrackingResult_TrackingResult_Uninitialized = 1, 471 ETrackingResult_TrackingResult_Calibrating_InProgress = 100, 472 ETrackingResult_TrackingResult_Calibrating_OutOfRange = 101, 473 ETrackingResult_TrackingResult_Running_OK = 200, 474 ETrackingResult_TrackingResult_Running_OutOfRange = 201, 475 ETrackingResult_TrackingResult_Fallback_RotationOnly = 300, 476} ETrackingResult; 477 478typedef enum ETrackedDeviceClass 479{ 480 ETrackedDeviceClass_TrackedDeviceClass_Invalid = 0, 481 ETrackedDeviceClass_TrackedDeviceClass_HMD = 1, 482 ETrackedDeviceClass_TrackedDeviceClass_Controller = 2, 483 ETrackedDeviceClass_TrackedDeviceClass_GenericTracker = 3, 484 ETrackedDeviceClass_TrackedDeviceClass_TrackingReference = 4, 485 ETrackedDeviceClass_TrackedDeviceClass_DisplayRedirect = 5, 486 ETrackedDeviceClass_TrackedDeviceClass_Max = 6, 487} ETrackedDeviceClass; 488 489typedef enum ETrackedControllerRole 490{ 491 ETrackedControllerRole_TrackedControllerRole_Invalid = 0, 492 ETrackedControllerRole_TrackedControllerRole_LeftHand = 1, 493 ETrackedControllerRole_TrackedControllerRole_RightHand = 2, 494 ETrackedControllerRole_TrackedControllerRole_OptOut = 3, 495 ETrackedControllerRole_TrackedControllerRole_Treadmill = 4, 496 ETrackedControllerRole_TrackedControllerRole_Stylus = 5, 497 ETrackedControllerRole_TrackedControllerRole_Max = 5, 498} ETrackedControllerRole; 499 500typedef enum ETrackingUniverseOrigin 501{ 502 ETrackingUniverseOrigin_TrackingUniverseSeated = 0, 503 ETrackingUniverseOrigin_TrackingUniverseStanding = 1, 504 ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated = 2, 505} ETrackingUniverseOrigin; 506 507typedef enum EAdditionalRadioFeatures 508{ 509 EAdditionalRadioFeatures_AdditionalRadioFeatures_None = 0, 510 EAdditionalRadioFeatures_AdditionalRadioFeatures_HTCLinkBox = 1, 511 EAdditionalRadioFeatures_AdditionalRadioFeatures_InternalDongle = 2, 512 EAdditionalRadioFeatures_AdditionalRadioFeatures_ExternalDongle = 4, 513} EAdditionalRadioFeatures; 514 515typedef enum ETrackedDeviceProperty 516{ 517 ETrackedDeviceProperty_Prop_Invalid = 0, 518 ETrackedDeviceProperty_Prop_TrackingSystemName_String = 1000, 519 ETrackedDeviceProperty_Prop_ModelNumber_String = 1001, 520 ETrackedDeviceProperty_Prop_SerialNumber_String = 1002, 521 ETrackedDeviceProperty_Prop_RenderModelName_String = 1003, 522 ETrackedDeviceProperty_Prop_WillDriftInYaw_Bool = 1004, 523 ETrackedDeviceProperty_Prop_ManufacturerName_String = 1005, 524 ETrackedDeviceProperty_Prop_TrackingFirmwareVersion_String = 1006, 525 ETrackedDeviceProperty_Prop_HardwareRevision_String = 1007, 526 ETrackedDeviceProperty_Prop_AllWirelessDongleDescriptions_String = 1008, 527 ETrackedDeviceProperty_Prop_ConnectedWirelessDongle_String = 1009, 528 ETrackedDeviceProperty_Prop_DeviceIsWireless_Bool = 1010, 529 ETrackedDeviceProperty_Prop_DeviceIsCharging_Bool = 1011, 530 ETrackedDeviceProperty_Prop_DeviceBatteryPercentage_Float = 1012, 531 ETrackedDeviceProperty_Prop_StatusDisplayTransform_Matrix34 = 1013, 532 ETrackedDeviceProperty_Prop_Firmware_UpdateAvailable_Bool = 1014, 533 ETrackedDeviceProperty_Prop_Firmware_ManualUpdate_Bool = 1015, 534 ETrackedDeviceProperty_Prop_Firmware_ManualUpdateURL_String = 1016, 535 ETrackedDeviceProperty_Prop_HardwareRevision_Uint64 = 1017, 536 ETrackedDeviceProperty_Prop_FirmwareVersion_Uint64 = 1018, 537 ETrackedDeviceProperty_Prop_FPGAVersion_Uint64 = 1019, 538 ETrackedDeviceProperty_Prop_VRCVersion_Uint64 = 1020, 539 ETrackedDeviceProperty_Prop_RadioVersion_Uint64 = 1021, 540 ETrackedDeviceProperty_Prop_DongleVersion_Uint64 = 1022, 541 ETrackedDeviceProperty_Prop_BlockServerShutdown_Bool = 1023, 542 ETrackedDeviceProperty_Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024, 543 ETrackedDeviceProperty_Prop_ContainsProximitySensor_Bool = 1025, 544 ETrackedDeviceProperty_Prop_DeviceProvidesBatteryStatus_Bool = 1026, 545 ETrackedDeviceProperty_Prop_DeviceCanPowerOff_Bool = 1027, 546 ETrackedDeviceProperty_Prop_Firmware_ProgrammingTarget_String = 1028, 547 ETrackedDeviceProperty_Prop_DeviceClass_Int32 = 1029, 548 ETrackedDeviceProperty_Prop_HasCamera_Bool = 1030, 549 ETrackedDeviceProperty_Prop_DriverVersion_String = 1031, 550 ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool = 1032, 551 ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool = 1033, 552 ETrackedDeviceProperty_Prop_ParentDriver_Uint64 = 1034, 553 ETrackedDeviceProperty_Prop_ResourceRoot_String = 1035, 554 ETrackedDeviceProperty_Prop_RegisteredDeviceType_String = 1036, 555 ETrackedDeviceProperty_Prop_InputProfilePath_String = 1037, 556 ETrackedDeviceProperty_Prop_NeverTracked_Bool = 1038, 557 ETrackedDeviceProperty_Prop_NumCameras_Int32 = 1039, 558 ETrackedDeviceProperty_Prop_CameraFrameLayout_Int32 = 1040, 559 ETrackedDeviceProperty_Prop_CameraStreamFormat_Int32 = 1041, 560 ETrackedDeviceProperty_Prop_AdditionalDeviceSettingsPath_String = 1042, 561 ETrackedDeviceProperty_Prop_Identifiable_Bool = 1043, 562 ETrackedDeviceProperty_Prop_BootloaderVersion_Uint64 = 1044, 563 ETrackedDeviceProperty_Prop_AdditionalSystemReportData_String = 1045, 564 ETrackedDeviceProperty_Prop_CompositeFirmwareVersion_String = 1046, 565 ETrackedDeviceProperty_Prop_Firmware_RemindUpdate_Bool = 1047, 566 ETrackedDeviceProperty_Prop_PeripheralApplicationVersion_Uint64 = 1048, 567 ETrackedDeviceProperty_Prop_ManufacturerSerialNumber_String = 1049, 568 ETrackedDeviceProperty_Prop_ComputedSerialNumber_String = 1050, 569 ETrackedDeviceProperty_Prop_EstimatedDeviceFirstUseTime_Int32 = 1051, 570 ETrackedDeviceProperty_Prop_DevicePowerUsage_Float = 1052, 571 ETrackedDeviceProperty_Prop_IgnoreMotionForStandby_Bool = 1053, 572 ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000, 573 ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001, 574 ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002, 575 ETrackedDeviceProperty_Prop_UserIpdMeters_Float = 2003, 576 ETrackedDeviceProperty_Prop_CurrentUniverseId_Uint64 = 2004, 577 ETrackedDeviceProperty_Prop_PreviousUniverseId_Uint64 = 2005, 578 ETrackedDeviceProperty_Prop_DisplayFirmwareVersion_Uint64 = 2006, 579 ETrackedDeviceProperty_Prop_IsOnDesktop_Bool = 2007, 580 ETrackedDeviceProperty_Prop_DisplayMCType_Int32 = 2008, 581 ETrackedDeviceProperty_Prop_DisplayMCOffset_Float = 2009, 582 ETrackedDeviceProperty_Prop_DisplayMCScale_Float = 2010, 583 ETrackedDeviceProperty_Prop_EdidVendorID_Int32 = 2011, 584 ETrackedDeviceProperty_Prop_DisplayMCImageLeft_String = 2012, 585 ETrackedDeviceProperty_Prop_DisplayMCImageRight_String = 2013, 586 ETrackedDeviceProperty_Prop_DisplayGCBlackClamp_Float = 2014, 587 ETrackedDeviceProperty_Prop_EdidProductID_Int32 = 2015, 588 ETrackedDeviceProperty_Prop_CameraToHeadTransform_Matrix34 = 2016, 589 ETrackedDeviceProperty_Prop_DisplayGCType_Int32 = 2017, 590 ETrackedDeviceProperty_Prop_DisplayGCOffset_Float = 2018, 591 ETrackedDeviceProperty_Prop_DisplayGCScale_Float = 2019, 592 ETrackedDeviceProperty_Prop_DisplayGCPrescale_Float = 2020, 593 ETrackedDeviceProperty_Prop_DisplayGCImage_String = 2021, 594 ETrackedDeviceProperty_Prop_LensCenterLeftU_Float = 2022, 595 ETrackedDeviceProperty_Prop_LensCenterLeftV_Float = 2023, 596 ETrackedDeviceProperty_Prop_LensCenterRightU_Float = 2024, 597 ETrackedDeviceProperty_Prop_LensCenterRightV_Float = 2025, 598 ETrackedDeviceProperty_Prop_UserHeadToEyeDepthMeters_Float = 2026, 599 ETrackedDeviceProperty_Prop_CameraFirmwareVersion_Uint64 = 2027, 600 ETrackedDeviceProperty_Prop_CameraFirmwareDescription_String = 2028, 601 ETrackedDeviceProperty_Prop_DisplayFPGAVersion_Uint64 = 2029, 602 ETrackedDeviceProperty_Prop_DisplayBootloaderVersion_Uint64 = 2030, 603 ETrackedDeviceProperty_Prop_DisplayHardwareVersion_Uint64 = 2031, 604 ETrackedDeviceProperty_Prop_AudioFirmwareVersion_Uint64 = 2032, 605 ETrackedDeviceProperty_Prop_CameraCompatibilityMode_Int32 = 2033, 606 ETrackedDeviceProperty_Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034, 607 ETrackedDeviceProperty_Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035, 608 ETrackedDeviceProperty_Prop_DisplaySuppressed_Bool = 2036, 609 ETrackedDeviceProperty_Prop_DisplayAllowNightMode_Bool = 2037, 610 ETrackedDeviceProperty_Prop_DisplayMCImageWidth_Int32 = 2038, 611 ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32 = 2039, 612 ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32 = 2040, 613 ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary = 2041, 614 ETrackedDeviceProperty_Prop_SecondsFromPhotonsToVblank_Float = 2042, 615 ETrackedDeviceProperty_Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043, 616 ETrackedDeviceProperty_Prop_DisplayDebugMode_Bool = 2044, 617 ETrackedDeviceProperty_Prop_GraphicsAdapterLuid_Uint64 = 2045, 618 ETrackedDeviceProperty_Prop_DriverProvidedChaperonePath_String = 2048, 619 ETrackedDeviceProperty_Prop_ExpectedTrackingReferenceCount_Int32 = 2049, 620 ETrackedDeviceProperty_Prop_ExpectedControllerCount_Int32 = 2050, 621 ETrackedDeviceProperty_Prop_NamedIconPathControllerLeftDeviceOff_String = 2051, 622 ETrackedDeviceProperty_Prop_NamedIconPathControllerRightDeviceOff_String = 2052, 623 ETrackedDeviceProperty_Prop_NamedIconPathTrackingReferenceDeviceOff_String = 2053, 624 ETrackedDeviceProperty_Prop_DoNotApplyPrediction_Bool = 2054, 625 ETrackedDeviceProperty_Prop_CameraToHeadTransforms_Matrix34_Array = 2055, 626 ETrackedDeviceProperty_Prop_DistortionMeshResolution_Int32 = 2056, 627 ETrackedDeviceProperty_Prop_DriverIsDrawingControllers_Bool = 2057, 628 ETrackedDeviceProperty_Prop_DriverRequestsApplicationPause_Bool = 2058, 629 ETrackedDeviceProperty_Prop_DriverRequestsReducedRendering_Bool = 2059, 630 ETrackedDeviceProperty_Prop_MinimumIpdStepMeters_Float = 2060, 631 ETrackedDeviceProperty_Prop_AudioBridgeFirmwareVersion_Uint64 = 2061, 632 ETrackedDeviceProperty_Prop_ImageBridgeFirmwareVersion_Uint64 = 2062, 633 ETrackedDeviceProperty_Prop_ImuToHeadTransform_Matrix34 = 2063, 634 ETrackedDeviceProperty_Prop_ImuFactoryGyroBias_Vector3 = 2064, 635 ETrackedDeviceProperty_Prop_ImuFactoryGyroScale_Vector3 = 2065, 636 ETrackedDeviceProperty_Prop_ImuFactoryAccelerometerBias_Vector3 = 2066, 637 ETrackedDeviceProperty_Prop_ImuFactoryAccelerometerScale_Vector3 = 2067, 638 ETrackedDeviceProperty_Prop_ConfigurationIncludesLighthouse20Features_Bool = 2069, 639 ETrackedDeviceProperty_Prop_AdditionalRadioFeatures_Uint64 = 2070, 640 ETrackedDeviceProperty_Prop_CameraWhiteBalance_Vector4_Array = 2071, 641 ETrackedDeviceProperty_Prop_CameraDistortionFunction_Int32_Array = 2072, 642 ETrackedDeviceProperty_Prop_CameraDistortionCoefficients_Float_Array = 2073, 643 ETrackedDeviceProperty_Prop_ExpectedControllerType_String = 2074, 644 ETrackedDeviceProperty_Prop_HmdTrackingStyle_Int32 = 2075, 645 ETrackedDeviceProperty_Prop_DriverProvidedChaperoneVisibility_Bool = 2076, 646 ETrackedDeviceProperty_Prop_HmdColumnCorrectionSettingPrefix_String = 2077, 647 ETrackedDeviceProperty_Prop_CameraSupportsCompatibilityModes_Bool = 2078, 648 ETrackedDeviceProperty_Prop_SupportsRoomViewDepthProjection_Bool = 2079, 649 ETrackedDeviceProperty_Prop_DisplayAvailableFrameRates_Float_Array = 2080, 650 ETrackedDeviceProperty_Prop_DisplaySupportsMultipleFramerates_Bool = 2081, 651 ETrackedDeviceProperty_Prop_DisplayColorMultLeft_Vector3 = 2082, 652 ETrackedDeviceProperty_Prop_DisplayColorMultRight_Vector3 = 2083, 653 ETrackedDeviceProperty_Prop_DisplaySupportsRuntimeFramerateChange_Bool = 2084, 654 ETrackedDeviceProperty_Prop_DisplaySupportsAnalogGain_Bool = 2085, 655 ETrackedDeviceProperty_Prop_DisplayMinAnalogGain_Float = 2086, 656 ETrackedDeviceProperty_Prop_DisplayMaxAnalogGain_Float = 2087, 657 ETrackedDeviceProperty_Prop_CameraExposureTime_Float = 2088, 658 ETrackedDeviceProperty_Prop_CameraGlobalGain_Float = 2089, 659 ETrackedDeviceProperty_Prop_DashboardScale_Float = 2091, 660 ETrackedDeviceProperty_Prop_PeerButtonInfo_String = 2092, 661 ETrackedDeviceProperty_Prop_Hmd_SupportsHDR10_Bool = 2093, 662 ETrackedDeviceProperty_Prop_IpdUIRangeMinMeters_Float = 2100, 663 ETrackedDeviceProperty_Prop_IpdUIRangeMaxMeters_Float = 2101, 664 ETrackedDeviceProperty_Prop_Hmd_SupportsHDCP14LegacyCompat_Bool = 2102, 665 ETrackedDeviceProperty_Prop_Hmd_SupportsMicMonitoring_Bool = 2103, 666 ETrackedDeviceProperty_Prop_Hmd_SupportsDisplayPortTrainingMode_Bool = 2104, 667 ETrackedDeviceProperty_Prop_SupportsRoomViewDirect_Bool = 2105, 668 ETrackedDeviceProperty_Prop_SupportsAppThrottling_Bool = 2106, 669 ETrackedDeviceProperty_Prop_DSCVersion_Int32 = 2110, 670 ETrackedDeviceProperty_Prop_DSCSliceCount_Int32 = 2111, 671 ETrackedDeviceProperty_Prop_DSCBPPx16_Int32 = 2112, 672 ETrackedDeviceProperty_Prop_DriverRequestedMuraCorrectionMode_Int32 = 2200, 673 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerLeft_Int32 = 2201, 674 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerRight_Int32 = 2202, 675 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerTop_Int32 = 2203, 676 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_InnerBottom_Int32 = 2204, 677 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_OuterLeft_Int32 = 2205, 678 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_OuterRight_Int32 = 2206, 679 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_OuterTop_Int32 = 2207, 680 ETrackedDeviceProperty_Prop_DriverRequestedMuraFeather_OuterBottom_Int32 = 2208, 681 ETrackedDeviceProperty_Prop_Audio_DefaultPlaybackDeviceId_String = 2300, 682 ETrackedDeviceProperty_Prop_Audio_DefaultRecordingDeviceId_String = 2301, 683 ETrackedDeviceProperty_Prop_Audio_DefaultPlaybackDeviceVolume_Float = 2302, 684 ETrackedDeviceProperty_Prop_Audio_SupportsDualSpeakerAndJackOutput_Bool = 2303, 685 ETrackedDeviceProperty_Prop_AttachedDeviceId_String = 3000, 686 ETrackedDeviceProperty_Prop_SupportedButtons_Uint64 = 3001, 687 ETrackedDeviceProperty_Prop_Axis0Type_Int32 = 3002, 688 ETrackedDeviceProperty_Prop_Axis1Type_Int32 = 3003, 689 ETrackedDeviceProperty_Prop_Axis2Type_Int32 = 3004, 690 ETrackedDeviceProperty_Prop_Axis3Type_Int32 = 3005, 691 ETrackedDeviceProperty_Prop_Axis4Type_Int32 = 3006, 692 ETrackedDeviceProperty_Prop_ControllerRoleHint_Int32 = 3007, 693 ETrackedDeviceProperty_Prop_FieldOfViewLeftDegrees_Float = 4000, 694 ETrackedDeviceProperty_Prop_FieldOfViewRightDegrees_Float = 4001, 695 ETrackedDeviceProperty_Prop_FieldOfViewTopDegrees_Float = 4002, 696 ETrackedDeviceProperty_Prop_FieldOfViewBottomDegrees_Float = 4003, 697 ETrackedDeviceProperty_Prop_TrackingRangeMinimumMeters_Float = 4004, 698 ETrackedDeviceProperty_Prop_TrackingRangeMaximumMeters_Float = 4005, 699 ETrackedDeviceProperty_Prop_ModeLabel_String = 4006, 700 ETrackedDeviceProperty_Prop_CanWirelessIdentify_Bool = 4007, 701 ETrackedDeviceProperty_Prop_Nonce_Int32 = 4008, 702 ETrackedDeviceProperty_Prop_IconPathName_String = 5000, 703 ETrackedDeviceProperty_Prop_NamedIconPathDeviceOff_String = 5001, 704 ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearching_String = 5002, 705 ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearchingAlert_String = 5003, 706 ETrackedDeviceProperty_Prop_NamedIconPathDeviceReady_String = 5004, 707 ETrackedDeviceProperty_Prop_NamedIconPathDeviceReadyAlert_String = 5005, 708 ETrackedDeviceProperty_Prop_NamedIconPathDeviceNotReady_String = 5006, 709 ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandby_String = 5007, 710 ETrackedDeviceProperty_Prop_NamedIconPathDeviceAlertLow_String = 5008, 711 ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandbyAlert_String = 5009, 712 ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_Start = 5100, 713 ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End = 5150, 714 ETrackedDeviceProperty_Prop_ParentContainer = 5151, 715 ETrackedDeviceProperty_Prop_OverrideContainer_Uint64 = 5152, 716 ETrackedDeviceProperty_Prop_UserConfigPath_String = 6000, 717 ETrackedDeviceProperty_Prop_InstallPath_String = 6001, 718 ETrackedDeviceProperty_Prop_HasDisplayComponent_Bool = 6002, 719 ETrackedDeviceProperty_Prop_HasControllerComponent_Bool = 6003, 720 ETrackedDeviceProperty_Prop_HasCameraComponent_Bool = 6004, 721 ETrackedDeviceProperty_Prop_HasDriverDirectModeComponent_Bool = 6005, 722 ETrackedDeviceProperty_Prop_HasVirtualDisplayComponent_Bool = 6006, 723 ETrackedDeviceProperty_Prop_HasSpatialAnchorsSupport_Bool = 6007, 724 ETrackedDeviceProperty_Prop_ControllerType_String = 7000, 725 ETrackedDeviceProperty_Prop_ControllerHandSelectionPriority_Int32 = 7002, 726 ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start = 10000, 727 ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End = 10999, 728 ETrackedDeviceProperty_Prop_TrackedDeviceProperty_Max = 1000000, 729} ETrackedDeviceProperty; 730 731typedef enum ETrackedPropertyError 732{ 733 ETrackedPropertyError_TrackedProp_Success = 0, 734 ETrackedPropertyError_TrackedProp_WrongDataType = 1, 735 ETrackedPropertyError_TrackedProp_WrongDeviceClass = 2, 736 ETrackedPropertyError_TrackedProp_BufferTooSmall = 3, 737 ETrackedPropertyError_TrackedProp_UnknownProperty = 4, 738 ETrackedPropertyError_TrackedProp_InvalidDevice = 5, 739 ETrackedPropertyError_TrackedProp_CouldNotContactServer = 6, 740 ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice = 7, 741 ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength = 8, 742 ETrackedPropertyError_TrackedProp_NotYetAvailable = 9, 743 ETrackedPropertyError_TrackedProp_PermissionDenied = 10, 744 ETrackedPropertyError_TrackedProp_InvalidOperation = 11, 745 ETrackedPropertyError_TrackedProp_CannotWriteToWildcards = 12, 746 ETrackedPropertyError_TrackedProp_IPCReadFailure = 13, 747 ETrackedPropertyError_TrackedProp_OutOfMemory = 14, 748 ETrackedPropertyError_TrackedProp_InvalidContainer = 15, 749} ETrackedPropertyError; 750 751typedef enum EHmdTrackingStyle 752{ 753 EHmdTrackingStyle_HmdTrackingStyle_Unknown = 0, 754 EHmdTrackingStyle_HmdTrackingStyle_Lighthouse = 1, 755 EHmdTrackingStyle_HmdTrackingStyle_OutsideInCameras = 2, 756 EHmdTrackingStyle_HmdTrackingStyle_InsideOutCameras = 3, 757} EHmdTrackingStyle; 758 759typedef enum EVRSubmitFlags 760{ 761 EVRSubmitFlags_Submit_Default = 0, 762 EVRSubmitFlags_Submit_LensDistortionAlreadyApplied = 1, 763 EVRSubmitFlags_Submit_GlRenderBuffer = 2, 764 EVRSubmitFlags_Submit_Reserved = 4, 765 EVRSubmitFlags_Submit_TextureWithPose = 8, 766 EVRSubmitFlags_Submit_TextureWithDepth = 16, 767 EVRSubmitFlags_Submit_FrameDiscontinuty = 32, 768 EVRSubmitFlags_Submit_VulkanTextureWithArrayData = 64, 769 EVRSubmitFlags_Submit_GlArrayTexture = 128, 770 EVRSubmitFlags_Submit_Reserved2 = 32768, 771 EVRSubmitFlags_Submit_Reserved3 = 65536, 772} EVRSubmitFlags; 773 774typedef enum EVRState 775{ 776 EVRState_VRState_Undefined = -1, 777 EVRState_VRState_Off = 0, 778 EVRState_VRState_Searching = 1, 779 EVRState_VRState_Searching_Alert = 2, 780 EVRState_VRState_Ready = 3, 781 EVRState_VRState_Ready_Alert = 4, 782 EVRState_VRState_NotReady = 5, 783 EVRState_VRState_Standby = 6, 784 EVRState_VRState_Ready_Alert_Low = 7, 785} EVRState; 786 787typedef enum EVREventType 788{ 789 EVREventType_VREvent_None = 0, 790 EVREventType_VREvent_TrackedDeviceActivated = 100, 791 EVREventType_VREvent_TrackedDeviceDeactivated = 101, 792 EVREventType_VREvent_TrackedDeviceUpdated = 102, 793 EVREventType_VREvent_TrackedDeviceUserInteractionStarted = 103, 794 EVREventType_VREvent_TrackedDeviceUserInteractionEnded = 104, 795 EVREventType_VREvent_IpdChanged = 105, 796 EVREventType_VREvent_EnterStandbyMode = 106, 797 EVREventType_VREvent_LeaveStandbyMode = 107, 798 EVREventType_VREvent_TrackedDeviceRoleChanged = 108, 799 EVREventType_VREvent_WatchdogWakeUpRequested = 109, 800 EVREventType_VREvent_LensDistortionChanged = 110, 801 EVREventType_VREvent_PropertyChanged = 111, 802 EVREventType_VREvent_WirelessDisconnect = 112, 803 EVREventType_VREvent_WirelessReconnect = 113, 804 EVREventType_VREvent_ButtonPress = 200, 805 EVREventType_VREvent_ButtonUnpress = 201, 806 EVREventType_VREvent_ButtonTouch = 202, 807 EVREventType_VREvent_ButtonUntouch = 203, 808 EVREventType_VREvent_Modal_Cancel = 257, 809 EVREventType_VREvent_MouseMove = 300, 810 EVREventType_VREvent_MouseButtonDown = 301, 811 EVREventType_VREvent_MouseButtonUp = 302, 812 EVREventType_VREvent_FocusEnter = 303, 813 EVREventType_VREvent_FocusLeave = 304, 814 EVREventType_VREvent_ScrollDiscrete = 305, 815 EVREventType_VREvent_TouchPadMove = 306, 816 EVREventType_VREvent_OverlayFocusChanged = 307, 817 EVREventType_VREvent_ReloadOverlays = 308, 818 EVREventType_VREvent_ScrollSmooth = 309, 819 EVREventType_VREvent_LockMousePosition = 310, 820 EVREventType_VREvent_UnlockMousePosition = 311, 821 EVREventType_VREvent_InputFocusCaptured = 400, 822 EVREventType_VREvent_InputFocusReleased = 401, 823 EVREventType_VREvent_SceneApplicationChanged = 404, 824 EVREventType_VREvent_InputFocusChanged = 406, 825 EVREventType_VREvent_SceneApplicationUsingWrongGraphicsAdapter = 408, 826 EVREventType_VREvent_ActionBindingReloaded = 409, 827 EVREventType_VREvent_HideRenderModels = 410, 828 EVREventType_VREvent_ShowRenderModels = 411, 829 EVREventType_VREvent_SceneApplicationStateChanged = 412, 830 EVREventType_VREvent_SceneAppPipeDisconnected = 413, 831 EVREventType_VREvent_ConsoleOpened = 420, 832 EVREventType_VREvent_ConsoleClosed = 421, 833 EVREventType_VREvent_OverlayShown = 500, 834 EVREventType_VREvent_OverlayHidden = 501, 835 EVREventType_VREvent_DashboardActivated = 502, 836 EVREventType_VREvent_DashboardDeactivated = 503, 837 EVREventType_VREvent_DashboardRequested = 505, 838 EVREventType_VREvent_ResetDashboard = 506, 839 EVREventType_VREvent_ImageLoaded = 508, 840 EVREventType_VREvent_ShowKeyboard = 509, 841 EVREventType_VREvent_HideKeyboard = 510, 842 EVREventType_VREvent_OverlayGamepadFocusGained = 511, 843 EVREventType_VREvent_OverlayGamepadFocusLost = 512, 844 EVREventType_VREvent_OverlaySharedTextureChanged = 513, 845 EVREventType_VREvent_ScreenshotTriggered = 516, 846 EVREventType_VREvent_ImageFailed = 517, 847 EVREventType_VREvent_DashboardOverlayCreated = 518, 848 EVREventType_VREvent_SwitchGamepadFocus = 519, 849 EVREventType_VREvent_RequestScreenshot = 520, 850 EVREventType_VREvent_ScreenshotTaken = 521, 851 EVREventType_VREvent_ScreenshotFailed = 522, 852 EVREventType_VREvent_SubmitScreenshotToDashboard = 523, 853 EVREventType_VREvent_ScreenshotProgressToDashboard = 524, 854 EVREventType_VREvent_PrimaryDashboardDeviceChanged = 525, 855 EVREventType_VREvent_RoomViewShown = 526, 856 EVREventType_VREvent_RoomViewHidden = 527, 857 EVREventType_VREvent_ShowUI = 528, 858 EVREventType_VREvent_ShowDevTools = 529, 859 EVREventType_VREvent_DesktopViewUpdating = 530, 860 EVREventType_VREvent_DesktopViewReady = 531, 861 EVREventType_VREvent_StartDashboard = 532, 862 EVREventType_VREvent_ElevatePrism = 533, 863 EVREventType_VREvent_OverlayClosed = 534, 864 EVREventType_VREvent_Notification_Shown = 600, 865 EVREventType_VREvent_Notification_Hidden = 601, 866 EVREventType_VREvent_Notification_BeginInteraction = 602, 867 EVREventType_VREvent_Notification_Destroyed = 603, 868 EVREventType_VREvent_Quit = 700, 869 EVREventType_VREvent_ProcessQuit = 701, 870 EVREventType_VREvent_QuitAcknowledged = 703, 871 EVREventType_VREvent_DriverRequestedQuit = 704, 872 EVREventType_VREvent_RestartRequested = 705, 873 EVREventType_VREvent_InvalidateSwapTextureSets = 706, 874 EVREventType_VREvent_ChaperoneDataHasChanged = 800, 875 EVREventType_VREvent_ChaperoneUniverseHasChanged = 801, 876 EVREventType_VREvent_ChaperoneTempDataHasChanged = 802, 877 EVREventType_VREvent_ChaperoneSettingsHaveChanged = 803, 878 EVREventType_VREvent_SeatedZeroPoseReset = 804, 879 EVREventType_VREvent_ChaperoneFlushCache = 805, 880 EVREventType_VREvent_ChaperoneRoomSetupStarting = 806, 881 EVREventType_VREvent_ChaperoneRoomSetupFinished = 807, 882 EVREventType_VREvent_StandingZeroPoseReset = 808, 883 EVREventType_VREvent_AudioSettingsHaveChanged = 820, 884 EVREventType_VREvent_BackgroundSettingHasChanged = 850, 885 EVREventType_VREvent_CameraSettingsHaveChanged = 851, 886 EVREventType_VREvent_ReprojectionSettingHasChanged = 852, 887 EVREventType_VREvent_ModelSkinSettingsHaveChanged = 853, 888 EVREventType_VREvent_EnvironmentSettingsHaveChanged = 854, 889 EVREventType_VREvent_PowerSettingsHaveChanged = 855, 890 EVREventType_VREvent_EnableHomeAppSettingsHaveChanged = 856, 891 EVREventType_VREvent_SteamVRSectionSettingChanged = 857, 892 EVREventType_VREvent_LighthouseSectionSettingChanged = 858, 893 EVREventType_VREvent_NullSectionSettingChanged = 859, 894 EVREventType_VREvent_UserInterfaceSectionSettingChanged = 860, 895 EVREventType_VREvent_NotificationsSectionSettingChanged = 861, 896 EVREventType_VREvent_KeyboardSectionSettingChanged = 862, 897 EVREventType_VREvent_PerfSectionSettingChanged = 863, 898 EVREventType_VREvent_DashboardSectionSettingChanged = 864, 899 EVREventType_VREvent_WebInterfaceSectionSettingChanged = 865, 900 EVREventType_VREvent_TrackersSectionSettingChanged = 866, 901 EVREventType_VREvent_LastKnownSectionSettingChanged = 867, 902 EVREventType_VREvent_DismissedWarningsSectionSettingChanged = 868, 903 EVREventType_VREvent_GpuSpeedSectionSettingChanged = 869, 904 EVREventType_VREvent_WindowsMRSectionSettingChanged = 870, 905 EVREventType_VREvent_OtherSectionSettingChanged = 871, 906 EVREventType_VREvent_StatusUpdate = 900, 907 EVREventType_VREvent_WebInterface_InstallDriverCompleted = 950, 908 EVREventType_VREvent_MCImageUpdated = 1000, 909 EVREventType_VREvent_FirmwareUpdateStarted = 1100, 910 EVREventType_VREvent_FirmwareUpdateFinished = 1101, 911 EVREventType_VREvent_KeyboardClosed = 1200, 912 EVREventType_VREvent_KeyboardCharInput = 1201, 913 EVREventType_VREvent_KeyboardDone = 1202, 914 EVREventType_VREvent_ApplicationListUpdated = 1303, 915 EVREventType_VREvent_ApplicationMimeTypeLoad = 1304, 916 EVREventType_VREvent_ProcessConnected = 1306, 917 EVREventType_VREvent_ProcessDisconnected = 1307, 918 EVREventType_VREvent_Compositor_ChaperoneBoundsShown = 1410, 919 EVREventType_VREvent_Compositor_ChaperoneBoundsHidden = 1411, 920 EVREventType_VREvent_Compositor_DisplayDisconnected = 1412, 921 EVREventType_VREvent_Compositor_DisplayReconnected = 1413, 922 EVREventType_VREvent_Compositor_HDCPError = 1414, 923 EVREventType_VREvent_Compositor_ApplicationNotResponding = 1415, 924 EVREventType_VREvent_Compositor_ApplicationResumed = 1416, 925 EVREventType_VREvent_Compositor_OutOfVideoMemory = 1417, 926 EVREventType_VREvent_Compositor_DisplayModeNotSupported = 1418, 927 EVREventType_VREvent_Compositor_StageOverrideReady = 1419, 928 EVREventType_VREvent_Compositor_RequestDisconnectReconnect = 1420, 929 EVREventType_VREvent_TrackedCamera_StartVideoStream = 1500, 930 EVREventType_VREvent_TrackedCamera_StopVideoStream = 1501, 931 EVREventType_VREvent_TrackedCamera_PauseVideoStream = 1502, 932 EVREventType_VREvent_TrackedCamera_ResumeVideoStream = 1503, 933 EVREventType_VREvent_TrackedCamera_EditingSurface = 1550, 934 EVREventType_VREvent_PerformanceTest_EnableCapture = 1600, 935 EVREventType_VREvent_PerformanceTest_DisableCapture = 1601, 936 EVREventType_VREvent_PerformanceTest_FidelityLevel = 1602, 937 EVREventType_VREvent_MessageOverlay_Closed = 1650, 938 EVREventType_VREvent_MessageOverlayCloseRequested = 1651, 939 EVREventType_VREvent_Input_HapticVibration = 1700, 940 EVREventType_VREvent_Input_BindingLoadFailed = 1701, 941 EVREventType_VREvent_Input_BindingLoadSuccessful = 1702, 942 EVREventType_VREvent_Input_ActionManifestReloaded = 1703, 943 EVREventType_VREvent_Input_ActionManifestLoadFailed = 1704, 944 EVREventType_VREvent_Input_ProgressUpdate = 1705, 945 EVREventType_VREvent_Input_TrackerActivated = 1706, 946 EVREventType_VREvent_Input_BindingsUpdated = 1707, 947 EVREventType_VREvent_Input_BindingSubscriptionChanged = 1708, 948 EVREventType_VREvent_SpatialAnchors_PoseUpdated = 1800, 949 EVREventType_VREvent_SpatialAnchors_DescriptorUpdated = 1801, 950 EVREventType_VREvent_SpatialAnchors_RequestPoseUpdate = 1802, 951 EVREventType_VREvent_SpatialAnchors_RequestDescriptorUpdate = 1803, 952 EVREventType_VREvent_SystemReport_Started = 1900, 953 EVREventType_VREvent_Monitor_ShowHeadsetView = 2000, 954 EVREventType_VREvent_Monitor_HideHeadsetView = 2001, 955 EVREventType_VREvent_VendorSpecific_Reserved_Start = 10000, 956 EVREventType_VREvent_VendorSpecific_Reserved_End = 19999, 957} EVREventType; 958 959typedef enum EDeviceActivityLevel 960{ 961 EDeviceActivityLevel_k_EDeviceActivityLevel_Unknown = -1, 962 EDeviceActivityLevel_k_EDeviceActivityLevel_Idle = 0, 963 EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction = 1, 964 EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction_Timeout = 2, 965 EDeviceActivityLevel_k_EDeviceActivityLevel_Standby = 3, 966 EDeviceActivityLevel_k_EDeviceActivityLevel_Idle_Timeout = 4, 967} EDeviceActivityLevel; 968 969typedef enum EVRButtonId 970{ 971 EVRButtonId_k_EButton_System = 0, 972 EVRButtonId_k_EButton_ApplicationMenu = 1, 973 EVRButtonId_k_EButton_Grip = 2, 974 EVRButtonId_k_EButton_DPad_Left = 3, 975 EVRButtonId_k_EButton_DPad_Up = 4, 976 EVRButtonId_k_EButton_DPad_Right = 5, 977 EVRButtonId_k_EButton_DPad_Down = 6, 978 EVRButtonId_k_EButton_A = 7, 979 EVRButtonId_k_EButton_ProximitySensor = 31, 980 EVRButtonId_k_EButton_Axis0 = 32, 981 EVRButtonId_k_EButton_Axis1 = 33, 982 EVRButtonId_k_EButton_Axis2 = 34, 983 EVRButtonId_k_EButton_Axis3 = 35, 984 EVRButtonId_k_EButton_Axis4 = 36, 985 EVRButtonId_k_EButton_SteamVR_Touchpad = 32, 986 EVRButtonId_k_EButton_SteamVR_Trigger = 33, 987 EVRButtonId_k_EButton_Dashboard_Back = 2, 988 EVRButtonId_k_EButton_IndexController_A = 2, 989 EVRButtonId_k_EButton_IndexController_B = 1, 990 EVRButtonId_k_EButton_IndexController_JoyStick = 35, 991 EVRButtonId_k_EButton_Max = 64, 992} EVRButtonId; 993 994typedef enum EVRMouseButton 995{ 996 EVRMouseButton_VRMouseButton_Left = 1, 997 EVRMouseButton_VRMouseButton_Right = 2, 998 EVRMouseButton_VRMouseButton_Middle = 4, 999} EVRMouseButton; 1000 1001typedef enum EShowUIType 1002{ 1003 EShowUIType_ShowUI_ControllerBinding = 0, 1004 EShowUIType_ShowUI_ManageTrackers = 1, 1005 EShowUIType_ShowUI_Pairing = 3, 1006 EShowUIType_ShowUI_Settings = 4, 1007 EShowUIType_ShowUI_DebugCommands = 5, 1008 EShowUIType_ShowUI_FullControllerBinding = 6, 1009 EShowUIType_ShowUI_ManageDrivers = 7, 1010} EShowUIType; 1011 1012typedef enum EHDCPError 1013{ 1014 EHDCPError_HDCPError_None = 0, 1015 EHDCPError_HDCPError_LinkLost = 1, 1016 EHDCPError_HDCPError_Tampered = 2, 1017 EHDCPError_HDCPError_DeviceRevoked = 3, 1018 EHDCPError_HDCPError_Unknown = 4, 1019} EHDCPError; 1020 1021typedef enum EVRComponentProperty 1022{ 1023 EVRComponentProperty_VRComponentProperty_IsStatic = 1, 1024 EVRComponentProperty_VRComponentProperty_IsVisible = 2, 1025 EVRComponentProperty_VRComponentProperty_IsTouched = 4, 1026 EVRComponentProperty_VRComponentProperty_IsPressed = 8, 1027 EVRComponentProperty_VRComponentProperty_IsScrolled = 16, 1028 EVRComponentProperty_VRComponentProperty_IsHighlighted = 32, 1029} EVRComponentProperty; 1030 1031typedef enum EVRInputError 1032{ 1033 EVRInputError_VRInputError_None = 0, 1034 EVRInputError_VRInputError_NameNotFound = 1, 1035 EVRInputError_VRInputError_WrongType = 2, 1036 EVRInputError_VRInputError_InvalidHandle = 3, 1037 EVRInputError_VRInputError_InvalidParam = 4, 1038 EVRInputError_VRInputError_NoSteam = 5, 1039 EVRInputError_VRInputError_MaxCapacityReached = 6, 1040 EVRInputError_VRInputError_IPCError = 7, 1041 EVRInputError_VRInputError_NoActiveActionSet = 8, 1042 EVRInputError_VRInputError_InvalidDevice = 9, 1043 EVRInputError_VRInputError_InvalidSkeleton = 10, 1044 EVRInputError_VRInputError_InvalidBoneCount = 11, 1045 EVRInputError_VRInputError_InvalidCompressedData = 12, 1046 EVRInputError_VRInputError_NoData = 13, 1047 EVRInputError_VRInputError_BufferTooSmall = 14, 1048 EVRInputError_VRInputError_MismatchedActionManifest = 15, 1049 EVRInputError_VRInputError_MissingSkeletonData = 16, 1050 EVRInputError_VRInputError_InvalidBoneIndex = 17, 1051 EVRInputError_VRInputError_InvalidPriority = 18, 1052 EVRInputError_VRInputError_PermissionDenied = 19, 1053 EVRInputError_VRInputError_InvalidRenderModel = 20, 1054} EVRInputError; 1055 1056typedef enum EVRSpatialAnchorError 1057{ 1058 EVRSpatialAnchorError_VRSpatialAnchorError_Success = 0, 1059 EVRSpatialAnchorError_VRSpatialAnchorError_Internal = 1, 1060 EVRSpatialAnchorError_VRSpatialAnchorError_UnknownHandle = 2, 1061 EVRSpatialAnchorError_VRSpatialAnchorError_ArrayTooSmall = 3, 1062 EVRSpatialAnchorError_VRSpatialAnchorError_InvalidDescriptorChar = 4, 1063 EVRSpatialAnchorError_VRSpatialAnchorError_NotYetAvailable = 5, 1064 EVRSpatialAnchorError_VRSpatialAnchorError_NotAvailableInThisUniverse = 6, 1065 EVRSpatialAnchorError_VRSpatialAnchorError_PermanentlyUnavailable = 7, 1066 EVRSpatialAnchorError_VRSpatialAnchorError_WrongDriver = 8, 1067 EVRSpatialAnchorError_VRSpatialAnchorError_DescriptorTooLong = 9, 1068 EVRSpatialAnchorError_VRSpatialAnchorError_Unknown = 10, 1069 EVRSpatialAnchorError_VRSpatialAnchorError_NoRoomCalibration = 11, 1070 EVRSpatialAnchorError_VRSpatialAnchorError_InvalidArgument = 12, 1071 EVRSpatialAnchorError_VRSpatialAnchorError_UnknownDriver = 13, 1072} EVRSpatialAnchorError; 1073 1074typedef enum EHiddenAreaMeshType 1075{ 1076 EHiddenAreaMeshType_k_eHiddenAreaMesh_Standard = 0, 1077 EHiddenAreaMeshType_k_eHiddenAreaMesh_Inverse = 1, 1078 EHiddenAreaMeshType_k_eHiddenAreaMesh_LineLoop = 2, 1079 EHiddenAreaMeshType_k_eHiddenAreaMesh_Max = 3, 1080} EHiddenAreaMeshType; 1081 1082typedef enum EVRControllerAxisType 1083{ 1084 EVRControllerAxisType_k_eControllerAxis_None = 0, 1085 EVRControllerAxisType_k_eControllerAxis_TrackPad = 1, 1086 EVRControllerAxisType_k_eControllerAxis_Joystick = 2, 1087 EVRControllerAxisType_k_eControllerAxis_Trigger = 3, 1088} EVRControllerAxisType; 1089 1090typedef enum EVRControllerEventOutputType 1091{ 1092 EVRControllerEventOutputType_ControllerEventOutput_OSEvents = 0, 1093 EVRControllerEventOutputType_ControllerEventOutput_VREvents = 1, 1094} EVRControllerEventOutputType; 1095 1096typedef enum ECollisionBoundsStyle 1097{ 1098 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_BEGINNER = 0, 1099 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_INTERMEDIATE = 1, 1100 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_SQUARES = 2, 1101 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_ADVANCED = 3, 1102 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_NONE = 4, 1103 ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_COUNT = 5, 1104} ECollisionBoundsStyle; 1105 1106typedef enum EVROverlayError 1107{ 1108 EVROverlayError_VROverlayError_None = 0, 1109 EVROverlayError_VROverlayError_UnknownOverlay = 10, 1110 EVROverlayError_VROverlayError_InvalidHandle = 11, 1111 EVROverlayError_VROverlayError_PermissionDenied = 12, 1112 EVROverlayError_VROverlayError_OverlayLimitExceeded = 13, 1113 EVROverlayError_VROverlayError_WrongVisibilityType = 14, 1114 EVROverlayError_VROverlayError_KeyTooLong = 15, 1115 EVROverlayError_VROverlayError_NameTooLong = 16, 1116 EVROverlayError_VROverlayError_KeyInUse = 17, 1117 EVROverlayError_VROverlayError_WrongTransformType = 18, 1118 EVROverlayError_VROverlayError_InvalidTrackedDevice = 19, 1119 EVROverlayError_VROverlayError_InvalidParameter = 20, 1120 EVROverlayError_VROverlayError_ThumbnailCantBeDestroyed = 21, 1121 EVROverlayError_VROverlayError_ArrayTooSmall = 22, 1122 EVROverlayError_VROverlayError_RequestFailed = 23, 1123 EVROverlayError_VROverlayError_InvalidTexture = 24, 1124 EVROverlayError_VROverlayError_UnableToLoadFile = 25, 1125 EVROverlayError_VROverlayError_KeyboardAlreadyInUse = 26, 1126 EVROverlayError_VROverlayError_NoNeighbor = 27, 1127 EVROverlayError_VROverlayError_TooManyMaskPrimitives = 29, 1128 EVROverlayError_VROverlayError_BadMaskPrimitive = 30, 1129 EVROverlayError_VROverlayError_TextureAlreadyLocked = 31, 1130 EVROverlayError_VROverlayError_TextureLockCapacityReached = 32, 1131 EVROverlayError_VROverlayError_TextureNotLocked = 33, 1132 EVROverlayError_VROverlayError_TimedOut = 34, 1133} EVROverlayError; 1134 1135typedef enum EVRApplicationType 1136{ 1137 EVRApplicationType_VRApplication_Other = 0, 1138 EVRApplicationType_VRApplication_Scene = 1, 1139 EVRApplicationType_VRApplication_Overlay = 2, 1140 EVRApplicationType_VRApplication_Background = 3, 1141 EVRApplicationType_VRApplication_Utility = 4, 1142 EVRApplicationType_VRApplication_VRMonitor = 5, 1143 EVRApplicationType_VRApplication_SteamWatchdog = 6, 1144 EVRApplicationType_VRApplication_Bootstrapper = 7, 1145 EVRApplicationType_VRApplication_WebHelper = 8, 1146 EVRApplicationType_VRApplication_OpenXRInstance = 9, 1147 EVRApplicationType_VRApplication_OpenXRScene = 10, 1148 EVRApplicationType_VRApplication_OpenXROverlay = 11, 1149 EVRApplicationType_VRApplication_Prism = 12, 1150 EVRApplicationType_VRApplication_RoomView = 13, 1151 EVRApplicationType_VRApplication_Max = 14, 1152} EVRApplicationType; 1153 1154typedef enum EVRFirmwareError 1155{ 1156 EVRFirmwareError_VRFirmwareError_None = 0, 1157 EVRFirmwareError_VRFirmwareError_Success = 1, 1158 EVRFirmwareError_VRFirmwareError_Fail = 2, 1159} EVRFirmwareError; 1160 1161typedef enum EVRNotificationError 1162{ 1163 EVRNotificationError_VRNotificationError_OK = 0, 1164 EVRNotificationError_VRNotificationError_InvalidNotificationId = 100, 1165 EVRNotificationError_VRNotificationError_NotificationQueueFull = 101, 1166 EVRNotificationError_VRNotificationError_InvalidOverlayHandle = 102, 1167 EVRNotificationError_VRNotificationError_SystemWithUserValueAlreadyExists = 103, 1168} EVRNotificationError; 1169 1170typedef enum EVRSkeletalMotionRange 1171{ 1172 EVRSkeletalMotionRange_VRSkeletalMotionRange_WithController = 0, 1173 EVRSkeletalMotionRange_VRSkeletalMotionRange_WithoutController = 1, 1174} EVRSkeletalMotionRange; 1175 1176typedef enum EVRSkeletalTrackingLevel 1177{ 1178 EVRSkeletalTrackingLevel_VRSkeletalTracking_Estimated = 0, 1179 EVRSkeletalTrackingLevel_VRSkeletalTracking_Partial = 1, 1180 EVRSkeletalTrackingLevel_VRSkeletalTracking_Full = 2, 1181 EVRSkeletalTrackingLevel_VRSkeletalTrackingLevel_Count = 3, 1182 EVRSkeletalTrackingLevel_VRSkeletalTrackingLevel_Max = 2, 1183} EVRSkeletalTrackingLevel; 1184 1185typedef enum EVRInitError 1186{ 1187 EVRInitError_VRInitError_None = 0, 1188 EVRInitError_VRInitError_Unknown = 1, 1189 EVRInitError_VRInitError_Init_InstallationNotFound = 100, 1190 EVRInitError_VRInitError_Init_InstallationCorrupt = 101, 1191 EVRInitError_VRInitError_Init_VRClientDLLNotFound = 102, 1192 EVRInitError_VRInitError_Init_FileNotFound = 103, 1193 EVRInitError_VRInitError_Init_FactoryNotFound = 104, 1194 EVRInitError_VRInitError_Init_InterfaceNotFound = 105, 1195 EVRInitError_VRInitError_Init_InvalidInterface = 106, 1196 EVRInitError_VRInitError_Init_UserConfigDirectoryInvalid = 107, 1197 EVRInitError_VRInitError_Init_HmdNotFound = 108, 1198 EVRInitError_VRInitError_Init_NotInitialized = 109, 1199 EVRInitError_VRInitError_Init_PathRegistryNotFound = 110, 1200 EVRInitError_VRInitError_Init_NoConfigPath = 111, 1201 EVRInitError_VRInitError_Init_NoLogPath = 112, 1202 EVRInitError_VRInitError_Init_PathRegistryNotWritable = 113, 1203 EVRInitError_VRInitError_Init_AppInfoInitFailed = 114, 1204 EVRInitError_VRInitError_Init_Retry = 115, 1205 EVRInitError_VRInitError_Init_InitCanceledByUser = 116, 1206 EVRInitError_VRInitError_Init_AnotherAppLaunching = 117, 1207 EVRInitError_VRInitError_Init_SettingsInitFailed = 118, 1208 EVRInitError_VRInitError_Init_ShuttingDown = 119, 1209 EVRInitError_VRInitError_Init_TooManyObjects = 120, 1210 EVRInitError_VRInitError_Init_NoServerForBackgroundApp = 121, 1211 EVRInitError_VRInitError_Init_NotSupportedWithCompositor = 122, 1212 EVRInitError_VRInitError_Init_NotAvailableToUtilityApps = 123, 1213 EVRInitError_VRInitError_Init_Internal = 124, 1214 EVRInitError_VRInitError_Init_HmdDriverIdIsNone = 125, 1215 EVRInitError_VRInitError_Init_HmdNotFoundPresenceFailed = 126, 1216 EVRInitError_VRInitError_Init_VRMonitorNotFound = 127, 1217 EVRInitError_VRInitError_Init_VRMonitorStartupFailed = 128, 1218 EVRInitError_VRInitError_Init_LowPowerWatchdogNotSupported = 129, 1219 EVRInitError_VRInitError_Init_InvalidApplicationType = 130, 1220 EVRInitError_VRInitError_Init_NotAvailableToWatchdogApps = 131, 1221 EVRInitError_VRInitError_Init_WatchdogDisabledInSettings = 132, 1222 EVRInitError_VRInitError_Init_VRDashboardNotFound = 133, 1223 EVRInitError_VRInitError_Init_VRDashboardStartupFailed = 134, 1224 EVRInitError_VRInitError_Init_VRHomeNotFound = 135, 1225 EVRInitError_VRInitError_Init_VRHomeStartupFailed = 136, 1226 EVRInitError_VRInitError_Init_RebootingBusy = 137, 1227 EVRInitError_VRInitError_Init_FirmwareUpdateBusy = 138, 1228 EVRInitError_VRInitError_Init_FirmwareRecoveryBusy = 139, 1229 EVRInitError_VRInitError_Init_USBServiceBusy = 140, 1230 EVRInitError_VRInitError_Init_VRWebHelperStartupFailed = 141, 1231 EVRInitError_VRInitError_Init_TrackerManagerInitFailed = 142, 1232 EVRInitError_VRInitError_Init_AlreadyRunning = 143, 1233 EVRInitError_VRInitError_Init_FailedForVrMonitor = 144, 1234 EVRInitError_VRInitError_Init_PropertyManagerInitFailed = 145, 1235 EVRInitError_VRInitError_Init_WebServerFailed = 146, 1236 EVRInitError_VRInitError_Init_IllegalTypeTransition = 147, 1237 EVRInitError_VRInitError_Init_MismatchedRuntimes = 148, 1238 EVRInitError_VRInitError_Init_InvalidProcessId = 149, 1239 EVRInitError_VRInitError_Init_VRServiceStartupFailed = 150, 1240 EVRInitError_VRInitError_Init_PrismNeedsNewDrivers = 151, 1241 EVRInitError_VRInitError_Init_PrismStartupTimedOut = 152, 1242 EVRInitError_VRInitError_Init_CouldNotStartPrism = 153, 1243 EVRInitError_VRInitError_Init_PrismClientInitFailed = 154, 1244 EVRInitError_VRInitError_Init_PrismClientStartFailed = 155, 1245 EVRInitError_VRInitError_Init_PrismExitedUnexpectedly = 156, 1246 EVRInitError_VRInitError_Init_BadLuid = 157, 1247 EVRInitError_VRInitError_Init_NoServerForAppContainer = 158, 1248 EVRInitError_VRInitError_Init_DuplicateBootstrapper = 159, 1249 EVRInitError_VRInitError_Init_VRDashboardServicePending = 160, 1250 EVRInitError_VRInitError_Init_VRDashboardServiceTimeout = 161, 1251 EVRInitError_VRInitError_Init_VRDashboardServiceStopped = 162, 1252 EVRInitError_VRInitError_Init_VRDashboardAlreadyStarted = 163, 1253 EVRInitError_VRInitError_Init_VRDashboardCopyFailed = 164, 1254 EVRInitError_VRInitError_Init_VRDashboardTokenFailure = 165, 1255 EVRInitError_VRInitError_Init_VRDashboardEnvironmentFailure = 166, 1256 EVRInitError_VRInitError_Init_VRDashboardPathFailure = 167, 1257 EVRInitError_VRInitError_Driver_Failed = 200, 1258 EVRInitError_VRInitError_Driver_Unknown = 201, 1259 EVRInitError_VRInitError_Driver_HmdUnknown = 202, 1260 EVRInitError_VRInitError_Driver_NotLoaded = 203, 1261 EVRInitError_VRInitError_Driver_RuntimeOutOfDate = 204, 1262 EVRInitError_VRInitError_Driver_HmdInUse = 205, 1263 EVRInitError_VRInitError_Driver_NotCalibrated = 206, 1264 EVRInitError_VRInitError_Driver_CalibrationInvalid = 207, 1265 EVRInitError_VRInitError_Driver_HmdDisplayNotFound = 208, 1266 EVRInitError_VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209, 1267 EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds = 211, 1268 EVRInitError_VRInitError_Driver_HmdDisplayMirrored = 212, 1269 EVRInitError_VRInitError_Driver_HmdDisplayNotFoundLaptop = 213, 1270 EVRInitError_VRInitError_Driver_PeerDriverNotInstalled = 214, 1271 EVRInitError_VRInitError_Driver_WirelessHmdNotConnected = 215, 1272 EVRInitError_VRInitError_IPC_ServerInitFailed = 300, 1273 EVRInitError_VRInitError_IPC_ConnectFailed = 301, 1274 EVRInitError_VRInitError_IPC_SharedStateInitFailed = 302, 1275 EVRInitError_VRInitError_IPC_CompositorInitFailed = 303, 1276 EVRInitError_VRInitError_IPC_MutexInitFailed = 304, 1277 EVRInitError_VRInitError_IPC_Failed = 305, 1278 EVRInitError_VRInitError_IPC_CompositorConnectFailed = 306, 1279 EVRInitError_VRInitError_IPC_CompositorInvalidConnectResponse = 307, 1280 EVRInitError_VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308, 1281 EVRInitError_VRInitError_IPC_ConnectFailedAfterTargetExited = 309, 1282 EVRInitError_VRInitError_IPC_NamespaceUnavailable = 310, 1283 EVRInitError_VRInitError_Compositor_Failed = 400, 1284 EVRInitError_VRInitError_Compositor_D3D11HardwareRequired = 401, 1285 EVRInitError_VRInitError_Compositor_FirmwareRequiresUpdate = 402, 1286 EVRInitError_VRInitError_Compositor_OverlayInitFailed = 403, 1287 EVRInitError_VRInitError_Compositor_ScreenshotsInitFailed = 404, 1288 EVRInitError_VRInitError_Compositor_UnableToCreateDevice = 405, 1289 EVRInitError_VRInitError_Compositor_SharedStateIsNull = 406, 1290 EVRInitError_VRInitError_Compositor_NotificationManagerIsNull = 407, 1291 EVRInitError_VRInitError_Compositor_ResourceManagerClientIsNull = 408, 1292 EVRInitError_VRInitError_Compositor_MessageOverlaySharedStateInitFailure = 409, 1293 EVRInitError_VRInitError_Compositor_PropertiesInterfaceIsNull = 410, 1294 EVRInitError_VRInitError_Compositor_CreateFullscreenWindowFailed = 411, 1295 EVRInitError_VRInitError_Compositor_SettingsInterfaceIsNull = 412, 1296 EVRInitError_VRInitError_Compositor_FailedToShowWindow = 413, 1297 EVRInitError_VRInitError_Compositor_DistortInterfaceIsNull = 414, 1298 EVRInitError_VRInitError_Compositor_DisplayFrequencyFailure = 415, 1299 EVRInitError_VRInitError_Compositor_RendererInitializationFailed = 416, 1300 EVRInitError_VRInitError_Compositor_DXGIFactoryInterfaceIsNull = 417, 1301 EVRInitError_VRInitError_Compositor_DXGIFactoryCreateFailed = 418, 1302 EVRInitError_VRInitError_Compositor_DXGIFactoryQueryFailed = 419, 1303 EVRInitError_VRInitError_Compositor_InvalidAdapterDesktop = 420, 1304 EVRInitError_VRInitError_Compositor_InvalidHmdAttachment = 421, 1305 EVRInitError_VRInitError_Compositor_InvalidOutputDesktop = 422, 1306 EVRInitError_VRInitError_Compositor_InvalidDeviceProvided = 423, 1307 EVRInitError_VRInitError_Compositor_D3D11RendererInitializationFailed = 424, 1308 EVRInitError_VRInitError_Compositor_FailedToFindDisplayMode = 425, 1309 EVRInitError_VRInitError_Compositor_FailedToCreateSwapChain = 426, 1310 EVRInitError_VRInitError_Compositor_FailedToGetBackBuffer = 427, 1311 EVRInitError_VRInitError_Compositor_FailedToCreateRenderTarget = 428, 1312 EVRInitError_VRInitError_Compositor_FailedToCreateDXGI2SwapChain = 429, 1313 EVRInitError_VRInitError_Compositor_FailedtoGetDXGI2BackBuffer = 430, 1314 EVRInitError_VRInitError_Compositor_FailedToCreateDXGI2RenderTarget = 431, 1315 EVRInitError_VRInitError_Compositor_FailedToGetDXGIDeviceInterface = 432, 1316 EVRInitError_VRInitError_Compositor_SelectDisplayMode = 433, 1317 EVRInitError_VRInitError_Compositor_FailedToCreateNvAPIRenderTargets = 434, 1318 EVRInitError_VRInitError_Compositor_NvAPISetDisplayMode = 435, 1319 EVRInitError_VRInitError_Compositor_FailedToCreateDirectModeDisplay = 436, 1320 EVRInitError_VRInitError_Compositor_InvalidHmdPropertyContainer = 437, 1321 EVRInitError_VRInitError_Compositor_UpdateDisplayFrequency = 438, 1322 EVRInitError_VRInitError_Compositor_CreateRasterizerState = 439, 1323 EVRInitError_VRInitError_Compositor_CreateWireframeRasterizerState = 440, 1324 EVRInitError_VRInitError_Compositor_CreateSamplerState = 441, 1325 EVRInitError_VRInitError_Compositor_CreateClampToBorderSamplerState = 442, 1326 EVRInitError_VRInitError_Compositor_CreateAnisoSamplerState = 443, 1327 EVRInitError_VRInitError_Compositor_CreateOverlaySamplerState = 444, 1328 EVRInitError_VRInitError_Compositor_CreatePanoramaSamplerState = 445, 1329 EVRInitError_VRInitError_Compositor_CreateFontSamplerState = 446, 1330 EVRInitError_VRInitError_Compositor_CreateNoBlendState = 447, 1331 EVRInitError_VRInitError_Compositor_CreateBlendState = 448, 1332 EVRInitError_VRInitError_Compositor_CreateAlphaBlendState = 449, 1333 EVRInitError_VRInitError_Compositor_CreateBlendStateMaskR = 450, 1334 EVRInitError_VRInitError_Compositor_CreateBlendStateMaskG = 451, 1335 EVRInitError_VRInitError_Compositor_CreateBlendStateMaskB = 452, 1336 EVRInitError_VRInitError_Compositor_CreateDepthStencilState = 453, 1337 EVRInitError_VRInitError_Compositor_CreateDepthStencilStateNoWrite = 454, 1338 EVRInitError_VRInitError_Compositor_CreateDepthStencilStateNoDepth = 455, 1339 EVRInitError_VRInitError_Compositor_CreateFlushTexture = 456, 1340 EVRInitError_VRInitError_Compositor_CreateDistortionSurfaces = 457, 1341 EVRInitError_VRInitError_Compositor_CreateConstantBuffer = 458, 1342 EVRInitError_VRInitError_Compositor_CreateHmdPoseConstantBuffer = 459, 1343 EVRInitError_VRInitError_Compositor_CreateHmdPoseStagingConstantBuffer = 460, 1344 EVRInitError_VRInitError_Compositor_CreateSharedFrameInfoConstantBuffer = 461, 1345 EVRInitError_VRInitError_Compositor_CreateOverlayConstantBuffer = 462, 1346 EVRInitError_VRInitError_Compositor_CreateSceneTextureIndexConstantBuffer = 463, 1347 EVRInitError_VRInitError_Compositor_CreateReadableSceneTextureIndexConstantBuffer = 464, 1348 EVRInitError_VRInitError_Compositor_CreateLayerGraphicsTextureIndexConstantBuffer = 465, 1349 EVRInitError_VRInitError_Compositor_CreateLayerComputeTextureIndexConstantBuffer = 466, 1350 EVRInitError_VRInitError_Compositor_CreateLayerComputeSceneTextureIndexConstantBuffer = 467, 1351 EVRInitError_VRInitError_Compositor_CreateComputeHmdPoseConstantBuffer = 468, 1352 EVRInitError_VRInitError_Compositor_CreateGeomConstantBuffer = 469, 1353 EVRInitError_VRInitError_Compositor_CreatePanelMaskConstantBuffer = 470, 1354 EVRInitError_VRInitError_Compositor_CreatePixelSimUBO = 471, 1355 EVRInitError_VRInitError_Compositor_CreateMSAARenderTextures = 472, 1356 EVRInitError_VRInitError_Compositor_CreateResolveRenderTextures = 473, 1357 EVRInitError_VRInitError_Compositor_CreateComputeResolveRenderTextures = 474, 1358 EVRInitError_VRInitError_Compositor_CreateDriverDirectModeResolveTextures = 475, 1359 EVRInitError_VRInitError_Compositor_OpenDriverDirectModeResolveTextures = 476, 1360 EVRInitError_VRInitError_Compositor_CreateFallbackSyncTexture = 477, 1361 EVRInitError_VRInitError_Compositor_ShareFallbackSyncTexture = 478, 1362 EVRInitError_VRInitError_Compositor_CreateOverlayIndexBuffer = 479, 1363 EVRInitError_VRInitError_Compositor_CreateOverlayVertexBuffer = 480, 1364 EVRInitError_VRInitError_Compositor_CreateTextVertexBuffer = 481, 1365 EVRInitError_VRInitError_Compositor_CreateTextIndexBuffer = 482, 1366 EVRInitError_VRInitError_Compositor_CreateMirrorTextures = 483, 1367 EVRInitError_VRInitError_Compositor_CreateLastFrameRenderTexture = 484, 1368 EVRInitError_VRInitError_Compositor_CreateMirrorOverlay = 485, 1369 EVRInitError_VRInitError_Compositor_FailedToCreateVirtualDisplayBackbuffer = 486, 1370 EVRInitError_VRInitError_Compositor_DisplayModeNotSupported = 487, 1371 EVRInitError_VRInitError_Compositor_CreateOverlayInvalidCall = 488, 1372 EVRInitError_VRInitError_Compositor_CreateOverlayAlreadyInitialized = 489, 1373 EVRInitError_VRInitError_Compositor_FailedToCreateMailbox = 490, 1374 EVRInitError_VRInitError_Compositor_WindowInterfaceIsNull = 491, 1375 EVRInitError_VRInitError_Compositor_SystemLayerCreateInstance = 492, 1376 EVRInitError_VRInitError_Compositor_SystemLayerCreateSession = 493, 1377 EVRInitError_VRInitError_Compoistor_CreateInverseDistortUVs = 494, 1378 EVRInitError_VRInitError_Compoistor_CreateBackbufferDepth = 495, 1379 EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000, 1380 EVRInitError_VRInitError_VendorSpecific_WindowsNotInDevMode = 1001, 1381 EVRInitError_VRInitError_VendorSpecific_OculusLinkNotEnabled = 1002, 1382 EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101, 1383 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102, 1384 EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103, 1385 EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104, 1386 EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105, 1387 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106, 1388 EVRInitError_VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107, 1389 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108, 1390 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109, 1391 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110, 1392 EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111, 1393 EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError = 1112, 1394 EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113, 1395 EVRInitError_VRInitError_VendorSpecific_OculusRuntimeBadInstall = 1114, 1396 EVRInitError_VRInitError_VendorSpecific_HmdFound_UnexpectedConfiguration_1 = 1115, 1397 EVRInitError_VRInitError_Steam_SteamInstallationNotFound = 2000, 1398 EVRInitError_VRInitError_LastError = 2001, 1399} EVRInitError; 1400 1401typedef enum EVRScreenshotType 1402{ 1403 EVRScreenshotType_VRScreenshotType_None = 0, 1404 EVRScreenshotType_VRScreenshotType_Mono = 1, 1405 EVRScreenshotType_VRScreenshotType_Stereo = 2, 1406 EVRScreenshotType_VRScreenshotType_Cubemap = 3, 1407 EVRScreenshotType_VRScreenshotType_MonoPanorama = 4, 1408 EVRScreenshotType_VRScreenshotType_StereoPanorama = 5, 1409} EVRScreenshotType; 1410 1411typedef enum EVRScreenshotPropertyFilenames 1412{ 1413 EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_Preview = 0, 1414 EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_VR = 1, 1415} EVRScreenshotPropertyFilenames; 1416 1417typedef enum EVRTrackedCameraError 1418{ 1419 EVRTrackedCameraError_VRTrackedCameraError_None = 0, 1420 EVRTrackedCameraError_VRTrackedCameraError_OperationFailed = 100, 1421 EVRTrackedCameraError_VRTrackedCameraError_InvalidHandle = 101, 1422 EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameHeaderVersion = 102, 1423 EVRTrackedCameraError_VRTrackedCameraError_OutOfHandles = 103, 1424 EVRTrackedCameraError_VRTrackedCameraError_IPCFailure = 104, 1425 EVRTrackedCameraError_VRTrackedCameraError_NotSupportedForThisDevice = 105, 1426 EVRTrackedCameraError_VRTrackedCameraError_SharedMemoryFailure = 106, 1427 EVRTrackedCameraError_VRTrackedCameraError_FrameBufferingFailure = 107, 1428 EVRTrackedCameraError_VRTrackedCameraError_StreamSetupFailure = 108, 1429 EVRTrackedCameraError_VRTrackedCameraError_InvalidGLTextureId = 109, 1430 EVRTrackedCameraError_VRTrackedCameraError_InvalidSharedTextureHandle = 110, 1431 EVRTrackedCameraError_VRTrackedCameraError_FailedToGetGLTextureId = 111, 1432 EVRTrackedCameraError_VRTrackedCameraError_SharedTextureFailure = 112, 1433 EVRTrackedCameraError_VRTrackedCameraError_NoFrameAvailable = 113, 1434 EVRTrackedCameraError_VRTrackedCameraError_InvalidArgument = 114, 1435 EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameBufferSize = 115, 1436} EVRTrackedCameraError; 1437 1438typedef enum EVRTrackedCameraFrameLayout 1439{ 1440 EVRTrackedCameraFrameLayout_Mono = 1, 1441 EVRTrackedCameraFrameLayout_Stereo = 2, 1442 EVRTrackedCameraFrameLayout_VerticalLayout = 16, 1443 EVRTrackedCameraFrameLayout_HorizontalLayout = 32, 1444} EVRTrackedCameraFrameLayout; 1445 1446typedef enum EVRTrackedCameraFrameType 1447{ 1448 EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Distorted = 0, 1449 EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Undistorted = 1, 1450 EVRTrackedCameraFrameType_VRTrackedCameraFrameType_MaximumUndistorted = 2, 1451 EVRTrackedCameraFrameType_MAX_CAMERA_FRAME_TYPES = 3, 1452} EVRTrackedCameraFrameType; 1453 1454typedef enum EVRDistortionFunctionType 1455{ 1456 EVRDistortionFunctionType_VRDistortionFunctionType_None = 0, 1457 EVRDistortionFunctionType_VRDistortionFunctionType_FTheta = 1, 1458 EVRDistortionFunctionType_VRDistortionFunctionType_Extended_FTheta = 2, 1459 EVRDistortionFunctionType_MAX_DISTORTION_FUNCTION_TYPES = 3, 1460} EVRDistortionFunctionType; 1461 1462typedef enum EVSync 1463{ 1464 EVSync_VSync_None = 0, 1465 EVSync_VSync_WaitRender = 1, 1466 EVSync_VSync_NoWaitRender = 2, 1467} EVSync; 1468 1469typedef enum EVRMuraCorrectionMode 1470{ 1471 EVRMuraCorrectionMode_Default = 0, 1472 EVRMuraCorrectionMode_NoCorrection = 1, 1473} EVRMuraCorrectionMode; 1474 1475typedef enum Imu_OffScaleFlags 1476{ 1477 Imu_OffScaleFlags_OffScale_AccelX = 1, 1478 Imu_OffScaleFlags_OffScale_AccelY = 2, 1479 Imu_OffScaleFlags_OffScale_AccelZ = 4, 1480 Imu_OffScaleFlags_OffScale_GyroX = 8, 1481 Imu_OffScaleFlags_OffScale_GyroY = 16, 1482 Imu_OffScaleFlags_OffScale_GyroZ = 32, 1483} Imu_OffScaleFlags; 1484 1485typedef enum EVRApplicationError 1486{ 1487 EVRApplicationError_VRApplicationError_None = 0, 1488 EVRApplicationError_VRApplicationError_AppKeyAlreadyExists = 100, 1489 EVRApplicationError_VRApplicationError_NoManifest = 101, 1490 EVRApplicationError_VRApplicationError_NoApplication = 102, 1491 EVRApplicationError_VRApplicationError_InvalidIndex = 103, 1492 EVRApplicationError_VRApplicationError_UnknownApplication = 104, 1493 EVRApplicationError_VRApplicationError_IPCFailed = 105, 1494 EVRApplicationError_VRApplicationError_ApplicationAlreadyRunning = 106, 1495 EVRApplicationError_VRApplicationError_InvalidManifest = 107, 1496 EVRApplicationError_VRApplicationError_InvalidApplication = 108, 1497 EVRApplicationError_VRApplicationError_LaunchFailed = 109, 1498 EVRApplicationError_VRApplicationError_ApplicationAlreadyStarting = 110, 1499 EVRApplicationError_VRApplicationError_LaunchInProgress = 111, 1500 EVRApplicationError_VRApplicationError_OldApplicationQuitting = 112, 1501 EVRApplicationError_VRApplicationError_TransitionAborted = 113, 1502 EVRApplicationError_VRApplicationError_IsTemplate = 114, 1503 EVRApplicationError_VRApplicationError_SteamVRIsExiting = 115, 1504 EVRApplicationError_VRApplicationError_BufferTooSmall = 200, 1505 EVRApplicationError_VRApplicationError_PropertyNotSet = 201, 1506 EVRApplicationError_VRApplicationError_UnknownProperty = 202, 1507 EVRApplicationError_VRApplicationError_InvalidParameter = 203, 1508 EVRApplicationError_VRApplicationError_NotImplemented = 300, 1509} EVRApplicationError; 1510 1511typedef enum EVRApplicationProperty 1512{ 1513 EVRApplicationProperty_VRApplicationProperty_Name_String = 0, 1514 EVRApplicationProperty_VRApplicationProperty_LaunchType_String = 11, 1515 EVRApplicationProperty_VRApplicationProperty_WorkingDirectory_String = 12, 1516 EVRApplicationProperty_VRApplicationProperty_BinaryPath_String = 13, 1517 EVRApplicationProperty_VRApplicationProperty_Arguments_String = 14, 1518 EVRApplicationProperty_VRApplicationProperty_URL_String = 15, 1519 EVRApplicationProperty_VRApplicationProperty_Description_String = 50, 1520 EVRApplicationProperty_VRApplicationProperty_NewsURL_String = 51, 1521 EVRApplicationProperty_VRApplicationProperty_ImagePath_String = 52, 1522 EVRApplicationProperty_VRApplicationProperty_Source_String = 53, 1523 EVRApplicationProperty_VRApplicationProperty_ActionManifestURL_String = 54, 1524 EVRApplicationProperty_VRApplicationProperty_IsDashboardOverlay_Bool = 60, 1525 EVRApplicationProperty_VRApplicationProperty_IsTemplate_Bool = 61, 1526 EVRApplicationProperty_VRApplicationProperty_IsInstanced_Bool = 62, 1527 EVRApplicationProperty_VRApplicationProperty_IsInternal_Bool = 63, 1528 EVRApplicationProperty_VRApplicationProperty_WantsCompositorPauseInStandby_Bool = 64, 1529 EVRApplicationProperty_VRApplicationProperty_IsHidden_Bool = 65, 1530 EVRApplicationProperty_VRApplicationProperty_LastLaunchTime_Uint64 = 70, 1531} EVRApplicationProperty; 1532 1533typedef enum EVRSceneApplicationState 1534{ 1535 EVRSceneApplicationState_None = 0, 1536 EVRSceneApplicationState_Starting = 1, 1537 EVRSceneApplicationState_Quitting = 2, 1538 EVRSceneApplicationState_Running = 3, 1539 EVRSceneApplicationState_Waiting = 4, 1540} EVRSceneApplicationState; 1541 1542typedef enum ChaperoneCalibrationState 1543{ 1544 ChaperoneCalibrationState_OK = 1, 1545 ChaperoneCalibrationState_Warning = 100, 1546 ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved = 101, 1547 ChaperoneCalibrationState_Warning_BaseStationRemoved = 102, 1548 ChaperoneCalibrationState_Warning_SeatedBoundsInvalid = 103, 1549 ChaperoneCalibrationState_Error = 200, 1550 ChaperoneCalibrationState_Error_BaseStationUninitialized = 201, 1551 ChaperoneCalibrationState_Error_BaseStationConflict = 202, 1552 ChaperoneCalibrationState_Error_PlayAreaInvalid = 203, 1553 ChaperoneCalibrationState_Error_CollisionBoundsInvalid = 204, 1554} ChaperoneCalibrationState; 1555 1556typedef enum EChaperoneConfigFile 1557{ 1558 EChaperoneConfigFile_Live = 1, 1559 EChaperoneConfigFile_Temp = 2, 1560} EChaperoneConfigFile; 1561 1562typedef enum EChaperoneImportFlags 1563{ 1564 EChaperoneImportFlags_EChaperoneImport_BoundsOnly = 1, 1565} EChaperoneImportFlags; 1566 1567typedef enum EVRCompositorError 1568{ 1569 EVRCompositorError_VRCompositorError_None = 0, 1570 EVRCompositorError_VRCompositorError_RequestFailed = 1, 1571 EVRCompositorError_VRCompositorError_IncompatibleVersion = 100, 1572 EVRCompositorError_VRCompositorError_DoNotHaveFocus = 101, 1573 EVRCompositorError_VRCompositorError_InvalidTexture = 102, 1574 EVRCompositorError_VRCompositorError_IsNotSceneApplication = 103, 1575 EVRCompositorError_VRCompositorError_TextureIsOnWrongDevice = 104, 1576 EVRCompositorError_VRCompositorError_TextureUsesUnsupportedFormat = 105, 1577 EVRCompositorError_VRCompositorError_SharedTexturesNotSupported = 106, 1578 EVRCompositorError_VRCompositorError_IndexOutOfRange = 107, 1579 EVRCompositorError_VRCompositorError_AlreadySubmitted = 108, 1580 EVRCompositorError_VRCompositorError_InvalidBounds = 109, 1581 EVRCompositorError_VRCompositorError_AlreadySet = 110, 1582} EVRCompositorError; 1583 1584typedef enum EVRCompositorTimingMode 1585{ 1586 EVRCompositorTimingMode_VRCompositorTimingMode_Implicit = 0, 1587 EVRCompositorTimingMode_VRCompositorTimingMode_Explicit_RuntimePerformsPostPresentHandoff = 1, 1588 EVRCompositorTimingMode_VRCompositorTimingMode_Explicit_ApplicationPerformsPostPresentHandoff = 2, 1589} EVRCompositorTimingMode; 1590 1591typedef enum VROverlayInputMethod 1592{ 1593 VROverlayInputMethod_None = 0, 1594 VROverlayInputMethod_Mouse = 1, 1595} VROverlayInputMethod; 1596 1597typedef enum VROverlayTransformType 1598{ 1599 VROverlayTransformType_VROverlayTransform_Invalid = -1, 1600 VROverlayTransformType_VROverlayTransform_Absolute = 0, 1601 VROverlayTransformType_VROverlayTransform_TrackedDeviceRelative = 1, 1602 VROverlayTransformType_VROverlayTransform_SystemOverlay = 2, 1603 VROverlayTransformType_VROverlayTransform_TrackedComponent = 3, 1604 VROverlayTransformType_VROverlayTransform_Cursor = 4, 1605 VROverlayTransformType_VROverlayTransform_DashboardTab = 5, 1606 VROverlayTransformType_VROverlayTransform_DashboardThumb = 6, 1607 VROverlayTransformType_VROverlayTransform_Mountable = 7, 1608 VROverlayTransformType_VROverlayTransform_Projection = 8, 1609} VROverlayTransformType; 1610 1611typedef enum VROverlayFlags 1612{ 1613 VROverlayFlags_NoDashboardTab = 8, 1614 VROverlayFlags_SendVRDiscreteScrollEvents = 64, 1615 VROverlayFlags_SendVRTouchpadEvents = 128, 1616 VROverlayFlags_ShowTouchPadScrollWheel = 256, 1617 VROverlayFlags_TransferOwnershipToInternalProcess = 512, 1618 VROverlayFlags_SideBySide_Parallel = 1024, 1619 VROverlayFlags_SideBySide_Crossed = 2048, 1620 VROverlayFlags_Panorama = 4096, 1621 VROverlayFlags_StereoPanorama = 8192, 1622 VROverlayFlags_SortWithNonSceneOverlays = 16384, 1623 VROverlayFlags_VisibleInDashboard = 32768, 1624 VROverlayFlags_MakeOverlaysInteractiveIfVisible = 65536, 1625 VROverlayFlags_SendVRSmoothScrollEvents = 131072, 1626 VROverlayFlags_ProtectedContent = 262144, 1627 VROverlayFlags_HideLaserIntersection = 524288, 1628 VROverlayFlags_WantsModalBehavior = 1048576, 1629 VROverlayFlags_IsPremultiplied = 2097152, 1630 VROverlayFlags_IgnoreTextureAlpha = 4194304, 1631 VROverlayFlags_EnableControlBar = 8388608, 1632 VROverlayFlags_EnableControlBarKeyboard = 16777216, 1633 VROverlayFlags_EnableControlBarClose = 33554432, 1634} VROverlayFlags; 1635 1636typedef enum VRMessageOverlayResponse 1637{ 1638 VRMessageOverlayResponse_ButtonPress_0 = 0, 1639 VRMessageOverlayResponse_ButtonPress_1 = 1, 1640 VRMessageOverlayResponse_ButtonPress_2 = 2, 1641 VRMessageOverlayResponse_ButtonPress_3 = 3, 1642 VRMessageOverlayResponse_CouldntFindSystemOverlay = 4, 1643 VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay = 5, 1644 VRMessageOverlayResponse_ApplicationQuit = 6, 1645} VRMessageOverlayResponse; 1646 1647typedef enum EGamepadTextInputMode 1648{ 1649 EGamepadTextInputMode_k_EGamepadTextInputModeNormal = 0, 1650 EGamepadTextInputMode_k_EGamepadTextInputModePassword = 1, 1651 EGamepadTextInputMode_k_EGamepadTextInputModeSubmit = 2, 1652} EGamepadTextInputMode; 1653 1654typedef enum EGamepadTextInputLineMode 1655{ 1656 EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine = 0, 1657 EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines = 1, 1658} EGamepadTextInputLineMode; 1659 1660typedef enum EVROverlayIntersectionMaskPrimitiveType 1661{ 1662 EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Rectangle = 0, 1663 EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Circle = 1, 1664} EVROverlayIntersectionMaskPrimitiveType; 1665 1666typedef enum EKeyboardFlags 1667{ 1668 EKeyboardFlags_KeyboardFlag_Minimal = 1, 1669 EKeyboardFlags_KeyboardFlag_Modal = 2, 1670} EKeyboardFlags; 1671 1672typedef enum EDeviceType 1673{ 1674 EDeviceType_DeviceType_Invalid = -1, 1675 EDeviceType_DeviceType_DirectX11 = 0, 1676 EDeviceType_DeviceType_Vulkan = 1, 1677} EDeviceType; 1678 1679typedef enum HeadsetViewMode_t 1680{ 1681 HeadsetViewMode_t_HeadsetViewMode_Left = 0, 1682 HeadsetViewMode_t_HeadsetViewMode_Right = 1, 1683 HeadsetViewMode_t_HeadsetViewMode_Both = 2, 1684} HeadsetViewMode_t; 1685 1686typedef enum EVRRenderModelError 1687{ 1688 EVRRenderModelError_VRRenderModelError_None = 0, 1689 EVRRenderModelError_VRRenderModelError_Loading = 100, 1690 EVRRenderModelError_VRRenderModelError_NotSupported = 200, 1691 EVRRenderModelError_VRRenderModelError_InvalidArg = 300, 1692 EVRRenderModelError_VRRenderModelError_InvalidModel = 301, 1693 EVRRenderModelError_VRRenderModelError_NoShapes = 302, 1694 EVRRenderModelError_VRRenderModelError_MultipleShapes = 303, 1695 EVRRenderModelError_VRRenderModelError_TooManyVertices = 304, 1696 EVRRenderModelError_VRRenderModelError_MultipleTextures = 305, 1697 EVRRenderModelError_VRRenderModelError_BufferTooSmall = 306, 1698 EVRRenderModelError_VRRenderModelError_NotEnoughNormals = 307, 1699 EVRRenderModelError_VRRenderModelError_NotEnoughTexCoords = 308, 1700 EVRRenderModelError_VRRenderModelError_InvalidTexture = 400, 1701} EVRRenderModelError; 1702 1703typedef enum EVRRenderModelTextureFormat 1704{ 1705 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_RGBA8_SRGB = 0, 1706 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC2 = 1, 1707 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC4 = 2, 1708 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC7 = 3, 1709 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_BC7_SRGB = 4, 1710 EVRRenderModelTextureFormat_VRRenderModelTextureFormat_RGBA16_FLOAT = 5, 1711} EVRRenderModelTextureFormat; 1712 1713typedef enum EVRNotificationType 1714{ 1715 EVRNotificationType_Transient = 0, 1716 EVRNotificationType_Persistent = 1, 1717 EVRNotificationType_Transient_SystemWithUserValue = 2, 1718} EVRNotificationType; 1719 1720typedef enum EVRNotificationStyle 1721{ 1722 EVRNotificationStyle_None = 0, 1723 EVRNotificationStyle_Application = 100, 1724 EVRNotificationStyle_Contact_Disabled = 200, 1725 EVRNotificationStyle_Contact_Enabled = 201, 1726 EVRNotificationStyle_Contact_Active = 202, 1727} EVRNotificationStyle; 1728 1729typedef enum EVRSettingsError 1730{ 1731 EVRSettingsError_VRSettingsError_None = 0, 1732 EVRSettingsError_VRSettingsError_IPCFailed = 1, 1733 EVRSettingsError_VRSettingsError_WriteFailed = 2, 1734 EVRSettingsError_VRSettingsError_ReadFailed = 3, 1735 EVRSettingsError_VRSettingsError_JsonParseFailed = 4, 1736 EVRSettingsError_VRSettingsError_UnsetSettingHasNoDefault = 5, 1737} EVRSettingsError; 1738 1739typedef enum EVRScreenshotError 1740{ 1741 EVRScreenshotError_VRScreenshotError_None = 0, 1742 EVRScreenshotError_VRScreenshotError_RequestFailed = 1, 1743 EVRScreenshotError_VRScreenshotError_IncompatibleVersion = 100, 1744 EVRScreenshotError_VRScreenshotError_NotFound = 101, 1745 EVRScreenshotError_VRScreenshotError_BufferTooSmall = 102, 1746 EVRScreenshotError_VRScreenshotError_ScreenshotAlreadyInProgress = 108, 1747} EVRScreenshotError; 1748 1749typedef enum EVRSkeletalTransformSpace 1750{ 1751 EVRSkeletalTransformSpace_VRSkeletalTransformSpace_Model = 0, 1752 EVRSkeletalTransformSpace_VRSkeletalTransformSpace_Parent = 1, 1753} EVRSkeletalTransformSpace; 1754 1755typedef enum EVRSkeletalReferencePose 1756{ 1757 EVRSkeletalReferencePose_VRSkeletalReferencePose_BindPose = 0, 1758 EVRSkeletalReferencePose_VRSkeletalReferencePose_OpenHand = 1, 1759 EVRSkeletalReferencePose_VRSkeletalReferencePose_Fist = 2, 1760 EVRSkeletalReferencePose_VRSkeletalReferencePose_GripLimit = 3, 1761} EVRSkeletalReferencePose; 1762 1763typedef enum EVRFinger 1764{ 1765 EVRFinger_VRFinger_Thumb = 0, 1766 EVRFinger_VRFinger_Index = 1, 1767 EVRFinger_VRFinger_Middle = 2, 1768 EVRFinger_VRFinger_Ring = 3, 1769 EVRFinger_VRFinger_Pinky = 4, 1770 EVRFinger_VRFinger_Count = 5, 1771} EVRFinger; 1772 1773typedef enum EVRFingerSplay 1774{ 1775 EVRFingerSplay_VRFingerSplay_Thumb_Index = 0, 1776 EVRFingerSplay_VRFingerSplay_Index_Middle = 1, 1777 EVRFingerSplay_VRFingerSplay_Middle_Ring = 2, 1778 EVRFingerSplay_VRFingerSplay_Ring_Pinky = 3, 1779 EVRFingerSplay_VRFingerSplay_Count = 4, 1780} EVRFingerSplay; 1781 1782typedef enum EVRSummaryType 1783{ 1784 EVRSummaryType_VRSummaryType_FromAnimation = 0, 1785 EVRSummaryType_VRSummaryType_FromDevice = 1, 1786} EVRSummaryType; 1787 1788typedef enum EVRInputFilterCancelType 1789{ 1790 EVRInputFilterCancelType_VRInputFilterCancel_Timers = 0, 1791 EVRInputFilterCancelType_VRInputFilterCancel_Momentum = 1, 1792} EVRInputFilterCancelType; 1793 1794typedef enum EVRInputStringBits 1795{ 1796 EVRInputStringBits_VRInputString_Hand = 1, 1797 EVRInputStringBits_VRInputString_ControllerType = 2, 1798 EVRInputStringBits_VRInputString_InputSource = 4, 1799 EVRInputStringBits_VRInputString_All = -1, 1800} EVRInputStringBits; 1801 1802typedef enum EIOBufferError 1803{ 1804 EIOBufferError_IOBuffer_Success = 0, 1805 EIOBufferError_IOBuffer_OperationFailed = 100, 1806 EIOBufferError_IOBuffer_InvalidHandle = 101, 1807 EIOBufferError_IOBuffer_InvalidArgument = 102, 1808 EIOBufferError_IOBuffer_PathExists = 103, 1809 EIOBufferError_IOBuffer_PathDoesNotExist = 104, 1810 EIOBufferError_IOBuffer_Permission = 105, 1811} EIOBufferError; 1812 1813typedef enum EIOBufferMode 1814{ 1815 EIOBufferMode_IOBufferMode_Read = 1, 1816 EIOBufferMode_IOBufferMode_Write = 2, 1817 EIOBufferMode_IOBufferMode_Create = 512, 1818} EIOBufferMode; 1819 1820typedef enum EVRDebugError 1821{ 1822 EVRDebugError_VRDebugError_Success = 0, 1823 EVRDebugError_VRDebugError_BadParameter = 1, 1824} EVRDebugError; 1825 1826typedef enum EPropertyWriteType 1827{ 1828 EPropertyWriteType_PropertyWrite_Set = 0, 1829 EPropertyWriteType_PropertyWrite_Erase = 1, 1830 EPropertyWriteType_PropertyWrite_SetError = 2, 1831} EPropertyWriteType; 1832 1833typedef enum EBlockQueueError 1834{ 1835 EBlockQueueError_BlockQueueError_None = 0, 1836 EBlockQueueError_BlockQueueError_QueueAlreadyExists = 1, 1837 EBlockQueueError_BlockQueueError_QueueNotFound = 2, 1838 EBlockQueueError_BlockQueueError_BlockNotAvailable = 3, 1839 EBlockQueueError_BlockQueueError_InvalidHandle = 4, 1840 EBlockQueueError_BlockQueueError_InvalidParam = 5, 1841 EBlockQueueError_BlockQueueError_ParamMismatch = 6, 1842 EBlockQueueError_BlockQueueError_InternalError = 7, 1843 EBlockQueueError_BlockQueueError_AlreadyInitialized = 8, 1844 EBlockQueueError_BlockQueueError_OperationIsServerOnly = 9, 1845 EBlockQueueError_BlockQueueError_TooManyConnections = 10, 1846} EBlockQueueError; 1847 1848typedef enum EBlockQueueReadType 1849{ 1850 EBlockQueueReadType_BlockQueueRead_Latest = 0, 1851 EBlockQueueReadType_BlockQueueRead_New = 1, 1852 EBlockQueueReadType_BlockQueueRead_Next = 2, 1853} EBlockQueueReadType; 1854 1855typedef enum EBlockQueueCreationFlag 1856{ 1857 EBlockQueueCreationFlag_BlockQueueFlag_OwnerIsReader = 1, 1858} EBlockQueueCreationFlag; 1859 1860 1861// OpenVR typedefs 1862 1863typedef uint32_t PropertyTypeTag_t; 1864typedef uint32_t SpatialAnchorHandle_t; 1865typedef void * glSharedTextureHandle_t; 1866typedef int32_t glInt_t; 1867typedef uint32_t glUInt_t; 1868typedef uint64_t SharedTextureHandle_t; 1869typedef uint32_t DriverId_t; 1870typedef uint32_t TrackedDeviceIndex_t; 1871typedef uint64_t WebConsoleHandle_t; 1872typedef uint64_t PropertyContainerHandle_t; 1873typedef PropertyContainerHandle_t DriverHandle_t; 1874typedef uint64_t VRActionHandle_t; 1875typedef uint64_t VRActionSetHandle_t; 1876typedef uint64_t VRInputValueHandle_t; 1877typedef uint32_t VRComponentProperties; 1878typedef uint64_t VROverlayHandle_t; 1879typedef int32_t BoneIndex_t; 1880typedef uint64_t TrackedCameraHandle_t; 1881typedef uint32_t ScreenshotHandle_t; 1882typedef int32_t TextureID_t; 1883typedef uint32_t VRNotificationId; 1884typedef uint64_t IOBufferHandle_t; 1885typedef uint64_t VrProfilerEventHandle_t; 1886typedef EVRInitError HmdError; 1887typedef EVREye Hmd_Eye; 1888typedef EColorSpace ColorSpace; 1889typedef ETrackingResult HmdTrackingResult; 1890typedef ETrackedDeviceClass TrackedDeviceClass; 1891typedef ETrackingUniverseOrigin TrackingUniverseOrigin; 1892typedef ETrackedDeviceProperty TrackedDeviceProperty; 1893typedef ETrackedPropertyError TrackedPropertyError; 1894typedef EVRSubmitFlags VRSubmitFlags_t; 1895typedef EVRState VRState_t; 1896typedef ECollisionBoundsStyle CollisionBoundsStyle_t; 1897typedef EVROverlayError VROverlayError; 1898typedef EVRFirmwareError VRFirmwareError; 1899typedef EVRCompositorError VRCompositorError; 1900typedef EVRScreenshotError VRScreenshotsError; 1901typedef uint64_t PathHandle_t; 1902 1903// OpenVR Structs 1904 1905typedef struct HmdMatrix34_t 1906{ 1907 float m[3][4]; //float[3][4] 1908} HmdMatrix34_t; 1909 1910typedef struct HmdMatrix33_t 1911{ 1912 float m[3][3]; //float[3][3] 1913} HmdMatrix33_t; 1914 1915typedef struct HmdMatrix44_t 1916{ 1917 float m[4][4]; //float[4][4] 1918} HmdMatrix44_t; 1919 1920typedef struct HmdVector3_t 1921{ 1922 float v[3]; //float[3] 1923} HmdVector3_t; 1924 1925typedef struct HmdVector4_t 1926{ 1927 float v[4]; //float[4] 1928} HmdVector4_t; 1929 1930typedef struct HmdVector3d_t 1931{ 1932 double v[3]; //double[3] 1933} HmdVector3d_t; 1934 1935typedef struct HmdVector2_t 1936{ 1937 float v[2]; //float[2] 1938} HmdVector2_t; 1939 1940typedef struct HmdQuaternion_t 1941{ 1942 double w; 1943 double x; 1944 double y; 1945 double z; 1946} HmdQuaternion_t; 1947 1948typedef struct HmdQuaternionf_t 1949{ 1950 float w; 1951 float x; 1952 float y; 1953 float z; 1954} HmdQuaternionf_t; 1955 1956typedef struct HmdColor_t 1957{ 1958 float r; 1959 float g; 1960 float b; 1961 float a; 1962} HmdColor_t; 1963 1964typedef struct HmdQuad_t 1965{ 1966 struct HmdVector3_t vCorners[4]; //struct vr::HmdVector3_t[4] 1967} HmdQuad_t; 1968 1969typedef struct HmdRect2_t 1970{ 1971 struct HmdVector2_t vTopLeft; 1972 struct HmdVector2_t vBottomRight; 1973} HmdRect2_t; 1974 1975typedef struct VRBoneTransform_t 1976{ 1977 struct HmdVector4_t position; 1978 struct HmdQuaternionf_t orientation; 1979} VRBoneTransform_t; 1980 1981typedef struct DistortionCoordinates_t 1982{ 1983 float rfRed[2]; //float[2] 1984 float rfGreen[2]; //float[2] 1985 float rfBlue[2]; //float[2] 1986} DistortionCoordinates_t; 1987 1988typedef struct Texture_t 1989{ 1990 void * handle; // void * 1991 enum ETextureType eType; 1992 enum EColorSpace eColorSpace; 1993} Texture_t; 1994 1995typedef struct TrackedDevicePose_t 1996{ 1997 struct HmdMatrix34_t mDeviceToAbsoluteTracking; 1998 struct HmdVector3_t vVelocity; 1999 struct HmdVector3_t vAngularVelocity; 2000 enum ETrackingResult eTrackingResult; 2001 bool bPoseIsValid; 2002 bool bDeviceIsConnected; 2003} TrackedDevicePose_t; 2004 2005typedef struct VRTextureBounds_t 2006{ 2007 float uMin; 2008 float vMin; 2009 float uMax; 2010 float vMax; 2011} VRTextureBounds_t; 2012 2013typedef struct VRTextureWithPose_t 2014{ 2015 void * handle; // void * 2016 enum ETextureType eType; 2017 enum EColorSpace eColorSpace; 2018 struct HmdMatrix34_t mDeviceToAbsoluteTracking; 2019} VRTextureWithPose_t; 2020 2021typedef struct VRTextureDepthInfo_t 2022{ 2023 void * handle; // void * 2024 struct HmdMatrix44_t mProjection; 2025 struct HmdVector2_t vRange; 2026} VRTextureDepthInfo_t; 2027 2028typedef struct VRTextureWithDepth_t 2029{ 2030 void * handle; // void * 2031 enum ETextureType eType; 2032 enum EColorSpace eColorSpace; 2033 struct VRTextureDepthInfo_t depth; 2034} VRTextureWithDepth_t; 2035 2036typedef struct VRTextureWithPoseAndDepth_t 2037{ 2038 void * handle; // void * 2039 enum ETextureType eType; 2040 enum EColorSpace eColorSpace; 2041 struct HmdMatrix34_t mDeviceToAbsoluteTracking; 2042 struct VRTextureDepthInfo_t depth; 2043} VRTextureWithPoseAndDepth_t; 2044 2045typedef struct VRVulkanTextureData_t 2046{ 2047 uint64_t m_nImage; 2048 struct VkDevice_T * m_pDevice; // struct VkDevice_T * 2049 struct VkPhysicalDevice_T * m_pPhysicalDevice; // struct VkPhysicalDevice_T * 2050 struct VkInstance_T * m_pInstance; // struct VkInstance_T * 2051 struct VkQueue_T * m_pQueue; // struct VkQueue_T * 2052 uint32_t m_nQueueFamilyIndex; 2053 uint32_t m_nWidth; 2054 uint32_t m_nHeight; 2055 uint32_t m_nFormat; 2056 uint32_t m_nSampleCount; 2057} VRVulkanTextureData_t; 2058 2059typedef struct VRVulkanTextureArrayData_t 2060{ 2061 uint32_t m_unArrayIndex; 2062 uint32_t m_unArraySize; 2063} VRVulkanTextureArrayData_t; 2064 2065typedef struct D3D12TextureData_t 2066{ 2067 struct ID3D12Resource * m_pResource; // struct ID3D12Resource * 2068 struct ID3D12CommandQueue * m_pCommandQueue; // struct ID3D12CommandQueue * 2069 uint32_t m_nNodeMask; 2070} D3D12TextureData_t; 2071 2072typedef struct VREvent_Controller_t 2073{ 2074 uint32_t button; 2075} VREvent_Controller_t; 2076 2077typedef struct VREvent_Mouse_t 2078{ 2079 float x; 2080 float y; 2081 uint32_t button; 2082} VREvent_Mouse_t; 2083 2084typedef struct VREvent_Scroll_t 2085{ 2086 float xdelta; 2087 float ydelta; 2088 uint32_t unused; 2089 float viewportscale; 2090} VREvent_Scroll_t; 2091 2092typedef struct VREvent_TouchPadMove_t 2093{ 2094 bool bFingerDown; 2095 float flSecondsFingerDown; 2096 float fValueXFirst; 2097 float fValueYFirst; 2098 float fValueXRaw; 2099 float fValueYRaw; 2100} VREvent_TouchPadMove_t; 2101 2102typedef struct VREvent_Notification_t 2103{ 2104 uint64_t ulUserValue; 2105 uint32_t notificationId; 2106} VREvent_Notification_t; 2107 2108typedef struct VREvent_Process_t 2109{ 2110 uint32_t pid; 2111 uint32_t oldPid; 2112 bool bForced; 2113 bool bConnectionLost; 2114} VREvent_Process_t; 2115 2116typedef struct VREvent_Overlay_t 2117{ 2118 uint64_t overlayHandle; 2119 uint64_t devicePath; 2120 uint64_t memoryBlockId; 2121} VREvent_Overlay_t; 2122 2123typedef struct VREvent_Status_t 2124{ 2125 uint32_t statusState; 2126} VREvent_Status_t; 2127 2128typedef struct VREvent_Keyboard_t 2129{ 2130 char cNewInput[8]; //char[8] 2131 uint64_t uUserValue; 2132} VREvent_Keyboard_t; 2133 2134typedef struct VREvent_Ipd_t 2135{ 2136 float ipdMeters; 2137} VREvent_Ipd_t; 2138 2139typedef struct VREvent_Chaperone_t 2140{ 2141 uint64_t m_nPreviousUniverse; 2142 uint64_t m_nCurrentUniverse; 2143} VREvent_Chaperone_t; 2144 2145typedef struct VREvent_Reserved_t 2146{ 2147 uint64_t reserved0; 2148 uint64_t reserved1; 2149 uint64_t reserved2; 2150 uint64_t reserved3; 2151 uint64_t reserved4; 2152 uint64_t reserved5; 2153} VREvent_Reserved_t; 2154 2155typedef struct VREvent_PerformanceTest_t 2156{ 2157 uint32_t m_nFidelityLevel; 2158} VREvent_PerformanceTest_t; 2159 2160typedef struct VREvent_SeatedZeroPoseReset_t 2161{ 2162 bool bResetBySystemMenu; 2163} VREvent_SeatedZeroPoseReset_t; 2164 2165typedef struct VREvent_Screenshot_t 2166{ 2167 uint32_t handle; 2168 uint32_t type; 2169} VREvent_Screenshot_t; 2170 2171typedef struct VREvent_ScreenshotProgress_t 2172{ 2173 float progress; 2174} VREvent_ScreenshotProgress_t; 2175 2176typedef struct VREvent_ApplicationLaunch_t 2177{ 2178 uint32_t pid; 2179 uint32_t unArgsHandle; 2180} VREvent_ApplicationLaunch_t; 2181 2182typedef struct VREvent_EditingCameraSurface_t 2183{ 2184 uint64_t overlayHandle; 2185 uint32_t nVisualMode; 2186} VREvent_EditingCameraSurface_t; 2187 2188typedef struct VREvent_MessageOverlay_t 2189{ 2190 uint32_t unVRMessageOverlayResponse; 2191} VREvent_MessageOverlay_t; 2192 2193typedef struct VREvent_Property_t 2194{ 2195 PropertyContainerHandle_t container; 2196 enum ETrackedDeviceProperty prop; 2197} VREvent_Property_t; 2198 2199typedef struct VREvent_HapticVibration_t 2200{ 2201 uint64_t containerHandle; 2202 uint64_t componentHandle; 2203 float fDurationSeconds; 2204 float fFrequency; 2205 float fAmplitude; 2206} VREvent_HapticVibration_t; 2207 2208typedef struct VREvent_WebConsole_t 2209{ 2210 WebConsoleHandle_t webConsoleHandle; 2211} VREvent_WebConsole_t; 2212 2213typedef struct VREvent_InputBindingLoad_t 2214{ 2215 PropertyContainerHandle_t ulAppContainer; 2216 uint64_t pathMessage; 2217 uint64_t pathUrl; 2218 uint64_t pathControllerType; 2219} VREvent_InputBindingLoad_t; 2220 2221typedef struct VREvent_InputActionManifestLoad_t 2222{ 2223 uint64_t pathAppKey; 2224 uint64_t pathMessage; 2225 uint64_t pathMessageParam; 2226 uint64_t pathManifestPath; 2227} VREvent_InputActionManifestLoad_t; 2228 2229typedef struct VREvent_SpatialAnchor_t 2230{ 2231 SpatialAnchorHandle_t unHandle; 2232} VREvent_SpatialAnchor_t; 2233 2234typedef struct VREvent_ProgressUpdate_t 2235{ 2236 uint64_t ulApplicationPropertyContainer; 2237 uint64_t pathDevice; 2238 uint64_t pathInputSource; 2239 uint64_t pathProgressAction; 2240 uint64_t pathIcon; 2241 float fProgress; 2242} VREvent_ProgressUpdate_t; 2243 2244typedef struct VREvent_ShowUI_t 2245{ 2246 enum EShowUIType eType; 2247} VREvent_ShowUI_t; 2248 2249typedef struct VREvent_ShowDevTools_t 2250{ 2251 int32_t nBrowserIdentifier; 2252} VREvent_ShowDevTools_t; 2253 2254typedef struct VREvent_HDCPError_t 2255{ 2256 enum EHDCPError eCode; 2257} VREvent_HDCPError_t; 2258 2259typedef struct RenderModel_ComponentState_t 2260{ 2261 struct HmdMatrix34_t mTrackingToComponentRenderModel; 2262 struct HmdMatrix34_t mTrackingToComponentLocal; 2263 VRComponentProperties uProperties; 2264} RenderModel_ComponentState_t; 2265 2266typedef struct HiddenAreaMesh_t 2267{ 2268 struct HmdVector2_t * pVertexData; // const struct vr::HmdVector2_t * 2269 uint32_t unTriangleCount; 2270} HiddenAreaMesh_t; 2271 2272typedef struct VRControllerAxis_t 2273{ 2274 float x; 2275 float y; 2276} VRControllerAxis_t; 2277 2278typedef struct VRControllerState_t 2279{ 2280 uint32_t unPacketNum; 2281 uint64_t ulButtonPressed; 2282 uint64_t ulButtonTouched; 2283 struct VRControllerAxis_t rAxis[5]; //struct vr::VRControllerAxis_t[5] 2284} VRControllerState_t; 2285 2286typedef struct CameraVideoStreamFrameHeader_t 2287{ 2288 enum EVRTrackedCameraFrameType eFrameType; 2289 uint32_t nWidth; 2290 uint32_t nHeight; 2291 uint32_t nBytesPerPixel; 2292 uint32_t nFrameSequence; 2293 struct TrackedDevicePose_t trackedDevicePose; 2294 uint64_t ulFrameExposureTime; 2295} CameraVideoStreamFrameHeader_t; 2296 2297typedef struct Compositor_FrameTiming 2298{ 2299 uint32_t m_nSize; 2300 uint32_t m_nFrameIndex; 2301 uint32_t m_nNumFramePresents; 2302 uint32_t m_nNumMisPresented; 2303 uint32_t m_nNumDroppedFrames; 2304 uint32_t m_nReprojectionFlags; 2305 double m_flSystemTimeInSeconds; 2306 float m_flPreSubmitGpuMs; 2307 float m_flPostSubmitGpuMs; 2308 float m_flTotalRenderGpuMs; 2309 float m_flCompositorRenderGpuMs; 2310 float m_flCompositorRenderCpuMs; 2311 float m_flCompositorIdleCpuMs; 2312 float m_flClientFrameIntervalMs; 2313 float m_flPresentCallCpuMs; 2314 float m_flWaitForPresentCpuMs; 2315 float m_flSubmitFrameMs; 2316 float m_flWaitGetPosesCalledMs; 2317 float m_flNewPosesReadyMs; 2318 float m_flNewFrameReadyMs; 2319 float m_flCompositorUpdateStartMs; 2320 float m_flCompositorUpdateEndMs; 2321 float m_flCompositorRenderStartMs; 2322 TrackedDevicePose_t m_HmdPose; 2323 uint32_t m_nNumVSyncsReadyForUse; 2324 uint32_t m_nNumVSyncsToFirstView; 2325} Compositor_FrameTiming; 2326 2327typedef struct Compositor_BenchmarkResults 2328{ 2329 float m_flMegaPixelsPerSecond; 2330 float m_flHmdRecommendedMegaPixelsPerSecond; 2331} Compositor_BenchmarkResults; 2332 2333typedef struct DriverDirectMode_FrameTiming 2334{ 2335 uint32_t m_nSize; 2336 uint32_t m_nNumFramePresents; 2337 uint32_t m_nNumMisPresented; 2338 uint32_t m_nNumDroppedFrames; 2339 uint32_t m_nReprojectionFlags; 2340} DriverDirectMode_FrameTiming; 2341 2342typedef struct ImuSample_t 2343{ 2344 double fSampleTime; 2345 struct HmdVector3d_t vAccel; 2346 struct HmdVector3d_t vGyro; 2347 uint32_t unOffScaleFlags; 2348} ImuSample_t; 2349 2350typedef struct AppOverrideKeys_t 2351{ 2352 char * pchKey; // const char * 2353 char * pchValue; // const char * 2354} AppOverrideKeys_t; 2355 2356typedef struct Compositor_CumulativeStats 2357{ 2358 uint32_t m_nPid; 2359 uint32_t m_nNumFramePresents; 2360 uint32_t m_nNumDroppedFrames; 2361 uint32_t m_nNumReprojectedFrames; 2362 uint32_t m_nNumFramePresentsOnStartup; 2363 uint32_t m_nNumDroppedFramesOnStartup; 2364 uint32_t m_nNumReprojectedFramesOnStartup; 2365 uint32_t m_nNumLoading; 2366 uint32_t m_nNumFramePresentsLoading; 2367 uint32_t m_nNumDroppedFramesLoading; 2368 uint32_t m_nNumReprojectedFramesLoading; 2369 uint32_t m_nNumTimedOut; 2370 uint32_t m_nNumFramePresentsTimedOut; 2371 uint32_t m_nNumDroppedFramesTimedOut; 2372 uint32_t m_nNumReprojectedFramesTimedOut; 2373 uint32_t m_nNumFrameSubmits; 2374 double m_flSumCompositorCPUTimeMS; 2375 double m_flSumCompositorGPUTimeMS; 2376 double m_flSumTargetFrameTimes; 2377 double m_flSumApplicationCPUTimeMS; 2378 double m_flSumApplicationGPUTimeMS; 2379} Compositor_CumulativeStats; 2380 2381typedef struct Compositor_StageRenderSettings 2382{ 2383 struct HmdColor_t m_PrimaryColor; 2384 struct HmdColor_t m_SecondaryColor; 2385 float m_flVignetteInnerRadius; 2386 float m_flVignetteOuterRadius; 2387 float m_flFresnelStrength; 2388 bool m_bBackfaceCulling; 2389 bool m_bGreyscale; 2390 bool m_bWireframe; 2391} Compositor_StageRenderSettings; 2392 2393typedef struct VROverlayIntersectionParams_t 2394{ 2395 struct HmdVector3_t vSource; 2396 struct HmdVector3_t vDirection; 2397 enum ETrackingUniverseOrigin eOrigin; 2398} VROverlayIntersectionParams_t; 2399 2400typedef struct VROverlayIntersectionResults_t 2401{ 2402 struct HmdVector3_t vPoint; 2403 struct HmdVector3_t vNormal; 2404 struct HmdVector2_t vUVs; 2405 float fDistance; 2406} VROverlayIntersectionResults_t; 2407 2408typedef struct IntersectionMaskRectangle_t 2409{ 2410 float m_flTopLeftX; 2411 float m_flTopLeftY; 2412 float m_flWidth; 2413 float m_flHeight; 2414} IntersectionMaskRectangle_t; 2415 2416typedef struct IntersectionMaskCircle_t 2417{ 2418 float m_flCenterX; 2419 float m_flCenterY; 2420 float m_flRadius; 2421} IntersectionMaskCircle_t; 2422 2423typedef struct VROverlayProjection_t 2424{ 2425 float fLeft; 2426 float fRight; 2427 float fTop; 2428 float fBottom; 2429} VROverlayProjection_t; 2430 2431typedef struct VROverlayView_t 2432{ 2433 VROverlayHandle_t overlayHandle; 2434 struct Texture_t texture; 2435 struct VRTextureBounds_t textureBounds; 2436} VROverlayView_t; 2437 2438typedef struct VRVulkanDevice_t 2439{ 2440 struct VkInstance_T * m_pInstance; // struct VkInstance_T * 2441 struct VkDevice_T * m_pDevice; // struct VkDevice_T * 2442 struct VkPhysicalDevice_T * m_pPhysicalDevice; // struct VkPhysicalDevice_T * 2443 struct VkQueue_T * m_pQueue; // struct VkQueue_T * 2444 uint32_t m_uQueueFamilyIndex; 2445} VRVulkanDevice_t; 2446 2447typedef struct VRNativeDevice_t 2448{ 2449 void * handle; // void * 2450 enum EDeviceType eType; 2451} VRNativeDevice_t; 2452 2453typedef struct RenderModel_Vertex_t 2454{ 2455 struct HmdVector3_t vPosition; 2456 struct HmdVector3_t vNormal; 2457 float rfTextureCoord[2]; //float[2] 2458} RenderModel_Vertex_t; 2459 2460#if defined(__linux__) || defined(__APPLE__) 2461#pragma pack( push, 4 ) 2462#endif 2463typedef struct RenderModel_TextureMap_t 2464{ 2465 uint16_t unWidth; 2466 uint16_t unHeight; 2467 uint8_t * rubTextureMapData; // const uint8_t * 2468 enum EVRRenderModelTextureFormat format; 2469 uint16_t unMipLevels; 2470} RenderModel_TextureMap_t; 2471 2472#if defined(__linux__) || defined(__APPLE__) 2473#pragma pack( pop ) 2474#endif 2475#if defined(__linux__) || defined(__APPLE__) 2476#pragma pack( push, 4 ) 2477#endif 2478typedef struct RenderModel_t 2479{ 2480 struct RenderModel_Vertex_t * rVertexData; // const struct vr::RenderModel_Vertex_t * 2481 uint32_t unVertexCount; 2482 uint16_t * rIndexData; // const uint16_t * 2483 uint32_t unTriangleCount; 2484 TextureID_t diffuseTextureId; 2485} RenderModel_t; 2486 2487#if defined(__linux__) || defined(__APPLE__) 2488#pragma pack( pop ) 2489#endif 2490typedef struct RenderModel_ControllerMode_State_t 2491{ 2492 bool bScrollWheelVisible; 2493} RenderModel_ControllerMode_State_t; 2494 2495typedef struct NotificationBitmap_t 2496{ 2497 void * m_pImageData; // void * 2498 int32_t m_nWidth; 2499 int32_t m_nHeight; 2500 int32_t m_nBytesPerPixel; 2501} NotificationBitmap_t; 2502 2503typedef struct CVRSettingHelper 2504{ 2505 intptr_t m_pSettings; // class vr::IVRSettings * 2506} CVRSettingHelper; 2507 2508typedef struct InputAnalogActionData_t 2509{ 2510 bool bActive; 2511 VRInputValueHandle_t activeOrigin; 2512 float x; 2513 float y; 2514 float z; 2515 float deltaX; 2516 float deltaY; 2517 float deltaZ; 2518 float fUpdateTime; 2519} InputAnalogActionData_t; 2520 2521typedef struct InputDigitalActionData_t 2522{ 2523 bool bActive; 2524 VRInputValueHandle_t activeOrigin; 2525 bool bState; 2526 bool bChanged; 2527 float fUpdateTime; 2528} InputDigitalActionData_t; 2529 2530typedef struct InputPoseActionData_t 2531{ 2532 bool bActive; 2533 VRInputValueHandle_t activeOrigin; 2534 struct TrackedDevicePose_t pose; 2535} InputPoseActionData_t; 2536 2537typedef struct InputSkeletalActionData_t 2538{ 2539 bool bActive; 2540 VRInputValueHandle_t activeOrigin; 2541} InputSkeletalActionData_t; 2542 2543typedef struct InputOriginInfo_t 2544{ 2545 VRInputValueHandle_t devicePath; 2546 TrackedDeviceIndex_t trackedDeviceIndex; 2547 char rchRenderModelComponentName[128]; //char[128] 2548} InputOriginInfo_t; 2549 2550typedef struct InputBindingInfo_t 2551{ 2552 char rchDevicePathName[128]; //char[128] 2553 char rchInputPathName[128]; //char[128] 2554 char rchModeName[128]; //char[128] 2555 char rchSlotName[128]; //char[128] 2556 char rchInputSourceType[32]; //char[32] 2557} InputBindingInfo_t; 2558 2559typedef struct VRActiveActionSet_t 2560{ 2561 VRActionSetHandle_t ulActionSet; 2562 VRInputValueHandle_t ulRestrictedToDevice; 2563 VRActionSetHandle_t ulSecondaryActionSet; 2564 uint32_t unPadding; 2565 int32_t nPriority; 2566} VRActiveActionSet_t; 2567 2568typedef struct VRSkeletalSummaryData_t 2569{ 2570 float flFingerCurl[5]; //float[5] 2571 float flFingerSplay[4]; //float[4] 2572} VRSkeletalSummaryData_t; 2573 2574typedef struct SpatialAnchorPose_t 2575{ 2576 struct HmdMatrix34_t mAnchorToAbsoluteTracking; 2577} SpatialAnchorPose_t; 2578 2579typedef struct COpenVRContext 2580{ 2581 intptr_t m_pVRSystem; // class vr::IVRSystem * 2582 intptr_t m_pVRChaperone; // class vr::IVRChaperone * 2583 intptr_t m_pVRChaperoneSetup; // class vr::IVRChaperoneSetup * 2584 intptr_t m_pVRCompositor; // class vr::IVRCompositor * 2585 intptr_t m_pVRHeadsetView; // class vr::IVRHeadsetView * 2586 intptr_t m_pVROverlay; // class vr::IVROverlay * 2587 intptr_t m_pVROverlayView; // class vr::IVROverlayView * 2588 intptr_t m_pVRResources; // class vr::IVRResources * 2589 intptr_t m_pVRRenderModels; // class vr::IVRRenderModels * 2590 intptr_t m_pVRExtendedDisplay; // class vr::IVRExtendedDisplay * 2591 intptr_t m_pVRSettings; // class vr::IVRSettings * 2592 intptr_t m_pVRApplications; // class vr::IVRApplications * 2593 intptr_t m_pVRTrackedCamera; // class vr::IVRTrackedCamera * 2594 intptr_t m_pVRScreenshots; // class vr::IVRScreenshots * 2595 intptr_t m_pVRDriverManager; // class vr::IVRDriverManager * 2596 intptr_t m_pVRInput; // class vr::IVRInput * 2597 intptr_t m_pVRIOBuffer; // class vr::IVRIOBuffer * 2598 intptr_t m_pVRSpatialAnchors; // class vr::IVRSpatialAnchors * 2599 intptr_t m_pVRDebug; // class vr::IVRDebug * 2600 intptr_t m_pVRNotifications; // class vr::IVRNotifications * 2601} COpenVRContext; 2602 2603typedef struct PropertyWrite_t 2604{ 2605 enum ETrackedDeviceProperty prop; 2606 enum EPropertyWriteType writeType; 2607 enum ETrackedPropertyError eSetError; 2608 void * pvBuffer; // void * 2609 uint32_t unBufferSize; 2610 PropertyTypeTag_t unTag; 2611 enum ETrackedPropertyError eError; 2612} PropertyWrite_t; 2613 2614typedef struct PropertyRead_t 2615{ 2616 enum ETrackedDeviceProperty prop; 2617 void * pvBuffer; // void * 2618 uint32_t unBufferSize; 2619 PropertyTypeTag_t unTag; 2620 uint32_t unRequiredBufferSize; 2621 enum ETrackedPropertyError eError; 2622} PropertyRead_t; 2623 2624typedef struct CVRPropertyHelpers 2625{ 2626 intptr_t m_pProperties; // class vr::IVRProperties * 2627} CVRPropertyHelpers; 2628 2629typedef struct PathWrite_t 2630{ 2631 PathHandle_t ulPath; 2632 enum EPropertyWriteType writeType; 2633 enum ETrackedPropertyError eSetError; 2634 void * pvBuffer; // void * 2635 uint32_t unBufferSize; 2636 PropertyTypeTag_t unTag; 2637 enum ETrackedPropertyError eError; 2638 char * pszPath; // const char * 2639} PathWrite_t; 2640 2641typedef struct PathRead_t 2642{ 2643 PathHandle_t ulPath; 2644 void * pvBuffer; // void * 2645 uint32_t unBufferSize; 2646 PropertyTypeTag_t unTag; 2647 uint32_t unRequiredBufferSize; 2648 enum ETrackedPropertyError eError; 2649 char * pszPath; // const char * 2650} PathRead_t; 2651 2652 2653typedef union 2654{ 2655 VREvent_Reserved_t reserved; 2656 VREvent_Controller_t controller; 2657 VREvent_Mouse_t mouse; 2658 VREvent_Scroll_t scroll; 2659 VREvent_Process_t process; 2660 VREvent_Notification_t notification; 2661 VREvent_Overlay_t overlay; 2662 VREvent_Status_t status; 2663 VREvent_Keyboard_t keyboard; 2664 VREvent_Ipd_t ipd; 2665 VREvent_Chaperone_t chaperone; 2666 VREvent_PerformanceTest_t performanceTest; 2667 VREvent_TouchPadMove_t touchPadMove; 2668 VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset; 2669 VREvent_Screenshot_t screenshot; 2670 VREvent_ScreenshotProgress_t screenshotProgress; 2671 VREvent_ApplicationLaunch_t applicationLaunch; 2672 VREvent_EditingCameraSurface_t cameraSurface; 2673 VREvent_MessageOverlay_t messageOverlay; 2674 VREvent_Property_t property; 2675 VREvent_HapticVibration_t hapticVibration; 2676 VREvent_WebConsole_t webConsole; 2677 VREvent_InputBindingLoad_t inputBinding; 2678 VREvent_InputActionManifestLoad_t actionManifest; 2679 VREvent_SpatialAnchor_t spatialAnchor; 2680} VREvent_Data_t; 2681 2682#if defined(__linux__) || defined(__APPLE__) 2683// This structure was originally defined mis-packed on Linux, preserved for 2684// compatibility. 2685#pragma pack( push, 4 ) 2686#endif 2687 2688/** An event posted by the server to all running applications */ 2689struct VREvent_t 2690{ 2691 uint32_t eventType; // EVREventType enum 2692 TrackedDeviceIndex_t trackedDeviceIndex; 2693 float eventAgeSeconds; 2694 // event data must be the end of the struct as its size is variable 2695 VREvent_Data_t data; 2696}; 2697 2698#if defined(__linux__) || defined(__APPLE__) 2699#pragma pack( pop ) 2700#endif 2701 2702 2703typedef union 2704{ 2705 IntersectionMaskRectangle_t m_Rectangle; 2706 IntersectionMaskCircle_t m_Circle; 2707} VROverlayIntersectionMaskPrimitive_Data_t; 2708 2709struct VROverlayIntersectionMaskPrimitive_t 2710{ 2711 EVROverlayIntersectionMaskPrimitiveType m_nPrimitiveType; 2712 VROverlayIntersectionMaskPrimitive_Data_t m_Primitive; 2713}; 2714 2715 2716// OpenVR Function Pointer Tables 2717 2718struct VR_IVRSystem_FnTable 2719{ 2720 void (OPENVR_FNTABLE_CALLTYPE *GetRecommendedRenderTargetSize)(uint32_t * pnWidth, uint32_t * pnHeight); 2721 struct HmdMatrix44_t (OPENVR_FNTABLE_CALLTYPE *GetProjectionMatrix)(EVREye eEye, float fNearZ, float fFarZ); 2722 void (OPENVR_FNTABLE_CALLTYPE *GetProjectionRaw)(EVREye eEye, float * pfLeft, float * pfRight, float * pfTop, float * pfBottom); 2723 bool (OPENVR_FNTABLE_CALLTYPE *ComputeDistortion)(EVREye eEye, float fU, float fV, struct DistortionCoordinates_t * pDistortionCoordinates); 2724 struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetEyeToHeadTransform)(EVREye eEye); 2725 bool (OPENVR_FNTABLE_CALLTYPE *GetTimeSinceLastVsync)(float * pfSecondsSinceLastVsync, uint64_t * pulFrameCounter); 2726 int32_t (OPENVR_FNTABLE_CALLTYPE *GetD3D9AdapterIndex)(); 2727 void (OPENVR_FNTABLE_CALLTYPE *GetDXGIOutputInfo)(int32_t * pnAdapterIndex); 2728 void (OPENVR_FNTABLE_CALLTYPE *GetOutputDevice)(uint64_t * pnDevice, ETextureType textureType, struct VkInstance_T * pInstance); 2729 bool (OPENVR_FNTABLE_CALLTYPE *IsDisplayOnDesktop)(); 2730 bool (OPENVR_FNTABLE_CALLTYPE *SetDisplayVisibility)(bool bIsVisibleOnDesktop); 2731 void (OPENVR_FNTABLE_CALLTYPE *GetDeviceToAbsoluteTrackingPose)(ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, struct TrackedDevicePose_t * pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount); 2732 struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetSeatedZeroPoseToStandingAbsoluteTrackingPose)(); 2733 struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetRawZeroPoseToStandingAbsoluteTrackingPose)(); 2734 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetSortedTrackedDeviceIndicesOfClass)(ETrackedDeviceClass eTrackedDeviceClass, TrackedDeviceIndex_t * punTrackedDeviceIndexArray, uint32_t unTrackedDeviceIndexArrayCount, TrackedDeviceIndex_t unRelativeToTrackedDeviceIndex); 2735 EDeviceActivityLevel (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceActivityLevel)(TrackedDeviceIndex_t unDeviceId); 2736 void (OPENVR_FNTABLE_CALLTYPE *ApplyTransform)(struct TrackedDevicePose_t * pOutputPose, struct TrackedDevicePose_t * pTrackedDevicePose, struct HmdMatrix34_t * pTransform); 2737 TrackedDeviceIndex_t (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceIndexForControllerRole)(ETrackedControllerRole unDeviceType); 2738 ETrackedControllerRole (OPENVR_FNTABLE_CALLTYPE *GetControllerRoleForTrackedDeviceIndex)(TrackedDeviceIndex_t unDeviceIndex); 2739 ETrackedDeviceClass (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceClass)(TrackedDeviceIndex_t unDeviceIndex); 2740 bool (OPENVR_FNTABLE_CALLTYPE *IsTrackedDeviceConnected)(TrackedDeviceIndex_t unDeviceIndex); 2741 bool (OPENVR_FNTABLE_CALLTYPE *GetBoolTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError); 2742 float (OPENVR_FNTABLE_CALLTYPE *GetFloatTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError); 2743 int32_t (OPENVR_FNTABLE_CALLTYPE *GetInt32TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError); 2744 uint64_t (OPENVR_FNTABLE_CALLTYPE *GetUint64TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError); 2745 struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetMatrix34TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError); 2746 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetArrayTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, PropertyTypeTag_t propType, void * pBuffer, uint32_t unBufferSize, ETrackedPropertyError * pError); 2747 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetStringTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, char * pchValue, uint32_t unBufferSize, ETrackedPropertyError * pError); 2748 char * (OPENVR_FNTABLE_CALLTYPE *GetPropErrorNameFromEnum)(ETrackedPropertyError error); 2749 bool (OPENVR_FNTABLE_CALLTYPE *PollNextEvent)(struct VREvent_t * pEvent, uint32_t uncbVREvent); 2750 bool (OPENVR_FNTABLE_CALLTYPE *PollNextEventWithPose)(ETrackingUniverseOrigin eOrigin, struct VREvent_t * pEvent, uint32_t uncbVREvent, TrackedDevicePose_t * pTrackedDevicePose); 2751 char * (OPENVR_FNTABLE_CALLTYPE *GetEventTypeNameFromEnum)(EVREventType eType); 2752 struct HiddenAreaMesh_t (OPENVR_FNTABLE_CALLTYPE *GetHiddenAreaMesh)(EVREye eEye, EHiddenAreaMeshType type); 2753 bool (OPENVR_FNTABLE_CALLTYPE *GetControllerState)(TrackedDeviceIndex_t unControllerDeviceIndex, VRControllerState_t * pControllerState, uint32_t unControllerStateSize); 2754 bool (OPENVR_FNTABLE_CALLTYPE *GetControllerStateWithPose)(ETrackingUniverseOrigin eOrigin, TrackedDeviceIndex_t unControllerDeviceIndex, VRControllerState_t * pControllerState, uint32_t unControllerStateSize, struct TrackedDevicePose_t * pTrackedDevicePose); 2755 void (OPENVR_FNTABLE_CALLTYPE *TriggerHapticPulse)(TrackedDeviceIndex_t unControllerDeviceIndex, uint32_t unAxisId, unsigned short usDurationMicroSec); 2756 char * (OPENVR_FNTABLE_CALLTYPE *GetButtonIdNameFromEnum)(EVRButtonId eButtonId); 2757 char * (OPENVR_FNTABLE_CALLTYPE *GetControllerAxisTypeNameFromEnum)(EVRControllerAxisType eAxisType); 2758 bool (OPENVR_FNTABLE_CALLTYPE *IsInputAvailable)(); 2759 bool (OPENVR_FNTABLE_CALLTYPE *IsSteamVRDrawingControllers)(); 2760 bool (OPENVR_FNTABLE_CALLTYPE *ShouldApplicationPause)(); 2761 bool (OPENVR_FNTABLE_CALLTYPE *ShouldApplicationReduceRenderingWork)(); 2762 EVRFirmwareError (OPENVR_FNTABLE_CALLTYPE *PerformFirmwareUpdate)(TrackedDeviceIndex_t unDeviceIndex); 2763 void (OPENVR_FNTABLE_CALLTYPE *AcknowledgeQuit_Exiting)(); 2764 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetAppContainerFilePaths)(char * pchBuffer, uint32_t unBufferSize); 2765 char * (OPENVR_FNTABLE_CALLTYPE *GetRuntimeVersion)(); 2766}; 2767 2768struct VR_IVRExtendedDisplay_FnTable 2769{ 2770 void (OPENVR_FNTABLE_CALLTYPE *GetWindowBounds)(int32_t * pnX, int32_t * pnY, uint32_t * pnWidth, uint32_t * pnHeight); 2771 void (OPENVR_FNTABLE_CALLTYPE *GetEyeOutputViewport)(EVREye eEye, uint32_t * pnX, uint32_t * pnY, uint32_t * pnWidth, uint32_t * pnHeight); 2772 void (OPENVR_FNTABLE_CALLTYPE *GetDXGIOutputInfo)(int32_t * pnAdapterIndex, int32_t * pnAdapterOutputIndex); 2773}; 2774 2775struct VR_IVRTrackedCamera_FnTable 2776{ 2777 char * (OPENVR_FNTABLE_CALLTYPE *GetCameraErrorNameFromEnum)(EVRTrackedCameraError eCameraError); 2778 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *HasCamera)(TrackedDeviceIndex_t nDeviceIndex, bool * pHasCamera); 2779 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraFrameSize)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, uint32_t * pnWidth, uint32_t * pnHeight, uint32_t * pnFrameBufferSize); 2780 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraIntrinsics)(TrackedDeviceIndex_t nDeviceIndex, uint32_t nCameraIndex, EVRTrackedCameraFrameType eFrameType, HmdVector2_t * pFocalLength, HmdVector2_t * pCenter); 2781 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraProjection)(TrackedDeviceIndex_t nDeviceIndex, uint32_t nCameraIndex, EVRTrackedCameraFrameType eFrameType, float flZNear, float flZFar, HmdMatrix44_t * pProjection); 2782 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *AcquireVideoStreamingService)(TrackedDeviceIndex_t nDeviceIndex, TrackedCameraHandle_t * pHandle); 2783 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *ReleaseVideoStreamingService)(TrackedCameraHandle_t hTrackedCamera); 2784 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamFrameBuffer)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, void * pFrameBuffer, uint32_t nFrameBufferSize, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize); 2785 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureSize)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, VRTextureBounds_t * pTextureBounds, uint32_t * pnWidth, uint32_t * pnHeight); 2786 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureD3D11)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, void * pD3D11DeviceOrResource, void ** ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize); 2787 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureGL)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, glUInt_t * pglTextureId, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize); 2788 EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *ReleaseVideoStreamTextureGL)(TrackedCameraHandle_t hTrackedCamera, glUInt_t glTextureId); 2789 void (OPENVR_FNTABLE_CALLTYPE *SetCameraTrackingSpace)(ETrackingUniverseOrigin eUniverse); 2790 ETrackingUniverseOrigin (OPENVR_FNTABLE_CALLTYPE *GetCameraTrackingSpace)(); 2791}; 2792 2793struct VR_IVRApplications_FnTable 2794{ 2795 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *AddApplicationManifest)(char * pchApplicationManifestFullPath, bool bTemporary); 2796 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *RemoveApplicationManifest)(char * pchApplicationManifestFullPath); 2797 bool (OPENVR_FNTABLE_CALLTYPE *IsApplicationInstalled)(char * pchAppKey); 2798 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationCount)(); 2799 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetApplicationKeyByIndex)(uint32_t unApplicationIndex, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen); 2800 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetApplicationKeyByProcessId)(uint32_t unProcessId, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen); 2801 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchApplication)(char * pchAppKey); 2802 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchTemplateApplication)(char * pchTemplateAppKey, char * pchNewAppKey, struct AppOverrideKeys_t * pKeys, uint32_t unKeys); 2803 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchApplicationFromMimeType)(char * pchMimeType, char * pchArgs); 2804 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchDashboardOverlay)(char * pchAppKey); 2805 bool (OPENVR_FNTABLE_CALLTYPE *CancelApplicationLaunch)(char * pchAppKey); 2806 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *IdentifyApplication)(uint32_t unProcessId, char * pchAppKey); 2807 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationProcessId)(char * pchAppKey); 2808 char * (OPENVR_FNTABLE_CALLTYPE *GetApplicationsErrorNameFromEnum)(EVRApplicationError error); 2809 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyString)(char * pchAppKey, EVRApplicationProperty eProperty, char * pchPropertyValueBuffer, uint32_t unPropertyValueBufferLen, EVRApplicationError * peError); 2810 bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyBool)(char * pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError * peError); 2811 uint64_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyUint64)(char * pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError * peError); 2812 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *SetApplicationAutoLaunch)(char * pchAppKey, bool bAutoLaunch); 2813 bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationAutoLaunch)(char * pchAppKey); 2814 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *SetDefaultApplicationForMimeType)(char * pchAppKey, char * pchMimeType); 2815 bool (OPENVR_FNTABLE_CALLTYPE *GetDefaultApplicationForMimeType)(char * pchMimeType, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen); 2816 bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationSupportedMimeTypes)(char * pchAppKey, char * pchMimeTypesBuffer, uint32_t unMimeTypesBuffer); 2817 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationsThatSupportMimeType)(char * pchMimeType, char * pchAppKeysThatSupportBuffer, uint32_t unAppKeysThatSupportBuffer); 2818 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationLaunchArguments)(uint32_t unHandle, char * pchArgs, uint32_t unArgs); 2819 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetStartingApplication)(char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen); 2820 EVRSceneApplicationState (OPENVR_FNTABLE_CALLTYPE *GetSceneApplicationState)(); 2821 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *PerformApplicationPrelaunchCheck)(char * pchAppKey); 2822 char * (OPENVR_FNTABLE_CALLTYPE *GetSceneApplicationStateNameFromEnum)(EVRSceneApplicationState state); 2823 EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchInternalProcess)(char * pchBinaryPath, char * pchArguments, char * pchWorkingDirectory); 2824 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentSceneProcessId)(); 2825}; 2826 2827struct VR_IVRChaperone_FnTable 2828{ 2829 ChaperoneCalibrationState (OPENVR_FNTABLE_CALLTYPE *GetCalibrationState)(); 2830 bool (OPENVR_FNTABLE_CALLTYPE *GetPlayAreaSize)(float * pSizeX, float * pSizeZ); 2831 bool (OPENVR_FNTABLE_CALLTYPE *GetPlayAreaRect)(struct HmdQuad_t * rect); 2832 void (OPENVR_FNTABLE_CALLTYPE *ReloadInfo)(); 2833 void (OPENVR_FNTABLE_CALLTYPE *SetSceneColor)(struct HmdColor_t color); 2834 void (OPENVR_FNTABLE_CALLTYPE *GetBoundsColor)(struct HmdColor_t * pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, struct HmdColor_t * pOutputCameraColor); 2835 bool (OPENVR_FNTABLE_CALLTYPE *AreBoundsVisible)(); 2836 void (OPENVR_FNTABLE_CALLTYPE *ForceBoundsVisible)(bool bForce); 2837 void (OPENVR_FNTABLE_CALLTYPE *ResetZeroPose)(ETrackingUniverseOrigin eTrackingUniverseOrigin); 2838}; 2839 2840struct VR_IVRChaperoneSetup_FnTable 2841{ 2842 bool (OPENVR_FNTABLE_CALLTYPE *CommitWorkingCopy)(EChaperoneConfigFile configFile); 2843 void (OPENVR_FNTABLE_CALLTYPE *RevertWorkingCopy)(); 2844 bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingPlayAreaSize)(float * pSizeX, float * pSizeZ); 2845 bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingPlayAreaRect)(struct HmdQuad_t * rect); 2846 bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t * punQuadsCount); 2847 bool (OPENVR_FNTABLE_CALLTYPE *GetLiveCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t * punQuadsCount); 2848 bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatSeatedZeroPoseToRawTrackingPose); 2849 bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingStandingZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatStandingZeroPoseToRawTrackingPose); 2850 void (OPENVR_FNTABLE_CALLTYPE *SetWorkingPlayAreaSize)(float sizeX, float sizeZ); 2851 void (OPENVR_FNTABLE_CALLTYPE *SetWorkingCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t unQuadsCount); 2852 void (OPENVR_FNTABLE_CALLTYPE *SetWorkingPerimeter)(struct HmdVector2_t * pPointBuffer, uint32_t unPointCount); 2853 void (OPENVR_FNTABLE_CALLTYPE *SetWorkingSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pMatSeatedZeroPoseToRawTrackingPose); 2854 void (OPENVR_FNTABLE_CALLTYPE *SetWorkingStandingZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pMatStandingZeroPoseToRawTrackingPose); 2855 void (OPENVR_FNTABLE_CALLTYPE *ReloadFromDisk)(EChaperoneConfigFile configFile); 2856 bool (OPENVR_FNTABLE_CALLTYPE *GetLiveSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatSeatedZeroPoseToRawTrackingPose); 2857 bool (OPENVR_FNTABLE_CALLTYPE *ExportLiveToBuffer)(char * pBuffer, uint32_t * pnBufferLength); 2858 bool (OPENVR_FNTABLE_CALLTYPE *ImportFromBufferToWorking)(char * pBuffer, uint32_t nImportFlags); 2859 void (OPENVR_FNTABLE_CALLTYPE *ShowWorkingSetPreview)(); 2860 void (OPENVR_FNTABLE_CALLTYPE *HideWorkingSetPreview)(); 2861 void (OPENVR_FNTABLE_CALLTYPE *RoomSetupStarting)(); 2862}; 2863 2864struct VR_IVRCompositor_FnTable 2865{ 2866 void (OPENVR_FNTABLE_CALLTYPE *SetTrackingSpace)(ETrackingUniverseOrigin eOrigin); 2867 ETrackingUniverseOrigin (OPENVR_FNTABLE_CALLTYPE *GetTrackingSpace)(); 2868 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *WaitGetPoses)(struct TrackedDevicePose_t * pRenderPoseArray, uint32_t unRenderPoseArrayCount, struct TrackedDevicePose_t * pGamePoseArray, uint32_t unGamePoseArrayCount); 2869 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetLastPoses)(struct TrackedDevicePose_t * pRenderPoseArray, uint32_t unRenderPoseArrayCount, struct TrackedDevicePose_t * pGamePoseArray, uint32_t unGamePoseArrayCount); 2870 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetLastPoseForTrackedDeviceIndex)(TrackedDeviceIndex_t unDeviceIndex, struct TrackedDevicePose_t * pOutputPose, struct TrackedDevicePose_t * pOutputGamePose); 2871 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *Submit)(EVREye eEye, struct Texture_t * pTexture, struct VRTextureBounds_t * pBounds, EVRSubmitFlags nSubmitFlags); 2872 void (OPENVR_FNTABLE_CALLTYPE *ClearLastSubmittedFrame)(); 2873 void (OPENVR_FNTABLE_CALLTYPE *PostPresentHandoff)(); 2874 bool (OPENVR_FNTABLE_CALLTYPE *GetFrameTiming)(struct Compositor_FrameTiming * pTiming, uint32_t unFramesAgo); 2875 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetFrameTimings)(struct Compositor_FrameTiming * pTiming, uint32_t nFrames); 2876 float (OPENVR_FNTABLE_CALLTYPE *GetFrameTimeRemaining)(); 2877 void (OPENVR_FNTABLE_CALLTYPE *GetCumulativeStats)(struct Compositor_CumulativeStats * pStats, uint32_t nStatsSizeInBytes); 2878 void (OPENVR_FNTABLE_CALLTYPE *FadeToColor)(float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, bool bBackground); 2879 struct HmdColor_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentFadeColor)(bool bBackground); 2880 void (OPENVR_FNTABLE_CALLTYPE *FadeGrid)(float fSeconds, bool bFadeGridIn); 2881 float (OPENVR_FNTABLE_CALLTYPE *GetCurrentGridAlpha)(); 2882 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *SetSkyboxOverride)(struct Texture_t * pTextures, uint32_t unTextureCount); 2883 void (OPENVR_FNTABLE_CALLTYPE *ClearSkyboxOverride)(); 2884 void (OPENVR_FNTABLE_CALLTYPE *CompositorBringToFront)(); 2885 void (OPENVR_FNTABLE_CALLTYPE *CompositorGoToBack)(); 2886 void (OPENVR_FNTABLE_CALLTYPE *CompositorQuit)(); 2887 bool (OPENVR_FNTABLE_CALLTYPE *IsFullscreen)(); 2888 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentSceneFocusProcess)(); 2889 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetLastFrameRenderer)(); 2890 bool (OPENVR_FNTABLE_CALLTYPE *CanRenderScene)(); 2891 void (OPENVR_FNTABLE_CALLTYPE *ShowMirrorWindow)(); 2892 void (OPENVR_FNTABLE_CALLTYPE *HideMirrorWindow)(); 2893 bool (OPENVR_FNTABLE_CALLTYPE *IsMirrorWindowVisible)(); 2894 void (OPENVR_FNTABLE_CALLTYPE *CompositorDumpImages)(); 2895 bool (OPENVR_FNTABLE_CALLTYPE *ShouldAppRenderWithLowResources)(); 2896 void (OPENVR_FNTABLE_CALLTYPE *ForceInterleavedReprojectionOn)(bool bOverride); 2897 void (OPENVR_FNTABLE_CALLTYPE *ForceReconnectProcess)(); 2898 void (OPENVR_FNTABLE_CALLTYPE *SuspendRendering)(bool bSuspend); 2899 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetMirrorTextureD3D11)(EVREye eEye, void * pD3D11DeviceOrResource, void ** ppD3D11ShaderResourceView); 2900 void (OPENVR_FNTABLE_CALLTYPE *ReleaseMirrorTextureD3D11)(void * pD3D11ShaderResourceView); 2901 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetMirrorTextureGL)(EVREye eEye, glUInt_t * pglTextureId, glSharedTextureHandle_t * pglSharedTextureHandle); 2902 bool (OPENVR_FNTABLE_CALLTYPE *ReleaseSharedGLTexture)(glUInt_t glTextureId, glSharedTextureHandle_t glSharedTextureHandle); 2903 void (OPENVR_FNTABLE_CALLTYPE *LockGLSharedTextureForAccess)(glSharedTextureHandle_t glSharedTextureHandle); 2904 void (OPENVR_FNTABLE_CALLTYPE *UnlockGLSharedTextureForAccess)(glSharedTextureHandle_t glSharedTextureHandle); 2905 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetVulkanInstanceExtensionsRequired)(char * pchValue, uint32_t unBufferSize); 2906 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetVulkanDeviceExtensionsRequired)(struct VkPhysicalDevice_T * pPhysicalDevice, char * pchValue, uint32_t unBufferSize); 2907 void (OPENVR_FNTABLE_CALLTYPE *SetExplicitTimingMode)(EVRCompositorTimingMode eTimingMode); 2908 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *SubmitExplicitTimingData)(); 2909 bool (OPENVR_FNTABLE_CALLTYPE *IsMotionSmoothingEnabled)(); 2910 bool (OPENVR_FNTABLE_CALLTYPE *IsMotionSmoothingSupported)(); 2911 bool (OPENVR_FNTABLE_CALLTYPE *IsCurrentSceneFocusAppLoading)(); 2912 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *SetStageOverride_Async)(char * pchRenderModelPath, struct HmdMatrix34_t * pTransform, struct Compositor_StageRenderSettings * pRenderSettings, uint32_t nSizeOfRenderSettings); 2913 void (OPENVR_FNTABLE_CALLTYPE *ClearStageOverride)(); 2914 bool (OPENVR_FNTABLE_CALLTYPE *GetCompositorBenchmarkResults)(struct Compositor_BenchmarkResults * pBenchmarkResults, uint32_t nSizeOfBenchmarkResults); 2915 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetLastPosePredictionIDs)(uint32_t * pRenderPosePredictionID, uint32_t * pGamePosePredictionID); 2916 EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetPosesForFrame)(uint32_t unPosePredictionID, struct TrackedDevicePose_t * pPoseArray, uint32_t unPoseArrayCount); 2917}; 2918 2919struct VR_IVROverlay_FnTable 2920{ 2921 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *FindOverlay)(char * pchOverlayKey, VROverlayHandle_t * pOverlayHandle); 2922 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *CreateOverlay)(char * pchOverlayKey, char * pchOverlayName, VROverlayHandle_t * pOverlayHandle); 2923 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *DestroyOverlay)(VROverlayHandle_t ulOverlayHandle); 2924 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayKey)(VROverlayHandle_t ulOverlayHandle, char * pchValue, uint32_t unBufferSize, EVROverlayError * pError); 2925 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayName)(VROverlayHandle_t ulOverlayHandle, char * pchValue, uint32_t unBufferSize, EVROverlayError * pError); 2926 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayName)(VROverlayHandle_t ulOverlayHandle, char * pchName); 2927 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayImageData)(VROverlayHandle_t ulOverlayHandle, void * pvBuffer, uint32_t unBufferSize, uint32_t * punWidth, uint32_t * punHeight); 2928 char * (OPENVR_FNTABLE_CALLTYPE *GetOverlayErrorNameFromEnum)(EVROverlayError error); 2929 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayRenderingPid)(VROverlayHandle_t ulOverlayHandle, uint32_t unPID); 2930 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayRenderingPid)(VROverlayHandle_t ulOverlayHandle); 2931 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayFlag)(VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool bEnabled); 2932 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayFlag)(VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool * pbEnabled); 2933 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayFlags)(VROverlayHandle_t ulOverlayHandle, uint32_t * pFlags); 2934 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayColor)(VROverlayHandle_t ulOverlayHandle, float fRed, float fGreen, float fBlue); 2935 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayColor)(VROverlayHandle_t ulOverlayHandle, float * pfRed, float * pfGreen, float * pfBlue); 2936 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayAlpha)(VROverlayHandle_t ulOverlayHandle, float fAlpha); 2937 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayAlpha)(VROverlayHandle_t ulOverlayHandle, float * pfAlpha); 2938 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTexelAspect)(VROverlayHandle_t ulOverlayHandle, float fTexelAspect); 2939 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTexelAspect)(VROverlayHandle_t ulOverlayHandle, float * pfTexelAspect); 2940 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlaySortOrder)(VROverlayHandle_t ulOverlayHandle, uint32_t unSortOrder); 2941 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlaySortOrder)(VROverlayHandle_t ulOverlayHandle, uint32_t * punSortOrder); 2942 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayWidthInMeters)(VROverlayHandle_t ulOverlayHandle, float fWidthInMeters); 2943 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayWidthInMeters)(VROverlayHandle_t ulOverlayHandle, float * pfWidthInMeters); 2944 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayCurvature)(VROverlayHandle_t ulOverlayHandle, float fCurvature); 2945 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayCurvature)(VROverlayHandle_t ulOverlayHandle, float * pfCurvature); 2946 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayPreCurvePitch)(VROverlayHandle_t ulOverlayHandle, float fRadians); 2947 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayPreCurvePitch)(VROverlayHandle_t ulOverlayHandle, float * pfRadians); 2948 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace eTextureColorSpace); 2949 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace * peTextureColorSpace); 2950 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureBounds)(VROverlayHandle_t ulOverlayHandle, struct VRTextureBounds_t * pOverlayTextureBounds); 2951 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureBounds)(VROverlayHandle_t ulOverlayHandle, struct VRTextureBounds_t * pOverlayTextureBounds); 2952 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformType)(VROverlayHandle_t ulOverlayHandle, VROverlayTransformType * peTransformType); 2953 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformAbsolute)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform); 2954 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformAbsolute)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin * peTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform); 2955 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformTrackedDeviceRelative)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unTrackedDevice, struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform); 2956 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformTrackedDeviceRelative)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t * punTrackedDevice, struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform); 2957 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformTrackedDeviceComponent)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unDeviceIndex, char * pchComponentName); 2958 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformTrackedDeviceComponent)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t * punDeviceIndex, char * pchComponentName, uint32_t unComponentNameSize); 2959 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformOverlayRelative)(VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t * ulOverlayHandleParent, struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform); 2960 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformOverlayRelative)(VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t ulOverlayHandleParent, struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform); 2961 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformCursor)(VROverlayHandle_t ulCursorOverlayHandle, struct HmdVector2_t * pvHotspot); 2962 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformCursor)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvHotspot); 2963 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformProjection)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform, struct VROverlayProjection_t * pProjection, EVREye eEye); 2964 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowOverlay)(VROverlayHandle_t ulOverlayHandle); 2965 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *HideOverlay)(VROverlayHandle_t ulOverlayHandle); 2966 bool (OPENVR_FNTABLE_CALLTYPE *IsOverlayVisible)(VROverlayHandle_t ulOverlayHandle); 2967 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetTransformForOverlayCoordinates)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdVector2_t coordinatesInOverlay, struct HmdMatrix34_t * pmatTransform); 2968 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *WaitFrameSync)(uint32_t nTimeoutMs); 2969 bool (OPENVR_FNTABLE_CALLTYPE *PollNextOverlayEvent)(VROverlayHandle_t ulOverlayHandle, struct VREvent_t * pEvent, uint32_t uncbVREvent); 2970 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod * peInputMethod); 2971 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod eInputMethod); 2972 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayMouseScale)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvecMouseScale); 2973 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayMouseScale)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvecMouseScale); 2974 bool (OPENVR_FNTABLE_CALLTYPE *ComputeOverlayIntersection)(VROverlayHandle_t ulOverlayHandle, struct VROverlayIntersectionParams_t * pParams, struct VROverlayIntersectionResults_t * pResults); 2975 bool (OPENVR_FNTABLE_CALLTYPE *IsHoverTargetOverlay)(VROverlayHandle_t ulOverlayHandle); 2976 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayIntersectionMask)(VROverlayHandle_t ulOverlayHandle, struct VROverlayIntersectionMaskPrimitive_t * pMaskPrimitives, uint32_t unNumMaskPrimitives, uint32_t unPrimitiveSize); 2977 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *TriggerLaserMouseHapticVibration)(VROverlayHandle_t ulOverlayHandle, float fDurationSeconds, float fFrequency, float fAmplitude); 2978 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayCursor)(VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t ulCursorHandle); 2979 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayCursorPositionOverride)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvCursor); 2980 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ClearOverlayCursorPositionOverride)(VROverlayHandle_t ulOverlayHandle); 2981 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTexture)(VROverlayHandle_t ulOverlayHandle, struct Texture_t * pTexture); 2982 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ClearOverlayTexture)(VROverlayHandle_t ulOverlayHandle); 2983 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayRaw)(VROverlayHandle_t ulOverlayHandle, void * pvBuffer, uint32_t unWidth, uint32_t unHeight, uint32_t unBytesPerPixel); 2984 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayFromFile)(VROverlayHandle_t ulOverlayHandle, char * pchFilePath); 2985 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTexture)(VROverlayHandle_t ulOverlayHandle, void ** pNativeTextureHandle, void * pNativeTextureRef, uint32_t * pWidth, uint32_t * pHeight, uint32_t * pNativeFormat, ETextureType * pAPIType, EColorSpace * pColorSpace, struct VRTextureBounds_t * pTextureBounds); 2986 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ReleaseNativeOverlayHandle)(VROverlayHandle_t ulOverlayHandle, void * pNativeTextureHandle); 2987 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureSize)(VROverlayHandle_t ulOverlayHandle, uint32_t * pWidth, uint32_t * pHeight); 2988 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *CreateDashboardOverlay)(char * pchOverlayKey, char * pchOverlayFriendlyName, VROverlayHandle_t * pMainHandle, VROverlayHandle_t * pThumbnailHandle); 2989 bool (OPENVR_FNTABLE_CALLTYPE *IsDashboardVisible)(); 2990 bool (OPENVR_FNTABLE_CALLTYPE *IsActiveDashboardOverlay)(VROverlayHandle_t ulOverlayHandle); 2991 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetDashboardOverlaySceneProcess)(VROverlayHandle_t ulOverlayHandle, uint32_t unProcessId); 2992 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetDashboardOverlaySceneProcess)(VROverlayHandle_t ulOverlayHandle, uint32_t * punProcessId); 2993 void (OPENVR_FNTABLE_CALLTYPE *ShowDashboard)(char * pchOverlayToShow); 2994 TrackedDeviceIndex_t (OPENVR_FNTABLE_CALLTYPE *GetPrimaryDashboardDevice)(); 2995 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowKeyboard)(EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, uint32_t unFlags, char * pchDescription, uint32_t unCharMax, char * pchExistingText, uint64_t uUserValue); 2996 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowKeyboardForOverlay)(VROverlayHandle_t ulOverlayHandle, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, uint32_t unFlags, char * pchDescription, uint32_t unCharMax, char * pchExistingText, uint64_t uUserValue); 2997 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetKeyboardText)(char * pchText, uint32_t cchText); 2998 void (OPENVR_FNTABLE_CALLTYPE *HideKeyboard)(); 2999 void (OPENVR_FNTABLE_CALLTYPE *SetKeyboardTransformAbsolute)(ETrackingUniverseOrigin eTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToKeyboardTransform); 3000 void (OPENVR_FNTABLE_CALLTYPE *SetKeyboardPositionForOverlay)(VROverlayHandle_t ulOverlayHandle, struct HmdRect2_t avoidRect); 3001 VRMessageOverlayResponse (OPENVR_FNTABLE_CALLTYPE *ShowMessageOverlay)(char * pchText, char * pchCaption, char * pchButton0Text, char * pchButton1Text, char * pchButton2Text, char * pchButton3Text); 3002 void (OPENVR_FNTABLE_CALLTYPE *CloseMessageOverlay)(); 3003}; 3004 3005struct VR_IVROverlayView_FnTable 3006{ 3007 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *AcquireOverlayView)(VROverlayHandle_t ulOverlayHandle, struct VRNativeDevice_t * pNativeDevice, struct VROverlayView_t * pOverlayView, uint32_t unOverlayViewSize); 3008 EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ReleaseOverlayView)(struct VROverlayView_t * pOverlayView); 3009 void (OPENVR_FNTABLE_CALLTYPE *PostOverlayEvent)(VROverlayHandle_t ulOverlayHandle, struct VREvent_t * pvrEvent); 3010 bool (OPENVR_FNTABLE_CALLTYPE *IsViewingPermitted)(VROverlayHandle_t ulOverlayHandle); 3011}; 3012 3013struct VR_IVRHeadsetView_FnTable 3014{ 3015 void (OPENVR_FNTABLE_CALLTYPE *SetHeadsetViewSize)(uint32_t nWidth, uint32_t nHeight); 3016 void (OPENVR_FNTABLE_CALLTYPE *GetHeadsetViewSize)(uint32_t * pnWidth, uint32_t * pnHeight); 3017 void (OPENVR_FNTABLE_CALLTYPE *SetHeadsetViewMode)(HeadsetViewMode_t eHeadsetViewMode); 3018 HeadsetViewMode_t (OPENVR_FNTABLE_CALLTYPE *GetHeadsetViewMode)(); 3019 void (OPENVR_FNTABLE_CALLTYPE *SetHeadsetViewCropped)(bool bCropped); 3020 bool (OPENVR_FNTABLE_CALLTYPE *GetHeadsetViewCropped)(); 3021 float (OPENVR_FNTABLE_CALLTYPE *GetHeadsetViewAspectRatio)(); 3022 void (OPENVR_FNTABLE_CALLTYPE *SetHeadsetViewBlendRange)(float flStartPct, float flEndPct); 3023 void (OPENVR_FNTABLE_CALLTYPE *GetHeadsetViewBlendRange)(float * pStartPct, float * pEndPct); 3024}; 3025 3026struct VR_IVRRenderModels_FnTable 3027{ 3028 EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadRenderModel_Async)(char * pchRenderModelName, struct RenderModel_t ** ppRenderModel); 3029 void (OPENVR_FNTABLE_CALLTYPE *FreeRenderModel)(struct RenderModel_t * pRenderModel); 3030 EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadTexture_Async)(TextureID_t textureId, struct RenderModel_TextureMap_t ** ppTexture); 3031 void (OPENVR_FNTABLE_CALLTYPE *FreeTexture)(struct RenderModel_TextureMap_t * pTexture); 3032 EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadTextureD3D11_Async)(TextureID_t textureId, void * pD3D11Device, void ** ppD3D11Texture2D); 3033 EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadIntoTextureD3D11_Async)(TextureID_t textureId, void * pDstTexture); 3034 void (OPENVR_FNTABLE_CALLTYPE *FreeTextureD3D11)(void * pD3D11Texture2D); 3035 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelName)(uint32_t unRenderModelIndex, char * pchRenderModelName, uint32_t unRenderModelNameLen); 3036 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelCount)(); 3037 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentCount)(char * pchRenderModelName); 3038 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentName)(char * pchRenderModelName, uint32_t unComponentIndex, char * pchComponentName, uint32_t unComponentNameLen); 3039 uint64_t (OPENVR_FNTABLE_CALLTYPE *GetComponentButtonMask)(char * pchRenderModelName, char * pchComponentName); 3040 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentRenderModelName)(char * pchRenderModelName, char * pchComponentName, char * pchComponentRenderModelName, uint32_t unComponentRenderModelNameLen); 3041 bool (OPENVR_FNTABLE_CALLTYPE *GetComponentStateForDevicePath)(char * pchRenderModelName, char * pchComponentName, VRInputValueHandle_t devicePath, RenderModel_ControllerMode_State_t * pState, RenderModel_ComponentState_t * pComponentState); 3042 bool (OPENVR_FNTABLE_CALLTYPE *GetComponentState)(char * pchRenderModelName, char * pchComponentName, VRControllerState_t * pControllerState, struct RenderModel_ControllerMode_State_t * pState, struct RenderModel_ComponentState_t * pComponentState); 3043 bool (OPENVR_FNTABLE_CALLTYPE *RenderModelHasComponent)(char * pchRenderModelName, char * pchComponentName); 3044 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelThumbnailURL)(char * pchRenderModelName, char * pchThumbnailURL, uint32_t unThumbnailURLLen, EVRRenderModelError * peError); 3045 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelOriginalPath)(char * pchRenderModelName, char * pchOriginalPath, uint32_t unOriginalPathLen, EVRRenderModelError * peError); 3046 char * (OPENVR_FNTABLE_CALLTYPE *GetRenderModelErrorNameFromEnum)(EVRRenderModelError error); 3047}; 3048 3049struct VR_IVRNotifications_FnTable 3050{ 3051 EVRNotificationError (OPENVR_FNTABLE_CALLTYPE *CreateNotification)(VROverlayHandle_t ulOverlayHandle, uint64_t ulUserValue, EVRNotificationType type, char * pchText, EVRNotificationStyle style, struct NotificationBitmap_t * pImage, VRNotificationId * pNotificationId); 3052 EVRNotificationError (OPENVR_FNTABLE_CALLTYPE *RemoveNotification)(VRNotificationId notificationId); 3053}; 3054 3055struct VR_IVRSettings_FnTable 3056{ 3057 char * (OPENVR_FNTABLE_CALLTYPE *GetSettingsErrorNameFromEnum)(EVRSettingsError eError); 3058 void (OPENVR_FNTABLE_CALLTYPE *SetBool)(char * pchSection, char * pchSettingsKey, bool bValue, EVRSettingsError * peError); 3059 void (OPENVR_FNTABLE_CALLTYPE *SetInt32)(char * pchSection, char * pchSettingsKey, int32_t nValue, EVRSettingsError * peError); 3060 void (OPENVR_FNTABLE_CALLTYPE *SetFloat)(char * pchSection, char * pchSettingsKey, float flValue, EVRSettingsError * peError); 3061 void (OPENVR_FNTABLE_CALLTYPE *SetString)(char * pchSection, char * pchSettingsKey, char * pchValue, EVRSettingsError * peError); 3062 bool (OPENVR_FNTABLE_CALLTYPE *GetBool)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError); 3063 int32_t (OPENVR_FNTABLE_CALLTYPE *GetInt32)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError); 3064 float (OPENVR_FNTABLE_CALLTYPE *GetFloat)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError); 3065 void (OPENVR_FNTABLE_CALLTYPE *GetString)(char * pchSection, char * pchSettingsKey, char * pchValue, uint32_t unValueLen, EVRSettingsError * peError); 3066 void (OPENVR_FNTABLE_CALLTYPE *RemoveSection)(char * pchSection, EVRSettingsError * peError); 3067 void (OPENVR_FNTABLE_CALLTYPE *RemoveKeyInSection)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError); 3068}; 3069 3070struct VR_IVRScreenshots_FnTable 3071{ 3072 EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *RequestScreenshot)(ScreenshotHandle_t * pOutScreenshotHandle, EVRScreenshotType type, char * pchPreviewFilename, char * pchVRFilename); 3073 EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *HookScreenshot)(EVRScreenshotType * pSupportedTypes, int numTypes); 3074 EVRScreenshotType (OPENVR_FNTABLE_CALLTYPE *GetScreenshotPropertyType)(ScreenshotHandle_t screenshotHandle, EVRScreenshotError * pError); 3075 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetScreenshotPropertyFilename)(ScreenshotHandle_t screenshotHandle, EVRScreenshotPropertyFilenames filenameType, char * pchFilename, uint32_t cchFilename, EVRScreenshotError * pError); 3076 EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *UpdateScreenshotProgress)(ScreenshotHandle_t screenshotHandle, float flProgress); 3077 EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *TakeStereoScreenshot)(ScreenshotHandle_t * pOutScreenshotHandle, char * pchPreviewFilename, char * pchVRFilename); 3078 EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *SubmitScreenshot)(ScreenshotHandle_t screenshotHandle, EVRScreenshotType type, char * pchSourcePreviewFilename, char * pchSourceVRFilename); 3079}; 3080 3081struct VR_IVRResources_FnTable 3082{ 3083 uint32_t (OPENVR_FNTABLE_CALLTYPE *LoadSharedResource)(char * pchResourceName, char * pchBuffer, uint32_t unBufferLen); 3084 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetResourceFullPath)(char * pchResourceName, char * pchResourceTypeDirectory, char * pchPathBuffer, uint32_t unBufferLen); 3085}; 3086 3087struct VR_IVRDriverManager_FnTable 3088{ 3089 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetDriverCount)(); 3090 uint32_t (OPENVR_FNTABLE_CALLTYPE *GetDriverName)(DriverId_t nDriver, char * pchValue, uint32_t unBufferSize); 3091 DriverHandle_t (OPENVR_FNTABLE_CALLTYPE *GetDriverHandle)(char * pchDriverName); 3092 bool (OPENVR_FNTABLE_CALLTYPE *IsEnabled)(DriverId_t nDriver); 3093}; 3094 3095struct VR_IVRInput_FnTable 3096{ 3097 EVRInputError (OPENVR_FNTABLE_CALLTYPE *SetActionManifestPath)(char * pchActionManifestPath); 3098 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetActionSetHandle)(char * pchActionSetName, VRActionSetHandle_t * pHandle); 3099 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetActionHandle)(char * pchActionName, VRActionHandle_t * pHandle); 3100 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetInputSourceHandle)(char * pchInputSourcePath, VRInputValueHandle_t * pHandle); 3101 EVRInputError (OPENVR_FNTABLE_CALLTYPE *UpdateActionState)(struct VRActiveActionSet_t * pSets, uint32_t unSizeOfVRSelectedActionSet_t, uint32_t unSetCount); 3102 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetDigitalActionData)(VRActionHandle_t action, struct InputDigitalActionData_t * pActionData, uint32_t unActionDataSize, VRInputValueHandle_t ulRestrictToDevice); 3103 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetAnalogActionData)(VRActionHandle_t action, struct InputAnalogActionData_t * pActionData, uint32_t unActionDataSize, VRInputValueHandle_t ulRestrictToDevice); 3104 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetPoseActionDataRelativeToNow)(VRActionHandle_t action, ETrackingUniverseOrigin eOrigin, float fPredictedSecondsFromNow, struct InputPoseActionData_t * pActionData, uint32_t unActionDataSize, VRInputValueHandle_t ulRestrictToDevice); 3105 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetPoseActionDataForNextFrame)(VRActionHandle_t action, ETrackingUniverseOrigin eOrigin, struct InputPoseActionData_t * pActionData, uint32_t unActionDataSize, VRInputValueHandle_t ulRestrictToDevice); 3106 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalActionData)(VRActionHandle_t action, struct InputSkeletalActionData_t * pActionData, uint32_t unActionDataSize); 3107 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetDominantHand)(ETrackedControllerRole * peDominantHand); 3108 EVRInputError (OPENVR_FNTABLE_CALLTYPE *SetDominantHand)(ETrackedControllerRole eDominantHand); 3109 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetBoneCount)(VRActionHandle_t action, uint32_t * pBoneCount); 3110 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetBoneHierarchy)(VRActionHandle_t action, BoneIndex_t * pParentIndices, uint32_t unIndexArayCount); 3111 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetBoneName)(VRActionHandle_t action, BoneIndex_t nBoneIndex, char * pchBoneName, uint32_t unNameBufferSize); 3112 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalReferenceTransforms)(VRActionHandle_t action, EVRSkeletalTransformSpace eTransformSpace, EVRSkeletalReferencePose eReferencePose, struct VRBoneTransform_t * pTransformArray, uint32_t unTransformArrayCount); 3113 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalTrackingLevel)(VRActionHandle_t action, EVRSkeletalTrackingLevel * pSkeletalTrackingLevel); 3114 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalBoneData)(VRActionHandle_t action, EVRSkeletalTransformSpace eTransformSpace, EVRSkeletalMotionRange eMotionRange, struct VRBoneTransform_t * pTransformArray, uint32_t unTransformArrayCount); 3115 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalSummaryData)(VRActionHandle_t action, EVRSummaryType eSummaryType, struct VRSkeletalSummaryData_t * pSkeletalSummaryData); 3116 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetSkeletalBoneDataCompressed)(VRActionHandle_t action, EVRSkeletalMotionRange eMotionRange, void * pvCompressedData, uint32_t unCompressedSize, uint32_t * punRequiredCompressedSize); 3117 EVRInputError (OPENVR_FNTABLE_CALLTYPE *DecompressSkeletalBoneData)(void * pvCompressedBuffer, uint32_t unCompressedBufferSize, EVRSkeletalTransformSpace eTransformSpace, struct VRBoneTransform_t * pTransformArray, uint32_t unTransformArrayCount); 3118 EVRInputError (OPENVR_FNTABLE_CALLTYPE *TriggerHapticVibrationAction)(VRActionHandle_t action, float fStartSecondsFromNow, float fDurationSeconds, float fFrequency, float fAmplitude, VRInputValueHandle_t ulRestrictToDevice); 3119 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetActionOrigins)(VRActionSetHandle_t actionSetHandle, VRActionHandle_t digitalActionHandle, VRInputValueHandle_t * originsOut, uint32_t originOutCount); 3120 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetOriginLocalizedName)(VRInputValueHandle_t origin, char * pchNameArray, uint32_t unNameArraySize, int32_t unStringSectionsToInclude); 3121 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetOriginTrackedDeviceInfo)(VRInputValueHandle_t origin, struct InputOriginInfo_t * pOriginInfo, uint32_t unOriginInfoSize); 3122 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetActionBindingInfo)(VRActionHandle_t action, struct InputBindingInfo_t * pOriginInfo, uint32_t unBindingInfoSize, uint32_t unBindingInfoCount, uint32_t * punReturnedBindingInfoCount); 3123 EVRInputError (OPENVR_FNTABLE_CALLTYPE *ShowActionOrigins)(VRActionSetHandle_t actionSetHandle, VRActionHandle_t ulActionHandle); 3124 EVRInputError (OPENVR_FNTABLE_CALLTYPE *ShowBindingsForActionSet)(struct VRActiveActionSet_t * pSets, uint32_t unSizeOfVRSelectedActionSet_t, uint32_t unSetCount, VRInputValueHandle_t originToHighlight); 3125 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetComponentStateForBinding)(char * pchRenderModelName, char * pchComponentName, struct InputBindingInfo_t * pOriginInfo, uint32_t unBindingInfoSize, uint32_t unBindingInfoCount, RenderModel_ComponentState_t * pComponentState); 3126 bool (OPENVR_FNTABLE_CALLTYPE *IsUsingLegacyInput)(); 3127 EVRInputError (OPENVR_FNTABLE_CALLTYPE *OpenBindingUI)(char * pchAppKey, VRActionSetHandle_t ulActionSetHandle, VRInputValueHandle_t ulDeviceHandle, bool bShowOnDesktop); 3128 EVRInputError (OPENVR_FNTABLE_CALLTYPE *GetBindingVariant)(VRInputValueHandle_t ulDevicePath, char * pchVariantArray, uint32_t unVariantArraySize); 3129}; 3130 3131struct VR_IVRIOBuffer_FnTable 3132{ 3133 EIOBufferError (OPENVR_FNTABLE_CALLTYPE *Open)(char * pchPath, EIOBufferMode mode, uint32_t unElementSize, uint32_t unElements, IOBufferHandle_t * pulBuffer); 3134 EIOBufferError (OPENVR_FNTABLE_CALLTYPE *Close)(IOBufferHandle_t ulBuffer); 3135 EIOBufferError (OPENVR_FNTABLE_CALLTYPE *Read)(IOBufferHandle_t ulBuffer, void * pDst, uint32_t unBytes, uint32_t * punRead); 3136 EIOBufferError (OPENVR_FNTABLE_CALLTYPE *Write)(IOBufferHandle_t ulBuffer, void * pSrc, uint32_t unBytes); 3137 PropertyContainerHandle_t (OPENVR_FNTABLE_CALLTYPE *PropertyContainer)(IOBufferHandle_t ulBuffer); 3138 bool (OPENVR_FNTABLE_CALLTYPE *HasReaders)(IOBufferHandle_t ulBuffer); 3139}; 3140 3141struct VR_IVRSpatialAnchors_FnTable 3142{ 3143 EVRSpatialAnchorError (OPENVR_FNTABLE_CALLTYPE *CreateSpatialAnchorFromDescriptor)(char * pchDescriptor, SpatialAnchorHandle_t * pHandleOut); 3144 EVRSpatialAnchorError (OPENVR_FNTABLE_CALLTYPE *CreateSpatialAnchorFromPose)(TrackedDeviceIndex_t unDeviceIndex, ETrackingUniverseOrigin eOrigin, struct SpatialAnchorPose_t * pPose, SpatialAnchorHandle_t * pHandleOut); 3145 EVRSpatialAnchorError (OPENVR_FNTABLE_CALLTYPE *GetSpatialAnchorPose)(SpatialAnchorHandle_t unHandle, ETrackingUniverseOrigin eOrigin, struct SpatialAnchorPose_t * pPoseOut); 3146 EVRSpatialAnchorError (OPENVR_FNTABLE_CALLTYPE *GetSpatialAnchorDescriptor)(SpatialAnchorHandle_t unHandle, char * pchDescriptorOut, uint32_t * punDescriptorBufferLenInOut); 3147}; 3148 3149struct VR_IVRDebug_FnTable 3150{ 3151 EVRDebugError (OPENVR_FNTABLE_CALLTYPE *EmitVrProfilerEvent)(char * pchMessage); 3152 EVRDebugError (OPENVR_FNTABLE_CALLTYPE *BeginVrProfilerEvent)(VrProfilerEventHandle_t * pHandleOut); 3153 EVRDebugError (OPENVR_FNTABLE_CALLTYPE *FinishVrProfilerEvent)(VrProfilerEventHandle_t hHandle, char * pchMessage); 3154 uint32_t (OPENVR_FNTABLE_CALLTYPE *DriverDebugRequest)(TrackedDeviceIndex_t unDeviceIndex, char * pchRequest, char * pchResponseBuffer, uint32_t unResponseBufferSize); 3155}; 3156 3157struct VR_IVRProperties_FnTable 3158{ 3159 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *ReadPropertyBatch)(PropertyContainerHandle_t ulContainerHandle, struct PropertyRead_t * pBatch, uint32_t unBatchEntryCount); 3160 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *WritePropertyBatch)(PropertyContainerHandle_t ulContainerHandle, struct PropertyWrite_t * pBatch, uint32_t unBatchEntryCount); 3161 char * (OPENVR_FNTABLE_CALLTYPE *GetPropErrorNameFromEnum)(ETrackedPropertyError error); 3162 PropertyContainerHandle_t (OPENVR_FNTABLE_CALLTYPE *TrackedDeviceToPropertyContainer)(TrackedDeviceIndex_t nDevice); 3163}; 3164 3165struct VR_IVRPaths_FnTable 3166{ 3167 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *ReadPathBatch)(PropertyContainerHandle_t ulRootHandle, struct PathRead_t * pBatch, uint32_t unBatchEntryCount); 3168 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *WritePathBatch)(PropertyContainerHandle_t ulRootHandle, struct PathWrite_t * pBatch, uint32_t unBatchEntryCount); 3169 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *StringToHandle)(PathHandle_t * pHandle, char * pchPath); 3170 ETrackedPropertyError (OPENVR_FNTABLE_CALLTYPE *HandleToString)(PathHandle_t pHandle, char * pchBuffer, uint32_t unBufferSize, uint32_t * punBufferSizeUsed); 3171}; 3172 3173struct VR_IVRBlockQueue_FnTable 3174{ 3175 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Create)(PropertyContainerHandle_t * pulQueueHandle, char * pchPath, uint32_t unBlockDataSize, uint32_t unBlockHeaderSize, uint32_t unBlockCount, uint32_t unFlags); 3176 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Connect)(PropertyContainerHandle_t * pulQueueHandle, char * pchPath); 3177 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *Destroy)(PropertyContainerHandle_t ulQueueHandle); 3178 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *AcquireWriteOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t * pulBlockHandle, void ** ppvBuffer); 3179 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *ReleaseWriteOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t ulBlockHandle); 3180 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *WaitAndAcquireReadOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t * pulBlockHandle, void ** ppvBuffer, EBlockQueueReadType eReadType, uint32_t unTimeoutMs); 3181 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *AcquireReadOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t * pulBlockHandle, void ** ppvBuffer, EBlockQueueReadType eReadType); 3182 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *ReleaseReadOnlyBlock)(PropertyContainerHandle_t ulQueueHandle, PropertyContainerHandle_t ulBlockHandle); 3183 EBlockQueueError (OPENVR_FNTABLE_CALLTYPE *QueueHasReader)(PropertyContainerHandle_t ulQueueHandle, bool * pbHasReaders); 3184}; 3185 3186 3187#if 0 3188// Global entry points 3189S_API intptr_t VR_InitInternal( EVRInitError *peError, EVRApplicationType eType ); 3190S_API void VR_ShutdownInternal(); 3191S_API bool VR_IsHmdPresent(); 3192S_API intptr_t VR_GetGenericInterface( const char *pchInterfaceVersion, EVRInitError *peError ); 3193S_API bool VR_IsRuntimeInstalled(); 3194S_API const char * VR_GetVRInitErrorAsSymbol( EVRInitError error ); 3195S_API const char * VR_GetVRInitErrorAsEnglishDescription( EVRInitError error ); 3196#endif 3197 3198#endif // __OPENVR_API_FLAT_H__ 3199 3200 3201[FILE END](C) 2025 0x4248 (C) 2025 4248 Media and 4248 Systems, All part of 0x4248 See LICENCE files for more information. Not all files are by 0x4248 always check Licencing.