Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/ValveSoftware/openvr.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Ludwig <joe@valvesoftware.com>2020-10-02 04:55:28 +0300
committerJoe Ludwig <joe@valvesoftware.com>2020-10-02 04:55:28 +0300
commite3d37563fd0405117f035c111346f60ca12625ba (patch)
tree1643c9b7816ac2221e1346e395b5d817cb24edbc
parent0eb70325a4ea3edca2a0ff8aefa631f2529e6eb7 (diff)
Removed out of date OSX files from the SDK
[git-p4: depot-paths = "//vr/steamvr/sdk_release/": change = 6120212]
-rw-r--r--bin/osx32/libopenvr_api.dylib.dSYM/Contents/Info.plist20
l---------bin/osx64/OpenVR.framework/Headers1
l---------bin/osx64/OpenVR.framework/OpenVR1
l---------bin/osx64/OpenVR.framework/Resources1
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Headers/openvr.h3777
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.cs5052
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.json3923
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_capi.h1942
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_driver.h2695
-rwxr-xr-xbin/osx64/OpenVR.framework/Versions/A/OpenVRbin1297628 -> 0 bytes
-rw-r--r--bin/osx64/OpenVR.framework/Versions/A/Resources/Info.plist18
l---------bin/osx64/OpenVR.framework/Versions/Current1
-rw-r--r--samples/bin/osx32/libopenvr_api.dylibbin155708 -> 0 bytes
13 files changed, 0 insertions, 17431 deletions
diff --git a/bin/osx32/libopenvr_api.dylib.dSYM/Contents/Info.plist b/bin/osx32/libopenvr_api.dylib.dSYM/Contents/Info.plist
deleted file mode 100644
index 60ac3d6..0000000
--- a/bin/osx32/libopenvr_api.dylib.dSYM/Contents/Info.plist
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
- <dict>
- <key>CFBundleDevelopmentRegion</key>
- <string>English</string>
- <key>CFBundleIdentifier</key>
- <string>com.apple.xcode.dsym.libopenvr_api.dylib</string>
- <key>CFBundleInfoDictionaryVersion</key>
- <string>6.0</string>
- <key>CFBundlePackageType</key>
- <string>dSYM</string>
- <key>CFBundleSignature</key>
- <string>????</string>
- <key>CFBundleShortVersionString</key>
- <string>1.0</string>
- <key>CFBundleVersion</key>
- <string>1</string>
- </dict>
-</plist>
diff --git a/bin/osx64/OpenVR.framework/Headers b/bin/osx64/OpenVR.framework/Headers
deleted file mode 120000
index a177d2a..0000000
--- a/bin/osx64/OpenVR.framework/Headers
+++ /dev/null
@@ -1 +0,0 @@
-Versions/Current/Headers \ No newline at end of file
diff --git a/bin/osx64/OpenVR.framework/OpenVR b/bin/osx64/OpenVR.framework/OpenVR
deleted file mode 120000
index 6eef4e3..0000000
--- a/bin/osx64/OpenVR.framework/OpenVR
+++ /dev/null
@@ -1 +0,0 @@
-Versions/Current/OpenVR \ No newline at end of file
diff --git a/bin/osx64/OpenVR.framework/Resources b/bin/osx64/OpenVR.framework/Resources
deleted file mode 120000
index 953ee36..0000000
--- a/bin/osx64/OpenVR.framework/Resources
+++ /dev/null
@@ -1 +0,0 @@
-Versions/Current/Resources \ No newline at end of file
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr.h b/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr.h
deleted file mode 100644
index f945dbc..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr.h
+++ /dev/null
@@ -1,3777 +0,0 @@
-#pragma once
-
-// openvr.h
-//========= Copyright Valve Corporation ============//
-// Dynamically generated file. Do not modify this file directly.
-
-#ifndef _OPENVR_API
-#define _OPENVR_API
-
-#include <stdint.h>
-
-
-
-// vrtypes.h
-#ifndef _INCLUDE_VRTYPES_H
-#define _INCLUDE_VRTYPES_H
-
-// Forward declarations to avoid requiring vulkan.h
-struct VkDevice_T;
-struct VkPhysicalDevice_T;
-struct VkInstance_T;
-struct VkQueue_T;
-
-// Forward declarations to avoid requiring d3d12.h
-struct ID3D12Resource;
-struct ID3D12CommandQueue;
-
-namespace vr
-{
-#pragma pack( push, 8 )
-
-typedef void* glSharedTextureHandle_t;
-typedef int32_t glInt_t;
-typedef uint32_t glUInt_t;
-
-// right-handed system
-// +y is up
-// +x is to the right
-// -z is going away from you
-// Distance unit is meters
-struct HmdMatrix34_t
-{
- float m[3][4];
-};
-
-struct HmdMatrix44_t
-{
- float m[4][4];
-};
-
-struct HmdVector3_t
-{
- float v[3];
-};
-
-struct HmdVector4_t
-{
- float v[4];
-};
-
-struct HmdVector3d_t
-{
- double v[3];
-};
-
-struct HmdVector2_t
-{
- float v[2];
-};
-
-struct HmdQuaternion_t
-{
- double w, x, y, z;
-};
-
-struct HmdColor_t
-{
- float r, g, b, a;
-};
-
-struct HmdQuad_t
-{
- HmdVector3_t vCorners[ 4 ];
-};
-
-struct HmdRect2_t
-{
- HmdVector2_t vTopLeft;
- HmdVector2_t vBottomRight;
-};
-
-/** Used to return the post-distortion UVs for each color channel.
-* UVs range from 0 to 1 with 0,0 in the upper left corner of the
-* source render target. The 0,0 to 1,1 range covers a single eye. */
-struct DistortionCoordinates_t
-{
- float rfRed[2];
- float rfGreen[2];
- float rfBlue[2];
-};
-
-enum EVREye
-{
- Eye_Left = 0,
- Eye_Right = 1
-};
-
-enum ETextureType
-{
- TextureType_DirectX = 0, // Handle is an ID3D11Texture
- TextureType_OpenGL = 1, // Handle is an OpenGL texture name or an OpenGL render buffer name, depending on submit flags
- TextureType_Vulkan = 2, // Handle is a pointer to a VRVulkanTextureData_t structure
- TextureType_IOSurface = 3, // Handle is a macOS cross-process-sharable IOSurfaceRef
- TextureType_DirectX12 = 4, // Handle is a pointer to a D3D12TextureData_t structure
-};
-
-enum EColorSpace
-{
- ColorSpace_Auto = 0, // Assumes 'gamma' for 8-bit per component formats, otherwise 'linear'. This mirrors the DXGI formats which have _SRGB variants.
- ColorSpace_Gamma = 1, // Texture data can be displayed directly on the display without any conversion (a.k.a. display native format).
- ColorSpace_Linear = 2, // Same as gamma but has been converted to a linear representation using DXGI's sRGB conversion algorithm.
-};
-
-struct Texture_t
-{
- void* handle; // See ETextureType definition above
- ETextureType eType;
- EColorSpace eColorSpace;
-};
-
-// Handle to a shared texture (HANDLE on Windows obtained using OpenSharedResource).
-typedef uint64_t SharedTextureHandle_t;
-#define INVALID_SHARED_TEXTURE_HANDLE ((vr::SharedTextureHandle_t)0)
-
-enum ETrackingResult
-{
- TrackingResult_Uninitialized = 1,
-
- TrackingResult_Calibrating_InProgress = 100,
- TrackingResult_Calibrating_OutOfRange = 101,
-
- TrackingResult_Running_OK = 200,
- TrackingResult_Running_OutOfRange = 201,
-};
-
-typedef uint32_t DriverId_t;
-static const uint32_t k_nDriverNone = 0xFFFFFFFF;
-
-static const uint32_t k_unMaxDriverDebugResponseSize = 32768;
-
-/** Used to pass device IDs to API calls */
-typedef uint32_t TrackedDeviceIndex_t;
-static const uint32_t k_unTrackedDeviceIndex_Hmd = 0;
-static const uint32_t k_unMaxTrackedDeviceCount = 16;
-static const uint32_t k_unTrackedDeviceIndexOther = 0xFFFFFFFE;
-static const uint32_t k_unTrackedDeviceIndexInvalid = 0xFFFFFFFF;
-
-/** Describes what kind of object is being tracked at a given ID */
-enum ETrackedDeviceClass
-{
- TrackedDeviceClass_Invalid = 0, // the ID was not valid.
- TrackedDeviceClass_HMD = 1, // Head-Mounted Displays
- TrackedDeviceClass_Controller = 2, // Tracked controllers
- TrackedDeviceClass_GenericTracker = 3, // Generic trackers, similar to controllers
- TrackedDeviceClass_TrackingReference = 4, // Camera and base stations that serve as tracking reference points
- TrackedDeviceClass_DisplayRedirect = 5, // Accessories that aren't necessarily tracked themselves, but may redirect video output from other tracked devices
-};
-
-
-/** Describes what specific role associated with a tracked device */
-enum ETrackedControllerRole
-{
- TrackedControllerRole_Invalid = 0, // Invalid value for controller type
- TrackedControllerRole_LeftHand = 1, // Tracked device associated with the left hand
- TrackedControllerRole_RightHand = 2, // Tracked device associated with the right hand
-};
-
-
-/** describes a single pose for a tracked object */
-struct TrackedDevicePose_t
-{
- HmdMatrix34_t mDeviceToAbsoluteTracking;
- HmdVector3_t vVelocity; // velocity in tracker space in m/s
- HmdVector3_t vAngularVelocity; // angular velocity in radians/s (?)
- ETrackingResult eTrackingResult;
- bool bPoseIsValid;
-
- // This indicates that there is a device connected for this spot in the pose array.
- // It could go from true to false if the user unplugs the device.
- bool bDeviceIsConnected;
-};
-
-/** Identifies which style of tracking origin the application wants to use
-* for the poses it is requesting */
-enum ETrackingUniverseOrigin
-{
- TrackingUniverseSeated = 0, // Poses are provided relative to the seated zero pose
- TrackingUniverseStanding = 1, // Poses are provided relative to the safe bounds configured by the user
- TrackingUniverseRawAndUncalibrated = 2, // Poses are provided in the coordinate system defined by the driver. It has Y up and is unified for devices of the same driver. You usually don't want this one.
-};
-
-// Refers to a single container of properties
-typedef uint64_t PropertyContainerHandle_t;
-typedef uint32_t PropertyTypeTag_t;
-
-static const PropertyContainerHandle_t k_ulInvalidPropertyContainer = 0;
-static const PropertyTypeTag_t k_unInvalidPropertyTag = 0;
-
-// Use these tags to set/get common types as struct properties
-static const PropertyTypeTag_t k_unFloatPropertyTag = 1;
-static const PropertyTypeTag_t k_unInt32PropertyTag = 2;
-static const PropertyTypeTag_t k_unUint64PropertyTag = 3;
-static const PropertyTypeTag_t k_unBoolPropertyTag = 4;
-static const PropertyTypeTag_t k_unStringPropertyTag = 5;
-
-static const PropertyTypeTag_t k_unHmdMatrix34PropertyTag = 20;
-static const PropertyTypeTag_t k_unHmdMatrix44PropertyTag = 21;
-static const PropertyTypeTag_t k_unHmdVector3PropertyTag = 22;
-static const PropertyTypeTag_t k_unHmdVector4PropertyTag = 23;
-
-static const PropertyTypeTag_t k_unHiddenAreaPropertyTag = 30;
-
-static const PropertyTypeTag_t k_unOpenVRInternalReserved_Start = 1000;
-static const PropertyTypeTag_t k_unOpenVRInternalReserved_End = 10000;
-
-
-/** Each entry in this enum represents a property that can be retrieved about a
-* tracked device. Many fields are only valid for one ETrackedDeviceClass. */
-enum ETrackedDeviceProperty
-{
- Prop_Invalid = 0,
-
- // general properties that apply to all device classes
- Prop_TrackingSystemName_String = 1000,
- Prop_ModelNumber_String = 1001,
- Prop_SerialNumber_String = 1002,
- Prop_RenderModelName_String = 1003,
- Prop_WillDriftInYaw_Bool = 1004,
- Prop_ManufacturerName_String = 1005,
- Prop_TrackingFirmwareVersion_String = 1006,
- Prop_HardwareRevision_String = 1007,
- Prop_AllWirelessDongleDescriptions_String = 1008,
- Prop_ConnectedWirelessDongle_String = 1009,
- Prop_DeviceIsWireless_Bool = 1010,
- Prop_DeviceIsCharging_Bool = 1011,
- Prop_DeviceBatteryPercentage_Float = 1012, // 0 is empty, 1 is full
- Prop_StatusDisplayTransform_Matrix34 = 1013,
- Prop_Firmware_UpdateAvailable_Bool = 1014,
- Prop_Firmware_ManualUpdate_Bool = 1015,
- Prop_Firmware_ManualUpdateURL_String = 1016,
- Prop_HardwareRevision_Uint64 = 1017,
- Prop_FirmwareVersion_Uint64 = 1018,
- Prop_FPGAVersion_Uint64 = 1019,
- Prop_VRCVersion_Uint64 = 1020,
- Prop_RadioVersion_Uint64 = 1021,
- Prop_DongleVersion_Uint64 = 1022,
- Prop_BlockServerShutdown_Bool = 1023,
- Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024,
- Prop_ContainsProximitySensor_Bool = 1025,
- Prop_DeviceProvidesBatteryStatus_Bool = 1026,
- Prop_DeviceCanPowerOff_Bool = 1027,
- Prop_Firmware_ProgrammingTarget_String = 1028,
- Prop_DeviceClass_Int32 = 1029,
- Prop_HasCamera_Bool = 1030,
- Prop_DriverVersion_String = 1031,
- Prop_Firmware_ForceUpdateRequired_Bool = 1032,
- Prop_ViveSystemButtonFixRequired_Bool = 1033,
- Prop_ParentDriver_Uint64 = 1034,
- Prop_ResourceRoot_String = 1035,
-
- // Properties that are unique to TrackedDeviceClass_HMD
- Prop_ReportsTimeSinceVSync_Bool = 2000,
- Prop_SecondsFromVsyncToPhotons_Float = 2001,
- Prop_DisplayFrequency_Float = 2002,
- Prop_UserIpdMeters_Float = 2003,
- Prop_CurrentUniverseId_Uint64 = 2004,
- Prop_PreviousUniverseId_Uint64 = 2005,
- Prop_DisplayFirmwareVersion_Uint64 = 2006,
- Prop_IsOnDesktop_Bool = 2007,
- Prop_DisplayMCType_Int32 = 2008,
- Prop_DisplayMCOffset_Float = 2009,
- Prop_DisplayMCScale_Float = 2010,
- Prop_EdidVendorID_Int32 = 2011,
- Prop_DisplayMCImageLeft_String = 2012,
- Prop_DisplayMCImageRight_String = 2013,
- Prop_DisplayGCBlackClamp_Float = 2014,
- Prop_EdidProductID_Int32 = 2015,
- Prop_CameraToHeadTransform_Matrix34 = 2016,
- Prop_DisplayGCType_Int32 = 2017,
- Prop_DisplayGCOffset_Float = 2018,
- Prop_DisplayGCScale_Float = 2019,
- Prop_DisplayGCPrescale_Float = 2020,
- Prop_DisplayGCImage_String = 2021,
- Prop_LensCenterLeftU_Float = 2022,
- Prop_LensCenterLeftV_Float = 2023,
- Prop_LensCenterRightU_Float = 2024,
- Prop_LensCenterRightV_Float = 2025,
- Prop_UserHeadToEyeDepthMeters_Float = 2026,
- Prop_CameraFirmwareVersion_Uint64 = 2027,
- Prop_CameraFirmwareDescription_String = 2028,
- Prop_DisplayFPGAVersion_Uint64 = 2029,
- Prop_DisplayBootloaderVersion_Uint64 = 2030,
- Prop_DisplayHardwareVersion_Uint64 = 2031,
- Prop_AudioFirmwareVersion_Uint64 = 2032,
- Prop_CameraCompatibilityMode_Int32 = 2033,
- Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034,
- Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035,
- Prop_DisplaySuppressed_Bool = 2036,
- Prop_DisplayAllowNightMode_Bool = 2037,
- Prop_DisplayMCImageWidth_Int32 = 2038,
- Prop_DisplayMCImageHeight_Int32 = 2039,
- Prop_DisplayMCImageNumChannels_Int32 = 2040,
- Prop_DisplayMCImageData_Binary = 2041,
- Prop_SecondsFromPhotonsToVblank_Float = 2042,
- Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043,
- Prop_DisplayDebugMode_Bool = 2044,
- Prop_GraphicsAdapterLuid_Uint64 = 2045,
- Prop_DriverProvidedChaperonePath_String = 2048,
-
- // Properties that are unique to TrackedDeviceClass_Controller
- Prop_AttachedDeviceId_String = 3000,
- Prop_SupportedButtons_Uint64 = 3001,
- Prop_Axis0Type_Int32 = 3002, // Return value is of type EVRControllerAxisType
- Prop_Axis1Type_Int32 = 3003, // Return value is of type EVRControllerAxisType
- Prop_Axis2Type_Int32 = 3004, // Return value is of type EVRControllerAxisType
- Prop_Axis3Type_Int32 = 3005, // Return value is of type EVRControllerAxisType
- Prop_Axis4Type_Int32 = 3006, // Return value is of type EVRControllerAxisType
- Prop_ControllerRoleHint_Int32 = 3007, // Return value is of type ETrackedControllerRole
-
- // Properties that are unique to TrackedDeviceClass_TrackingReference
- Prop_FieldOfViewLeftDegrees_Float = 4000,
- Prop_FieldOfViewRightDegrees_Float = 4001,
- Prop_FieldOfViewTopDegrees_Float = 4002,
- Prop_FieldOfViewBottomDegrees_Float = 4003,
- Prop_TrackingRangeMinimumMeters_Float = 4004,
- Prop_TrackingRangeMaximumMeters_Float = 4005,
- Prop_ModeLabel_String = 4006,
-
- // Properties that are used for user interface like icons names
- Prop_IconPathName_String = 5000, // DEPRECATED. Value not referenced. Now expected to be part of icon path properties.
- Prop_NamedIconPathDeviceOff_String = 5001, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceSearching_String = 5002, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceSearchingAlert_String = 5003, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceReady_String = 5004, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceReadyAlert_String = 5005, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceNotReady_String = 5006, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceStandby_String = 5007, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceAlertLow_String = 5008, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
-
- // Properties that are used by helpers, but are opaque to applications
- Prop_DisplayHiddenArea_Binary_Start = 5100,
- Prop_DisplayHiddenArea_Binary_End = 5150,
-
- // Properties that are unique to drivers
- Prop_UserConfigPath_String = 6000,
- Prop_InstallPath_String = 6001,
- Prop_HasDisplayComponent_Bool = 6002,
- Prop_HasControllerComponent_Bool = 6003,
- Prop_HasCameraComponent_Bool = 6004,
- Prop_HasDriverDirectModeComponent_Bool = 6005,
- Prop_HasVirtualDisplayComponent_Bool = 6006,
-
- // Vendors are free to expose private debug data in this reserved region
- Prop_VendorSpecific_Reserved_Start = 10000,
- Prop_VendorSpecific_Reserved_End = 10999,
-};
-
-/** No string property will ever be longer than this length */
-static const uint32_t k_unMaxPropertyStringSize = 32 * 1024;
-
-/** Used to return errors that occur when reading properties. */
-enum ETrackedPropertyError
-{
- TrackedProp_Success = 0,
- TrackedProp_WrongDataType = 1,
- TrackedProp_WrongDeviceClass = 2,
- TrackedProp_BufferTooSmall = 3,
- TrackedProp_UnknownProperty = 4, // Driver has not set the property (and may not ever).
- TrackedProp_InvalidDevice = 5,
- TrackedProp_CouldNotContactServer = 6,
- TrackedProp_ValueNotProvidedByDevice = 7,
- TrackedProp_StringExceedsMaximumLength = 8,
- TrackedProp_NotYetAvailable = 9, // The property value isn't known yet, but is expected soon. Call again later.
- TrackedProp_PermissionDenied = 10,
- TrackedProp_InvalidOperation = 11,
-};
-
-/** Allows the application to control what part of the provided texture will be used in the
-* frame buffer. */
-struct VRTextureBounds_t
-{
- float uMin, vMin;
- float uMax, vMax;
-};
-
-/** Allows specifying pose used to render provided scene texture (if different from value returned by WaitGetPoses). */
-struct VRTextureWithPose_t : public Texture_t
-{
- HmdMatrix34_t mDeviceToAbsoluteTracking; // Actual pose used to render scene textures.
-};
-
-/** Allows the application to control how scene textures are used by the compositor when calling Submit. */
-enum EVRSubmitFlags
-{
- // Simple render path. App submits rendered left and right eye images with no lens distortion correction applied.
- Submit_Default = 0x00,
-
- // App submits final left and right eye images with lens distortion already applied (lens distortion makes the images appear
- // barrel distorted with chromatic aberration correction applied). The app would have used the data returned by
- // vr::IVRSystem::ComputeDistortion() to apply the correct distortion to the rendered images before calling Submit().
- Submit_LensDistortionAlreadyApplied = 0x01,
-
- // If the texture pointer passed in is actually a renderbuffer (e.g. for MSAA in OpenGL) then set this flag.
- Submit_GlRenderBuffer = 0x02,
-
- // Do not use
- Submit_Reserved = 0x04,
-
- // Set to indicate that pTexture is a pointer to a VRTextureWithPose_t.
- Submit_TextureWithPose = 0x08,
-};
-
-/** Data required for passing Vulkan textures to IVRCompositor::Submit.
-* Be sure to call OpenVR_Shutdown before destroying these resources. */
-struct VRVulkanTextureData_t
-{
- uint64_t m_nImage; // VkImage
- VkDevice_T *m_pDevice;
- VkPhysicalDevice_T *m_pPhysicalDevice;
- VkInstance_T *m_pInstance;
- VkQueue_T *m_pQueue;
- uint32_t m_nQueueFamilyIndex;
- uint32_t m_nWidth, m_nHeight, m_nFormat, m_nSampleCount;
-};
-
-/** Data required for passing D3D12 textures to IVRCompositor::Submit.
-* Be sure to call OpenVR_Shutdown before destroying these resources. */
-struct D3D12TextureData_t
-{
- ID3D12Resource *m_pResource;
- ID3D12CommandQueue *m_pCommandQueue;
- uint32_t m_nNodeMask;
-};
-
-/** Status of the overall system or tracked objects */
-enum EVRState
-{
- VRState_Undefined = -1,
- VRState_Off = 0,
- VRState_Searching = 1,
- VRState_Searching_Alert = 2,
- VRState_Ready = 3,
- VRState_Ready_Alert = 4,
- VRState_NotReady = 5,
- VRState_Standby = 6,
- VRState_Ready_Alert_Low = 7,
-};
-
-/** The types of events that could be posted (and what the parameters mean for each event type) */
-enum EVREventType
-{
- VREvent_None = 0,
-
- VREvent_TrackedDeviceActivated = 100,
- VREvent_TrackedDeviceDeactivated = 101,
- VREvent_TrackedDeviceUpdated = 102,
- VREvent_TrackedDeviceUserInteractionStarted = 103,
- VREvent_TrackedDeviceUserInteractionEnded = 104,
- VREvent_IpdChanged = 105,
- VREvent_EnterStandbyMode = 106,
- VREvent_LeaveStandbyMode = 107,
- VREvent_TrackedDeviceRoleChanged = 108,
- VREvent_WatchdogWakeUpRequested = 109,
- VREvent_LensDistortionChanged = 110,
- VREvent_PropertyChanged = 111,
- VREvent_WirelessDisconnect = 112,
- VREvent_WirelessReconnect = 113,
-
- VREvent_ButtonPress = 200, // data is controller
- VREvent_ButtonUnpress = 201, // data is controller
- VREvent_ButtonTouch = 202, // data is controller
- VREvent_ButtonUntouch = 203, // data is controller
-
- VREvent_MouseMove = 300, // data is mouse
- VREvent_MouseButtonDown = 301, // data is mouse
- VREvent_MouseButtonUp = 302, // data is mouse
- VREvent_FocusEnter = 303, // data is overlay
- VREvent_FocusLeave = 304, // data is overlay
- VREvent_Scroll = 305, // data is mouse
- VREvent_TouchPadMove = 306, // data is mouse
- VREvent_OverlayFocusChanged = 307, // data is overlay, global event
-
- VREvent_InputFocusCaptured = 400, // data is process DEPRECATED
- VREvent_InputFocusReleased = 401, // data is process DEPRECATED
- VREvent_SceneFocusLost = 402, // data is process
- VREvent_SceneFocusGained = 403, // data is process
- VREvent_SceneApplicationChanged = 404, // data is process - The App actually drawing the scene changed (usually to or from the compositor)
- VREvent_SceneFocusChanged = 405, // data is process - New app got access to draw the scene
- VREvent_InputFocusChanged = 406, // data is process
- VREvent_SceneApplicationSecondaryRenderingStarted = 407, // data is process
-
- VREvent_HideRenderModels = 410, // Sent to the scene application to request hiding render models temporarily
- VREvent_ShowRenderModels = 411, // Sent to the scene application to request restoring render model visibility
-
- VREvent_OverlayShown = 500,
- VREvent_OverlayHidden = 501,
- VREvent_DashboardActivated = 502,
- VREvent_DashboardDeactivated = 503,
- VREvent_DashboardThumbSelected = 504, // Sent to the overlay manager - data is overlay
- VREvent_DashboardRequested = 505, // Sent to the overlay manager - data is overlay
- VREvent_ResetDashboard = 506, // Send to the overlay manager
- VREvent_RenderToast = 507, // Send to the dashboard to render a toast - data is the notification ID
- VREvent_ImageLoaded = 508, // Sent to overlays when a SetOverlayRaw or SetOverlayFromFile call finishes loading
- VREvent_ShowKeyboard = 509, // Sent to keyboard renderer in the dashboard to invoke it
- VREvent_HideKeyboard = 510, // Sent to keyboard renderer in the dashboard to hide it
- VREvent_OverlayGamepadFocusGained = 511, // Sent to an overlay when IVROverlay::SetFocusOverlay is called on it
- VREvent_OverlayGamepadFocusLost = 512, // Send to an overlay when it previously had focus and IVROverlay::SetFocusOverlay is called on something else
- VREvent_OverlaySharedTextureChanged = 513,
- VREvent_DashboardGuideButtonDown = 514,
- VREvent_DashboardGuideButtonUp = 515,
- VREvent_ScreenshotTriggered = 516, // Screenshot button combo was pressed, Dashboard should request a screenshot
- VREvent_ImageFailed = 517, // Sent to overlays when a SetOverlayRaw or SetOverlayfromFail fails to load
- VREvent_DashboardOverlayCreated = 518,
-
- // Screenshot API
- VREvent_RequestScreenshot = 520, // Sent by vrclient application to compositor to take a screenshot
- VREvent_ScreenshotTaken = 521, // Sent by compositor to the application that the screenshot has been taken
- VREvent_ScreenshotFailed = 522, // Sent by compositor to the application that the screenshot failed to be taken
- VREvent_SubmitScreenshotToDashboard = 523, // Sent by compositor to the dashboard that a completed screenshot was submitted
- VREvent_ScreenshotProgressToDashboard = 524, // Sent by compositor to the dashboard that a completed screenshot was submitted
-
- VREvent_PrimaryDashboardDeviceChanged = 525,
-
- VREvent_Notification_Shown = 600,
- VREvent_Notification_Hidden = 601,
- VREvent_Notification_BeginInteraction = 602,
- VREvent_Notification_Destroyed = 603,
-
- VREvent_Quit = 700, // data is process
- VREvent_ProcessQuit = 701, // data is process
- VREvent_QuitAborted_UserPrompt = 702, // data is process
- VREvent_QuitAcknowledged = 703, // data is process
- VREvent_DriverRequestedQuit = 704, // The driver has requested that SteamVR shut down
-
- VREvent_ChaperoneDataHasChanged = 800,
- VREvent_ChaperoneUniverseHasChanged = 801,
- VREvent_ChaperoneTempDataHasChanged = 802,
- VREvent_ChaperoneSettingsHaveChanged = 803,
- VREvent_SeatedZeroPoseReset = 804,
-
- VREvent_AudioSettingsHaveChanged = 820,
-
- VREvent_BackgroundSettingHasChanged = 850,
- VREvent_CameraSettingsHaveChanged = 851,
- VREvent_ReprojectionSettingHasChanged = 852,
- VREvent_ModelSkinSettingsHaveChanged = 853,
- VREvent_EnvironmentSettingsHaveChanged = 854,
- VREvent_PowerSettingsHaveChanged = 855,
- VREvent_EnableHomeAppSettingsHaveChanged = 856,
-
- VREvent_StatusUpdate = 900,
-
- VREvent_MCImageUpdated = 1000,
-
- VREvent_FirmwareUpdateStarted = 1100,
- VREvent_FirmwareUpdateFinished = 1101,
-
- VREvent_KeyboardClosed = 1200,
- VREvent_KeyboardCharInput = 1201,
- VREvent_KeyboardDone = 1202, // Sent when DONE button clicked on keyboard
-
- VREvent_ApplicationTransitionStarted = 1300,
- VREvent_ApplicationTransitionAborted = 1301,
- VREvent_ApplicationTransitionNewAppStarted = 1302,
- VREvent_ApplicationListUpdated = 1303,
- VREvent_ApplicationMimeTypeLoad = 1304,
- VREvent_ApplicationTransitionNewAppLaunchComplete = 1305,
- VREvent_ProcessConnected = 1306,
- VREvent_ProcessDisconnected = 1307,
-
- VREvent_Compositor_MirrorWindowShown = 1400,
- VREvent_Compositor_MirrorWindowHidden = 1401,
- VREvent_Compositor_ChaperoneBoundsShown = 1410,
- VREvent_Compositor_ChaperoneBoundsHidden = 1411,
-
- VREvent_TrackedCamera_StartVideoStream = 1500,
- VREvent_TrackedCamera_StopVideoStream = 1501,
- VREvent_TrackedCamera_PauseVideoStream = 1502,
- VREvent_TrackedCamera_ResumeVideoStream = 1503,
- VREvent_TrackedCamera_EditingSurface = 1550,
-
- VREvent_PerformanceTest_EnableCapture = 1600,
- VREvent_PerformanceTest_DisableCapture = 1601,
- VREvent_PerformanceTest_FidelityLevel = 1602,
-
- VREvent_MessageOverlay_Closed = 1650,
- VREvent_MessageOverlayCloseRequested = 1651,
-
- // Vendors are free to expose private events in this reserved region
- VREvent_VendorSpecific_Reserved_Start = 10000,
- VREvent_VendorSpecific_Reserved_End = 19999,
-};
-
-
-/** Level of Hmd activity */
-// UserInteraction_Timeout means the device is in the process of timing out.
-// InUse = ( k_EDeviceActivityLevel_UserInteraction || k_EDeviceActivityLevel_UserInteraction_Timeout )
-// VREvent_TrackedDeviceUserInteractionStarted fires when the devices transitions from Standby -> UserInteraction or Idle -> UserInteraction.
-// VREvent_TrackedDeviceUserInteractionEnded fires when the devices transitions from UserInteraction_Timeout -> Idle
-enum EDeviceActivityLevel
-{
- k_EDeviceActivityLevel_Unknown = -1,
- k_EDeviceActivityLevel_Idle = 0, // No activity for the last 10 seconds
- k_EDeviceActivityLevel_UserInteraction = 1, // Activity (movement or prox sensor) is happening now
- k_EDeviceActivityLevel_UserInteraction_Timeout = 2, // No activity for the last 0.5 seconds
- k_EDeviceActivityLevel_Standby = 3, // Idle for at least 5 seconds (configurable in Settings -> Power Management)
-};
-
-
-/** VR controller button and axis IDs */
-enum EVRButtonId
-{
- k_EButton_System = 0,
- k_EButton_ApplicationMenu = 1,
- k_EButton_Grip = 2,
- k_EButton_DPad_Left = 3,
- k_EButton_DPad_Up = 4,
- k_EButton_DPad_Right = 5,
- k_EButton_DPad_Down = 6,
- k_EButton_A = 7,
-
- k_EButton_ProximitySensor = 31,
-
- k_EButton_Axis0 = 32,
- k_EButton_Axis1 = 33,
- k_EButton_Axis2 = 34,
- k_EButton_Axis3 = 35,
- k_EButton_Axis4 = 36,
-
- // aliases for well known controllers
- k_EButton_SteamVR_Touchpad = k_EButton_Axis0,
- k_EButton_SteamVR_Trigger = k_EButton_Axis1,
-
- k_EButton_Dashboard_Back = k_EButton_Grip,
-
- k_EButton_Max = 64
-};
-
-inline uint64_t ButtonMaskFromId( EVRButtonId id ) { return 1ull << id; }
-
-/** used for controller button events */
-struct VREvent_Controller_t
-{
- uint32_t button; // EVRButtonId enum
-};
-
-
-/** used for simulated mouse events in overlay space */
-enum EVRMouseButton
-{
- VRMouseButton_Left = 0x0001,
- VRMouseButton_Right = 0x0002,
- VRMouseButton_Middle = 0x0004,
-};
-
-
-/** used for simulated mouse events in overlay space */
-struct VREvent_Mouse_t
-{
- float x, y; // co-ords are in GL space, bottom left of the texture is 0,0
- uint32_t button; // EVRMouseButton enum
-};
-
-/** used for simulated mouse wheel scroll in overlay space */
-struct VREvent_Scroll_t
-{
- float xdelta, ydelta; // movement in fraction of the pad traversed since last delta, 1.0 for a full swipe
- uint32_t repeatCount;
-};
-
-/** when in mouse input mode you can receive data from the touchpad, these events are only sent if the users finger
- is on the touchpad (or just released from it)
-**/
-struct VREvent_TouchPadMove_t
-{
- // true if the users finger is detected on the touch pad
- bool bFingerDown;
-
- // How long the finger has been down in seconds
- float flSecondsFingerDown;
-
- // These values indicate the starting finger position (so you can do some basic swipe stuff)
- float fValueXFirst;
- float fValueYFirst;
-
- // This is the raw sampled coordinate without deadzoning
- float fValueXRaw;
- float fValueYRaw;
-};
-
-/** notification related events. Details will still change at this point */
-struct VREvent_Notification_t
-{
- uint64_t ulUserValue;
- uint32_t notificationId;
-};
-
-/** Used for events about processes */
-struct VREvent_Process_t
-{
- uint32_t pid;
- uint32_t oldPid;
- bool bForced;
-};
-
-
-/** Used for a few events about overlays */
-struct VREvent_Overlay_t
-{
- uint64_t overlayHandle;
-};
-
-
-/** Used for a few events about overlays */
-struct VREvent_Status_t
-{
- uint32_t statusState; // EVRState enum
-};
-
-/** Used for keyboard events **/
-struct VREvent_Keyboard_t
-{
- char cNewInput[8]; // Up to 11 bytes of new input
- uint64_t uUserValue; // Possible flags about the new input
-};
-
-struct VREvent_Ipd_t
-{
- float ipdMeters;
-};
-
-struct VREvent_Chaperone_t
-{
- uint64_t m_nPreviousUniverse;
- uint64_t m_nCurrentUniverse;
-};
-
-/** Not actually used for any events */
-struct VREvent_Reserved_t
-{
- uint64_t reserved0;
- uint64_t reserved1;
-};
-
-struct VREvent_PerformanceTest_t
-{
- uint32_t m_nFidelityLevel;
-};
-
-struct VREvent_SeatedZeroPoseReset_t
-{
- bool bResetBySystemMenu;
-};
-
-struct VREvent_Screenshot_t
-{
- uint32_t handle;
- uint32_t type;
-};
-
-struct VREvent_ScreenshotProgress_t
-{
- float progress;
-};
-
-struct VREvent_ApplicationLaunch_t
-{
- uint32_t pid;
- uint32_t unArgsHandle;
-};
-
-struct VREvent_EditingCameraSurface_t
-{
- uint64_t overlayHandle;
- uint32_t nVisualMode;
-};
-
-struct VREvent_MessageOverlay_t
-{
- uint32_t unVRMessageOverlayResponse; // vr::VRMessageOverlayResponse enum
-};
-
-struct VREvent_Property_t
-{
- PropertyContainerHandle_t container;
- ETrackedDeviceProperty prop;
-};
-
-/** NOTE!!! If you change this you MUST manually update openvr_interop.cs.py */
-typedef union
-{
- VREvent_Reserved_t reserved;
- VREvent_Controller_t controller;
- VREvent_Mouse_t mouse;
- VREvent_Scroll_t scroll;
- VREvent_Process_t process;
- VREvent_Notification_t notification;
- VREvent_Overlay_t overlay;
- VREvent_Status_t status;
- VREvent_Keyboard_t keyboard;
- VREvent_Ipd_t ipd;
- VREvent_Chaperone_t chaperone;
- VREvent_PerformanceTest_t performanceTest;
- VREvent_TouchPadMove_t touchPadMove;
- VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset;
- VREvent_Screenshot_t screenshot;
- VREvent_ScreenshotProgress_t screenshotProgress;
- VREvent_ApplicationLaunch_t applicationLaunch;
- VREvent_EditingCameraSurface_t cameraSurface;
- VREvent_MessageOverlay_t messageOverlay;
- VREvent_Property_t property;
-} VREvent_Data_t;
-
-
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-/** An event posted by the server to all running applications */
-struct VREvent_t
-{
- uint32_t eventType; // EVREventType enum
- TrackedDeviceIndex_t trackedDeviceIndex;
- float eventAgeSeconds;
- // event data must be the end of the struct as its size is variable
- VREvent_Data_t data;
-};
-
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-/** The mesh to draw into the stencil (or depth) buffer to perform
-* early stencil (or depth) kills of pixels that will never appear on the HMD.
-* This mesh draws on all the pixels that will be hidden after distortion.
-*
-* If the HMD does not provide a visible area mesh pVertexData will be
-* NULL and unTriangleCount will be 0. */
-struct HiddenAreaMesh_t
-{
- const HmdVector2_t *pVertexData;
- uint32_t unTriangleCount;
-};
-
-
-enum EHiddenAreaMeshType
-{
- k_eHiddenAreaMesh_Standard = 0,
- k_eHiddenAreaMesh_Inverse = 1,
- k_eHiddenAreaMesh_LineLoop = 2,
-
- k_eHiddenAreaMesh_Max = 3,
-};
-
-
-/** Identifies what kind of axis is on the controller at index n. Read this type
-* with pVRSystem->Get( nControllerDeviceIndex, Prop_Axis0Type_Int32 + n );
-*/
-enum EVRControllerAxisType
-{
- k_eControllerAxis_None = 0,
- k_eControllerAxis_TrackPad = 1,
- k_eControllerAxis_Joystick = 2,
- k_eControllerAxis_Trigger = 3, // Analog trigger data is in the X axis
-};
-
-
-/** contains information about one axis on the controller */
-struct VRControllerAxis_t
-{
- float x; // Ranges from -1.0 to 1.0 for joysticks and track pads. Ranges from 0.0 to 1.0 for triggers were 0 is fully released.
- float y; // Ranges from -1.0 to 1.0 for joysticks and track pads. Is always 0.0 for triggers.
-};
-
-
-/** the number of axes in the controller state */
-static const uint32_t k_unControllerStateAxisCount = 5;
-
-
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-/** Holds all the state of a controller at one moment in time. */
-struct VRControllerState001_t
-{
- // If packet num matches that on your prior call, then the controller state hasn't been changed since
- // your last call and there is no need to process it
- uint32_t unPacketNum;
-
- // bit flags for each of the buttons. Use ButtonMaskFromId to turn an ID into a mask
- uint64_t ulButtonPressed;
- uint64_t ulButtonTouched;
-
- // Axis data for the controller's analog inputs
- VRControllerAxis_t rAxis[ k_unControllerStateAxisCount ];
-};
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-
-typedef VRControllerState001_t VRControllerState_t;
-
-
-/** determines how to provide output to the application of various event processing functions. */
-enum EVRControllerEventOutputType
-{
- ControllerEventOutput_OSEvents = 0,
- ControllerEventOutput_VREvents = 1,
-};
-
-
-
-/** Collision Bounds Style */
-enum ECollisionBoundsStyle
-{
- COLLISION_BOUNDS_STYLE_BEGINNER = 0,
- COLLISION_BOUNDS_STYLE_INTERMEDIATE,
- COLLISION_BOUNDS_STYLE_SQUARES,
- COLLISION_BOUNDS_STYLE_ADVANCED,
- COLLISION_BOUNDS_STYLE_NONE,
-
- COLLISION_BOUNDS_STYLE_COUNT
-};
-
-/** Allows the application to customize how the overlay appears in the compositor */
-struct Compositor_OverlaySettings
-{
- uint32_t size; // sizeof(Compositor_OverlaySettings)
- bool curved, antialias;
- float scale, distance, alpha;
- float uOffset, vOffset, uScale, vScale;
- float gridDivs, gridWidth, gridScale;
- HmdMatrix44_t transform;
-};
-
-/** used to refer to a single VR overlay */
-typedef uint64_t VROverlayHandle_t;
-
-static const VROverlayHandle_t k_ulOverlayHandleInvalid = 0;
-
-/** Errors that can occur around VR overlays */
-enum EVROverlayError
-{
- VROverlayError_None = 0,
-
- VROverlayError_UnknownOverlay = 10,
- VROverlayError_InvalidHandle = 11,
- VROverlayError_PermissionDenied = 12,
- VROverlayError_OverlayLimitExceeded = 13, // No more overlays could be created because the maximum number already exist
- VROverlayError_WrongVisibilityType = 14,
- VROverlayError_KeyTooLong = 15,
- VROverlayError_NameTooLong = 16,
- VROverlayError_KeyInUse = 17,
- VROverlayError_WrongTransformType = 18,
- VROverlayError_InvalidTrackedDevice = 19,
- VROverlayError_InvalidParameter = 20,
- VROverlayError_ThumbnailCantBeDestroyed = 21,
- VROverlayError_ArrayTooSmall = 22,
- VROverlayError_RequestFailed = 23,
- VROverlayError_InvalidTexture = 24,
- VROverlayError_UnableToLoadFile = 25,
- VROverlayError_KeyboardAlreadyInUse = 26,
- VROverlayError_NoNeighbor = 27,
- VROverlayError_TooManyMaskPrimitives = 29,
- VROverlayError_BadMaskPrimitive = 30,
-};
-
-/** enum values to pass in to VR_Init to identify whether the application will
-* draw a 3D scene. */
-enum EVRApplicationType
-{
- VRApplication_Other = 0, // Some other kind of application that isn't covered by the other entries
- VRApplication_Scene = 1, // Application will submit 3D frames
- VRApplication_Overlay = 2, // Application only interacts with overlays
- VRApplication_Background = 3, // Application should not start SteamVR if it's not already running, and should not
- // keep it running if everything else quits.
- VRApplication_Utility = 4, // Init should not try to load any drivers. The application needs access to utility
- // interfaces (like IVRSettings and IVRApplications) but not hardware.
- VRApplication_VRMonitor = 5, // Reserved for vrmonitor
- VRApplication_SteamWatchdog = 6,// Reserved for Steam
- VRApplication_Bootstrapper = 7, // Start up SteamVR
-
- VRApplication_Max
-};
-
-
-/** error codes for firmware */
-enum EVRFirmwareError
-{
- VRFirmwareError_None = 0,
- VRFirmwareError_Success = 1,
- VRFirmwareError_Fail = 2,
-};
-
-
-/** error codes for notifications */
-enum EVRNotificationError
-{
- VRNotificationError_OK = 0,
- VRNotificationError_InvalidNotificationId = 100,
- VRNotificationError_NotificationQueueFull = 101,
- VRNotificationError_InvalidOverlayHandle = 102,
- VRNotificationError_SystemWithUserValueAlreadyExists = 103,
-};
-
-
-/** error codes returned by Vr_Init */
-
-// Please add adequate error description to https://developer.valvesoftware.com/w/index.php?title=Category:SteamVRHelp
-enum EVRInitError
-{
- VRInitError_None = 0,
- VRInitError_Unknown = 1,
-
- VRInitError_Init_InstallationNotFound = 100,
- VRInitError_Init_InstallationCorrupt = 101,
- VRInitError_Init_VRClientDLLNotFound = 102,
- VRInitError_Init_FileNotFound = 103,
- VRInitError_Init_FactoryNotFound = 104,
- VRInitError_Init_InterfaceNotFound = 105,
- VRInitError_Init_InvalidInterface = 106,
- VRInitError_Init_UserConfigDirectoryInvalid = 107,
- VRInitError_Init_HmdNotFound = 108,
- VRInitError_Init_NotInitialized = 109,
- VRInitError_Init_PathRegistryNotFound = 110,
- VRInitError_Init_NoConfigPath = 111,
- VRInitError_Init_NoLogPath = 112,
- VRInitError_Init_PathRegistryNotWritable = 113,
- VRInitError_Init_AppInfoInitFailed = 114,
- VRInitError_Init_Retry = 115, // Used internally to cause retries to vrserver
- VRInitError_Init_InitCanceledByUser = 116, // The calling application should silently exit. The user canceled app startup
- VRInitError_Init_AnotherAppLaunching = 117,
- VRInitError_Init_SettingsInitFailed = 118,
- VRInitError_Init_ShuttingDown = 119,
- VRInitError_Init_TooManyObjects = 120,
- VRInitError_Init_NoServerForBackgroundApp = 121,
- VRInitError_Init_NotSupportedWithCompositor = 122,
- VRInitError_Init_NotAvailableToUtilityApps = 123,
- VRInitError_Init_Internal = 124,
- VRInitError_Init_HmdDriverIdIsNone = 125,
- VRInitError_Init_HmdNotFoundPresenceFailed = 126,
- VRInitError_Init_VRMonitorNotFound = 127,
- VRInitError_Init_VRMonitorStartupFailed = 128,
- VRInitError_Init_LowPowerWatchdogNotSupported = 129,
- VRInitError_Init_InvalidApplicationType = 130,
- VRInitError_Init_NotAvailableToWatchdogApps = 131,
- VRInitError_Init_WatchdogDisabledInSettings = 132,
- VRInitError_Init_VRDashboardNotFound = 133,
- VRInitError_Init_VRDashboardStartupFailed = 134,
- VRInitError_Init_VRHomeNotFound = 135,
- VRInitError_Init_VRHomeStartupFailed = 136,
- VRInitError_Init_RebootingBusy = 137,
- VRInitError_Init_FirmwareUpdateBusy = 138,
- VRInitError_Init_FirmwareRecoveryBusy = 139,
-
-
- VRInitError_Driver_Failed = 200,
- VRInitError_Driver_Unknown = 201,
- VRInitError_Driver_HmdUnknown = 202,
- VRInitError_Driver_NotLoaded = 203,
- VRInitError_Driver_RuntimeOutOfDate = 204,
- VRInitError_Driver_HmdInUse = 205,
- VRInitError_Driver_NotCalibrated = 206,
- VRInitError_Driver_CalibrationInvalid = 207,
- VRInitError_Driver_HmdDisplayNotFound = 208,
- VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209,
- // VRInitError_Driver_HmdDisplayNotFoundAfterFix = 210, // not needed: here for historic reasons
- VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
- VRInitError_Driver_HmdDisplayMirrored = 212,
-
- VRInitError_IPC_ServerInitFailed = 300,
- VRInitError_IPC_ConnectFailed = 301,
- VRInitError_IPC_SharedStateInitFailed = 302,
- VRInitError_IPC_CompositorInitFailed = 303,
- VRInitError_IPC_MutexInitFailed = 304,
- VRInitError_IPC_Failed = 305,
- VRInitError_IPC_CompositorConnectFailed = 306,
- VRInitError_IPC_CompositorInvalidConnectResponse = 307,
- VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308,
-
- VRInitError_Compositor_Failed = 400,
- VRInitError_Compositor_D3D11HardwareRequired = 401,
- VRInitError_Compositor_FirmwareRequiresUpdate = 402,
- VRInitError_Compositor_OverlayInitFailed = 403,
- VRInitError_Compositor_ScreenshotsInitFailed = 404,
- VRInitError_Compositor_UnableToCreateDevice = 405,
-
- VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
-
- VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
- VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
- VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103,
- VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104,
- VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105,
- VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106,
- VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107,
- VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108,
- VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109,
- VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110,
- VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111,
- VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
- VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
-
- VRInitError_Steam_SteamInstallationNotFound = 2000,
-};
-
-enum EVRScreenshotType
-{
- VRScreenshotType_None = 0,
- VRScreenshotType_Mono = 1, // left eye only
- VRScreenshotType_Stereo = 2,
- VRScreenshotType_Cubemap = 3,
- VRScreenshotType_MonoPanorama = 4,
- VRScreenshotType_StereoPanorama = 5
-};
-
-enum EVRScreenshotPropertyFilenames
-{
- VRScreenshotPropertyFilenames_Preview = 0,
- VRScreenshotPropertyFilenames_VR = 1,
-};
-
-enum EVRTrackedCameraError
-{
- VRTrackedCameraError_None = 0,
- VRTrackedCameraError_OperationFailed = 100,
- VRTrackedCameraError_InvalidHandle = 101,
- VRTrackedCameraError_InvalidFrameHeaderVersion = 102,
- VRTrackedCameraError_OutOfHandles = 103,
- VRTrackedCameraError_IPCFailure = 104,
- VRTrackedCameraError_NotSupportedForThisDevice = 105,
- VRTrackedCameraError_SharedMemoryFailure = 106,
- VRTrackedCameraError_FrameBufferingFailure = 107,
- VRTrackedCameraError_StreamSetupFailure = 108,
- VRTrackedCameraError_InvalidGLTextureId = 109,
- VRTrackedCameraError_InvalidSharedTextureHandle = 110,
- VRTrackedCameraError_FailedToGetGLTextureId = 111,
- VRTrackedCameraError_SharedTextureFailure = 112,
- VRTrackedCameraError_NoFrameAvailable = 113,
- VRTrackedCameraError_InvalidArgument = 114,
- VRTrackedCameraError_InvalidFrameBufferSize = 115,
-};
-
-enum EVRTrackedCameraFrameType
-{
- VRTrackedCameraFrameType_Distorted = 0, // This is the camera video frame size in pixels, still distorted.
- VRTrackedCameraFrameType_Undistorted, // In pixels, an undistorted inscribed rectangle region without invalid regions. This size is subject to changes shortly.
- VRTrackedCameraFrameType_MaximumUndistorted, // In pixels, maximum undistorted with invalid regions. Non zero alpha component identifies valid regions.
- MAX_CAMERA_FRAME_TYPES
-};
-
-typedef uint64_t TrackedCameraHandle_t;
-#define INVALID_TRACKED_CAMERA_HANDLE ((vr::TrackedCameraHandle_t)0)
-
-struct CameraVideoStreamFrameHeader_t
-{
- EVRTrackedCameraFrameType eFrameType;
-
- uint32_t nWidth;
- uint32_t nHeight;
- uint32_t nBytesPerPixel;
-
- uint32_t nFrameSequence;
-
- TrackedDevicePose_t standingTrackedDevicePose;
-};
-
-// Screenshot types
-typedef uint32_t ScreenshotHandle_t;
-
-static const uint32_t k_unScreenshotHandleInvalid = 0;
-
-#pragma pack( pop )
-
-// figure out how to import from the VR API dll
-#if defined(_WIN32)
-
-#ifdef VR_API_EXPORT
-#define VR_INTERFACE extern "C" __declspec( dllexport )
-#else
-#define VR_INTERFACE extern "C" __declspec( dllimport )
-#endif
-
-#elif defined(__GNUC__) || defined(COMPILER_GCC) || defined(__APPLE__)
-
-#ifdef VR_API_EXPORT
-#define VR_INTERFACE extern "C" __attribute__((visibility("default")))
-#else
-#define VR_INTERFACE extern "C"
-#endif
-
-#else
-#error "Unsupported Platform."
-#endif
-
-
-#if defined( _WIN32 )
-#define VR_CALLTYPE __cdecl
-#else
-#define VR_CALLTYPE
-#endif
-
-} // namespace vr
-
-#endif // _INCLUDE_VRTYPES_H
-
-
-// vrannotation.h
-#ifdef API_GEN
-# define VR_CLANG_ATTR(ATTR) __attribute__((annotate( ATTR )))
-#else
-# define VR_CLANG_ATTR(ATTR)
-#endif
-
-#define VR_METHOD_DESC(DESC) VR_CLANG_ATTR( "desc:" #DESC ";" )
-#define VR_IGNOREATTR() VR_CLANG_ATTR( "ignore" )
-#define VR_OUT_STRUCT() VR_CLANG_ATTR( "out_struct: ;" )
-#define VR_OUT_STRING() VR_CLANG_ATTR( "out_string: ;" )
-#define VR_OUT_ARRAY_CALL(COUNTER,FUNCTION,PARAMS) VR_CLANG_ATTR( "out_array_call:" #COUNTER "," #FUNCTION "," #PARAMS ";" )
-#define VR_OUT_ARRAY_COUNT(COUNTER) VR_CLANG_ATTR( "out_array_count:" #COUNTER ";" )
-#define VR_ARRAY_COUNT(COUNTER) VR_CLANG_ATTR( "array_count:" #COUNTER ";" )
-#define VR_ARRAY_COUNT_D(COUNTER, DESC) VR_CLANG_ATTR( "array_count:" #COUNTER ";desc:" #DESC )
-#define VR_BUFFER_COUNT(COUNTER) VR_CLANG_ATTR( "buffer_count:" #COUNTER ";" )
-#define VR_OUT_BUFFER_COUNT(COUNTER) VR_CLANG_ATTR( "out_buffer_count:" #COUNTER ";" )
-#define VR_OUT_STRING_COUNT(COUNTER) VR_CLANG_ATTR( "out_string_count:" #COUNTER ";" )
-
-// ivrsystem.h
-namespace vr
-{
-
-class IVRSystem
-{
-public:
-
-
- // ------------------------------------
- // Display Methods
- // ------------------------------------
-
- /** Suggested size for the intermediate render target that the distortion pulls from. */
- virtual void GetRecommendedRenderTargetSize( uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** The projection matrix for the specified eye */
- virtual HmdMatrix44_t GetProjectionMatrix( EVREye eEye, float fNearZ, float fFarZ ) = 0;
-
- /** The components necessary to build your own projection matrix in case your
- * application is doing something fancy like infinite Z */
- virtual void GetProjectionRaw( EVREye eEye, float *pfLeft, float *pfRight, float *pfTop, float *pfBottom ) = 0;
-
- /** Gets the result of the distortion function for the specified eye and input UVs. UVs go from 0,0 in
- * the upper left of that eye's viewport and 1,1 in the lower right of that eye's viewport.
- * Returns true for success. Otherwise, returns false, and distortion coordinates are not suitable. */
- virtual bool ComputeDistortion( EVREye eEye, float fU, float fV, DistortionCoordinates_t *pDistortionCoordinates ) = 0;
-
- /** Returns the transform from eye space to the head space. Eye space is the per-eye flavor of head
- * space that provides stereo disparity. Instead of Model * View * Projection the sequence is Model * View * Eye^-1 * Projection.
- * Normally View and Eye^-1 will be multiplied together and treated as View in your application.
- */
- virtual HmdMatrix34_t GetEyeToHeadTransform( EVREye eEye ) = 0;
-
- /** Returns the number of elapsed seconds since the last recorded vsync event. This
- * will come from a vsync timer event in the timer if possible or from the application-reported
- * time if that is not available. If no vsync times are available the function will
- * return zero for vsync time and frame counter and return false from the method. */
- virtual bool GetTimeSinceLastVsync( float *pfSecondsSinceLastVsync, uint64_t *pulFrameCounter ) = 0;
-
- /** [D3D9 Only]
- * Returns the adapter index that the user should pass into CreateDevice to set up D3D9 in such
- * a way that it can go full screen exclusive on the HMD. Returns -1 if there was an error.
- */
- virtual int32_t GetD3D9AdapterIndex() = 0;
-
- /** [D3D10/11 Only]
- * Returns the adapter index that the user should pass into EnumAdapters to create the device
- * and swap chain in DX10 and DX11. If an error occurs the index will be set to -1.
- */
- virtual void GetDXGIOutputInfo( int32_t *pnAdapterIndex ) = 0;
-
- /**
- * Returns platform- and texture-type specific adapter identification so that applications and the
- * compositor are creating textures and swap chains on the same GPU. If an error occurs the device
- * will be set to 0.
- * pInstance is an optional parameter that is required only when textureType is TextureType_Vulkan.
- * [D3D10/11/12 Only (D3D9 Not Supported)]
- * Returns the adapter LUID that identifies the GPU attached to the HMD. The user should
- * enumerate all adapters using IDXGIFactory::EnumAdapters and IDXGIAdapter::GetDesc to find
- * the adapter with the matching LUID, or use IDXGIFactory4::EnumAdapterByLuid.
- * The discovered IDXGIAdapter should be used to create the device and swap chain.
- * [Vulkan Only]
- * Returns the VkPhysicalDevice that should be used by the application.
- * pInstance must be the instance the application will use to query for the VkPhysicalDevice. The application
- * must create the VkInstance with extensions returned by IVRCompositor::GetVulkanInstanceExtensionsRequired enabled.
- * [macOS Only]
- * Returns an id<MTLDevice> that should be used by the application.
- */
- virtual void GetOutputDevice( uint64_t *pnDevice, ETextureType textureType, VkInstance_T *pInstance = nullptr ) = 0;
-
- // ------------------------------------
- // Display Mode methods
- // ------------------------------------
-
- /** Use to determine if the headset display is part of the desktop (i.e. extended) or hidden (i.e. direct mode). */
- virtual bool IsDisplayOnDesktop() = 0;
-
- /** Set the display visibility (true = extended, false = direct mode). Return value of true indicates that the change was successful. */
- virtual bool SetDisplayVisibility( bool bIsVisibleOnDesktop ) = 0;
-
- // ------------------------------------
- // Tracking Methods
- // ------------------------------------
-
- /** The pose that the tracker thinks that the HMD will be in at the specified number of seconds into the
- * future. Pass 0 to get the state at the instant the method is called. Most of the time the application should
- * calculate the time until the photons will be emitted from the display and pass that time into the method.
- *
- * This is roughly analogous to the inverse of the view matrix in most applications, though
- * many games will need to do some additional rotation or translation on top of the rotation
- * and translation provided by the head pose.
- *
- * For devices where bPoseIsValid is true the application can use the pose to position the device
- * in question. The provided array can be any size up to k_unMaxTrackedDeviceCount.
- *
- * Seated experiences should call this method with TrackingUniverseSeated and receive poses relative
- * to the seated zero pose. Standing experiences should call this method with TrackingUniverseStanding
- * and receive poses relative to the Chaperone Play Area. TrackingUniverseRawAndUncalibrated should
- * probably not be used unless the application is the Chaperone calibration tool itself, but will provide
- * poses relative to the hardware-specific coordinate system in the driver.
- */
- virtual void GetDeviceToAbsoluteTrackingPose( ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, VR_ARRAY_COUNT(unTrackedDevicePoseArrayCount) TrackedDevicePose_t *pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount ) = 0;
-
- /** Sets the zero pose for the seated tracker coordinate system to the current position and yaw of the HMD. After
- * ResetSeatedZeroPose all GetDeviceToAbsoluteTrackingPose calls that pass TrackingUniverseSeated as the origin
- * will be relative to this new zero pose. The new zero coordinate system will not change the fact that the Y axis
- * is up in the real world, so the next pose returned from GetDeviceToAbsoluteTrackingPose after a call to
- * ResetSeatedZeroPose may not be exactly an identity matrix.
- *
- * NOTE: This function overrides the user's previously saved seated zero pose and should only be called as the result of a user action.
- * Users are also able to set their seated zero pose via the OpenVR Dashboard.
- **/
- virtual void ResetSeatedZeroPose() = 0;
-
- /** Returns the transform from the seated zero pose to the standing absolute tracking system. This allows
- * applications to represent the seated origin to used or transform object positions from one coordinate
- * system to the other.
- *
- * The seated origin may or may not be inside the Play Area or Collision Bounds returned by IVRChaperone. Its position
- * depends on what the user has set from the Dashboard settings and previous calls to ResetSeatedZeroPose. */
- virtual HmdMatrix34_t GetSeatedZeroPoseToStandingAbsoluteTrackingPose() = 0;
-
- /** Returns the transform from the tracking origin to the standing absolute tracking system. This allows
- * applications to convert from raw tracking space to the calibrated standing coordinate system. */
- virtual HmdMatrix34_t GetRawZeroPoseToStandingAbsoluteTrackingPose() = 0;
-
- /** Get a sorted array of device indices of a given class of tracked devices (e.g. controllers). Devices are sorted right to left
- * relative to the specified tracked device (default: hmd -- pass in -1 for absolute tracking space). Returns the number of devices
- * in the list, or the size of the array needed if not large enough. */
- virtual uint32_t GetSortedTrackedDeviceIndicesOfClass( ETrackedDeviceClass eTrackedDeviceClass, VR_ARRAY_COUNT(unTrackedDeviceIndexArrayCount) vr::TrackedDeviceIndex_t *punTrackedDeviceIndexArray, uint32_t unTrackedDeviceIndexArrayCount, vr::TrackedDeviceIndex_t unRelativeToTrackedDeviceIndex = k_unTrackedDeviceIndex_Hmd ) = 0;
-
- /** Returns the level of activity on the device. */
- virtual EDeviceActivityLevel GetTrackedDeviceActivityLevel( vr::TrackedDeviceIndex_t unDeviceId ) = 0;
-
- /** Convenience utility to apply the specified transform to the specified pose.
- * This properly transforms all pose components, including velocity and angular velocity
- */
- virtual void ApplyTransform( TrackedDevicePose_t *pOutputPose, const TrackedDevicePose_t *pTrackedDevicePose, const HmdMatrix34_t *pTransform ) = 0;
-
- /** Returns the device index associated with a specific role, for example the left hand or the right hand. */
- virtual vr::TrackedDeviceIndex_t GetTrackedDeviceIndexForControllerRole( vr::ETrackedControllerRole unDeviceType ) = 0;
-
- /** Returns the controller type associated with a device index. */
- virtual vr::ETrackedControllerRole GetControllerRoleForTrackedDeviceIndex( vr::TrackedDeviceIndex_t unDeviceIndex ) = 0;
-
- // ------------------------------------
- // Property methods
- // ------------------------------------
-
- /** Returns the device class of a tracked device. If there has not been a device connected in this slot
- * since the application started this function will return TrackedDevice_Invalid. For previous detected
- * devices the function will return the previously observed device class.
- *
- * To determine which devices exist on the system, just loop from 0 to k_unMaxTrackedDeviceCount and check
- * the device class. Every device with something other than TrackedDevice_Invalid is associated with an
- * actual tracked device. */
- virtual ETrackedDeviceClass GetTrackedDeviceClass( vr::TrackedDeviceIndex_t unDeviceIndex ) = 0;
-
- /** Returns true if there is a device connected in this slot. */
- virtual bool IsTrackedDeviceConnected( vr::TrackedDeviceIndex_t unDeviceIndex ) = 0;
-
- /** Returns a bool property. If the device index is not valid or the property is not a bool type this function will return false. */
- virtual bool GetBoolTrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** Returns a float property. If the device index is not valid or the property is not a float type this function will return 0. */
- virtual float GetFloatTrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** Returns an int property. If the device index is not valid or the property is not a int type this function will return 0. */
- virtual int32_t GetInt32TrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** Returns a uint64 property. If the device index is not valid or the property is not a uint64 type this function will return 0. */
- virtual uint64_t GetUint64TrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** Returns a matrix property. If the device index is not valid or the property is not a matrix type, this function will return identity. */
- virtual HmdMatrix34_t GetMatrix34TrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** Returns a string property. If the device index is not valid or the property is not a string type this function will
- * return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
- * null. Strings will always fit in buffers of k_unMaxPropertyStringSize characters. */
- virtual uint32_t GetStringTrackedDeviceProperty( vr::TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize, ETrackedPropertyError *pError = 0L ) = 0;
-
- /** returns a string that corresponds with the specified property error. The string will be the name
- * of the error enum value for all valid error codes */
- virtual const char *GetPropErrorNameFromEnum( ETrackedPropertyError error ) = 0;
-
- // ------------------------------------
- // Event methods
- // ------------------------------------
-
- /** Returns true and fills the event with the next event on the queue if there is one. If there are no events
- * this method returns false. uncbVREvent should be the size in bytes of the VREvent_t struct */
- virtual bool PollNextEvent( VREvent_t *pEvent, uint32_t uncbVREvent ) = 0;
-
- /** Returns true and fills the event with the next event on the queue if there is one. If there are no events
- * this method returns false. Fills in the pose of the associated tracked device in the provided pose struct.
- * This pose will always be older than the call to this function and should not be used to render the device.
- uncbVREvent should be the size in bytes of the VREvent_t struct */
- virtual bool PollNextEventWithPose( ETrackingUniverseOrigin eOrigin, VREvent_t *pEvent, uint32_t uncbVREvent, vr::TrackedDevicePose_t *pTrackedDevicePose ) = 0;
-
- /** returns the name of an EVREvent enum value */
- virtual const char *GetEventTypeNameFromEnum( EVREventType eType ) = 0;
-
- // ------------------------------------
- // Rendering helper methods
- // ------------------------------------
-
- /** Returns the hidden area mesh for the current HMD. The pixels covered by this mesh will never be seen by the user after the lens distortion is
- * applied based on visibility to the panels. If this HMD does not have a hidden area mesh, the vertex data and count will be NULL and 0 respectively.
- * This mesh is meant to be rendered into the stencil buffer (or into the depth buffer setting nearz) before rendering each eye's view.
- * This will improve performance by letting the GPU early-reject pixels the user will never see before running the pixel shader.
- * NOTE: Render this mesh with backface culling disabled since the winding order of the vertices can be different per-HMD or per-eye.
- * Setting the bInverse argument to true will produce the visible area mesh that is commonly used in place of full-screen quads. The visible area mesh covers all of the pixels the hidden area mesh does not cover.
- * Setting the bLineLoop argument will return a line loop of vertices in HiddenAreaMesh_t->pVertexData with HiddenAreaMesh_t->unTriangleCount set to the number of vertices.
- */
- virtual HiddenAreaMesh_t GetHiddenAreaMesh( EVREye eEye, EHiddenAreaMeshType type = k_eHiddenAreaMesh_Standard ) = 0;
-
- // ------------------------------------
- // Controller methods
- // ------------------------------------
-
- /** Fills the supplied struct with the current state of the controller. Returns false if the controller index
- * is invalid. */
- virtual bool GetControllerState( vr::TrackedDeviceIndex_t unControllerDeviceIndex, vr::VRControllerState_t *pControllerState, uint32_t unControllerStateSize ) = 0;
-
- /** fills the supplied struct with the current state of the controller and the provided pose with the pose of
- * the controller when the controller state was updated most recently. Use this form if you need a precise controller
- * pose as input to your application when the user presses or releases a button. */
- virtual bool GetControllerStateWithPose( ETrackingUniverseOrigin eOrigin, vr::TrackedDeviceIndex_t unControllerDeviceIndex, vr::VRControllerState_t *pControllerState, uint32_t unControllerStateSize, TrackedDevicePose_t *pTrackedDevicePose ) = 0;
-
- /** Trigger a single haptic pulse on a controller. After this call the application may not trigger another haptic pulse on this controller
- * and axis combination for 5ms. */
- virtual void TriggerHapticPulse( vr::TrackedDeviceIndex_t unControllerDeviceIndex, uint32_t unAxisId, unsigned short usDurationMicroSec ) = 0;
-
- /** returns the name of an EVRButtonId enum value */
- virtual const char *GetButtonIdNameFromEnum( EVRButtonId eButtonId ) = 0;
-
- /** returns the name of an EVRControllerAxisType enum value */
- virtual const char *GetControllerAxisTypeNameFromEnum( EVRControllerAxisType eAxisType ) = 0;
-
- /** Tells OpenVR that this process wants exclusive access to controller button states and button events. Other apps will be notified that
- * they have lost input focus with a VREvent_InputFocusCaptured event. Returns false if input focus could not be captured for
- * some reason. */
- virtual bool CaptureInputFocus() = 0;
-
- /** Tells OpenVR that this process no longer wants exclusive access to button states and button events. Other apps will be notified
- * that input focus has been released with a VREvent_InputFocusReleased event. */
- virtual void ReleaseInputFocus() = 0;
-
- /** Returns true if input focus is captured by another process. */
- virtual bool IsInputFocusCapturedByAnotherProcess() = 0;
-
- // ------------------------------------
- // Debug Methods
- // ------------------------------------
-
- /** Sends a request to the driver for the specified device and returns the response. The maximum response size is 32k,
- * but this method can be called with a smaller buffer. If the response exceeds the size of the buffer, it is truncated.
- * The size of the response including its terminating null is returned. */
- virtual uint32_t DriverDebugRequest( vr::TrackedDeviceIndex_t unDeviceIndex, const char *pchRequest, char *pchResponseBuffer, uint32_t unResponseBufferSize ) = 0;
-
- // ------------------------------------
- // Firmware methods
- // ------------------------------------
-
- /** Performs the actual firmware update if applicable.
- * The following events will be sent, if VRFirmwareError_None was returned: VREvent_FirmwareUpdateStarted, VREvent_FirmwareUpdateFinished
- * Use the properties Prop_Firmware_UpdateAvailable_Bool, Prop_Firmware_ManualUpdate_Bool, and Prop_Firmware_ManualUpdateURL_String
- * to figure our whether a firmware update is available, and to figure out whether its a manual update
- * Prop_Firmware_ManualUpdateURL_String should point to an URL describing the manual update process */
- virtual vr::EVRFirmwareError PerformFirmwareUpdate( vr::TrackedDeviceIndex_t unDeviceIndex ) = 0;
-
- // ------------------------------------
- // Application life cycle methods
- // ------------------------------------
-
- /** Call this to acknowledge to the system that VREvent_Quit has been received and that the process is exiting.
- * This extends the timeout until the process is killed. */
- virtual void AcknowledgeQuit_Exiting() = 0;
-
- /** Call this to tell the system that the user is being prompted to save data. This
- * halts the timeout and dismisses the dashboard (if it was up). Applications should be sure to actually
- * prompt the user to save and then exit afterward, otherwise the user will be left in a confusing state. */
- virtual void AcknowledgeQuit_UserPrompt() = 0;
-
-};
-
-static const char * const IVRSystem_Version = "IVRSystem_017";
-
-}
-
-
-// ivrapplications.h
-namespace vr
-{
-
- /** Used for all errors reported by the IVRApplications interface */
- enum EVRApplicationError
- {
- VRApplicationError_None = 0,
-
- VRApplicationError_AppKeyAlreadyExists = 100, // Only one application can use any given key
- VRApplicationError_NoManifest = 101, // the running application does not have a manifest
- VRApplicationError_NoApplication = 102, // No application is running
- VRApplicationError_InvalidIndex = 103,
- VRApplicationError_UnknownApplication = 104, // the application could not be found
- VRApplicationError_IPCFailed = 105, // An IPC failure caused the request to fail
- VRApplicationError_ApplicationAlreadyRunning = 106,
- VRApplicationError_InvalidManifest = 107,
- VRApplicationError_InvalidApplication = 108,
- VRApplicationError_LaunchFailed = 109, // the process didn't start
- VRApplicationError_ApplicationAlreadyStarting = 110, // the system was already starting the same application
- VRApplicationError_LaunchInProgress = 111, // The system was already starting a different application
- VRApplicationError_OldApplicationQuitting = 112,
- VRApplicationError_TransitionAborted = 113,
- VRApplicationError_IsTemplate = 114, // error when you try to call LaunchApplication() on a template type app (use LaunchTemplateApplication)
- VRApplicationError_SteamVRIsExiting = 115,
-
- VRApplicationError_BufferTooSmall = 200, // The provided buffer was too small to fit the requested data
- VRApplicationError_PropertyNotSet = 201, // The requested property was not set
- VRApplicationError_UnknownProperty = 202,
- VRApplicationError_InvalidParameter = 203,
- };
-
- /** The maximum length of an application key */
- static const uint32_t k_unMaxApplicationKeyLength = 128;
-
- /** these are the properties available on applications. */
- enum EVRApplicationProperty
- {
- VRApplicationProperty_Name_String = 0,
-
- VRApplicationProperty_LaunchType_String = 11,
- VRApplicationProperty_WorkingDirectory_String = 12,
- VRApplicationProperty_BinaryPath_String = 13,
- VRApplicationProperty_Arguments_String = 14,
- VRApplicationProperty_URL_String = 15,
-
- VRApplicationProperty_Description_String = 50,
- VRApplicationProperty_NewsURL_String = 51,
- VRApplicationProperty_ImagePath_String = 52,
- VRApplicationProperty_Source_String = 53,
-
- VRApplicationProperty_IsDashboardOverlay_Bool = 60,
- VRApplicationProperty_IsTemplate_Bool = 61,
- VRApplicationProperty_IsInstanced_Bool = 62,
- VRApplicationProperty_IsInternal_Bool = 63,
- VRApplicationProperty_WantsCompositorPauseInStandby_Bool = 64,
-
- VRApplicationProperty_LastLaunchTime_Uint64 = 70,
- };
-
- /** These are states the scene application startup process will go through. */
- enum EVRApplicationTransitionState
- {
- VRApplicationTransition_None = 0,
-
- VRApplicationTransition_OldAppQuitSent = 10,
- VRApplicationTransition_WaitingForExternalLaunch = 11,
-
- VRApplicationTransition_NewAppLaunched = 20,
- };
-
- struct AppOverrideKeys_t
- {
- const char *pchKey;
- const char *pchValue;
- };
-
- /** Currently recognized mime types */
- static const char * const k_pch_MimeType_HomeApp = "vr/home";
- static const char * const k_pch_MimeType_GameTheater = "vr/game_theater";
-
- class IVRApplications
- {
- public:
-
- // --------------- Application management --------------- //
-
- /** Adds an application manifest to the list to load when building the list of installed applications.
- * Temporary manifests are not automatically loaded */
- virtual EVRApplicationError AddApplicationManifest( const char *pchApplicationManifestFullPath, bool bTemporary = false ) = 0;
-
- /** Removes an application manifest from the list to load when building the list of installed applications. */
- virtual EVRApplicationError RemoveApplicationManifest( const char *pchApplicationManifestFullPath ) = 0;
-
- /** Returns true if an application is installed */
- virtual bool IsApplicationInstalled( const char *pchAppKey ) = 0;
-
- /** Returns the number of applications available in the list */
- virtual uint32_t GetApplicationCount() = 0;
-
- /** Returns the key of the specified application. The index is at least 0 and is less than the return
- * value of GetApplicationCount(). The buffer should be at least k_unMaxApplicationKeyLength in order to
- * fit the key. */
- virtual EVRApplicationError GetApplicationKeyByIndex( uint32_t unApplicationIndex, VR_OUT_STRING() char *pchAppKeyBuffer, uint32_t unAppKeyBufferLen ) = 0;
-
- /** Returns the key of the application for the specified Process Id. The buffer should be at least
- * k_unMaxApplicationKeyLength in order to fit the key. */
- virtual EVRApplicationError GetApplicationKeyByProcessId( uint32_t unProcessId, char *pchAppKeyBuffer, uint32_t unAppKeyBufferLen ) = 0;
-
- /** Launches the application. The existing scene application will exit and then the new application will start.
- * This call is not valid for dashboard overlay applications. */
- virtual EVRApplicationError LaunchApplication( const char *pchAppKey ) = 0;
-
- /** Launches an instance of an application of type template, with its app key being pchNewAppKey (which must be unique) and optionally override sections
- * from the manifest file via AppOverrideKeys_t
- */
- virtual EVRApplicationError LaunchTemplateApplication( const char *pchTemplateAppKey, const char *pchNewAppKey, VR_ARRAY_COUNT( unKeys ) const AppOverrideKeys_t *pKeys, uint32_t unKeys ) = 0;
-
- /** launches the application currently associated with this mime type and passes it the option args, typically the filename or object name of the item being launched */
- virtual vr::EVRApplicationError LaunchApplicationFromMimeType( const char *pchMimeType, const char *pchArgs ) = 0;
-
- /** Launches the dashboard overlay application if it is not already running. This call is only valid for
- * dashboard overlay applications. */
- virtual EVRApplicationError LaunchDashboardOverlay( const char *pchAppKey ) = 0;
-
- /** Cancel a pending launch for an application */
- virtual bool CancelApplicationLaunch( const char *pchAppKey ) = 0;
-
- /** Identifies a running application. OpenVR can't always tell which process started in response
- * to a URL. This function allows a URL handler (or the process itself) to identify the app key
- * for the now running application. Passing a process ID of 0 identifies the calling process.
- * The application must be one that's known to the system via a call to AddApplicationManifest. */
- virtual EVRApplicationError IdentifyApplication( uint32_t unProcessId, const char *pchAppKey ) = 0;
-
- /** Returns the process ID for an application. Return 0 if the application was not found or is not running. */
- virtual uint32_t GetApplicationProcessId( const char *pchAppKey ) = 0;
-
- /** Returns a string for an applications error */
- virtual const char *GetApplicationsErrorNameFromEnum( EVRApplicationError error ) = 0;
-
- // --------------- Application properties --------------- //
-
- /** Returns a value for an application property. The required buffer size to fit this value will be returned. */
- virtual uint32_t GetApplicationPropertyString( const char *pchAppKey, EVRApplicationProperty eProperty, VR_OUT_STRING() char *pchPropertyValueBuffer, uint32_t unPropertyValueBufferLen, EVRApplicationError *peError = nullptr ) = 0;
-
- /** Returns a bool value for an application property. Returns false in all error cases. */
- virtual bool GetApplicationPropertyBool( const char *pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError *peError = nullptr ) = 0;
-
- /** Returns a uint64 value for an application property. Returns 0 in all error cases. */
- virtual uint64_t GetApplicationPropertyUint64( const char *pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError *peError = nullptr ) = 0;
-
- /** Sets the application auto-launch flag. This is only valid for applications which return true for VRApplicationProperty_IsDashboardOverlay_Bool. */
- virtual EVRApplicationError SetApplicationAutoLaunch( const char *pchAppKey, bool bAutoLaunch ) = 0;
-
- /** Gets the application auto-launch flag. This is only valid for applications which return true for VRApplicationProperty_IsDashboardOverlay_Bool. */
- virtual bool GetApplicationAutoLaunch( const char *pchAppKey ) = 0;
-
- /** Adds this mime-type to the list of supported mime types for this application*/
- virtual EVRApplicationError SetDefaultApplicationForMimeType( const char *pchAppKey, const char *pchMimeType ) = 0;
-
- /** return the app key that will open this mime type */
- virtual bool GetDefaultApplicationForMimeType( const char *pchMimeType, char *pchAppKeyBuffer, uint32_t unAppKeyBufferLen ) = 0;
-
- /** Get the list of supported mime types for this application, comma-delimited */
- virtual bool GetApplicationSupportedMimeTypes( const char *pchAppKey, char *pchMimeTypesBuffer, uint32_t unMimeTypesBuffer ) = 0;
-
- /** Get the list of app-keys that support this mime type, comma-delimited, the return value is number of bytes you need to return the full string */
- virtual uint32_t GetApplicationsThatSupportMimeType( const char *pchMimeType, char *pchAppKeysThatSupportBuffer, uint32_t unAppKeysThatSupportBuffer ) = 0;
-
- /** Get the args list from an app launch that had the process already running, you call this when you get a VREvent_ApplicationMimeTypeLoad */
- virtual uint32_t GetApplicationLaunchArguments( uint32_t unHandle, char *pchArgs, uint32_t unArgs ) = 0;
-
- // --------------- Transition methods --------------- //
-
- /** Returns the app key for the application that is starting up */
- virtual EVRApplicationError GetStartingApplication( char *pchAppKeyBuffer, uint32_t unAppKeyBufferLen ) = 0;
-
- /** Returns the application transition state */
- virtual EVRApplicationTransitionState GetTransitionState() = 0;
-
- /** Returns errors that would prevent the specified application from launching immediately. Calling this function will
- * cause the current scene application to quit, so only call it when you are actually about to launch something else.
- * What the caller should do about these failures depends on the failure:
- * VRApplicationError_OldApplicationQuitting - An existing application has been told to quit. Wait for a VREvent_ProcessQuit
- * and try again.
- * VRApplicationError_ApplicationAlreadyStarting - This application is already starting. This is a permanent failure.
- * VRApplicationError_LaunchInProgress - A different application is already starting. This is a permanent failure.
- * VRApplicationError_None - Go ahead and launch. Everything is clear.
- */
- virtual EVRApplicationError PerformApplicationPrelaunchCheck( const char *pchAppKey ) = 0;
-
- /** Returns a string for an application transition state */
- virtual const char *GetApplicationsTransitionStateNameFromEnum( EVRApplicationTransitionState state ) = 0;
-
- /** Returns true if the outgoing scene app has requested a save prompt before exiting */
- virtual bool IsQuitUserPromptRequested() = 0;
-
- /** Starts a subprocess within the calling application. This
- * suppresses all application transition UI and automatically identifies the new executable
- * as part of the same application. On success the calling process should exit immediately.
- * If working directory is NULL or "" the directory portion of the binary path will be
- * the working directory. */
- virtual EVRApplicationError LaunchInternalProcess( const char *pchBinaryPath, const char *pchArguments, const char *pchWorkingDirectory ) = 0;
-
- /** Returns the current scene process ID according to the application system. A scene process will get scene
- * focus once it starts rendering, but it will appear here once it calls VR_Init with the Scene application
- * type. */
- virtual uint32_t GetCurrentSceneProcessId() = 0;
- };
-
- static const char * const IVRApplications_Version = "IVRApplications_006";
-
-} // namespace vr
-
-// ivrsettings.h
-namespace vr
-{
- enum EVRSettingsError
- {
- VRSettingsError_None = 0,
- VRSettingsError_IPCFailed = 1,
- VRSettingsError_WriteFailed = 2,
- VRSettingsError_ReadFailed = 3,
- VRSettingsError_JsonParseFailed = 4,
- VRSettingsError_UnsetSettingHasNoDefault = 5, // This will be returned if the setting does not appear in the appropriate default file and has not been set
- };
-
- // The maximum length of a settings key
- static const uint32_t k_unMaxSettingsKeyLength = 128;
-
- class IVRSettings
- {
- public:
- virtual const char *GetSettingsErrorNameFromEnum( EVRSettingsError eError ) = 0;
-
- // Returns true if file sync occurred (force or settings dirty)
- virtual bool Sync( bool bForce = false, EVRSettingsError *peError = nullptr ) = 0;
-
- virtual void SetBool( const char *pchSection, const char *pchSettingsKey, bool bValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetInt32( const char *pchSection, const char *pchSettingsKey, int32_t nValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetFloat( const char *pchSection, const char *pchSettingsKey, float flValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetString( const char *pchSection, const char *pchSettingsKey, const char *pchValue, EVRSettingsError *peError = nullptr ) = 0;
-
- // Users of the system need to provide a proper default in default.vrsettings in the resources/settings/ directory
- // of either the runtime or the driver_xxx directory. Otherwise the default will be false, 0, 0.0 or ""
- virtual bool GetBool( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual int32_t GetInt32( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual float GetFloat( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual void GetString( const char *pchSection, const char *pchSettingsKey, VR_OUT_STRING() char *pchValue, uint32_t unValueLen, EVRSettingsError *peError = nullptr ) = 0;
-
- virtual void RemoveSection( const char *pchSection, EVRSettingsError *peError = nullptr ) = 0;
- virtual void RemoveKeyInSection( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- };
-
- //-----------------------------------------------------------------------------
- static const char * const IVRSettings_Version = "IVRSettings_002";
-
- //-----------------------------------------------------------------------------
- // steamvr keys
- static const char * const k_pch_SteamVR_Section = "steamvr";
- static const char * const k_pch_SteamVR_RequireHmd_String = "requireHmd";
- static const char * const k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver";
- static const char * const k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd";
- static const char * const k_pch_SteamVR_DisplayDebug_Bool = "displayDebug";
- static const char * const k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe";
- static const char * const k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX";
- static const char * const k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY";
- static const char * const k_pch_SteamVR_SendSystemButtonToAllApps_Bool= "sendSystemButtonToAllApps";
- static const char * const k_pch_SteamVR_LogLevel_Int32 = "loglevel";
- static const char * const k_pch_SteamVR_IPD_Float = "ipd";
- static const char * const k_pch_SteamVR_Background_String = "background";
- static const char * const k_pch_SteamVR_BackgroundUseDomeProjection_Bool = "backgroundUseDomeProjection";
- static const char * const k_pch_SteamVR_BackgroundCameraHeight_Float = "backgroundCameraHeight";
- static const char * const k_pch_SteamVR_BackgroundDomeRadius_Float = "backgroundDomeRadius";
- static const char * const k_pch_SteamVR_GridColor_String = "gridColor";
- static const char * const k_pch_SteamVR_PlayAreaColor_String = "playAreaColor";
- static const char * const k_pch_SteamVR_ShowStage_Bool = "showStage";
- static const char * const k_pch_SteamVR_ActivateMultipleDrivers_Bool = "activateMultipleDrivers";
- static const char * const k_pch_SteamVR_DirectMode_Bool = "directMode";
- static const char * const k_pch_SteamVR_DirectModeEdidVid_Int32 = "directModeEdidVid";
- static const char * const k_pch_SteamVR_DirectModeEdidPid_Int32 = "directModeEdidPid";
- static const char * const k_pch_SteamVR_UsingSpeakers_Bool = "usingSpeakers";
- static const char * const k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees";
- static const char * const k_pch_SteamVR_BaseStationPowerManagement_Bool = "basestationPowerManagement";
- static const char * const k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses";
- static const char * const k_pch_SteamVR_SupersampleScale_Float = "supersampleScale";
- static const char * const k_pch_SteamVR_AllowAsyncReprojection_Bool = "allowAsyncReprojection";
- static const char * const k_pch_SteamVR_AllowReprojection_Bool = "allowInterleavedReprojection";
- static const char * const k_pch_SteamVR_ForceReprojection_Bool = "forceReprojection";
- static const char * const k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
- static const char * const k_pch_SteamVR_DefaultMirrorView_Int32 = "defaultMirrorView";
- static const char * const k_pch_SteamVR_ShowMirrorView_Bool = "showMirrorView";
- static const char * const k_pch_SteamVR_MirrorViewGeometry_String = "mirrorViewGeometry";
- static const char * const k_pch_SteamVR_StartMonitorFromAppLaunch = "startMonitorFromAppLaunch";
- static const char * const k_pch_SteamVR_StartCompositorFromAppLaunch_Bool = "startCompositorFromAppLaunch";
- static const char * const k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch";
- static const char * const k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard";
- static const char * const k_pch_SteamVR_EnableHomeApp = "enableHomeApp";
- static const char * const k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec";
- static const char * const k_pch_SteamVR_RetailDemo_Bool = "retailDemo";
- static const char * const k_pch_SteamVR_IpdOffset_Float = "ipdOffset";
- static const char * const k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering";
- static const char * const k_pch_SteamVR_EnableLinuxVulkanAsync_Bool = "enableLinuxVulkanAsync";
-
- //-----------------------------------------------------------------------------
- // lighthouse keys
- static const char * const k_pch_Lighthouse_Section = "driver_lighthouse";
- static const char * const k_pch_Lighthouse_DisableIMU_Bool = "disableimu";
- static const char * const k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation";
- static const char * const k_pch_Lighthouse_DisambiguationDebug_Int32 = "disambiguationdebug";
- static const char * const k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
- static const char * const k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
-
- //-----------------------------------------------------------------------------
- // null keys
- static const char * const k_pch_Null_Section = "driver_null";
- static const char * const k_pch_Null_SerialNumber_String = "serialNumber";
- static const char * const k_pch_Null_ModelNumber_String = "modelNumber";
- static const char * const k_pch_Null_WindowX_Int32 = "windowX";
- static const char * const k_pch_Null_WindowY_Int32 = "windowY";
- static const char * const k_pch_Null_WindowWidth_Int32 = "windowWidth";
- static const char * const k_pch_Null_WindowHeight_Int32 = "windowHeight";
- static const char * const k_pch_Null_RenderWidth_Int32 = "renderWidth";
- static const char * const k_pch_Null_RenderHeight_Int32 = "renderHeight";
- static const char * const k_pch_Null_SecondsFromVsyncToPhotons_Float = "secondsFromVsyncToPhotons";
- static const char * const k_pch_Null_DisplayFrequency_Float = "displayFrequency";
-
- //-----------------------------------------------------------------------------
- // user interface keys
- static const char * const k_pch_UserInterface_Section = "userinterface";
- static const char * const k_pch_UserInterface_StatusAlwaysOnTop_Bool = "StatusAlwaysOnTop";
- static const char * const k_pch_UserInterface_MinimizeToTray_Bool = "MinimizeToTray";
- static const char * const k_pch_UserInterface_Screenshots_Bool = "screenshots";
- static const char * const k_pch_UserInterface_ScreenshotType_Int = "screenshotType";
-
- //-----------------------------------------------------------------------------
- // notification keys
- static const char * const k_pch_Notifications_Section = "notifications";
- static const char * const k_pch_Notifications_DoNotDisturb_Bool = "DoNotDisturb";
-
- //-----------------------------------------------------------------------------
- // keyboard keys
- static const char * const k_pch_Keyboard_Section = "keyboard";
- static const char * const k_pch_Keyboard_TutorialCompletions = "TutorialCompletions";
- static const char * const k_pch_Keyboard_ScaleX = "ScaleX";
- static const char * const k_pch_Keyboard_ScaleY = "ScaleY";
- static const char * const k_pch_Keyboard_OffsetLeftX = "OffsetLeftX";
- static const char * const k_pch_Keyboard_OffsetRightX = "OffsetRightX";
- static const char * const k_pch_Keyboard_OffsetY = "OffsetY";
- static const char * const k_pch_Keyboard_Smoothing = "Smoothing";
-
- //-----------------------------------------------------------------------------
- // perf keys
- static const char * const k_pch_Perf_Section = "perfcheck";
- static const char * const k_pch_Perf_HeuristicActive_Bool = "heuristicActive";
- static const char * const k_pch_Perf_NotifyInHMD_Bool = "warnInHMD";
- static const char * const k_pch_Perf_NotifyOnlyOnce_Bool = "warnOnlyOnce";
- static const char * const k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore";
- static const char * const k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit";
- static const char * const k_pch_Perf_TestData_Float = "perfTestData";
- static const char * const k_pch_Perf_LinuxGPUProfiling_Bool = "linuxGPUProfiling";
-
- //-----------------------------------------------------------------------------
- // collision bounds keys
- static const char * const k_pch_CollisionBounds_Section = "collisionBounds";
- static const char * const k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle";
- static const char * const k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn";
- static const char * const k_pch_CollisionBounds_CenterMarkerOn_Bool = "CollisionBoundsCenterMarkerOn";
- static const char * const k_pch_CollisionBounds_PlaySpaceOn_Bool = "CollisionBoundsPlaySpaceOn";
- static const char * const k_pch_CollisionBounds_FadeDistance_Float = "CollisionBoundsFadeDistance";
- static const char * const k_pch_CollisionBounds_ColorGammaR_Int32 = "CollisionBoundsColorGammaR";
- static const char * const k_pch_CollisionBounds_ColorGammaG_Int32 = "CollisionBoundsColorGammaG";
- static const char * const k_pch_CollisionBounds_ColorGammaB_Int32 = "CollisionBoundsColorGammaB";
- static const char * const k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsColorGammaA";
-
- //-----------------------------------------------------------------------------
- // camera keys
- static const char * const k_pch_Camera_Section = "camera";
- static const char * const k_pch_Camera_EnableCamera_Bool = "enableCamera";
- static const char * const k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard";
- static const char * const k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds";
- static const char * const k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView";
- static const char * const k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR";
- static const char * const k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG";
- static const char * const k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB";
- static const char * const k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA";
- static const char * const k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength";
-
- //-----------------------------------------------------------------------------
- // audio keys
- static const char * const k_pch_audio_Section = "audio";
- static const char * const k_pch_audio_OnPlaybackDevice_String = "onPlaybackDevice";
- static const char * const k_pch_audio_OnRecordDevice_String = "onRecordDevice";
- static const char * const k_pch_audio_OnPlaybackMirrorDevice_String = "onPlaybackMirrorDevice";
- static const char * const k_pch_audio_OffPlaybackDevice_String = "offPlaybackDevice";
- static const char * const k_pch_audio_OffRecordDevice_String = "offRecordDevice";
- static const char * const k_pch_audio_VIVEHDMIGain = "viveHDMIGain";
-
- //-----------------------------------------------------------------------------
- // power management keys
- static const char * const k_pch_Power_Section = "power";
- static const char * const k_pch_Power_PowerOffOnExit_Bool = "powerOffOnExit";
- static const char * const k_pch_Power_TurnOffScreensTimeout_Float = "turnOffScreensTimeout";
- static const char * const k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout";
- static const char * const k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout";
- static const char * const k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress";
- static const char * const k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby";
-
- //-----------------------------------------------------------------------------
- // dashboard keys
- static const char * const k_pch_Dashboard_Section = "dashboard";
- static const char * const k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
- static const char * const k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
-
- //-----------------------------------------------------------------------------
- // model skin keys
- static const char * const k_pch_modelskin_Section = "modelskins";
-
- //-----------------------------------------------------------------------------
- // driver keys - These could be checked in any driver_<name> section
- static const char * const k_pch_Driver_Enable_Bool = "enable";
-
-} // namespace vr
-
-// ivrchaperone.h
-namespace vr
-{
-
-#pragma pack( push, 8 )
-
-enum ChaperoneCalibrationState
-{
- // OK!
- ChaperoneCalibrationState_OK = 1, // Chaperone is fully calibrated and working correctly
-
- // Warnings
- ChaperoneCalibrationState_Warning = 100,
- ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved = 101, // A base station thinks that it might have moved
- ChaperoneCalibrationState_Warning_BaseStationRemoved = 102, // There are less base stations than when calibrated
- ChaperoneCalibrationState_Warning_SeatedBoundsInvalid = 103, // Seated bounds haven't been calibrated for the current tracking center
-
- // Errors
- ChaperoneCalibrationState_Error = 200, // The UniverseID is invalid
- ChaperoneCalibrationState_Error_BaseStationUninitialized = 201, // Tracking center hasn't be calibrated for at least one of the base stations
- ChaperoneCalibrationState_Error_BaseStationConflict = 202, // Tracking center is calibrated, but base stations disagree on the tracking space
- ChaperoneCalibrationState_Error_PlayAreaInvalid = 203, // Play Area hasn't been calibrated for the current tracking center
- ChaperoneCalibrationState_Error_CollisionBoundsInvalid = 204, // Collision Bounds haven't been calibrated for the current tracking center
-};
-
-
-/** HIGH LEVEL TRACKING SPACE ASSUMPTIONS:
-* 0,0,0 is the preferred standing area center.
-* 0Y is the floor height.
-* -Z is the preferred forward facing direction. */
-class IVRChaperone
-{
-public:
-
- /** Get the current state of Chaperone calibration. This state can change at any time during a session due to physical base station changes. **/
- virtual ChaperoneCalibrationState GetCalibrationState() = 0;
-
- /** Returns the width and depth of the Play Area (formerly named Soft Bounds) in X and Z.
- * Tracking space center (0,0,0) is the center of the Play Area. **/
- virtual bool GetPlayAreaSize( float *pSizeX, float *pSizeZ ) = 0;
-
- /** Returns the 4 corner positions of the Play Area (formerly named Soft Bounds).
- * Corners are in counter-clockwise order.
- * Standing center (0,0,0) is the center of the Play Area.
- * It's a rectangle.
- * 2 sides are parallel to the X axis and 2 sides are parallel to the Z axis.
- * Height of every corner is 0Y (on the floor). **/
- virtual bool GetPlayAreaRect( HmdQuad_t *rect ) = 0;
-
- /** Reload Chaperone data from the .vrchap file on disk. */
- virtual void ReloadInfo( void ) = 0;
-
- /** Optionally give the chaperone system a hit about the color and brightness in the scene **/
- virtual void SetSceneColor( HmdColor_t color ) = 0;
-
- /** Get the current chaperone bounds draw color and brightness **/
- virtual void GetBoundsColor( HmdColor_t *pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, HmdColor_t *pOutputCameraColor ) = 0;
-
- /** Determine whether the bounds are showing right now **/
- virtual bool AreBoundsVisible() = 0;
-
- /** Force the bounds to show, mostly for utilities **/
- virtual void ForceBoundsVisible( bool bForce ) = 0;
-};
-
-static const char * const IVRChaperone_Version = "IVRChaperone_003";
-
-#pragma pack( pop )
-
-}
-
-// ivrchaperonesetup.h
-namespace vr
-{
-
-enum EChaperoneConfigFile
-{
- EChaperoneConfigFile_Live = 1, // The live chaperone config, used by most applications and games
- EChaperoneConfigFile_Temp = 2, // The temporary chaperone config, used to live-preview collision bounds in room setup
-};
-
-enum EChaperoneImportFlags
-{
- EChaperoneImport_BoundsOnly = 0x0001,
-};
-
-/** Manages the working copy of the chaperone info. By default this will be the same as the
-* live copy. Any changes made with this interface will stay in the working copy until
-* CommitWorkingCopy() is called, at which point the working copy and the live copy will be
-* the same again. */
-class IVRChaperoneSetup
-{
-public:
-
- /** Saves the current working copy to disk */
- virtual bool CommitWorkingCopy( EChaperoneConfigFile configFile ) = 0;
-
- /** Reverts the working copy to match the live chaperone calibration.
- * To modify existing data this MUST be do WHILE getting a non-error ChaperoneCalibrationStatus.
- * Only after this should you do gets and sets on the existing data. */
- virtual void RevertWorkingCopy() = 0;
-
- /** Returns the width and depth of the Play Area (formerly named Soft Bounds) in X and Z from the working copy.
- * Tracking space center (0,0,0) is the center of the Play Area. */
- virtual bool GetWorkingPlayAreaSize( float *pSizeX, float *pSizeZ ) = 0;
-
- /** Returns the 4 corner positions of the Play Area (formerly named Soft Bounds) from the working copy.
- * Corners are in clockwise order.
- * Tracking space center (0,0,0) is the center of the Play Area.
- * It's a rectangle.
- * 2 sides are parallel to the X axis and 2 sides are parallel to the Z axis.
- * Height of every corner is 0Y (on the floor). **/
- virtual bool GetWorkingPlayAreaRect( HmdQuad_t *rect ) = 0;
-
- /** Returns the number of Quads if the buffer points to null. Otherwise it returns Quads
- * into the buffer up to the max specified from the working copy. */
- virtual bool GetWorkingCollisionBoundsInfo( VR_OUT_ARRAY_COUNT(punQuadsCount) HmdQuad_t *pQuadsBuffer, uint32_t* punQuadsCount ) = 0;
-
- /** Returns the number of Quads if the buffer points to null. Otherwise it returns Quads
- * into the buffer up to the max specified. */
- virtual bool GetLiveCollisionBoundsInfo( VR_OUT_ARRAY_COUNT(punQuadsCount) HmdQuad_t *pQuadsBuffer, uint32_t* punQuadsCount ) = 0;
-
- /** Returns the preferred seated position from the working copy. */
- virtual bool GetWorkingSeatedZeroPoseToRawTrackingPose( HmdMatrix34_t *pmatSeatedZeroPoseToRawTrackingPose ) = 0;
-
- /** Returns the standing origin from the working copy. */
- virtual bool GetWorkingStandingZeroPoseToRawTrackingPose( HmdMatrix34_t *pmatStandingZeroPoseToRawTrackingPose ) = 0;
-
- /** Sets the Play Area in the working copy. */
- virtual void SetWorkingPlayAreaSize( float sizeX, float sizeZ ) = 0;
-
- /** Sets the Collision Bounds in the working copy. */
- virtual void SetWorkingCollisionBoundsInfo( VR_ARRAY_COUNT(unQuadsCount) HmdQuad_t *pQuadsBuffer, uint32_t unQuadsCount ) = 0;
-
- /** Sets the preferred seated position in the working copy. */
- virtual void SetWorkingSeatedZeroPoseToRawTrackingPose( const HmdMatrix34_t *pMatSeatedZeroPoseToRawTrackingPose ) = 0;
-
- /** Sets the preferred standing position in the working copy. */
- virtual void SetWorkingStandingZeroPoseToRawTrackingPose( const HmdMatrix34_t *pMatStandingZeroPoseToRawTrackingPose ) = 0;
-
- /** Tear everything down and reload it from the file on disk */
- virtual void ReloadFromDisk( EChaperoneConfigFile configFile ) = 0;
-
- /** Returns the preferred seated position. */
- virtual bool GetLiveSeatedZeroPoseToRawTrackingPose( HmdMatrix34_t *pmatSeatedZeroPoseToRawTrackingPose ) = 0;
-
- virtual void SetWorkingCollisionBoundsTagsInfo( VR_ARRAY_COUNT(unTagCount) uint8_t *pTagsBuffer, uint32_t unTagCount ) = 0;
- virtual bool GetLiveCollisionBoundsTagsInfo( VR_OUT_ARRAY_COUNT(punTagCount) uint8_t *pTagsBuffer, uint32_t *punTagCount ) = 0;
-
- virtual bool SetWorkingPhysicalBoundsInfo( VR_ARRAY_COUNT(unQuadsCount) HmdQuad_t *pQuadsBuffer, uint32_t unQuadsCount ) = 0;
- virtual bool GetLivePhysicalBoundsInfo( VR_OUT_ARRAY_COUNT(punQuadsCount) HmdQuad_t *pQuadsBuffer, uint32_t* punQuadsCount ) = 0;
-
- virtual bool ExportLiveToBuffer( VR_OUT_STRING() char *pBuffer, uint32_t *pnBufferLength ) = 0;
- virtual bool ImportFromBufferToWorking( const char *pBuffer, uint32_t nImportFlags ) = 0;
-};
-
-static const char * const IVRChaperoneSetup_Version = "IVRChaperoneSetup_005";
-
-
-}
-
-// ivrcompositor.h
-namespace vr
-{
-
-#pragma pack( push, 8 )
-
-/** Errors that can occur with the VR compositor */
-enum EVRCompositorError
-{
- VRCompositorError_None = 0,
- VRCompositorError_RequestFailed = 1,
- VRCompositorError_IncompatibleVersion = 100,
- VRCompositorError_DoNotHaveFocus = 101,
- VRCompositorError_InvalidTexture = 102,
- VRCompositorError_IsNotSceneApplication = 103,
- VRCompositorError_TextureIsOnWrongDevice = 104,
- VRCompositorError_TextureUsesUnsupportedFormat = 105,
- VRCompositorError_SharedTexturesNotSupported = 106,
- VRCompositorError_IndexOutOfRange = 107,
- VRCompositorError_AlreadySubmitted = 108,
- VRCompositorError_InvalidBounds = 109,
-};
-
-const uint32_t VRCompositor_ReprojectionReason_Cpu = 0x01;
-const uint32_t VRCompositor_ReprojectionReason_Gpu = 0x02;
-const uint32_t VRCompositor_ReprojectionAsync = 0x04; // This flag indicates the async reprojection mode is active,
- // but does not indicate if reprojection actually happened or not.
- // Use the ReprojectionReason flags above to check if reprojection
- // was actually applied (i.e. scene texture was reused).
- // NumFramePresents > 1 also indicates the scene texture was reused,
- // and also the number of times that it was presented in total.
-
-/** Provides a single frame's timing information to the app */
-struct Compositor_FrameTiming
-{
- uint32_t m_nSize; // Set to sizeof( Compositor_FrameTiming )
- uint32_t m_nFrameIndex;
- uint32_t m_nNumFramePresents; // number of times this frame was presented
- uint32_t m_nNumMisPresented; // number of times this frame was presented on a vsync other than it was originally predicted to
- uint32_t m_nNumDroppedFrames; // number of additional times previous frame was scanned out
- uint32_t m_nReprojectionFlags;
-
- /** Absolute time reference for comparing frames. This aligns with the vsync that running start is relative to. */
- double m_flSystemTimeInSeconds;
-
- /** These times may include work from other processes due to OS scheduling.
- * The fewer packets of work these are broken up into, the less likely this will happen.
- * GPU work can be broken up by calling Flush. This can sometimes be useful to get the GPU started
- * processing that work earlier in the frame. */
- float m_flPreSubmitGpuMs; // time spent rendering the scene (gpu work submitted between WaitGetPoses and second Submit)
- float m_flPostSubmitGpuMs; // additional time spent rendering by application (e.g. companion window)
- float m_flTotalRenderGpuMs; // time between work submitted immediately after present (ideally vsync) until the end of compositor submitted work
- float m_flCompositorRenderGpuMs; // time spend performing distortion correction, rendering chaperone, overlays, etc.
- float m_flCompositorRenderCpuMs; // time spent on cpu submitting the above work for this frame
- float m_flCompositorIdleCpuMs; // time spent waiting for running start (application could have used this much more time)
-
- /** Miscellaneous measured intervals. */
- float m_flClientFrameIntervalMs; // time between calls to WaitGetPoses
- float m_flPresentCallCpuMs; // time blocked on call to present (usually 0.0, but can go long)
- float m_flWaitForPresentCpuMs; // time spent spin-waiting for frame index to change (not near-zero indicates wait object failure)
- float m_flSubmitFrameMs; // time spent in IVRCompositor::Submit (not near-zero indicates driver issue)
-
- /** The following are all relative to this frame's SystemTimeInSeconds */
- float m_flWaitGetPosesCalledMs;
- float m_flNewPosesReadyMs;
- float m_flNewFrameReadyMs; // second call to IVRCompositor::Submit
- float m_flCompositorUpdateStartMs;
- float m_flCompositorUpdateEndMs;
- float m_flCompositorRenderStartMs;
-
- vr::TrackedDevicePose_t m_HmdPose; // pose used by app to render this frame
-};
-
-/** Cumulative stats for current application. These are not cleared until a new app connects,
-* but they do stop accumulating once the associated app disconnects. */
-struct Compositor_CumulativeStats
-{
- uint32_t m_nPid; // Process id associated with these stats (may no longer be running).
- uint32_t m_nNumFramePresents; // total number of times we called present (includes reprojected frames)
- uint32_t m_nNumDroppedFrames; // total number of times an old frame was re-scanned out (without reprojection)
- uint32_t m_nNumReprojectedFrames; // total number of times a frame was scanned out a second time (with reprojection)
-
- /** Values recorded at startup before application has fully faded in the first time. */
- uint32_t m_nNumFramePresentsOnStartup;
- uint32_t m_nNumDroppedFramesOnStartup;
- uint32_t m_nNumReprojectedFramesOnStartup;
-
- /** Applications may explicitly fade to the compositor. This is usually to handle level transitions, and loading often causes
- * system wide hitches. The following stats are collected during this period. Does not include values recorded during startup. */
- uint32_t m_nNumLoading;
- uint32_t m_nNumFramePresentsLoading;
- uint32_t m_nNumDroppedFramesLoading;
- uint32_t m_nNumReprojectedFramesLoading;
-
- /** If we don't get a new frame from the app in less than 2.5 frames, then we assume the app has hung and start
- * fading back to the compositor. The following stats are a result of this, and are a subset of those recorded above.
- * Does not include values recorded during start up or loading. */
- uint32_t m_nNumTimedOut;
- uint32_t m_nNumFramePresentsTimedOut;
- uint32_t m_nNumDroppedFramesTimedOut;
- uint32_t m_nNumReprojectedFramesTimedOut;
-};
-
-#pragma pack( pop )
-
-/** Allows the application to interact with the compositor */
-class IVRCompositor
-{
-public:
- /** Sets tracking space returned by WaitGetPoses */
- virtual void SetTrackingSpace( ETrackingUniverseOrigin eOrigin ) = 0;
-
- /** Gets current tracking space returned by WaitGetPoses */
- virtual ETrackingUniverseOrigin GetTrackingSpace() = 0;
-
- /** Scene applications should call this function to get poses to render with (and optionally poses predicted an additional frame out to use for gameplay).
- * This function will block until "running start" milliseconds before the start of the frame, and should be called at the last moment before needing to
- * start rendering.
- *
- * Return codes:
- * - IsNotSceneApplication (make sure to call VR_Init with VRApplicaiton_Scene)
- * - DoNotHaveFocus (some other app has taken focus - this will throttle the call to 10hz to reduce the impact on that app)
- */
- virtual EVRCompositorError WaitGetPoses( VR_ARRAY_COUNT(unRenderPoseArrayCount) TrackedDevicePose_t* pRenderPoseArray, uint32_t unRenderPoseArrayCount,
- VR_ARRAY_COUNT(unGamePoseArrayCount) TrackedDevicePose_t* pGamePoseArray, uint32_t unGamePoseArrayCount ) = 0;
-
- /** Get the last set of poses returned by WaitGetPoses. */
- virtual EVRCompositorError GetLastPoses( VR_ARRAY_COUNT( unRenderPoseArrayCount ) TrackedDevicePose_t* pRenderPoseArray, uint32_t unRenderPoseArrayCount,
- VR_ARRAY_COUNT( unGamePoseArrayCount ) TrackedDevicePose_t* pGamePoseArray, uint32_t unGamePoseArrayCount ) = 0;
-
- /** Interface for accessing last set of poses returned by WaitGetPoses one at a time.
- * Returns VRCompositorError_IndexOutOfRange if unDeviceIndex not less than k_unMaxTrackedDeviceCount otherwise VRCompositorError_None.
- * It is okay to pass NULL for either pose if you only want one of the values. */
- virtual EVRCompositorError GetLastPoseForTrackedDeviceIndex( TrackedDeviceIndex_t unDeviceIndex, TrackedDevicePose_t *pOutputPose, TrackedDevicePose_t *pOutputGamePose ) = 0;
-
- /** Updated scene texture to display. If pBounds is NULL the entire texture will be used. If called from an OpenGL app, consider adding a glFlush after
- * Submitting both frames to signal the driver to start processing, otherwise it may wait until the command buffer fills up, causing the app to miss frames.
- *
- * OpenGL dirty state:
- * glBindTexture
- *
- * Return codes:
- * - IsNotSceneApplication (make sure to call VR_Init with VRApplicaiton_Scene)
- * - DoNotHaveFocus (some other app has taken focus)
- * - TextureIsOnWrongDevice (application did not use proper AdapterIndex - see IVRSystem.GetDXGIOutputInfo)
- * - SharedTexturesNotSupported (application needs to call CreateDXGIFactory1 or later before creating DX device)
- * - TextureUsesUnsupportedFormat (scene textures must be compatible with DXGI sharing rules - e.g. uncompressed, no mips, etc.)
- * - InvalidTexture (usually means bad arguments passed in)
- * - AlreadySubmitted (app has submitted two left textures or two right textures in a single frame - i.e. before calling WaitGetPoses again)
- */
- virtual EVRCompositorError Submit( EVREye eEye, const Texture_t *pTexture, const VRTextureBounds_t* pBounds = 0, EVRSubmitFlags nSubmitFlags = Submit_Default ) = 0;
-
- /** Clears the frame that was sent with the last call to Submit. This will cause the
- * compositor to show the grid until Submit is called again. */
- virtual void ClearLastSubmittedFrame() = 0;
-
- /** Call immediately after presenting your app's window (i.e. companion window) to unblock the compositor.
- * This is an optional call, which only needs to be used if you can't instead call WaitGetPoses immediately after Present.
- * For example, if your engine's render and game loop are not on separate threads, or blocking the render thread until 3ms before the next vsync would
- * introduce a deadlock of some sort. This function tells the compositor that you have finished all rendering after having Submitted buffers for both
- * eyes, and it is free to start its rendering work. This should only be called from the same thread you are rendering on. */
- virtual void PostPresentHandoff() = 0;
-
- /** Returns true if timing data is filled it. Sets oldest timing info if nFramesAgo is larger than the stored history.
- * Be sure to set timing.size = sizeof(Compositor_FrameTiming) on struct passed in before calling this function. */
- virtual bool GetFrameTiming( Compositor_FrameTiming *pTiming, uint32_t unFramesAgo = 0 ) = 0;
-
- /** Interface for copying a range of timing data. Frames are returned in ascending order (oldest to newest) with the last being the most recent frame.
- * Only the first entry's m_nSize needs to be set, as the rest will be inferred from that. Returns total number of entries filled out. */
- virtual uint32_t GetFrameTimings( Compositor_FrameTiming *pTiming, uint32_t nFrames ) = 0;
-
- /** Returns the time in seconds left in the current (as identified by FrameTiming's frameIndex) frame.
- * Due to "running start", this value may roll over to the next frame before ever reaching 0.0. */
- virtual float GetFrameTimeRemaining() = 0;
-
- /** Fills out stats accumulated for the last connected application. Pass in sizeof( Compositor_CumulativeStats ) as second parameter. */
- virtual void GetCumulativeStats( Compositor_CumulativeStats *pStats, uint32_t nStatsSizeInBytes ) = 0;
-
- /** Fades the view on the HMD to the specified color. The fade will take fSeconds, and the color values are between
- * 0.0 and 1.0. This color is faded on top of the scene based on the alpha parameter. Removing the fade color instantly
- * would be FadeToColor( 0.0, 0.0, 0.0, 0.0, 0.0 ). Values are in un-premultiplied alpha space. */
- virtual void FadeToColor( float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, bool bBackground = false ) = 0;
-
- /** Get current fade color value. */
- virtual HmdColor_t GetCurrentFadeColor( bool bBackground = false ) = 0;
-
- /** Fading the Grid in or out in fSeconds */
- virtual void FadeGrid( float fSeconds, bool bFadeIn ) = 0;
-
- /** Get current alpha value of grid. */
- virtual float GetCurrentGridAlpha() = 0;
-
- /** Override the skybox used in the compositor (e.g. for during level loads when the app can't feed scene images fast enough)
- * Order is Front, Back, Left, Right, Top, Bottom. If only a single texture is passed, it is assumed in lat-long format.
- * If two are passed, it is assumed a lat-long stereo pair. */
- virtual EVRCompositorError SetSkyboxOverride( VR_ARRAY_COUNT( unTextureCount ) const Texture_t *pTextures, uint32_t unTextureCount ) = 0;
-
- /** Resets compositor skybox back to defaults. */
- virtual void ClearSkyboxOverride() = 0;
-
- /** Brings the compositor window to the front. This is useful for covering any other window that may be on the HMD
- * and is obscuring the compositor window. */
- virtual void CompositorBringToFront() = 0;
-
- /** Pushes the compositor window to the back. This is useful for allowing other applications to draw directly to the HMD. */
- virtual void CompositorGoToBack() = 0;
-
- /** Tells the compositor process to clean up and exit. You do not need to call this function at shutdown. Under normal
- * circumstances the compositor will manage its own life cycle based on what applications are running. */
- virtual void CompositorQuit() = 0;
-
- /** Return whether the compositor is fullscreen */
- virtual bool IsFullscreen() = 0;
-
- /** Returns the process ID of the process that is currently rendering the scene */
- virtual uint32_t GetCurrentSceneFocusProcess() = 0;
-
- /** Returns the process ID of the process that rendered the last frame (or 0 if the compositor itself rendered the frame.)
- * Returns 0 when fading out from an app and the app's process Id when fading into an app. */
- virtual uint32_t GetLastFrameRenderer() = 0;
-
- /** Returns true if the current process has the scene focus */
- virtual bool CanRenderScene() = 0;
-
- /** Creates a window on the primary monitor to display what is being shown in the headset. */
- virtual void ShowMirrorWindow() = 0;
-
- /** Closes the mirror window. */
- virtual void HideMirrorWindow() = 0;
-
- /** Returns true if the mirror window is shown. */
- virtual bool IsMirrorWindowVisible() = 0;
-
- /** Writes all images that the compositor knows about (including overlays) to a 'screenshots' folder in the SteamVR runtime root. */
- virtual void CompositorDumpImages() = 0;
-
- /** Let an app know it should be rendering with low resources. */
- virtual bool ShouldAppRenderWithLowResources() = 0;
-
- /** Override interleaved reprojection logic to force on. */
- virtual void ForceInterleavedReprojectionOn( bool bOverride ) = 0;
-
- /** Force reconnecting to the compositor process. */
- virtual void ForceReconnectProcess() = 0;
-
- /** Temporarily suspends rendering (useful for finer control over scene transitions). */
- virtual void SuspendRendering( bool bSuspend ) = 0;
-
- /** Opens a shared D3D11 texture with the undistorted composited image for each eye. Use ReleaseMirrorTextureD3D11 when finished
- * instead of calling Release on the resource itself. */
- virtual vr::EVRCompositorError GetMirrorTextureD3D11( vr::EVREye eEye, void *pD3D11DeviceOrResource, void **ppD3D11ShaderResourceView ) = 0;
- virtual void ReleaseMirrorTextureD3D11( void *pD3D11ShaderResourceView ) = 0;
-
- /** Access to mirror textures from OpenGL. */
- virtual vr::EVRCompositorError GetMirrorTextureGL( vr::EVREye eEye, vr::glUInt_t *pglTextureId, vr::glSharedTextureHandle_t *pglSharedTextureHandle ) = 0;
- virtual bool ReleaseSharedGLTexture( vr::glUInt_t glTextureId, vr::glSharedTextureHandle_t glSharedTextureHandle ) = 0;
- virtual void LockGLSharedTextureForAccess( vr::glSharedTextureHandle_t glSharedTextureHandle ) = 0;
- virtual void UnlockGLSharedTextureForAccess( vr::glSharedTextureHandle_t glSharedTextureHandle ) = 0;
-
- /** [Vulkan Only]
- * return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
- * null. The string will be a space separated list of-required instance extensions to enable in VkCreateInstance */
- virtual uint32_t GetVulkanInstanceExtensionsRequired( VR_OUT_STRING() char *pchValue, uint32_t unBufferSize ) = 0;
-
- /** [Vulkan only]
- * return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
- * null. The string will be a space separated list of required device extensions to enable in VkCreateDevice */
- virtual uint32_t GetVulkanDeviceExtensionsRequired( VkPhysicalDevice_T *pPhysicalDevice, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize ) = 0;
-
- /** [ Vulkan/D3D12 Only ]
- * There are two purposes for SetExplicitTimingMode:
- * 1. To get a more accurate GPU timestamp for when the frame begins in Vulkan/D3D12 applications.
- * 2. (Optional) To avoid having WaitGetPoses access the Vulkan queue so that the queue can be accessed from
- * another thread while WaitGetPoses is executing.
- *
- * More accurate GPU timestamp for the start of the frame is achieved by the application calling
- * SubmitExplicitTimingData immediately before its first submission to the Vulkan/D3D12 queue.
- * This is more accurate because normally this GPU timestamp is recorded during WaitGetPoses. In D3D11,
- * WaitGetPoses queues a GPU timestamp write, but it does not actually get submitted to the GPU until the
- * application flushes. By using SubmitExplicitTimingData, the timestamp is recorded at the same place for
- * Vulkan/D3D12 as it is for D3D11, resulting in a more accurate GPU time measurement for the frame.
- *
- * Avoiding WaitGetPoses accessing the Vulkan queue can be achieved using SetExplicitTimingMode as well. If this is desired,
- * the application *MUST* call PostPresentHandoff itself prior to WaitGetPoses. If SetExplicitTimingMode is true and the
- * application calls PostPresentHandoff, then WaitGetPoses is guaranteed not to access the queue. Note that PostPresentHandoff
- * and SubmitExplicitTimingData will access the queue, so only WaitGetPoses becomes safe for accessing the queue from another
- * thread. */
- virtual void SetExplicitTimingMode( bool bExplicitTimingMode ) = 0;
-
- /** [ Vulkan/D3D12 Only ]
- * Submit explicit timing data. When SetExplicitTimingMode is true, this must be called immediately before
- * the application's first vkQueueSubmit (Vulkan) or ID3D12CommandQueue::ExecuteCommandLists (D3D12) of each frame.
- * This function will insert a GPU timestamp write just before the application starts its rendering. This function
- * will perform a vkQueueSubmit on Vulkan so must not be done simultaneously with VkQueue operations on another thread.
- * Returns VRCompositorError_RequestFailed if SetExplicitTimingMode is not enabled. */
- virtual EVRCompositorError SubmitExplicitTimingData() = 0;
-};
-
-static const char * const IVRCompositor_Version = "IVRCompositor_021";
-
-} // namespace vr
-
-
-
-// ivrnotifications.h
-namespace vr
-{
-
-#pragma pack( push, 8 )
-
-// Used for passing graphic data
-struct NotificationBitmap_t
-{
- NotificationBitmap_t()
- : m_pImageData( nullptr )
- , m_nWidth( 0 )
- , m_nHeight( 0 )
- , m_nBytesPerPixel( 0 )
- {
- };
-
- void *m_pImageData;
- int32_t m_nWidth;
- int32_t m_nHeight;
- int32_t m_nBytesPerPixel;
-};
-
-
-/** Be aware that the notification type is used as 'priority' to pick the next notification */
-enum EVRNotificationType
-{
- /** Transient notifications are automatically hidden after a period of time set by the user.
- * They are used for things like information and chat messages that do not require user interaction. */
- EVRNotificationType_Transient = 0,
-
- /** Persistent notifications are shown to the user until they are hidden by calling RemoveNotification().
- * They are used for things like phone calls and alarms that require user interaction. */
- EVRNotificationType_Persistent = 1,
-
- /** System notifications are shown no matter what. It is expected, that the ulUserValue is used as ID.
- * If there is already a system notification in the queue with that ID it is not accepted into the queue
- * to prevent spamming with system notification */
- EVRNotificationType_Transient_SystemWithUserValue = 2,
-};
-
-enum EVRNotificationStyle
-{
- /** Creates a notification with minimal external styling. */
- EVRNotificationStyle_None = 0,
-
- /** Used for notifications about overlay-level status. In Steam this is used for events like downloads completing. */
- EVRNotificationStyle_Application = 100,
-
- /** Used for notifications about contacts that are unknown or not available. In Steam this is used for friend invitations and offline friends. */
- EVRNotificationStyle_Contact_Disabled = 200,
-
- /** Used for notifications about contacts that are available but inactive. In Steam this is used for friends that are online but not playing a game. */
- EVRNotificationStyle_Contact_Enabled = 201,
-
- /** Used for notifications about contacts that are available and active. In Steam this is used for friends that are online and currently running a game. */
- EVRNotificationStyle_Contact_Active = 202,
-};
-
-static const uint32_t k_unNotificationTextMaxSize = 256;
-
-typedef uint32_t VRNotificationId;
-
-
-
-#pragma pack( pop )
-
-/** Allows notification sources to interact with the VR system
- This current interface is not yet implemented. Do not use yet. */
-class IVRNotifications
-{
-public:
- /** Create a notification and enqueue it to be shown to the user.
- * An overlay handle is required to create a notification, as otherwise it would be impossible for a user to act on it.
- * To create a two-line notification, use a line break ('\n') to split the text into two lines.
- * The pImage argument may be NULL, in which case the specified overlay's icon will be used instead. */
- virtual EVRNotificationError CreateNotification( VROverlayHandle_t ulOverlayHandle, uint64_t ulUserValue, EVRNotificationType type, const char *pchText, EVRNotificationStyle style, const NotificationBitmap_t *pImage, /* out */ VRNotificationId *pNotificationId ) = 0;
-
- /** Destroy a notification, hiding it first if it currently shown to the user. */
- virtual EVRNotificationError RemoveNotification( VRNotificationId notificationId ) = 0;
-
-};
-
-static const char * const IVRNotifications_Version = "IVRNotifications_002";
-
-} // namespace vr
-
-
-
-// ivroverlay.h
-namespace vr
-{
-
- /** The maximum length of an overlay key in bytes, counting the terminating null character. */
- static const uint32_t k_unVROverlayMaxKeyLength = 128;
-
- /** The maximum length of an overlay name in bytes, counting the terminating null character. */
- static const uint32_t k_unVROverlayMaxNameLength = 128;
-
- /** The maximum number of overlays that can exist in the system at one time. */
- static const uint32_t k_unMaxOverlayCount = 64;
-
- /** The maximum number of overlay intersection mask primitives per overlay */
- static const uint32_t k_unMaxOverlayIntersectionMaskPrimitivesCount = 32;
-
- /** Types of input supported by VR Overlays */
- enum VROverlayInputMethod
- {
- VROverlayInputMethod_None = 0, // No input events will be generated automatically for this overlay
- VROverlayInputMethod_Mouse = 1, // Tracked controllers will get mouse events automatically
- };
-
- /** Allows the caller to figure out which overlay transform getter to call. */
- enum VROverlayTransformType
- {
- VROverlayTransform_Absolute = 0,
- VROverlayTransform_TrackedDeviceRelative = 1,
- VROverlayTransform_SystemOverlay = 2,
- VROverlayTransform_TrackedComponent = 3,
- };
-
- /** Overlay control settings */
- enum VROverlayFlags
- {
- VROverlayFlags_None = 0,
-
- // The following only take effect when rendered using the high quality render path (see SetHighQualityOverlay).
- VROverlayFlags_Curved = 1,
- VROverlayFlags_RGSS4X = 2,
-
- // Set this flag on a dashboard overlay to prevent a tab from showing up for that overlay
- VROverlayFlags_NoDashboardTab = 3,
-
- // Set this flag on a dashboard that is able to deal with gamepad focus events
- VROverlayFlags_AcceptsGamepadEvents = 4,
-
- // Indicates that the overlay should dim/brighten to show gamepad focus
- VROverlayFlags_ShowGamepadFocus = 5,
-
- // When in VROverlayInputMethod_Mouse you can optionally enable sending VRScroll_t
- VROverlayFlags_SendVRScrollEvents = 6,
- VROverlayFlags_SendVRTouchpadEvents = 7,
-
- // If set this will render a vertical scroll wheel on the primary controller,
- // only needed if not using VROverlayFlags_SendVRScrollEvents but you still want to represent a scroll wheel
- VROverlayFlags_ShowTouchPadScrollWheel = 8,
-
- // If this is set ownership and render access to the overlay are transferred
- // to the new scene process on a call to IVRApplications::LaunchInternalProcess
- VROverlayFlags_TransferOwnershipToInternalProcess = 9,
-
- // If set, renders 50% of the texture in each eye, side by side
- VROverlayFlags_SideBySide_Parallel = 10, // Texture is left/right
- VROverlayFlags_SideBySide_Crossed = 11, // Texture is crossed and right/left
-
- VROverlayFlags_Panorama = 12, // Texture is a panorama
- VROverlayFlags_StereoPanorama = 13, // Texture is a stereo panorama
-
- // If this is set on an overlay owned by the scene application that overlay
- // will be sorted with the "Other" overlays on top of all other scene overlays
- VROverlayFlags_SortWithNonSceneOverlays = 14,
-
- // If set, the overlay will be shown in the dashboard, otherwise it will be hidden.
- VROverlayFlags_VisibleInDashboard = 15,
- };
-
- enum VRMessageOverlayResponse
- {
- VRMessageOverlayResponse_ButtonPress_0 = 0,
- VRMessageOverlayResponse_ButtonPress_1 = 1,
- VRMessageOverlayResponse_ButtonPress_2 = 2,
- VRMessageOverlayResponse_ButtonPress_3 = 3,
- VRMessageOverlayResponse_CouldntFindSystemOverlay = 4,
- VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay= 5,
- VRMessageOverlayResponse_ApplicationQuit = 6
- };
-
- struct VROverlayIntersectionParams_t
- {
- HmdVector3_t vSource;
- HmdVector3_t vDirection;
- ETrackingUniverseOrigin eOrigin;
- };
-
- struct VROverlayIntersectionResults_t
- {
- HmdVector3_t vPoint;
- HmdVector3_t vNormal;
- HmdVector2_t vUVs;
- float fDistance;
- };
-
- // Input modes for the Big Picture gamepad text entry
- enum EGamepadTextInputMode
- {
- k_EGamepadTextInputModeNormal = 0,
- k_EGamepadTextInputModePassword = 1,
- k_EGamepadTextInputModeSubmit = 2,
- };
-
- // Controls number of allowed lines for the Big Picture gamepad text entry
- enum EGamepadTextInputLineMode
- {
- k_EGamepadTextInputLineModeSingleLine = 0,
- k_EGamepadTextInputLineModeMultipleLines = 1
- };
-
- /** Directions for changing focus between overlays with the gamepad */
- enum EOverlayDirection
- {
- OverlayDirection_Up = 0,
- OverlayDirection_Down = 1,
- OverlayDirection_Left = 2,
- OverlayDirection_Right = 3,
-
- OverlayDirection_Count = 4,
- };
-
- enum EVROverlayIntersectionMaskPrimitiveType
- {
- OverlayIntersectionPrimitiveType_Rectangle,
- OverlayIntersectionPrimitiveType_Circle,
- };
-
- struct IntersectionMaskRectangle_t
- {
- float m_flTopLeftX;
- float m_flTopLeftY;
- float m_flWidth;
- float m_flHeight;
- };
-
- struct IntersectionMaskCircle_t
- {
- float m_flCenterX;
- float m_flCenterY;
- float m_flRadius;
- };
-
- /** NOTE!!! If you change this you MUST manually update openvr_interop.cs.py and openvr_api_flat.h.py */
- typedef union
- {
- IntersectionMaskRectangle_t m_Rectangle;
- IntersectionMaskCircle_t m_Circle;
- } VROverlayIntersectionMaskPrimitive_Data_t;
-
- struct VROverlayIntersectionMaskPrimitive_t
- {
- EVROverlayIntersectionMaskPrimitiveType m_nPrimitiveType;
- VROverlayIntersectionMaskPrimitive_Data_t m_Primitive;
- };
-
- class IVROverlay
- {
- public:
-
- // ---------------------------------------------
- // Overlay management methods
- // ---------------------------------------------
-
- /** Finds an existing overlay with the specified key. */
- virtual EVROverlayError FindOverlay( const char *pchOverlayKey, VROverlayHandle_t * pOverlayHandle ) = 0;
-
- /** Creates a new named overlay. All overlays start hidden and with default settings. */
- virtual EVROverlayError CreateOverlay( const char *pchOverlayKey, const char *pchOverlayName, VROverlayHandle_t * pOverlayHandle ) = 0;
-
- /** Destroys the specified overlay. When an application calls VR_Shutdown all overlays created by that app are
- * automatically destroyed. */
- virtual EVROverlayError DestroyOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Specify which overlay to use the high quality render path. This overlay will be composited in during the distortion pass which
- * results in it drawing on top of everything else, but also at a higher quality as it samples the source texture directly rather than
- * rasterizing into each eye's render texture first. Because if this, only one of these is supported at any given time. It is most useful
- * for overlays that are expected to take up most of the user's view (e.g. streaming video).
- * This mode does not support mouse input to your overlay. */
- virtual EVROverlayError SetHighQualityOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Returns the overlay handle of the current overlay being rendered using the single high quality overlay render path.
- * Otherwise it will return k_ulOverlayHandleInvalid. */
- virtual vr::VROverlayHandle_t GetHighQualityOverlay() = 0;
-
- /** Fills the provided buffer with the string key of the overlay. Returns the size of buffer required to store the key, including
- * the terminating null character. k_unVROverlayMaxKeyLength will be enough bytes to fit the string. */
- virtual uint32_t GetOverlayKey( VROverlayHandle_t ulOverlayHandle, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize, EVROverlayError *pError = 0L ) = 0;
-
- /** Fills the provided buffer with the friendly name of the overlay. Returns the size of buffer required to store the key, including
- * the terminating null character. k_unVROverlayMaxNameLength will be enough bytes to fit the string. */
- virtual uint32_t GetOverlayName( VROverlayHandle_t ulOverlayHandle, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize, EVROverlayError *pError = 0L ) = 0;
-
- /** set the name to use for this overlay */
- virtual EVROverlayError SetOverlayName( VROverlayHandle_t ulOverlayHandle, const char *pchName ) = 0;
-
- /** Gets the raw image data from an overlay. Overlay image data is always returned as RGBA data, 4 bytes per pixel. If the buffer is not large enough, width and height
- * will be set and VROverlayError_ArrayTooSmall is returned. */
- virtual EVROverlayError GetOverlayImageData( VROverlayHandle_t ulOverlayHandle, void *pvBuffer, uint32_t unBufferSize, uint32_t *punWidth, uint32_t *punHeight ) = 0;
-
- /** returns a string that corresponds with the specified overlay error. The string will be the name
- * of the error enum value for all valid error codes */
- virtual const char *GetOverlayErrorNameFromEnum( EVROverlayError error ) = 0;
-
- // ---------------------------------------------
- // Overlay rendering methods
- // ---------------------------------------------
-
- /** Sets the pid that is allowed to render to this overlay (the creator pid is always allow to render),
- * by default this is the pid of the process that made the overlay */
- virtual EVROverlayError SetOverlayRenderingPid( VROverlayHandle_t ulOverlayHandle, uint32_t unPID ) = 0;
-
- /** Gets the pid that is allowed to render to this overlay */
- virtual uint32_t GetOverlayRenderingPid( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Specify flag setting for a given overlay */
- virtual EVROverlayError SetOverlayFlag( VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool bEnabled ) = 0;
-
- /** Sets flag setting for a given overlay */
- virtual EVROverlayError GetOverlayFlag( VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool *pbEnabled ) = 0;
-
- /** Sets the color tint of the overlay quad. Use 0.0 to 1.0 per channel. */
- virtual EVROverlayError SetOverlayColor( VROverlayHandle_t ulOverlayHandle, float fRed, float fGreen, float fBlue ) = 0;
-
- /** Gets the color tint of the overlay quad. */
- virtual EVROverlayError GetOverlayColor( VROverlayHandle_t ulOverlayHandle, float *pfRed, float *pfGreen, float *pfBlue ) = 0;
-
- /** Sets the alpha of the overlay quad. Use 1.0 for 100 percent opacity to 0.0 for 0 percent opacity. */
- virtual EVROverlayError SetOverlayAlpha( VROverlayHandle_t ulOverlayHandle, float fAlpha ) = 0;
-
- /** Gets the alpha of the overlay quad. By default overlays are rendering at 100 percent alpha (1.0). */
- virtual EVROverlayError GetOverlayAlpha( VROverlayHandle_t ulOverlayHandle, float *pfAlpha ) = 0;
-
- /** Sets the aspect ratio of the texels in the overlay. 1.0 means the texels are square. 2.0 means the texels
- * are twice as wide as they are tall. Defaults to 1.0. */
- virtual EVROverlayError SetOverlayTexelAspect( VROverlayHandle_t ulOverlayHandle, float fTexelAspect ) = 0;
-
- /** Gets the aspect ratio of the texels in the overlay. Defaults to 1.0 */
- virtual EVROverlayError GetOverlayTexelAspect( VROverlayHandle_t ulOverlayHandle, float *pfTexelAspect ) = 0;
-
- /** Sets the rendering sort order for the overlay. Overlays are rendered this order:
- * Overlays owned by the scene application
- * Overlays owned by some other application
- *
- * Within a category overlays are rendered lowest sort order to highest sort order. Overlays with the same
- * sort order are rendered back to front base on distance from the HMD.
- *
- * Sort order defaults to 0. */
- virtual EVROverlayError SetOverlaySortOrder( VROverlayHandle_t ulOverlayHandle, uint32_t unSortOrder ) = 0;
-
- /** Gets the sort order of the overlay. See SetOverlaySortOrder for how this works. */
- virtual EVROverlayError GetOverlaySortOrder( VROverlayHandle_t ulOverlayHandle, uint32_t *punSortOrder ) = 0;
-
- /** Sets the width of the overlay quad in meters. By default overlays are rendered on a quad that is 1 meter across */
- virtual EVROverlayError SetOverlayWidthInMeters( VROverlayHandle_t ulOverlayHandle, float fWidthInMeters ) = 0;
-
- /** Returns the width of the overlay quad in meters. By default overlays are rendered on a quad that is 1 meter across */
- virtual EVROverlayError GetOverlayWidthInMeters( VROverlayHandle_t ulOverlayHandle, float *pfWidthInMeters ) = 0;
-
- /** For high-quality curved overlays only, sets the distance range in meters from the overlay used to automatically curve
- * the surface around the viewer. Min is distance is when the surface will be most curved. Max is when least curved. */
- virtual EVROverlayError SetOverlayAutoCurveDistanceRangeInMeters( VROverlayHandle_t ulOverlayHandle, float fMinDistanceInMeters, float fMaxDistanceInMeters ) = 0;
-
- /** For high-quality curved overlays only, gets the distance range in meters from the overlay used to automatically curve
- * the surface around the viewer. Min is distance is when the surface will be most curved. Max is when least curved. */
- virtual EVROverlayError GetOverlayAutoCurveDistanceRangeInMeters( VROverlayHandle_t ulOverlayHandle, float *pfMinDistanceInMeters, float *pfMaxDistanceInMeters ) = 0;
-
- /** Sets the colorspace the overlay texture's data is in. Defaults to 'auto'.
- * If the texture needs to be resolved, you should call SetOverlayTexture with the appropriate colorspace instead. */
- virtual EVROverlayError SetOverlayTextureColorSpace( VROverlayHandle_t ulOverlayHandle, EColorSpace eTextureColorSpace ) = 0;
-
- /** Gets the overlay's current colorspace setting. */
- virtual EVROverlayError GetOverlayTextureColorSpace( VROverlayHandle_t ulOverlayHandle, EColorSpace *peTextureColorSpace ) = 0;
-
- /** Sets the part of the texture to use for the overlay. UV Min is the upper left corner and UV Max is the lower right corner. */
- virtual EVROverlayError SetOverlayTextureBounds( VROverlayHandle_t ulOverlayHandle, const VRTextureBounds_t *pOverlayTextureBounds ) = 0;
-
- /** Gets the part of the texture to use for the overlay. UV Min is the upper left corner and UV Max is the lower right corner. */
- virtual EVROverlayError GetOverlayTextureBounds( VROverlayHandle_t ulOverlayHandle, VRTextureBounds_t *pOverlayTextureBounds ) = 0;
-
- /** Gets render model to draw behind this overlay */
- virtual uint32_t GetOverlayRenderModel( vr::VROverlayHandle_t ulOverlayHandle, char *pchValue, uint32_t unBufferSize, HmdColor_t *pColor, vr::EVROverlayError *pError ) = 0;
-
- /** Sets render model to draw behind this overlay and the vertex color to use, pass null for pColor to match the overlays vertex color.
- The model is scaled by the same amount as the overlay, with a default of 1m. */
- virtual vr::EVROverlayError SetOverlayRenderModel( vr::VROverlayHandle_t ulOverlayHandle, const char *pchRenderModel, const HmdColor_t *pColor ) = 0;
-
- /** Returns the transform type of this overlay. */
- virtual EVROverlayError GetOverlayTransformType( VROverlayHandle_t ulOverlayHandle, VROverlayTransformType *peTransformType ) = 0;
-
- /** Sets the transform to absolute tracking origin. */
- virtual EVROverlayError SetOverlayTransformAbsolute( VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, const HmdMatrix34_t *pmatTrackingOriginToOverlayTransform ) = 0;
-
- /** Gets the transform if it is absolute. Returns an error if the transform is some other type. */
- virtual EVROverlayError GetOverlayTransformAbsolute( VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin *peTrackingOrigin, HmdMatrix34_t *pmatTrackingOriginToOverlayTransform ) = 0;
-
- /** Sets the transform to relative to the transform of the specified tracked device. */
- virtual EVROverlayError SetOverlayTransformTrackedDeviceRelative( VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unTrackedDevice, const HmdMatrix34_t *pmatTrackedDeviceToOverlayTransform ) = 0;
-
- /** Gets the transform if it is relative to a tracked device. Returns an error if the transform is some other type. */
- virtual EVROverlayError GetOverlayTransformTrackedDeviceRelative( VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t *punTrackedDevice, HmdMatrix34_t *pmatTrackedDeviceToOverlayTransform ) = 0;
-
- /** Sets the transform to draw the overlay on a rendermodel component mesh instead of a quad. This will only draw when the system is
- * drawing the device. Overlays with this transform type cannot receive mouse events. */
- virtual EVROverlayError SetOverlayTransformTrackedDeviceComponent( VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unDeviceIndex, const char *pchComponentName ) = 0;
-
- /** Gets the transform information when the overlay is rendering on a component. */
- virtual EVROverlayError GetOverlayTransformTrackedDeviceComponent( VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t *punDeviceIndex, char *pchComponentName, uint32_t unComponentNameSize ) = 0;
-
- /** Gets the transform if it is relative to another overlay. Returns an error if the transform is some other type. */
- virtual vr::EVROverlayError GetOverlayTransformOverlayRelative( VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t *ulOverlayHandleParent, HmdMatrix34_t *pmatParentOverlayToOverlayTransform ) = 0;
-
- /** Sets the transform to relative to the transform of the specified overlay. This overlays visibility will also track the parents visibility */
- virtual vr::EVROverlayError SetOverlayTransformOverlayRelative( VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t ulOverlayHandleParent, const HmdMatrix34_t *pmatParentOverlayToOverlayTransform ) = 0;
-
- /** Shows the VR overlay. For dashboard overlays, only the Dashboard Manager is allowed to call this. */
- virtual EVROverlayError ShowOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Hides the VR overlay. For dashboard overlays, only the Dashboard Manager is allowed to call this. */
- virtual EVROverlayError HideOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Returns true if the overlay is visible. */
- virtual bool IsOverlayVisible( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Get the transform in 3d space associated with a specific 2d point in the overlay's coordinate space (where 0,0 is the lower left). -Z points out of the overlay */
- virtual EVROverlayError GetTransformForOverlayCoordinates( VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, HmdVector2_t coordinatesInOverlay, HmdMatrix34_t *pmatTransform ) = 0;
-
- // ---------------------------------------------
- // Overlay input methods
- // ---------------------------------------------
-
- /** Returns true and fills the event with the next event on the overlay's event queue, if there is one.
- * If there are no events this method returns false. uncbVREvent should be the size in bytes of the VREvent_t struct */
- virtual bool PollNextOverlayEvent( VROverlayHandle_t ulOverlayHandle, VREvent_t *pEvent, uint32_t uncbVREvent ) = 0;
-
- /** Returns the current input settings for the specified overlay. */
- virtual EVROverlayError GetOverlayInputMethod( VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod *peInputMethod ) = 0;
-
- /** Sets the input settings for the specified overlay. */
- virtual EVROverlayError SetOverlayInputMethod( VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod eInputMethod ) = 0;
-
- /** Gets the mouse scaling factor that is used for mouse events. The actual texture may be a different size, but this is
- * typically the size of the underlying UI in pixels. */
- virtual EVROverlayError GetOverlayMouseScale( VROverlayHandle_t ulOverlayHandle, HmdVector2_t *pvecMouseScale ) = 0;
-
- /** Sets the mouse scaling factor that is used for mouse events. The actual texture may be a different size, but this is
- * typically the size of the underlying UI in pixels (not in world space). */
- virtual EVROverlayError SetOverlayMouseScale( VROverlayHandle_t ulOverlayHandle, const HmdVector2_t *pvecMouseScale ) = 0;
-
- /** Computes the overlay-space pixel coordinates of where the ray intersects the overlay with the
- * specified settings. Returns false if there is no intersection. */
- virtual bool ComputeOverlayIntersection( VROverlayHandle_t ulOverlayHandle, const VROverlayIntersectionParams_t *pParams, VROverlayIntersectionResults_t *pResults ) = 0;
-
- /** Processes mouse input from the specified controller as though it were a mouse pointed at a compositor overlay with the
- * specified settings. The controller is treated like a laser pointer on the -z axis. The point where the laser pointer would
- * intersect with the overlay is the mouse position, the trigger is left mouse, and the track pad is right mouse.
- *
- * Return true if the controller is pointed at the overlay and an event was generated. */
- virtual bool HandleControllerOverlayInteractionAsMouse( VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unControllerDeviceIndex ) = 0;
-
- /** Returns true if the specified overlay is the hover target. An overlay is the hover target when it is the last overlay "moused over"
- * by the virtual mouse pointer */
- virtual bool IsHoverTargetOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Returns the current Gamepad focus overlay */
- virtual vr::VROverlayHandle_t GetGamepadFocusOverlay() = 0;
-
- /** Sets the current Gamepad focus overlay */
- virtual EVROverlayError SetGamepadFocusOverlay( VROverlayHandle_t ulNewFocusOverlay ) = 0;
-
- /** Sets an overlay's neighbor. This will also set the neighbor of the "to" overlay
- * to point back to the "from" overlay. If an overlay's neighbor is set to invalid both
- * ends will be cleared */
- virtual EVROverlayError SetOverlayNeighbor( EOverlayDirection eDirection, VROverlayHandle_t ulFrom, VROverlayHandle_t ulTo ) = 0;
-
- /** Changes the Gamepad focus from one overlay to one of its neighbors. Returns VROverlayError_NoNeighbor if there is no
- * neighbor in that direction */
- virtual EVROverlayError MoveGamepadFocusToNeighbor( EOverlayDirection eDirection, VROverlayHandle_t ulFrom ) = 0;
-
- // ---------------------------------------------
- // Overlay texture methods
- // ---------------------------------------------
-
- /** Texture to draw for the overlay. This function can only be called by the overlay's creator or renderer process (see SetOverlayRenderingPid) .
- *
- * OpenGL dirty state:
- * glBindTexture
- */
- virtual EVROverlayError SetOverlayTexture( VROverlayHandle_t ulOverlayHandle, const Texture_t *pTexture ) = 0;
-
- /** Use this to tell the overlay system to release the texture set for this overlay. */
- virtual EVROverlayError ClearOverlayTexture( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Separate interface for providing the data as a stream of bytes, but there is an upper bound on data
- * that can be sent. This function can only be called by the overlay's renderer process. */
- virtual EVROverlayError SetOverlayRaw( VROverlayHandle_t ulOverlayHandle, void *pvBuffer, uint32_t unWidth, uint32_t unHeight, uint32_t unDepth ) = 0;
-
- /** Separate interface for providing the image through a filename: can be png or jpg, and should not be bigger than 1920x1080.
- * This function can only be called by the overlay's renderer process */
- virtual EVROverlayError SetOverlayFromFile( VROverlayHandle_t ulOverlayHandle, const char *pchFilePath ) = 0;
-
- /** Get the native texture handle/device for an overlay you have created.
- * On windows this handle will be a ID3D11ShaderResourceView with a ID3D11Texture2D bound.
- *
- * The texture will always be sized to match the backing texture you supplied in SetOverlayTexture above.
- *
- * You MUST call ReleaseNativeOverlayHandle() with pNativeTextureHandle once you are done with this texture.
- *
- * pNativeTextureHandle is an OUTPUT, it will be a pointer to a ID3D11ShaderResourceView *.
- * pNativeTextureRef is an INPUT and should be a ID3D11Resource *. The device used by pNativeTextureRef will be used to bind pNativeTextureHandle.
- */
- virtual EVROverlayError GetOverlayTexture( VROverlayHandle_t ulOverlayHandle, void **pNativeTextureHandle, void *pNativeTextureRef, uint32_t *pWidth, uint32_t *pHeight, uint32_t *pNativeFormat, ETextureType *pAPIType, EColorSpace *pColorSpace, VRTextureBounds_t *pTextureBounds ) = 0;
-
- /** Release the pNativeTextureHandle provided from the GetOverlayTexture call, this allows the system to free the underlying GPU resources for this object,
- * so only do it once you stop rendering this texture.
- */
- virtual EVROverlayError ReleaseNativeOverlayHandle( VROverlayHandle_t ulOverlayHandle, void *pNativeTextureHandle ) = 0;
-
- /** Get the size of the overlay texture */
- virtual EVROverlayError GetOverlayTextureSize( VROverlayHandle_t ulOverlayHandle, uint32_t *pWidth, uint32_t *pHeight ) = 0;
-
- // ----------------------------------------------
- // Dashboard Overlay Methods
- // ----------------------------------------------
-
- /** Creates a dashboard overlay and returns its handle */
- virtual EVROverlayError CreateDashboardOverlay( const char *pchOverlayKey, const char *pchOverlayFriendlyName, VROverlayHandle_t * pMainHandle, VROverlayHandle_t *pThumbnailHandle ) = 0;
-
- /** Returns true if the dashboard is visible */
- virtual bool IsDashboardVisible() = 0;
-
- /** returns true if the dashboard is visible and the specified overlay is the active system Overlay */
- virtual bool IsActiveDashboardOverlay( VROverlayHandle_t ulOverlayHandle ) = 0;
-
- /** Sets the dashboard overlay to only appear when the specified process ID has scene focus */
- virtual EVROverlayError SetDashboardOverlaySceneProcess( VROverlayHandle_t ulOverlayHandle, uint32_t unProcessId ) = 0;
-
- /** Gets the process ID that this dashboard overlay requires to have scene focus */
- virtual EVROverlayError GetDashboardOverlaySceneProcess( VROverlayHandle_t ulOverlayHandle, uint32_t *punProcessId ) = 0;
-
- /** Shows the dashboard. */
- virtual void ShowDashboard( const char *pchOverlayToShow ) = 0;
-
- /** Returns the tracked device that has the laser pointer in the dashboard */
- virtual vr::TrackedDeviceIndex_t GetPrimaryDashboardDevice() = 0;
-
- // ---------------------------------------------
- // Keyboard methods
- // ---------------------------------------------
-
- /** Show the virtual keyboard to accept input **/
- virtual EVROverlayError ShowKeyboard( EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char *pchDescription, uint32_t unCharMax, const char *pchExistingText, bool bUseMinimalMode, uint64_t uUserValue ) = 0;
-
- virtual EVROverlayError ShowKeyboardForOverlay( VROverlayHandle_t ulOverlayHandle, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, const char *pchDescription, uint32_t unCharMax, const char *pchExistingText, bool bUseMinimalMode, uint64_t uUserValue ) = 0;
-
- /** Get the text that was entered into the text input **/
- virtual uint32_t GetKeyboardText( VR_OUT_STRING() char *pchText, uint32_t cchText ) = 0;
-
- /** Hide the virtual keyboard **/
- virtual void HideKeyboard() = 0;
-
- /** Set the position of the keyboard in world space **/
- virtual void SetKeyboardTransformAbsolute( ETrackingUniverseOrigin eTrackingOrigin, const HmdMatrix34_t *pmatTrackingOriginToKeyboardTransform ) = 0;
-
- /** Set the position of the keyboard in overlay space by telling it to avoid a rectangle in the overlay. Rectangle coords have (0,0) in the bottom left **/
- virtual void SetKeyboardPositionForOverlay( VROverlayHandle_t ulOverlayHandle, HmdRect2_t avoidRect ) = 0;
-
- // ---------------------------------------------
- // Overlay input methods
- // ---------------------------------------------
-
- /** Sets a list of primitives to be used for controller ray intersection
- * typically the size of the underlying UI in pixels (not in world space). */
- virtual EVROverlayError SetOverlayIntersectionMask( VROverlayHandle_t ulOverlayHandle, VROverlayIntersectionMaskPrimitive_t *pMaskPrimitives, uint32_t unNumMaskPrimitives, uint32_t unPrimitiveSize = sizeof( VROverlayIntersectionMaskPrimitive_t ) ) = 0;
-
- virtual EVROverlayError GetOverlayFlags( VROverlayHandle_t ulOverlayHandle, uint32_t *pFlags ) = 0;
-
- // ---------------------------------------------
- // Message box methods
- // ---------------------------------------------
-
- /** Show the message overlay. This will block and return you a result. **/
- virtual VRMessageOverlayResponse ShowMessageOverlay( const char* pchText, const char* pchCaption, const char* pchButton0Text, const char* pchButton1Text = nullptr, const char* pchButton2Text = nullptr, const char* pchButton3Text = nullptr ) = 0;
-
- /** If the calling process owns the overlay and it's open, this will close it. **/
- virtual void CloseMessageOverlay() = 0;
- };
-
- static const char * const IVROverlay_Version = "IVROverlay_016";
-
-} // namespace vr
-
-// ivrrendermodels.h
-namespace vr
-{
-
-static const char * const k_pch_Controller_Component_GDC2015 = "gdc2015"; // Canonical coordinate system of the gdc 2015 wired controller, provided for backwards compatibility
-static const char * const k_pch_Controller_Component_Base = "base"; // For controllers with an unambiguous 'base'.
-static const char * const k_pch_Controller_Component_Tip = "tip"; // For controllers with an unambiguous 'tip' (used for 'laser-pointing')
-static const char * const k_pch_Controller_Component_HandGrip = "handgrip"; // Neutral, ambidextrous hand-pose when holding controller. On plane between neutrally posed index finger and thumb
-static const char * const k_pch_Controller_Component_Status = "status"; // 1:1 aspect ratio status area, with canonical [0,1] uv mapping
-
-#pragma pack( push, 8 )
-
-/** Errors that can occur with the VR compositor */
-enum EVRRenderModelError
-{
- VRRenderModelError_None = 0,
- VRRenderModelError_Loading = 100,
- VRRenderModelError_NotSupported = 200,
- VRRenderModelError_InvalidArg = 300,
- VRRenderModelError_InvalidModel = 301,
- VRRenderModelError_NoShapes = 302,
- VRRenderModelError_MultipleShapes = 303,
- VRRenderModelError_TooManyVertices = 304,
- VRRenderModelError_MultipleTextures = 305,
- VRRenderModelError_BufferTooSmall = 306,
- VRRenderModelError_NotEnoughNormals = 307,
- VRRenderModelError_NotEnoughTexCoords = 308,
-
- VRRenderModelError_InvalidTexture = 400,
-};
-
-typedef uint32_t VRComponentProperties;
-
-enum EVRComponentProperty
-{
- VRComponentProperty_IsStatic = (1 << 0),
- VRComponentProperty_IsVisible = (1 << 1),
- VRComponentProperty_IsTouched = (1 << 2),
- VRComponentProperty_IsPressed = (1 << 3),
- VRComponentProperty_IsScrolled = (1 << 4),
-};
-
-/** Describes state information about a render-model component, including transforms and other dynamic properties */
-struct RenderModel_ComponentState_t
-{
- HmdMatrix34_t mTrackingToComponentRenderModel; // Transform required when drawing the component render model
- HmdMatrix34_t mTrackingToComponentLocal; // Transform available for attaching to a local component coordinate system (-Z out from surface )
- VRComponentProperties uProperties;
-};
-
-/** A single vertex in a render model */
-struct RenderModel_Vertex_t
-{
- HmdVector3_t vPosition; // position in meters in device space
- HmdVector3_t vNormal;
- float rfTextureCoord[2];
-};
-
-/** A texture map for use on a render model */
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-struct RenderModel_TextureMap_t
-{
- uint16_t unWidth, unHeight; // width and height of the texture map in pixels
- const uint8_t *rubTextureMapData; // Map texture data. All textures are RGBA with 8 bits per channel per pixel. Data size is width * height * 4ub
-};
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-/** Session unique texture identifier. Rendermodels which share the same texture will have the same id.
-IDs <0 denote the texture is not present */
-
-typedef int32_t TextureID_t;
-
-const TextureID_t INVALID_TEXTURE_ID = -1;
-
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-struct RenderModel_t
-{
- const RenderModel_Vertex_t *rVertexData; // Vertex data for the mesh
- uint32_t unVertexCount; // Number of vertices in the vertex data
- const uint16_t *rIndexData; // Indices into the vertex data for each triangle
- uint32_t unTriangleCount; // Number of triangles in the mesh. Index count is 3 * TriangleCount
- TextureID_t diffuseTextureId; // Session unique texture identifier. Rendermodels which share the same texture will have the same id. <0 == texture not present
-};
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-
-struct RenderModel_ControllerMode_State_t
-{
- bool bScrollWheelVisible; // is this controller currently set to be in a scroll wheel mode
-};
-
-#pragma pack( pop )
-
-class IVRRenderModels
-{
-public:
-
- /** Loads and returns a render model for use in the application. pchRenderModelName should be a render model name
- * from the Prop_RenderModelName_String property or an absolute path name to a render model on disk.
- *
- * The resulting render model is valid until VR_Shutdown() is called or until FreeRenderModel() is called. When the
- * application is finished with the render model it should call FreeRenderModel() to free the memory associated
- * with the model.
- *
- * The method returns VRRenderModelError_Loading while the render model is still being loaded.
- * The method returns VRRenderModelError_None once loaded successfully, otherwise will return an error. */
- virtual EVRRenderModelError LoadRenderModel_Async( const char *pchRenderModelName, RenderModel_t **ppRenderModel ) = 0;
-
- /** Frees a previously returned render model
- * It is safe to call this on a null ptr. */
- virtual void FreeRenderModel( RenderModel_t *pRenderModel ) = 0;
-
- /** Loads and returns a texture for use in the application. */
- virtual EVRRenderModelError LoadTexture_Async( TextureID_t textureId, RenderModel_TextureMap_t **ppTexture ) = 0;
-
- /** Frees a previously returned texture
- * It is safe to call this on a null ptr. */
- virtual void FreeTexture( RenderModel_TextureMap_t *pTexture ) = 0;
-
- /** Creates a D3D11 texture and loads data into it. */
- virtual EVRRenderModelError LoadTextureD3D11_Async( TextureID_t textureId, void *pD3D11Device, void **ppD3D11Texture2D ) = 0;
-
- /** Helper function to copy the bits into an existing texture. */
- virtual EVRRenderModelError LoadIntoTextureD3D11_Async( TextureID_t textureId, void *pDstTexture ) = 0;
-
- /** Use this to free textures created with LoadTextureD3D11_Async instead of calling Release on them. */
- virtual void FreeTextureD3D11( void *pD3D11Texture2D ) = 0;
-
- /** Use this to get the names of available render models. Index does not correlate to a tracked device index, but
- * is only used for iterating over all available render models. If the index is out of range, this function will return 0.
- * Otherwise, it will return the size of the buffer required for the name. */
- virtual uint32_t GetRenderModelName( uint32_t unRenderModelIndex, VR_OUT_STRING() char *pchRenderModelName, uint32_t unRenderModelNameLen ) = 0;
-
- /** Returns the number of available render models. */
- virtual uint32_t GetRenderModelCount() = 0;
-
-
- /** Returns the number of components of the specified render model.
- * Components are useful when client application wish to draw, label, or otherwise interact with components of tracked objects.
- * Examples controller components:
- * renderable things such as triggers, buttons
- * non-renderable things which include coordinate systems such as 'tip', 'base', a neutral controller agnostic hand-pose
- * If all controller components are enumerated and rendered, it will be equivalent to drawing the traditional render model
- * Returns 0 if components not supported, >0 otherwise */
- virtual uint32_t GetComponentCount( const char *pchRenderModelName ) = 0;
-
- /** Use this to get the names of available components. Index does not correlate to a tracked device index, but
- * is only used for iterating over all available components. If the index is out of range, this function will return 0.
- * Otherwise, it will return the size of the buffer required for the name. */
- virtual uint32_t GetComponentName( const char *pchRenderModelName, uint32_t unComponentIndex, VR_OUT_STRING( ) char *pchComponentName, uint32_t unComponentNameLen ) = 0;
-
- /** Get the button mask for all buttons associated with this component
- * If no buttons (or axes) are associated with this component, return 0
- * Note: multiple components may be associated with the same button. Ex: two grip buttons on a single controller.
- * Note: A single component may be associated with multiple buttons. Ex: A trackpad which also provides "D-pad" functionality */
- virtual uint64_t GetComponentButtonMask( const char *pchRenderModelName, const char *pchComponentName ) = 0;
-
- /** Use this to get the render model name for the specified rendermode/component combination, to be passed to LoadRenderModel.
- * If the component name is out of range, this function will return 0.
- * Otherwise, it will return the size of the buffer required for the name. */
- virtual uint32_t GetComponentRenderModelName( const char *pchRenderModelName, const char *pchComponentName, VR_OUT_STRING( ) char *pchComponentRenderModelName, uint32_t unComponentRenderModelNameLen ) = 0;
-
- /** Use this to query information about the component, as a function of the controller state.
- *
- * For dynamic controller components (ex: trigger) values will reflect component motions
- * For static components this will return a consistent value independent of the VRControllerState_t
- *
- * If the pchRenderModelName or pchComponentName is invalid, this will return false (and transforms will be set to identity).
- * Otherwise, return true
- * Note: For dynamic objects, visibility may be dynamic. (I.e., true/false will be returned based on controller state and controller mode state ) */
- virtual bool GetComponentState( const char *pchRenderModelName, const char *pchComponentName, const vr::VRControllerState_t *pControllerState, const RenderModel_ControllerMode_State_t *pState, RenderModel_ComponentState_t *pComponentState ) = 0;
-
- /** Returns true if the render model has a component with the specified name */
- virtual bool RenderModelHasComponent( const char *pchRenderModelName, const char *pchComponentName ) = 0;
-
- /** Returns the URL of the thumbnail image for this rendermodel */
- virtual uint32_t GetRenderModelThumbnailURL( const char *pchRenderModelName, VR_OUT_STRING() char *pchThumbnailURL, uint32_t unThumbnailURLLen, vr::EVRRenderModelError *peError ) = 0;
-
- /** Provides a render model path that will load the unskinned model if the model name provided has been replace by the user. If the model
- * hasn't been replaced the path value will still be a valid path to load the model. Pass this to LoadRenderModel_Async, etc. to load the
- * model. */
- virtual uint32_t GetRenderModelOriginalPath( const char *pchRenderModelName, VR_OUT_STRING() char *pchOriginalPath, uint32_t unOriginalPathLen, vr::EVRRenderModelError *peError ) = 0;
-
- /** Returns a string for a render model error */
- virtual const char *GetRenderModelErrorNameFromEnum( vr::EVRRenderModelError error ) = 0;
-};
-
-static const char * const IVRRenderModels_Version = "IVRRenderModels_005";
-
-}
-
-
-// ivrextendeddisplay.h
-namespace vr
-{
-
- /** NOTE: Use of this interface is not recommended in production applications. It will not work for displays which use
- * direct-to-display mode. Creating our own window is also incompatible with the VR compositor and is not available when the compositor is running. */
- class IVRExtendedDisplay
- {
- public:
-
- /** Size and position that the window needs to be on the VR display. */
- virtual void GetWindowBounds( int32_t *pnX, int32_t *pnY, uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** Gets the viewport in the frame buffer to draw the output of the distortion into */
- virtual void GetEyeOutputViewport( EVREye eEye, uint32_t *pnX, uint32_t *pnY, uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** [D3D10/11 Only]
- * Returns the adapter index and output index that the user should pass into EnumAdapters and EnumOutputs
- * to create the device and swap chain in DX10 and DX11. If an error occurs both indices will be set to -1.
- */
- virtual void GetDXGIOutputInfo( int32_t *pnAdapterIndex, int32_t *pnAdapterOutputIndex ) = 0;
-
- };
-
- static const char * const IVRExtendedDisplay_Version = "IVRExtendedDisplay_001";
-
-}
-
-
-// ivrtrackedcamera.h
-namespace vr
-{
-
-class IVRTrackedCamera
-{
-public:
- /** Returns a string for an error */
- virtual const char *GetCameraErrorNameFromEnum( vr::EVRTrackedCameraError eCameraError ) = 0;
-
- /** For convenience, same as tracked property request Prop_HasCamera_Bool */
- virtual vr::EVRTrackedCameraError HasCamera( vr::TrackedDeviceIndex_t nDeviceIndex, bool *pHasCamera ) = 0;
-
- /** Gets size of the image frame. */
- virtual vr::EVRTrackedCameraError GetCameraFrameSize( vr::TrackedDeviceIndex_t nDeviceIndex, vr::EVRTrackedCameraFrameType eFrameType, uint32_t *pnWidth, uint32_t *pnHeight, uint32_t *pnFrameBufferSize ) = 0;
-
- virtual vr::EVRTrackedCameraError GetCameraIntrinsics( vr::TrackedDeviceIndex_t nDeviceIndex, vr::EVRTrackedCameraFrameType eFrameType, vr::HmdVector2_t *pFocalLength, vr::HmdVector2_t *pCenter ) = 0;
-
- virtual vr::EVRTrackedCameraError GetCameraProjection( vr::TrackedDeviceIndex_t nDeviceIndex, vr::EVRTrackedCameraFrameType eFrameType, float flZNear, float flZFar, vr::HmdMatrix44_t *pProjection ) = 0;
-
- /** Acquiring streaming service permits video streaming for the caller. Releasing hints the system that video services do not need to be maintained for this client.
- * If the camera has not already been activated, a one time spin up may incur some auto exposure as well as initial streaming frame delays.
- * The camera should be considered a global resource accessible for shared consumption but not exclusive to any caller.
- * The camera may go inactive due to lack of active consumers or headset idleness. */
- virtual vr::EVRTrackedCameraError AcquireVideoStreamingService( vr::TrackedDeviceIndex_t nDeviceIndex, vr::TrackedCameraHandle_t *pHandle ) = 0;
- virtual vr::EVRTrackedCameraError ReleaseVideoStreamingService( vr::TrackedCameraHandle_t hTrackedCamera ) = 0;
-
- /** Copies the image frame into a caller's provided buffer. The image data is currently provided as RGBA data, 4 bytes per pixel.
- * A caller can provide null for the framebuffer or frameheader if not desired. Requesting the frame header first, followed by the frame buffer allows
- * the caller to determine if the frame as advanced per the frame header sequence.
- * If there is no frame available yet, due to initial camera spinup or re-activation, the error will be VRTrackedCameraError_NoFrameAvailable.
- * Ideally a caller should be polling at ~16ms intervals */
- virtual vr::EVRTrackedCameraError GetVideoStreamFrameBuffer( vr::TrackedCameraHandle_t hTrackedCamera, vr::EVRTrackedCameraFrameType eFrameType, void *pFrameBuffer, uint32_t nFrameBufferSize, vr::CameraVideoStreamFrameHeader_t *pFrameHeader, uint32_t nFrameHeaderSize ) = 0;
-
- /** Gets size of the image frame. */
- virtual vr::EVRTrackedCameraError GetVideoStreamTextureSize( vr::TrackedDeviceIndex_t nDeviceIndex, vr::EVRTrackedCameraFrameType eFrameType, vr::VRTextureBounds_t *pTextureBounds, uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** Access a shared D3D11 texture for the specified tracked camera stream.
- * The camera frame type VRTrackedCameraFrameType_Undistorted is not supported directly as a shared texture. It is an interior subregion of the shared texture VRTrackedCameraFrameType_MaximumUndistorted.
- * Instead, use GetVideoStreamTextureSize() with VRTrackedCameraFrameType_Undistorted to determine the proper interior subregion bounds along with GetVideoStreamTextureD3D11() with
- * VRTrackedCameraFrameType_MaximumUndistorted to provide the texture. The VRTrackedCameraFrameType_MaximumUndistorted will yield an image where the invalid regions are decoded
- * by the alpha channel having a zero component. The valid regions all have a non-zero alpha component. The subregion as described by VRTrackedCameraFrameType_Undistorted
- * guarantees a rectangle where all pixels are valid. */
- virtual vr::EVRTrackedCameraError GetVideoStreamTextureD3D11( vr::TrackedCameraHandle_t hTrackedCamera, vr::EVRTrackedCameraFrameType eFrameType, void *pD3D11DeviceOrResource, void **ppD3D11ShaderResourceView, vr::CameraVideoStreamFrameHeader_t *pFrameHeader, uint32_t nFrameHeaderSize ) = 0;
-
- /** Access a shared GL texture for the specified tracked camera stream */
- virtual vr::EVRTrackedCameraError GetVideoStreamTextureGL( vr::TrackedCameraHandle_t hTrackedCamera, vr::EVRTrackedCameraFrameType eFrameType, vr::glUInt_t *pglTextureId, vr::CameraVideoStreamFrameHeader_t *pFrameHeader, uint32_t nFrameHeaderSize ) = 0;
- virtual vr::EVRTrackedCameraError ReleaseVideoStreamTextureGL( vr::TrackedCameraHandle_t hTrackedCamera, vr::glUInt_t glTextureId ) = 0;
-};
-
-static const char * const IVRTrackedCamera_Version = "IVRTrackedCamera_003";
-
-} // namespace vr
-
-
-// ivrscreenshots.h
-namespace vr
-{
-
-/** Errors that can occur with the VR compositor */
-enum EVRScreenshotError
-{
- VRScreenshotError_None = 0,
- VRScreenshotError_RequestFailed = 1,
- VRScreenshotError_IncompatibleVersion = 100,
- VRScreenshotError_NotFound = 101,
- VRScreenshotError_BufferTooSmall = 102,
- VRScreenshotError_ScreenshotAlreadyInProgress = 108,
-};
-
-/** Allows the application to generate screenshots */
-class IVRScreenshots
-{
-public:
- /** Request a screenshot of the requested type.
- * A request of the VRScreenshotType_Stereo type will always
- * work. Other types will depend on the underlying application
- * support.
- * The first file name is for the preview image and should be a
- * regular screenshot (ideally from the left eye). The second
- * is the VR screenshot in the correct format. They should be
- * in the same aspect ratio. Formats per type:
- * VRScreenshotType_Mono: the VR filename is ignored (can be
- * nullptr), this is a normal flat single shot.
- * VRScreenshotType_Stereo: The VR image should be a
- * side-by-side with the left eye image on the left.
- * VRScreenshotType_Cubemap: The VR image should be six square
- * images composited horizontally.
- * VRScreenshotType_StereoPanorama: above/below with left eye
- * panorama being the above image. Image is typically square
- * with the panorama being 2x horizontal.
- *
- * Note that the VR dashboard will call this function when
- * the user presses the screenshot binding (currently System
- * Button + Trigger). If Steam is running, the destination
- * file names will be in %TEMP% and will be copied into
- * Steam's screenshot library for the running application
- * once SubmitScreenshot() is called.
- * If Steam is not running, the paths will be in the user's
- * documents folder under Documents\SteamVR\Screenshots.
- * Other VR applications can call this to initiate a
- * screenshot outside of user control.
- * The destination file names do not need an extension,
- * will be replaced with the correct one for the format
- * which is currently .png. */
- virtual vr::EVRScreenshotError RequestScreenshot( vr::ScreenshotHandle_t *pOutScreenshotHandle, vr::EVRScreenshotType type, const char *pchPreviewFilename, const char *pchVRFilename ) = 0;
-
- /** Called by the running VR application to indicate that it
- * wishes to be in charge of screenshots. If the
- * application does not call this, the Compositor will only
- * support VRScreenshotType_Stereo screenshots that will be
- * captured without notification to the running app.
- * Once hooked your application will receive a
- * VREvent_RequestScreenshot event when the user presses the
- * buttons to take a screenshot. */
- virtual vr::EVRScreenshotError HookScreenshot( VR_ARRAY_COUNT( numTypes ) const vr::EVRScreenshotType *pSupportedTypes, int numTypes ) = 0;
-
- /** When your application receives a
- * VREvent_RequestScreenshot event, call these functions to get
- * the details of the screenshot request. */
- virtual vr::EVRScreenshotType GetScreenshotPropertyType( vr::ScreenshotHandle_t screenshotHandle, vr::EVRScreenshotError *pError ) = 0;
-
- /** Get the filename for the preview or vr image (see
- * vr::EScreenshotPropertyFilenames). The return value is
- * the size of the string. */
- virtual uint32_t GetScreenshotPropertyFilename( vr::ScreenshotHandle_t screenshotHandle, vr::EVRScreenshotPropertyFilenames filenameType, VR_OUT_STRING() char *pchFilename, uint32_t cchFilename, vr::EVRScreenshotError *pError ) = 0;
-
- /** Call this if the application is taking the screen shot
- * will take more than a few ms processing. This will result
- * in an overlay being presented that shows a completion
- * bar. */
- virtual vr::EVRScreenshotError UpdateScreenshotProgress( vr::ScreenshotHandle_t screenshotHandle, float flProgress ) = 0;
-
- /** Tells the compositor to take an internal screenshot of
- * type VRScreenshotType_Stereo. It will take the current
- * submitted scene textures of the running application and
- * write them into the preview image and a side-by-side file
- * for the VR image.
- * This is similar to request screenshot, but doesn't ever
- * talk to the application, just takes the shot and submits. */
- virtual vr::EVRScreenshotError TakeStereoScreenshot( vr::ScreenshotHandle_t *pOutScreenshotHandle, const char *pchPreviewFilename, const char *pchVRFilename ) = 0;
-
- /** Submit the completed screenshot. If Steam is running
- * this will call into the Steam client and upload the
- * screenshot to the screenshots section of the library for
- * the running application. If Steam is not running, this
- * function will display a notification to the user that the
- * screenshot was taken. The paths should be full paths with
- * extensions.
- * File paths should be absolute including extensions.
- * screenshotHandle can be k_unScreenshotHandleInvalid if this
- * was a new shot taking by the app to be saved and not
- * initiated by a user (achievement earned or something) */
- virtual vr::EVRScreenshotError SubmitScreenshot( vr::ScreenshotHandle_t screenshotHandle, vr::EVRScreenshotType type, const char *pchSourcePreviewFilename, const char *pchSourceVRFilename ) = 0;
-};
-
-static const char * const IVRScreenshots_Version = "IVRScreenshots_001";
-
-} // namespace vr
-
-
-
-// ivrresources.h
-namespace vr
-{
-
-class IVRResources
-{
-public:
-
- // ------------------------------------
- // Shared Resource Methods
- // ------------------------------------
-
- /** Loads the specified resource into the provided buffer if large enough.
- * Returns the size in bytes of the buffer required to hold the specified resource. */
- virtual uint32_t LoadSharedResource( const char *pchResourceName, char *pchBuffer, uint32_t unBufferLen ) = 0;
-
- /** Provides the full path to the specified resource. Resource names can include named directories for
- * drivers and other things, and this resolves all of those and returns the actual physical path.
- * pchResourceTypeDirectory is the subdirectory of resources to look in. */
- virtual uint32_t GetResourceFullPath( const char *pchResourceName, const char *pchResourceTypeDirectory, char *pchPathBuffer, uint32_t unBufferLen ) = 0;
-};
-
-static const char * const IVRResources_Version = "IVRResources_001";
-
-
-}
-// ivrdrivermanager.h
-namespace vr
-{
-
-class IVRDriverManager
-{
-public:
- virtual uint32_t GetDriverCount() const = 0;
-
- /** Returns the length of the number of bytes necessary to hold this string including the trailing null. */
- virtual uint32_t GetDriverName( vr::DriverId_t nDriver, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize ) = 0;
-};
-
-static const char * const IVRDriverManager_Version = "IVRDriverManager_001";
-
-} // namespace vr
-
-
-// End
-
-#endif // _OPENVR_API
-
-
-namespace vr
-{
- /** Finds the active installation of the VR API and initializes it. The provided path must be absolute
- * or relative to the current working directory. These are the local install versions of the equivalent
- * functions in steamvr.h and will work without a local Steam install.
- *
- * This path is to the "root" of the VR API install. That's the directory with
- * the "drivers" directory and a platform (i.e. "win32") directory in it, not the directory with the DLL itself.
- *
- * pStartupInfo is reserved for future use.
- */
- inline IVRSystem *VR_Init( EVRInitError *peError, EVRApplicationType eApplicationType, const char *pStartupInfo = nullptr );
-
- /** unloads vrclient.dll. Any interface pointers from the interface are
- * invalid after this point */
- inline void VR_Shutdown();
-
- /** Returns true if there is an HMD attached. This check is as lightweight as possible and
- * can be called outside of VR_Init/VR_Shutdown. It should be used when an application wants
- * to know if initializing VR is a possibility but isn't ready to take that step yet.
- */
- VR_INTERFACE bool VR_CALLTYPE VR_IsHmdPresent();
-
- /** Returns true if the OpenVR runtime is installed. */
- VR_INTERFACE bool VR_CALLTYPE VR_IsRuntimeInstalled();
-
- /** Returns where the OpenVR runtime is installed. */
- VR_INTERFACE const char *VR_CALLTYPE VR_RuntimePath();
-
- /** Returns the name of the enum value for an EVRInitError. This function may be called outside of VR_Init()/VR_Shutdown(). */
- VR_INTERFACE const char *VR_CALLTYPE VR_GetVRInitErrorAsSymbol( EVRInitError error );
-
- /** Returns an English string for an EVRInitError. Applications should call VR_GetVRInitErrorAsSymbol instead and
- * use that as a key to look up their own localized error message. This function may be called outside of VR_Init()/VR_Shutdown(). */
- VR_INTERFACE const char *VR_CALLTYPE VR_GetVRInitErrorAsEnglishDescription( EVRInitError error );
-
- /** Returns the interface of the specified version. This method must be called after VR_Init. The
- * pointer returned is valid until VR_Shutdown is called.
- */
- VR_INTERFACE void *VR_CALLTYPE VR_GetGenericInterface( const char *pchInterfaceVersion, EVRInitError *peError );
-
- /** Returns whether the interface of the specified version exists.
- */
- VR_INTERFACE bool VR_CALLTYPE VR_IsInterfaceVersionValid( const char *pchInterfaceVersion );
-
- /** Returns a token that represents whether the VR interface handles need to be reloaded */
- VR_INTERFACE uint32_t VR_CALLTYPE VR_GetInitToken();
-
- // These typedefs allow old enum names from SDK 0.9.11 to be used in applications.
- // They will go away in the future.
- typedef EVRInitError HmdError;
- typedef EVREye Hmd_Eye;
- typedef EColorSpace ColorSpace;
- typedef ETrackingResult HmdTrackingResult;
- typedef ETrackedDeviceClass TrackedDeviceClass;
- typedef ETrackingUniverseOrigin TrackingUniverseOrigin;
- typedef ETrackedDeviceProperty TrackedDeviceProperty;
- typedef ETrackedPropertyError TrackedPropertyError;
- typedef EVRSubmitFlags VRSubmitFlags_t;
- typedef EVRState VRState_t;
- typedef ECollisionBoundsStyle CollisionBoundsStyle_t;
- typedef EVROverlayError VROverlayError;
- typedef EVRFirmwareError VRFirmwareError;
- typedef EVRCompositorError VRCompositorError;
- typedef EVRScreenshotError VRScreenshotsError;
-
- inline uint32_t &VRToken()
- {
- static uint32_t token;
- return token;
- }
-
- class COpenVRContext
- {
- public:
- COpenVRContext() { Clear(); }
- void Clear();
-
- inline void CheckClear()
- {
- if ( VRToken() != VR_GetInitToken() )
- {
- Clear();
- VRToken() = VR_GetInitToken();
- }
- }
-
- IVRSystem *VRSystem()
- {
- CheckClear();
- if ( m_pVRSystem == nullptr )
- {
- EVRInitError eError;
- m_pVRSystem = ( IVRSystem * )VR_GetGenericInterface( IVRSystem_Version, &eError );
- }
- return m_pVRSystem;
- }
- IVRChaperone *VRChaperone()
- {
- CheckClear();
- if ( m_pVRChaperone == nullptr )
- {
- EVRInitError eError;
- m_pVRChaperone = ( IVRChaperone * )VR_GetGenericInterface( IVRChaperone_Version, &eError );
- }
- return m_pVRChaperone;
- }
-
- IVRChaperoneSetup *VRChaperoneSetup()
- {
- CheckClear();
- if ( m_pVRChaperoneSetup == nullptr )
- {
- EVRInitError eError;
- m_pVRChaperoneSetup = ( IVRChaperoneSetup * )VR_GetGenericInterface( IVRChaperoneSetup_Version, &eError );
- }
- return m_pVRChaperoneSetup;
- }
-
- IVRCompositor *VRCompositor()
- {
- CheckClear();
- if ( m_pVRCompositor == nullptr )
- {
- EVRInitError eError;
- m_pVRCompositor = ( IVRCompositor * )VR_GetGenericInterface( IVRCompositor_Version, &eError );
- }
- return m_pVRCompositor;
- }
-
- IVROverlay *VROverlay()
- {
- CheckClear();
- if ( m_pVROverlay == nullptr )
- {
- EVRInitError eError;
- m_pVROverlay = ( IVROverlay * )VR_GetGenericInterface( IVROverlay_Version, &eError );
- }
- return m_pVROverlay;
- }
-
- IVRResources *VRResources()
- {
- CheckClear();
- if ( m_pVRResources == nullptr )
- {
- EVRInitError eError;
- m_pVRResources = (IVRResources *)VR_GetGenericInterface( IVRResources_Version, &eError );
- }
- return m_pVRResources;
- }
-
- IVRScreenshots *VRScreenshots()
- {
- CheckClear();
- if ( m_pVRScreenshots == nullptr )
- {
- EVRInitError eError;
- m_pVRScreenshots = ( IVRScreenshots * )VR_GetGenericInterface( IVRScreenshots_Version, &eError );
- }
- return m_pVRScreenshots;
- }
-
- IVRRenderModels *VRRenderModels()
- {
- CheckClear();
- if ( m_pVRRenderModels == nullptr )
- {
- EVRInitError eError;
- m_pVRRenderModels = ( IVRRenderModels * )VR_GetGenericInterface( IVRRenderModels_Version, &eError );
- }
- return m_pVRRenderModels;
- }
-
- IVRExtendedDisplay *VRExtendedDisplay()
- {
- CheckClear();
- if ( m_pVRExtendedDisplay == nullptr )
- {
- EVRInitError eError;
- m_pVRExtendedDisplay = ( IVRExtendedDisplay * )VR_GetGenericInterface( IVRExtendedDisplay_Version, &eError );
- }
- return m_pVRExtendedDisplay;
- }
-
- IVRSettings *VRSettings()
- {
- CheckClear();
- if ( m_pVRSettings == nullptr )
- {
- EVRInitError eError;
- m_pVRSettings = ( IVRSettings * )VR_GetGenericInterface( IVRSettings_Version, &eError );
- }
- return m_pVRSettings;
- }
-
- IVRApplications *VRApplications()
- {
- CheckClear();
- if ( m_pVRApplications == nullptr )
- {
- EVRInitError eError;
- m_pVRApplications = ( IVRApplications * )VR_GetGenericInterface( IVRApplications_Version, &eError );
- }
- return m_pVRApplications;
- }
-
- IVRTrackedCamera *VRTrackedCamera()
- {
- CheckClear();
- if ( m_pVRTrackedCamera == nullptr )
- {
- EVRInitError eError;
- m_pVRTrackedCamera = ( IVRTrackedCamera * )VR_GetGenericInterface( IVRTrackedCamera_Version, &eError );
- }
- return m_pVRTrackedCamera;
- }
-
- IVRDriverManager *VRDriverManager()
- {
- CheckClear();
- if ( !m_pVRDriverManager )
- {
- EVRInitError eError;
- m_pVRDriverManager = ( IVRDriverManager * )VR_GetGenericInterface( IVRDriverManager_Version, &eError );
- }
- return m_pVRDriverManager;
- }
-
- private:
- IVRSystem *m_pVRSystem;
- IVRChaperone *m_pVRChaperone;
- IVRChaperoneSetup *m_pVRChaperoneSetup;
- IVRCompositor *m_pVRCompositor;
- IVROverlay *m_pVROverlay;
- IVRResources *m_pVRResources;
- IVRRenderModels *m_pVRRenderModels;
- IVRExtendedDisplay *m_pVRExtendedDisplay;
- IVRSettings *m_pVRSettings;
- IVRApplications *m_pVRApplications;
- IVRTrackedCamera *m_pVRTrackedCamera;
- IVRScreenshots *m_pVRScreenshots;
- IVRDriverManager *m_pVRDriverManager;
- };
-
- inline COpenVRContext &OpenVRInternal_ModuleContext()
- {
- static void *ctx[ sizeof( COpenVRContext ) / sizeof( void * ) ];
- return *( COpenVRContext * )ctx; // bypass zero-init constructor
- }
-
- inline IVRSystem *VR_CALLTYPE VRSystem() { return OpenVRInternal_ModuleContext().VRSystem(); }
- inline IVRChaperone *VR_CALLTYPE VRChaperone() { return OpenVRInternal_ModuleContext().VRChaperone(); }
- inline IVRChaperoneSetup *VR_CALLTYPE VRChaperoneSetup() { return OpenVRInternal_ModuleContext().VRChaperoneSetup(); }
- inline IVRCompositor *VR_CALLTYPE VRCompositor() { return OpenVRInternal_ModuleContext().VRCompositor(); }
- inline IVROverlay *VR_CALLTYPE VROverlay() { return OpenVRInternal_ModuleContext().VROverlay(); }
- inline IVRScreenshots *VR_CALLTYPE VRScreenshots() { return OpenVRInternal_ModuleContext().VRScreenshots(); }
- inline IVRRenderModels *VR_CALLTYPE VRRenderModels() { return OpenVRInternal_ModuleContext().VRRenderModels(); }
- inline IVRApplications *VR_CALLTYPE VRApplications() { return OpenVRInternal_ModuleContext().VRApplications(); }
- inline IVRSettings *VR_CALLTYPE VRSettings() { return OpenVRInternal_ModuleContext().VRSettings(); }
- inline IVRResources *VR_CALLTYPE VRResources() { return OpenVRInternal_ModuleContext().VRResources(); }
- inline IVRExtendedDisplay *VR_CALLTYPE VRExtendedDisplay() { return OpenVRInternal_ModuleContext().VRExtendedDisplay(); }
- inline IVRTrackedCamera *VR_CALLTYPE VRTrackedCamera() { return OpenVRInternal_ModuleContext().VRTrackedCamera(); }
- inline IVRDriverManager *VR_CALLTYPE VRDriverManager() { return OpenVRInternal_ModuleContext().VRDriverManager(); }
-
- inline void COpenVRContext::Clear()
- {
- m_pVRSystem = nullptr;
- m_pVRChaperone = nullptr;
- m_pVRChaperoneSetup = nullptr;
- m_pVRCompositor = nullptr;
- m_pVROverlay = nullptr;
- m_pVRRenderModels = nullptr;
- m_pVRExtendedDisplay = nullptr;
- m_pVRSettings = nullptr;
- m_pVRApplications = nullptr;
- m_pVRTrackedCamera = nullptr;
- m_pVRResources = nullptr;
- m_pVRScreenshots = nullptr;
- m_pVRDriverManager = nullptr;
- }
-
- VR_INTERFACE uint32_t VR_CALLTYPE VR_InitInternal2( EVRInitError *peError, EVRApplicationType eApplicationType, const char *pStartupInfo );
- VR_INTERFACE void VR_CALLTYPE VR_ShutdownInternal();
-
- /** Finds the active installation of vrclient.dll and initializes it */
- inline IVRSystem *VR_Init( EVRInitError *peError, EVRApplicationType eApplicationType, const char *pStartupInfo )
- {
- IVRSystem *pVRSystem = nullptr;
-
- EVRInitError eError;
- VRToken() = VR_InitInternal2( &eError, eApplicationType, pStartupInfo );
- COpenVRContext &ctx = OpenVRInternal_ModuleContext();
- ctx.Clear();
-
- if ( eError == VRInitError_None )
- {
- if ( VR_IsInterfaceVersionValid( IVRSystem_Version ) )
- {
- pVRSystem = VRSystem();
- }
- else
- {
- VR_ShutdownInternal();
- eError = VRInitError_Init_InterfaceNotFound;
- }
- }
-
- if ( peError )
- *peError = eError;
- return pVRSystem;
- }
-
- /** unloads vrclient.dll. Any interface pointers from the interface are
- * invalid after this point */
- inline void VR_Shutdown()
- {
- VR_ShutdownInternal();
- }
-}
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.cs b/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.cs
deleted file mode 100644
index 393a917..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.cs
+++ /dev/null
@@ -1,5052 +0,0 @@
-//======= Copyright (c) Valve Corporation, All rights reserved. ===============
-//
-// Purpose: This file contains C#/managed code bindings for the OpenVR interfaces
-// This file is auto-generated, do not edit it.
-//
-//=============================================================================
-
-using System;
-using System.Runtime.InteropServices;
-using Valve.VR;
-
-namespace Valve.VR
-{
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRSystem
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetRecommendedRenderTargetSize(ref uint pnWidth, ref uint pnHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRecommendedRenderTargetSize GetRecommendedRenderTargetSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdMatrix44_t _GetProjectionMatrix(EVREye eEye, float fNearZ, float fFarZ);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetProjectionMatrix GetProjectionMatrix;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetProjectionRaw(EVREye eEye, ref float pfLeft, ref float pfRight, ref float pfTop, ref float pfBottom);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetProjectionRaw GetProjectionRaw;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ComputeDistortion(EVREye eEye, float fU, float fV, ref DistortionCoordinates_t pDistortionCoordinates);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ComputeDistortion ComputeDistortion;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdMatrix34_t _GetEyeToHeadTransform(EVREye eEye);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetEyeToHeadTransform GetEyeToHeadTransform;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetTimeSinceLastVsync(ref float pfSecondsSinceLastVsync, ref ulong pulFrameCounter);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTimeSinceLastVsync GetTimeSinceLastVsync;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate int _GetD3D9AdapterIndex();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetD3D9AdapterIndex GetD3D9AdapterIndex;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetDXGIOutputInfo(ref int pnAdapterIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDXGIOutputInfo GetDXGIOutputInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetOutputDevice(ref ulong pnDevice, ETextureType textureType, IntPtr pInstance);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOutputDevice GetOutputDevice;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsDisplayOnDesktop();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsDisplayOnDesktop IsDisplayOnDesktop;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _SetDisplayVisibility(bool bIsVisibleOnDesktop);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetDisplayVisibility SetDisplayVisibility;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetDeviceToAbsoluteTrackingPose(ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, [In, Out] TrackedDevicePose_t[] pTrackedDevicePoseArray, uint unTrackedDevicePoseArrayCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDeviceToAbsoluteTrackingPose GetDeviceToAbsoluteTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ResetSeatedZeroPose();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ResetSeatedZeroPose ResetSeatedZeroPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdMatrix34_t _GetSeatedZeroPoseToStandingAbsoluteTrackingPose();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetSeatedZeroPoseToStandingAbsoluteTrackingPose GetSeatedZeroPoseToStandingAbsoluteTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdMatrix34_t _GetRawZeroPoseToStandingAbsoluteTrackingPose();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRawZeroPoseToStandingAbsoluteTrackingPose GetRawZeroPoseToStandingAbsoluteTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetSortedTrackedDeviceIndicesOfClass(ETrackedDeviceClass eTrackedDeviceClass, [In, Out] uint[] punTrackedDeviceIndexArray, uint unTrackedDeviceIndexArrayCount, uint unRelativeToTrackedDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetSortedTrackedDeviceIndicesOfClass GetSortedTrackedDeviceIndicesOfClass;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EDeviceActivityLevel _GetTrackedDeviceActivityLevel(uint unDeviceId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTrackedDeviceActivityLevel GetTrackedDeviceActivityLevel;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ApplyTransform(ref TrackedDevicePose_t pOutputPose, ref TrackedDevicePose_t pTrackedDevicePose, ref HmdMatrix34_t pTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ApplyTransform ApplyTransform;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetTrackedDeviceIndexForControllerRole(ETrackedControllerRole unDeviceType);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTrackedDeviceIndexForControllerRole GetTrackedDeviceIndexForControllerRole;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ETrackedControllerRole _GetControllerRoleForTrackedDeviceIndex(uint unDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetControllerRoleForTrackedDeviceIndex GetControllerRoleForTrackedDeviceIndex;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ETrackedDeviceClass _GetTrackedDeviceClass(uint unDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTrackedDeviceClass GetTrackedDeviceClass;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsTrackedDeviceConnected(uint unDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsTrackedDeviceConnected IsTrackedDeviceConnected;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetBoolTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetBoolTrackedDeviceProperty GetBoolTrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate float _GetFloatTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetFloatTrackedDeviceProperty GetFloatTrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate int _GetInt32TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetInt32TrackedDeviceProperty GetInt32TrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ulong _GetUint64TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetUint64TrackedDeviceProperty GetUint64TrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdMatrix34_t _GetMatrix34TrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetMatrix34TrackedDeviceProperty GetMatrix34TrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetStringTrackedDeviceProperty(uint unDeviceIndex, ETrackedDeviceProperty prop, System.Text.StringBuilder pchValue, uint unBufferSize, ref ETrackedPropertyError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetStringTrackedDeviceProperty GetStringTrackedDeviceProperty;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetPropErrorNameFromEnum(ETrackedPropertyError error);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetPropErrorNameFromEnum GetPropErrorNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _PollNextEvent(ref VREvent_t pEvent, uint uncbVREvent);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PollNextEvent PollNextEvent;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _PollNextEventWithPose(ETrackingUniverseOrigin eOrigin, ref VREvent_t pEvent, uint uncbVREvent, ref TrackedDevicePose_t pTrackedDevicePose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PollNextEventWithPose PollNextEventWithPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetEventTypeNameFromEnum(EVREventType eType);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetEventTypeNameFromEnum GetEventTypeNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HiddenAreaMesh_t _GetHiddenAreaMesh(EVREye eEye, EHiddenAreaMeshType type);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetHiddenAreaMesh GetHiddenAreaMesh;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetControllerState(uint unControllerDeviceIndex, ref VRControllerState_t pControllerState, uint unControllerStateSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetControllerState GetControllerState;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetControllerStateWithPose(ETrackingUniverseOrigin eOrigin, uint unControllerDeviceIndex, ref VRControllerState_t pControllerState, uint unControllerStateSize, ref TrackedDevicePose_t pTrackedDevicePose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetControllerStateWithPose GetControllerStateWithPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _TriggerHapticPulse(uint unControllerDeviceIndex, uint unAxisId, char usDurationMicroSec);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _TriggerHapticPulse TriggerHapticPulse;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetButtonIdNameFromEnum(EVRButtonId eButtonId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetButtonIdNameFromEnum GetButtonIdNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetControllerAxisTypeNameFromEnum(EVRControllerAxisType eAxisType);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetControllerAxisTypeNameFromEnum GetControllerAxisTypeNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _CaptureInputFocus();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CaptureInputFocus CaptureInputFocus;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ReleaseInputFocus();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseInputFocus ReleaseInputFocus;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsInputFocusCapturedByAnotherProcess();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsInputFocusCapturedByAnotherProcess IsInputFocusCapturedByAnotherProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _DriverDebugRequest(uint unDeviceIndex, string pchRequest, string pchResponseBuffer, uint unResponseBufferSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _DriverDebugRequest DriverDebugRequest;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRFirmwareError _PerformFirmwareUpdate(uint unDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PerformFirmwareUpdate PerformFirmwareUpdate;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _AcknowledgeQuit_Exiting();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _AcknowledgeQuit_Exiting AcknowledgeQuit_Exiting;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _AcknowledgeQuit_UserPrompt();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _AcknowledgeQuit_UserPrompt AcknowledgeQuit_UserPrompt;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRExtendedDisplay
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetWindowBounds(ref int pnX, ref int pnY, ref uint pnWidth, ref uint pnHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWindowBounds GetWindowBounds;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetEyeOutputViewport(EVREye eEye, ref uint pnX, ref uint pnY, ref uint pnWidth, ref uint pnHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetEyeOutputViewport GetEyeOutputViewport;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetDXGIOutputInfo(ref int pnAdapterIndex, ref int pnAdapterOutputIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDXGIOutputInfo GetDXGIOutputInfo;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRTrackedCamera
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetCameraErrorNameFromEnum(EVRTrackedCameraError eCameraError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCameraErrorNameFromEnum GetCameraErrorNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _HasCamera(uint nDeviceIndex, ref bool pHasCamera);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HasCamera HasCamera;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetCameraFrameSize(uint nDeviceIndex, EVRTrackedCameraFrameType eFrameType, ref uint pnWidth, ref uint pnHeight, ref uint pnFrameBufferSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCameraFrameSize GetCameraFrameSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetCameraIntrinsics(uint nDeviceIndex, EVRTrackedCameraFrameType eFrameType, ref HmdVector2_t pFocalLength, ref HmdVector2_t pCenter);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCameraIntrinsics GetCameraIntrinsics;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetCameraProjection(uint nDeviceIndex, EVRTrackedCameraFrameType eFrameType, float flZNear, float flZFar, ref HmdMatrix44_t pProjection);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCameraProjection GetCameraProjection;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _AcquireVideoStreamingService(uint nDeviceIndex, ref ulong pHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _AcquireVideoStreamingService AcquireVideoStreamingService;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _ReleaseVideoStreamingService(ulong hTrackedCamera);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseVideoStreamingService ReleaseVideoStreamingService;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetVideoStreamFrameBuffer(ulong hTrackedCamera, EVRTrackedCameraFrameType eFrameType, IntPtr pFrameBuffer, uint nFrameBufferSize, ref CameraVideoStreamFrameHeader_t pFrameHeader, uint nFrameHeaderSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVideoStreamFrameBuffer GetVideoStreamFrameBuffer;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetVideoStreamTextureSize(uint nDeviceIndex, EVRTrackedCameraFrameType eFrameType, ref VRTextureBounds_t pTextureBounds, ref uint pnWidth, ref uint pnHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVideoStreamTextureSize GetVideoStreamTextureSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetVideoStreamTextureD3D11(ulong hTrackedCamera, EVRTrackedCameraFrameType eFrameType, IntPtr pD3D11DeviceOrResource, ref IntPtr ppD3D11ShaderResourceView, ref CameraVideoStreamFrameHeader_t pFrameHeader, uint nFrameHeaderSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVideoStreamTextureD3D11 GetVideoStreamTextureD3D11;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _GetVideoStreamTextureGL(ulong hTrackedCamera, EVRTrackedCameraFrameType eFrameType, ref uint pglTextureId, ref CameraVideoStreamFrameHeader_t pFrameHeader, uint nFrameHeaderSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVideoStreamTextureGL GetVideoStreamTextureGL;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRTrackedCameraError _ReleaseVideoStreamTextureGL(ulong hTrackedCamera, uint glTextureId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseVideoStreamTextureGL ReleaseVideoStreamTextureGL;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRApplications
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _AddApplicationManifest(string pchApplicationManifestFullPath, bool bTemporary);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _AddApplicationManifest AddApplicationManifest;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _RemoveApplicationManifest(string pchApplicationManifestFullPath);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RemoveApplicationManifest RemoveApplicationManifest;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsApplicationInstalled(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsApplicationInstalled IsApplicationInstalled;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetApplicationCount();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationCount GetApplicationCount;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _GetApplicationKeyByIndex(uint unApplicationIndex, System.Text.StringBuilder pchAppKeyBuffer, uint unAppKeyBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationKeyByIndex GetApplicationKeyByIndex;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _GetApplicationKeyByProcessId(uint unProcessId, string pchAppKeyBuffer, uint unAppKeyBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationKeyByProcessId GetApplicationKeyByProcessId;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _LaunchApplication(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LaunchApplication LaunchApplication;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _LaunchTemplateApplication(string pchTemplateAppKey, string pchNewAppKey, [In, Out] AppOverrideKeys_t[] pKeys, uint unKeys);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LaunchTemplateApplication LaunchTemplateApplication;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _LaunchApplicationFromMimeType(string pchMimeType, string pchArgs);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LaunchApplicationFromMimeType LaunchApplicationFromMimeType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _LaunchDashboardOverlay(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LaunchDashboardOverlay LaunchDashboardOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _CancelApplicationLaunch(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CancelApplicationLaunch CancelApplicationLaunch;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _IdentifyApplication(uint unProcessId, string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IdentifyApplication IdentifyApplication;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetApplicationProcessId(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationProcessId GetApplicationProcessId;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetApplicationsErrorNameFromEnum(EVRApplicationError error);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationsErrorNameFromEnum GetApplicationsErrorNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetApplicationPropertyString(string pchAppKey, EVRApplicationProperty eProperty, System.Text.StringBuilder pchPropertyValueBuffer, uint unPropertyValueBufferLen, ref EVRApplicationError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationPropertyString GetApplicationPropertyString;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetApplicationPropertyBool(string pchAppKey, EVRApplicationProperty eProperty, ref EVRApplicationError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationPropertyBool GetApplicationPropertyBool;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ulong _GetApplicationPropertyUint64(string pchAppKey, EVRApplicationProperty eProperty, ref EVRApplicationError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationPropertyUint64 GetApplicationPropertyUint64;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _SetApplicationAutoLaunch(string pchAppKey, bool bAutoLaunch);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetApplicationAutoLaunch SetApplicationAutoLaunch;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetApplicationAutoLaunch(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationAutoLaunch GetApplicationAutoLaunch;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _SetDefaultApplicationForMimeType(string pchAppKey, string pchMimeType);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetDefaultApplicationForMimeType SetDefaultApplicationForMimeType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetDefaultApplicationForMimeType(string pchMimeType, string pchAppKeyBuffer, uint unAppKeyBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDefaultApplicationForMimeType GetDefaultApplicationForMimeType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetApplicationSupportedMimeTypes(string pchAppKey, string pchMimeTypesBuffer, uint unMimeTypesBuffer);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationSupportedMimeTypes GetApplicationSupportedMimeTypes;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetApplicationsThatSupportMimeType(string pchMimeType, string pchAppKeysThatSupportBuffer, uint unAppKeysThatSupportBuffer);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationsThatSupportMimeType GetApplicationsThatSupportMimeType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetApplicationLaunchArguments(uint unHandle, string pchArgs, uint unArgs);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationLaunchArguments GetApplicationLaunchArguments;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _GetStartingApplication(string pchAppKeyBuffer, uint unAppKeyBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetStartingApplication GetStartingApplication;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationTransitionState _GetTransitionState();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTransitionState GetTransitionState;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _PerformApplicationPrelaunchCheck(string pchAppKey);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PerformApplicationPrelaunchCheck PerformApplicationPrelaunchCheck;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetApplicationsTransitionStateNameFromEnum(EVRApplicationTransitionState state);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetApplicationsTransitionStateNameFromEnum GetApplicationsTransitionStateNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsQuitUserPromptRequested();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsQuitUserPromptRequested IsQuitUserPromptRequested;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRApplicationError _LaunchInternalProcess(string pchBinaryPath, string pchArguments, string pchWorkingDirectory);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LaunchInternalProcess LaunchInternalProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetCurrentSceneProcessId();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCurrentSceneProcessId GetCurrentSceneProcessId;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRChaperone
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ChaperoneCalibrationState _GetCalibrationState();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCalibrationState GetCalibrationState;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetPlayAreaSize(ref float pSizeX, ref float pSizeZ);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetPlayAreaSize GetPlayAreaSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetPlayAreaRect(ref HmdQuad_t rect);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetPlayAreaRect GetPlayAreaRect;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ReloadInfo();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReloadInfo ReloadInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetSceneColor(HmdColor_t color);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetSceneColor SetSceneColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetBoundsColor(ref HmdColor_t pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, ref HmdColor_t pOutputCameraColor);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetBoundsColor GetBoundsColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _AreBoundsVisible();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _AreBoundsVisible AreBoundsVisible;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ForceBoundsVisible(bool bForce);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ForceBoundsVisible ForceBoundsVisible;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRChaperoneSetup
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _CommitWorkingCopy(EChaperoneConfigFile configFile);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CommitWorkingCopy CommitWorkingCopy;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _RevertWorkingCopy();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RevertWorkingCopy RevertWorkingCopy;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetWorkingPlayAreaSize(ref float pSizeX, ref float pSizeZ);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWorkingPlayAreaSize GetWorkingPlayAreaSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetWorkingPlayAreaRect(ref HmdQuad_t rect);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWorkingPlayAreaRect GetWorkingPlayAreaRect;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetWorkingCollisionBoundsInfo([In, Out] HmdQuad_t[] pQuadsBuffer, ref uint punQuadsCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWorkingCollisionBoundsInfo GetWorkingCollisionBoundsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetLiveCollisionBoundsInfo([In, Out] HmdQuad_t[] pQuadsBuffer, ref uint punQuadsCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLiveCollisionBoundsInfo GetLiveCollisionBoundsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetWorkingSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWorkingSeatedZeroPoseToRawTrackingPose GetWorkingSeatedZeroPoseToRawTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetWorkingStandingZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatStandingZeroPoseToRawTrackingPose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetWorkingStandingZeroPoseToRawTrackingPose GetWorkingStandingZeroPoseToRawTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetWorkingPlayAreaSize(float sizeX, float sizeZ);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingPlayAreaSize SetWorkingPlayAreaSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetWorkingCollisionBoundsInfo([In, Out] HmdQuad_t[] pQuadsBuffer, uint unQuadsCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingCollisionBoundsInfo SetWorkingCollisionBoundsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetWorkingSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pMatSeatedZeroPoseToRawTrackingPose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingSeatedZeroPoseToRawTrackingPose SetWorkingSeatedZeroPoseToRawTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetWorkingStandingZeroPoseToRawTrackingPose(ref HmdMatrix34_t pMatStandingZeroPoseToRawTrackingPose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingStandingZeroPoseToRawTrackingPose SetWorkingStandingZeroPoseToRawTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ReloadFromDisk(EChaperoneConfigFile configFile);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReloadFromDisk ReloadFromDisk;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetLiveSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLiveSeatedZeroPoseToRawTrackingPose GetLiveSeatedZeroPoseToRawTrackingPose;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetWorkingCollisionBoundsTagsInfo([In, Out] byte[] pTagsBuffer, uint unTagCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingCollisionBoundsTagsInfo SetWorkingCollisionBoundsTagsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetLiveCollisionBoundsTagsInfo([In, Out] byte[] pTagsBuffer, ref uint punTagCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLiveCollisionBoundsTagsInfo GetLiveCollisionBoundsTagsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _SetWorkingPhysicalBoundsInfo([In, Out] HmdQuad_t[] pQuadsBuffer, uint unQuadsCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetWorkingPhysicalBoundsInfo SetWorkingPhysicalBoundsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetLivePhysicalBoundsInfo([In, Out] HmdQuad_t[] pQuadsBuffer, ref uint punQuadsCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLivePhysicalBoundsInfo GetLivePhysicalBoundsInfo;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ExportLiveToBuffer(System.Text.StringBuilder pBuffer, ref uint pnBufferLength);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ExportLiveToBuffer ExportLiveToBuffer;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ImportFromBufferToWorking(string pBuffer, uint nImportFlags);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ImportFromBufferToWorking ImportFromBufferToWorking;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRCompositor
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetTrackingSpace(ETrackingUniverseOrigin eOrigin);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetTrackingSpace SetTrackingSpace;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ETrackingUniverseOrigin _GetTrackingSpace();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTrackingSpace GetTrackingSpace;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _WaitGetPoses([In, Out] TrackedDevicePose_t[] pRenderPoseArray, uint unRenderPoseArrayCount, [In, Out] TrackedDevicePose_t[] pGamePoseArray, uint unGamePoseArrayCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _WaitGetPoses WaitGetPoses;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _GetLastPoses([In, Out] TrackedDevicePose_t[] pRenderPoseArray, uint unRenderPoseArrayCount, [In, Out] TrackedDevicePose_t[] pGamePoseArray, uint unGamePoseArrayCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLastPoses GetLastPoses;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _GetLastPoseForTrackedDeviceIndex(uint unDeviceIndex, ref TrackedDevicePose_t pOutputPose, ref TrackedDevicePose_t pOutputGamePose);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLastPoseForTrackedDeviceIndex GetLastPoseForTrackedDeviceIndex;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _Submit(EVREye eEye, ref Texture_t pTexture, ref VRTextureBounds_t pBounds, EVRSubmitFlags nSubmitFlags);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _Submit Submit;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ClearLastSubmittedFrame();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ClearLastSubmittedFrame ClearLastSubmittedFrame;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _PostPresentHandoff();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PostPresentHandoff PostPresentHandoff;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetFrameTiming(ref Compositor_FrameTiming pTiming, uint unFramesAgo);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetFrameTiming GetFrameTiming;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetFrameTimings(ref Compositor_FrameTiming pTiming, uint nFrames);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetFrameTimings GetFrameTimings;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate float _GetFrameTimeRemaining();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetFrameTimeRemaining GetFrameTimeRemaining;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetCumulativeStats(ref Compositor_CumulativeStats pStats, uint nStatsSizeInBytes);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCumulativeStats GetCumulativeStats;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _FadeToColor(float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, bool bBackground);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FadeToColor FadeToColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate HmdColor_t _GetCurrentFadeColor(bool bBackground);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCurrentFadeColor GetCurrentFadeColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _FadeGrid(float fSeconds, bool bFadeIn);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FadeGrid FadeGrid;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate float _GetCurrentGridAlpha();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCurrentGridAlpha GetCurrentGridAlpha;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _SetSkyboxOverride([In, Out] Texture_t[] pTextures, uint unTextureCount);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetSkyboxOverride SetSkyboxOverride;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ClearSkyboxOverride();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ClearSkyboxOverride ClearSkyboxOverride;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _CompositorBringToFront();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CompositorBringToFront CompositorBringToFront;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _CompositorGoToBack();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CompositorGoToBack CompositorGoToBack;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _CompositorQuit();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CompositorQuit CompositorQuit;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsFullscreen();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsFullscreen IsFullscreen;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetCurrentSceneFocusProcess();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetCurrentSceneFocusProcess GetCurrentSceneFocusProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetLastFrameRenderer();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetLastFrameRenderer GetLastFrameRenderer;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _CanRenderScene();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CanRenderScene CanRenderScene;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ShowMirrorWindow();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowMirrorWindow ShowMirrorWindow;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _HideMirrorWindow();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HideMirrorWindow HideMirrorWindow;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsMirrorWindowVisible();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsMirrorWindowVisible IsMirrorWindowVisible;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _CompositorDumpImages();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CompositorDumpImages CompositorDumpImages;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ShouldAppRenderWithLowResources();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShouldAppRenderWithLowResources ShouldAppRenderWithLowResources;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ForceInterleavedReprojectionOn(bool bOverride);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ForceInterleavedReprojectionOn ForceInterleavedReprojectionOn;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ForceReconnectProcess();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ForceReconnectProcess ForceReconnectProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SuspendRendering(bool bSuspend);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SuspendRendering SuspendRendering;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _GetMirrorTextureD3D11(EVREye eEye, IntPtr pD3D11DeviceOrResource, ref IntPtr ppD3D11ShaderResourceView);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetMirrorTextureD3D11 GetMirrorTextureD3D11;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ReleaseMirrorTextureD3D11(IntPtr pD3D11ShaderResourceView);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseMirrorTextureD3D11 ReleaseMirrorTextureD3D11;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _GetMirrorTextureGL(EVREye eEye, ref uint pglTextureId, IntPtr pglSharedTextureHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetMirrorTextureGL GetMirrorTextureGL;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ReleaseSharedGLTexture(uint glTextureId, IntPtr glSharedTextureHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseSharedGLTexture ReleaseSharedGLTexture;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _LockGLSharedTextureForAccess(IntPtr glSharedTextureHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LockGLSharedTextureForAccess LockGLSharedTextureForAccess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _UnlockGLSharedTextureForAccess(IntPtr glSharedTextureHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _UnlockGLSharedTextureForAccess UnlockGLSharedTextureForAccess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetVulkanInstanceExtensionsRequired(System.Text.StringBuilder pchValue, uint unBufferSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVulkanInstanceExtensionsRequired GetVulkanInstanceExtensionsRequired;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetVulkanDeviceExtensionsRequired(IntPtr pPhysicalDevice, System.Text.StringBuilder pchValue, uint unBufferSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetVulkanDeviceExtensionsRequired GetVulkanDeviceExtensionsRequired;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetExplicitTimingMode(bool bExplicitTimingMode);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetExplicitTimingMode SetExplicitTimingMode;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRCompositorError _SubmitExplicitTimingData();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SubmitExplicitTimingData SubmitExplicitTimingData;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVROverlay
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _FindOverlay(string pchOverlayKey, ref ulong pOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FindOverlay FindOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _CreateOverlay(string pchOverlayKey, string pchOverlayName, ref ulong pOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CreateOverlay CreateOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _DestroyOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _DestroyOverlay DestroyOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetHighQualityOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetHighQualityOverlay SetHighQualityOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ulong _GetHighQualityOverlay();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetHighQualityOverlay GetHighQualityOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetOverlayKey(ulong ulOverlayHandle, System.Text.StringBuilder pchValue, uint unBufferSize, ref EVROverlayError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayKey GetOverlayKey;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetOverlayName(ulong ulOverlayHandle, System.Text.StringBuilder pchValue, uint unBufferSize, ref EVROverlayError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayName GetOverlayName;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayName(ulong ulOverlayHandle, string pchName);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayName SetOverlayName;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayImageData(ulong ulOverlayHandle, IntPtr pvBuffer, uint unBufferSize, ref uint punWidth, ref uint punHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayImageData GetOverlayImageData;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetOverlayErrorNameFromEnum(EVROverlayError error);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayErrorNameFromEnum GetOverlayErrorNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayRenderingPid(ulong ulOverlayHandle, uint unPID);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayRenderingPid SetOverlayRenderingPid;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetOverlayRenderingPid(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayRenderingPid GetOverlayRenderingPid;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayFlag(ulong ulOverlayHandle, VROverlayFlags eOverlayFlag, bool bEnabled);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayFlag SetOverlayFlag;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayFlag(ulong ulOverlayHandle, VROverlayFlags eOverlayFlag, ref bool pbEnabled);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayFlag GetOverlayFlag;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayColor(ulong ulOverlayHandle, float fRed, float fGreen, float fBlue);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayColor SetOverlayColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayColor(ulong ulOverlayHandle, ref float pfRed, ref float pfGreen, ref float pfBlue);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayColor GetOverlayColor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayAlpha(ulong ulOverlayHandle, float fAlpha);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayAlpha SetOverlayAlpha;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayAlpha(ulong ulOverlayHandle, ref float pfAlpha);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayAlpha GetOverlayAlpha;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTexelAspect(ulong ulOverlayHandle, float fTexelAspect);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTexelAspect SetOverlayTexelAspect;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTexelAspect(ulong ulOverlayHandle, ref float pfTexelAspect);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTexelAspect GetOverlayTexelAspect;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlaySortOrder(ulong ulOverlayHandle, uint unSortOrder);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlaySortOrder SetOverlaySortOrder;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlaySortOrder(ulong ulOverlayHandle, ref uint punSortOrder);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlaySortOrder GetOverlaySortOrder;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayWidthInMeters(ulong ulOverlayHandle, float fWidthInMeters);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayWidthInMeters SetOverlayWidthInMeters;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayWidthInMeters(ulong ulOverlayHandle, ref float pfWidthInMeters);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayWidthInMeters GetOverlayWidthInMeters;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayAutoCurveDistanceRangeInMeters(ulong ulOverlayHandle, float fMinDistanceInMeters, float fMaxDistanceInMeters);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayAutoCurveDistanceRangeInMeters SetOverlayAutoCurveDistanceRangeInMeters;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayAutoCurveDistanceRangeInMeters(ulong ulOverlayHandle, ref float pfMinDistanceInMeters, ref float pfMaxDistanceInMeters);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayAutoCurveDistanceRangeInMeters GetOverlayAutoCurveDistanceRangeInMeters;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTextureColorSpace(ulong ulOverlayHandle, EColorSpace eTextureColorSpace);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTextureColorSpace SetOverlayTextureColorSpace;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTextureColorSpace(ulong ulOverlayHandle, ref EColorSpace peTextureColorSpace);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTextureColorSpace GetOverlayTextureColorSpace;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTextureBounds(ulong ulOverlayHandle, ref VRTextureBounds_t pOverlayTextureBounds);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTextureBounds SetOverlayTextureBounds;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTextureBounds(ulong ulOverlayHandle, ref VRTextureBounds_t pOverlayTextureBounds);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTextureBounds GetOverlayTextureBounds;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetOverlayRenderModel(ulong ulOverlayHandle, string pchValue, uint unBufferSize, ref HmdColor_t pColor, ref EVROverlayError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayRenderModel GetOverlayRenderModel;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayRenderModel(ulong ulOverlayHandle, string pchRenderModel, ref HmdColor_t pColor);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayRenderModel SetOverlayRenderModel;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTransformType(ulong ulOverlayHandle, ref VROverlayTransformType peTransformType);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTransformType GetOverlayTransformType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTransformAbsolute(ulong ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, ref HmdMatrix34_t pmatTrackingOriginToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTransformAbsolute SetOverlayTransformAbsolute;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTransformAbsolute(ulong ulOverlayHandle, ref ETrackingUniverseOrigin peTrackingOrigin, ref HmdMatrix34_t pmatTrackingOriginToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTransformAbsolute GetOverlayTransformAbsolute;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTransformTrackedDeviceRelative(ulong ulOverlayHandle, uint unTrackedDevice, ref HmdMatrix34_t pmatTrackedDeviceToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTransformTrackedDeviceRelative SetOverlayTransformTrackedDeviceRelative;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTransformTrackedDeviceRelative(ulong ulOverlayHandle, ref uint punTrackedDevice, ref HmdMatrix34_t pmatTrackedDeviceToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTransformTrackedDeviceRelative GetOverlayTransformTrackedDeviceRelative;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTransformTrackedDeviceComponent(ulong ulOverlayHandle, uint unDeviceIndex, string pchComponentName);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTransformTrackedDeviceComponent SetOverlayTransformTrackedDeviceComponent;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTransformTrackedDeviceComponent(ulong ulOverlayHandle, ref uint punDeviceIndex, string pchComponentName, uint unComponentNameSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTransformTrackedDeviceComponent GetOverlayTransformTrackedDeviceComponent;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTransformOverlayRelative(ulong ulOverlayHandle, ref ulong ulOverlayHandleParent, ref HmdMatrix34_t pmatParentOverlayToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTransformOverlayRelative GetOverlayTransformOverlayRelative;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTransformOverlayRelative(ulong ulOverlayHandle, ulong ulOverlayHandleParent, ref HmdMatrix34_t pmatParentOverlayToOverlayTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTransformOverlayRelative SetOverlayTransformOverlayRelative;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _ShowOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowOverlay ShowOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _HideOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HideOverlay HideOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsOverlayVisible(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsOverlayVisible IsOverlayVisible;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetTransformForOverlayCoordinates(ulong ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, HmdVector2_t coordinatesInOverlay, ref HmdMatrix34_t pmatTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetTransformForOverlayCoordinates GetTransformForOverlayCoordinates;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _PollNextOverlayEvent(ulong ulOverlayHandle, ref VREvent_t pEvent, uint uncbVREvent);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _PollNextOverlayEvent PollNextOverlayEvent;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayInputMethod(ulong ulOverlayHandle, ref VROverlayInputMethod peInputMethod);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayInputMethod GetOverlayInputMethod;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayInputMethod(ulong ulOverlayHandle, VROverlayInputMethod eInputMethod);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayInputMethod SetOverlayInputMethod;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayMouseScale(ulong ulOverlayHandle, ref HmdVector2_t pvecMouseScale);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayMouseScale GetOverlayMouseScale;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayMouseScale(ulong ulOverlayHandle, ref HmdVector2_t pvecMouseScale);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayMouseScale SetOverlayMouseScale;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _ComputeOverlayIntersection(ulong ulOverlayHandle, ref VROverlayIntersectionParams_t pParams, ref VROverlayIntersectionResults_t pResults);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ComputeOverlayIntersection ComputeOverlayIntersection;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _HandleControllerOverlayInteractionAsMouse(ulong ulOverlayHandle, uint unControllerDeviceIndex);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HandleControllerOverlayInteractionAsMouse HandleControllerOverlayInteractionAsMouse;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsHoverTargetOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsHoverTargetOverlay IsHoverTargetOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ulong _GetGamepadFocusOverlay();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetGamepadFocusOverlay GetGamepadFocusOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetGamepadFocusOverlay(ulong ulNewFocusOverlay);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetGamepadFocusOverlay SetGamepadFocusOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayNeighbor(EOverlayDirection eDirection, ulong ulFrom, ulong ulTo);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayNeighbor SetOverlayNeighbor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _MoveGamepadFocusToNeighbor(EOverlayDirection eDirection, ulong ulFrom);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _MoveGamepadFocusToNeighbor MoveGamepadFocusToNeighbor;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayTexture(ulong ulOverlayHandle, ref Texture_t pTexture);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayTexture SetOverlayTexture;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _ClearOverlayTexture(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ClearOverlayTexture ClearOverlayTexture;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayRaw(ulong ulOverlayHandle, IntPtr pvBuffer, uint unWidth, uint unHeight, uint unDepth);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayRaw SetOverlayRaw;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayFromFile(ulong ulOverlayHandle, string pchFilePath);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayFromFile SetOverlayFromFile;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTexture(ulong ulOverlayHandle, ref IntPtr pNativeTextureHandle, IntPtr pNativeTextureRef, ref uint pWidth, ref uint pHeight, ref uint pNativeFormat, ref ETextureType pAPIType, ref EColorSpace pColorSpace, ref VRTextureBounds_t pTextureBounds);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTexture GetOverlayTexture;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _ReleaseNativeOverlayHandle(ulong ulOverlayHandle, IntPtr pNativeTextureHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ReleaseNativeOverlayHandle ReleaseNativeOverlayHandle;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayTextureSize(ulong ulOverlayHandle, ref uint pWidth, ref uint pHeight);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayTextureSize GetOverlayTextureSize;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _CreateDashboardOverlay(string pchOverlayKey, string pchOverlayFriendlyName, ref ulong pMainHandle, ref ulong pThumbnailHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CreateDashboardOverlay CreateDashboardOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsDashboardVisible();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsDashboardVisible IsDashboardVisible;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _IsActiveDashboardOverlay(ulong ulOverlayHandle);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _IsActiveDashboardOverlay IsActiveDashboardOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetDashboardOverlaySceneProcess(ulong ulOverlayHandle, uint unProcessId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetDashboardOverlaySceneProcess SetDashboardOverlaySceneProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetDashboardOverlaySceneProcess(ulong ulOverlayHandle, ref uint punProcessId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDashboardOverlaySceneProcess GetDashboardOverlaySceneProcess;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _ShowDashboard(string pchOverlayToShow);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowDashboard ShowDashboard;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetPrimaryDashboardDevice();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetPrimaryDashboardDevice GetPrimaryDashboardDevice;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _ShowKeyboard(int eInputMode, int eLineInputMode, string pchDescription, uint unCharMax, string pchExistingText, bool bUseMinimalMode, ulong uUserValue);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowKeyboard ShowKeyboard;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _ShowKeyboardForOverlay(ulong ulOverlayHandle, int eInputMode, int eLineInputMode, string pchDescription, uint unCharMax, string pchExistingText, bool bUseMinimalMode, ulong uUserValue);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowKeyboardForOverlay ShowKeyboardForOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetKeyboardText(System.Text.StringBuilder pchText, uint cchText);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetKeyboardText GetKeyboardText;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _HideKeyboard();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HideKeyboard HideKeyboard;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetKeyboardTransformAbsolute(ETrackingUniverseOrigin eTrackingOrigin, ref HmdMatrix34_t pmatTrackingOriginToKeyboardTransform);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetKeyboardTransformAbsolute SetKeyboardTransformAbsolute;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetKeyboardPositionForOverlay(ulong ulOverlayHandle, HmdRect2_t avoidRect);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetKeyboardPositionForOverlay SetKeyboardPositionForOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _SetOverlayIntersectionMask(ulong ulOverlayHandle, ref VROverlayIntersectionMaskPrimitive_t pMaskPrimitives, uint unNumMaskPrimitives, uint unPrimitiveSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetOverlayIntersectionMask SetOverlayIntersectionMask;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVROverlayError _GetOverlayFlags(ulong ulOverlayHandle, ref uint pFlags);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetOverlayFlags GetOverlayFlags;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate VRMessageOverlayResponse _ShowMessageOverlay(string pchText, string pchCaption, string pchButton0Text, string pchButton1Text, string pchButton2Text, string pchButton3Text);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _ShowMessageOverlay ShowMessageOverlay;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _CloseMessageOverlay();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CloseMessageOverlay CloseMessageOverlay;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRRenderModels
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRRenderModelError _LoadRenderModel_Async(string pchRenderModelName, ref IntPtr ppRenderModel);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LoadRenderModel_Async LoadRenderModel_Async;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _FreeRenderModel(IntPtr pRenderModel);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FreeRenderModel FreeRenderModel;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRRenderModelError _LoadTexture_Async(int textureId, ref IntPtr ppTexture);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LoadTexture_Async LoadTexture_Async;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _FreeTexture(IntPtr pTexture);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FreeTexture FreeTexture;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRRenderModelError _LoadTextureD3D11_Async(int textureId, IntPtr pD3D11Device, ref IntPtr ppD3D11Texture2D);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LoadTextureD3D11_Async LoadTextureD3D11_Async;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRRenderModelError _LoadIntoTextureD3D11_Async(int textureId, IntPtr pDstTexture);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LoadIntoTextureD3D11_Async LoadIntoTextureD3D11_Async;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _FreeTextureD3D11(IntPtr pD3D11Texture2D);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _FreeTextureD3D11 FreeTextureD3D11;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetRenderModelName(uint unRenderModelIndex, System.Text.StringBuilder pchRenderModelName, uint unRenderModelNameLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRenderModelName GetRenderModelName;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetRenderModelCount();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRenderModelCount GetRenderModelCount;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetComponentCount(string pchRenderModelName);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetComponentCount GetComponentCount;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetComponentName(string pchRenderModelName, uint unComponentIndex, System.Text.StringBuilder pchComponentName, uint unComponentNameLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetComponentName GetComponentName;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate ulong _GetComponentButtonMask(string pchRenderModelName, string pchComponentName);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetComponentButtonMask GetComponentButtonMask;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetComponentRenderModelName(string pchRenderModelName, string pchComponentName, System.Text.StringBuilder pchComponentRenderModelName, uint unComponentRenderModelNameLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetComponentRenderModelName GetComponentRenderModelName;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetComponentState(string pchRenderModelName, string pchComponentName, ref VRControllerState_t pControllerState, ref RenderModel_ControllerMode_State_t pState, ref RenderModel_ComponentState_t pComponentState);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetComponentState GetComponentState;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _RenderModelHasComponent(string pchRenderModelName, string pchComponentName);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RenderModelHasComponent RenderModelHasComponent;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetRenderModelThumbnailURL(string pchRenderModelName, System.Text.StringBuilder pchThumbnailURL, uint unThumbnailURLLen, ref EVRRenderModelError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRenderModelThumbnailURL GetRenderModelThumbnailURL;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetRenderModelOriginalPath(string pchRenderModelName, System.Text.StringBuilder pchOriginalPath, uint unOriginalPathLen, ref EVRRenderModelError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRenderModelOriginalPath GetRenderModelOriginalPath;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetRenderModelErrorNameFromEnum(EVRRenderModelError error);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetRenderModelErrorNameFromEnum GetRenderModelErrorNameFromEnum;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRNotifications
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRNotificationError _CreateNotification(ulong ulOverlayHandle, ulong ulUserValue, EVRNotificationType type, string pchText, EVRNotificationStyle style, ref NotificationBitmap_t pImage, ref uint pNotificationId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _CreateNotification CreateNotification;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRNotificationError _RemoveNotification(uint notificationId);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RemoveNotification RemoveNotification;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRSettings
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate IntPtr _GetSettingsErrorNameFromEnum(EVRSettingsError eError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetSettingsErrorNameFromEnum GetSettingsErrorNameFromEnum;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _Sync(bool bForce, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _Sync Sync;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetBool(string pchSection, string pchSettingsKey, bool bValue, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetBool SetBool;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetInt32(string pchSection, string pchSettingsKey, int nValue, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetInt32 SetInt32;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetFloat(string pchSection, string pchSettingsKey, float flValue, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetFloat SetFloat;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _SetString(string pchSection, string pchSettingsKey, string pchValue, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SetString SetString;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetBool(string pchSection, string pchSettingsKey, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetBool GetBool;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate int _GetInt32(string pchSection, string pchSettingsKey, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetInt32 GetInt32;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate float _GetFloat(string pchSection, string pchSettingsKey, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetFloat GetFloat;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _GetString(string pchSection, string pchSettingsKey, System.Text.StringBuilder pchValue, uint unValueLen, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetString GetString;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _RemoveSection(string pchSection, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RemoveSection RemoveSection;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate void _RemoveKeyInSection(string pchSection, string pchSettingsKey, ref EVRSettingsError peError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RemoveKeyInSection RemoveKeyInSection;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRScreenshots
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotError _RequestScreenshot(ref uint pOutScreenshotHandle, EVRScreenshotType type, string pchPreviewFilename, string pchVRFilename);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _RequestScreenshot RequestScreenshot;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotError _HookScreenshot([In, Out] EVRScreenshotType[] pSupportedTypes, int numTypes);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _HookScreenshot HookScreenshot;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotType _GetScreenshotPropertyType(uint screenshotHandle, ref EVRScreenshotError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetScreenshotPropertyType GetScreenshotPropertyType;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetScreenshotPropertyFilename(uint screenshotHandle, EVRScreenshotPropertyFilenames filenameType, System.Text.StringBuilder pchFilename, uint cchFilename, ref EVRScreenshotError pError);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetScreenshotPropertyFilename GetScreenshotPropertyFilename;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotError _UpdateScreenshotProgress(uint screenshotHandle, float flProgress);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _UpdateScreenshotProgress UpdateScreenshotProgress;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotError _TakeStereoScreenshot(ref uint pOutScreenshotHandle, string pchPreviewFilename, string pchVRFilename);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _TakeStereoScreenshot TakeStereoScreenshot;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate EVRScreenshotError _SubmitScreenshot(uint screenshotHandle, EVRScreenshotType type, string pchSourcePreviewFilename, string pchSourceVRFilename);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _SubmitScreenshot SubmitScreenshot;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRResources
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _LoadSharedResource(string pchResourceName, string pchBuffer, uint unBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _LoadSharedResource LoadSharedResource;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetResourceFullPath(string pchResourceName, string pchResourceTypeDirectory, string pchPathBuffer, uint unBufferLen);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetResourceFullPath GetResourceFullPath;
-
-}
-
-[StructLayout(LayoutKind.Sequential)]
-public struct IVRDriverManager
-{
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetDriverCount();
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDriverCount GetDriverCount;
-
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate uint _GetDriverName(uint nDriver, System.Text.StringBuilder pchValue, uint unBufferSize);
- [MarshalAs(UnmanagedType.FunctionPtr)]
- internal _GetDriverName GetDriverName;
-
-}
-
-
-public class CVRSystem
-{
- IVRSystem FnTable;
- internal CVRSystem(IntPtr pInterface)
- {
- FnTable = (IVRSystem)Marshal.PtrToStructure(pInterface, typeof(IVRSystem));
- }
- public void GetRecommendedRenderTargetSize(ref uint pnWidth,ref uint pnHeight)
- {
- pnWidth = 0;
- pnHeight = 0;
- FnTable.GetRecommendedRenderTargetSize(ref pnWidth,ref pnHeight);
- }
- public HmdMatrix44_t GetProjectionMatrix(EVREye eEye,float fNearZ,float fFarZ)
- {
- HmdMatrix44_t result = FnTable.GetProjectionMatrix(eEye,fNearZ,fFarZ);
- return result;
- }
- public void GetProjectionRaw(EVREye eEye,ref float pfLeft,ref float pfRight,ref float pfTop,ref float pfBottom)
- {
- pfLeft = 0;
- pfRight = 0;
- pfTop = 0;
- pfBottom = 0;
- FnTable.GetProjectionRaw(eEye,ref pfLeft,ref pfRight,ref pfTop,ref pfBottom);
- }
- public bool ComputeDistortion(EVREye eEye,float fU,float fV,ref DistortionCoordinates_t pDistortionCoordinates)
- {
- bool result = FnTable.ComputeDistortion(eEye,fU,fV,ref pDistortionCoordinates);
- return result;
- }
- public HmdMatrix34_t GetEyeToHeadTransform(EVREye eEye)
- {
- HmdMatrix34_t result = FnTable.GetEyeToHeadTransform(eEye);
- return result;
- }
- public bool GetTimeSinceLastVsync(ref float pfSecondsSinceLastVsync,ref ulong pulFrameCounter)
- {
- pfSecondsSinceLastVsync = 0;
- pulFrameCounter = 0;
- bool result = FnTable.GetTimeSinceLastVsync(ref pfSecondsSinceLastVsync,ref pulFrameCounter);
- return result;
- }
- public int GetD3D9AdapterIndex()
- {
- int result = FnTable.GetD3D9AdapterIndex();
- return result;
- }
- public void GetDXGIOutputInfo(ref int pnAdapterIndex)
- {
- pnAdapterIndex = 0;
- FnTable.GetDXGIOutputInfo(ref pnAdapterIndex);
- }
- public void GetOutputDevice(ref ulong pnDevice,ETextureType textureType,IntPtr pInstance)
- {
- pnDevice = 0;
- FnTable.GetOutputDevice(ref pnDevice,textureType,pInstance);
- }
- public bool IsDisplayOnDesktop()
- {
- bool result = FnTable.IsDisplayOnDesktop();
- return result;
- }
- public bool SetDisplayVisibility(bool bIsVisibleOnDesktop)
- {
- bool result = FnTable.SetDisplayVisibility(bIsVisibleOnDesktop);
- return result;
- }
- public void GetDeviceToAbsoluteTrackingPose(ETrackingUniverseOrigin eOrigin,float fPredictedSecondsToPhotonsFromNow,TrackedDevicePose_t [] pTrackedDevicePoseArray)
- {
- FnTable.GetDeviceToAbsoluteTrackingPose(eOrigin,fPredictedSecondsToPhotonsFromNow,pTrackedDevicePoseArray,(uint) pTrackedDevicePoseArray.Length);
- }
- public void ResetSeatedZeroPose()
- {
- FnTable.ResetSeatedZeroPose();
- }
- public HmdMatrix34_t GetSeatedZeroPoseToStandingAbsoluteTrackingPose()
- {
- HmdMatrix34_t result = FnTable.GetSeatedZeroPoseToStandingAbsoluteTrackingPose();
- return result;
- }
- public HmdMatrix34_t GetRawZeroPoseToStandingAbsoluteTrackingPose()
- {
- HmdMatrix34_t result = FnTable.GetRawZeroPoseToStandingAbsoluteTrackingPose();
- return result;
- }
- public uint GetSortedTrackedDeviceIndicesOfClass(ETrackedDeviceClass eTrackedDeviceClass,uint [] punTrackedDeviceIndexArray,uint unRelativeToTrackedDeviceIndex)
- {
- uint result = FnTable.GetSortedTrackedDeviceIndicesOfClass(eTrackedDeviceClass,punTrackedDeviceIndexArray,(uint) punTrackedDeviceIndexArray.Length,unRelativeToTrackedDeviceIndex);
- return result;
- }
- public EDeviceActivityLevel GetTrackedDeviceActivityLevel(uint unDeviceId)
- {
- EDeviceActivityLevel result = FnTable.GetTrackedDeviceActivityLevel(unDeviceId);
- return result;
- }
- public void ApplyTransform(ref TrackedDevicePose_t pOutputPose,ref TrackedDevicePose_t pTrackedDevicePose,ref HmdMatrix34_t pTransform)
- {
- FnTable.ApplyTransform(ref pOutputPose,ref pTrackedDevicePose,ref pTransform);
- }
- public uint GetTrackedDeviceIndexForControllerRole(ETrackedControllerRole unDeviceType)
- {
- uint result = FnTable.GetTrackedDeviceIndexForControllerRole(unDeviceType);
- return result;
- }
- public ETrackedControllerRole GetControllerRoleForTrackedDeviceIndex(uint unDeviceIndex)
- {
- ETrackedControllerRole result = FnTable.GetControllerRoleForTrackedDeviceIndex(unDeviceIndex);
- return result;
- }
- public ETrackedDeviceClass GetTrackedDeviceClass(uint unDeviceIndex)
- {
- ETrackedDeviceClass result = FnTable.GetTrackedDeviceClass(unDeviceIndex);
- return result;
- }
- public bool IsTrackedDeviceConnected(uint unDeviceIndex)
- {
- bool result = FnTable.IsTrackedDeviceConnected(unDeviceIndex);
- return result;
- }
- public bool GetBoolTrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,ref ETrackedPropertyError pError)
- {
- bool result = FnTable.GetBoolTrackedDeviceProperty(unDeviceIndex,prop,ref pError);
- return result;
- }
- public float GetFloatTrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,ref ETrackedPropertyError pError)
- {
- float result = FnTable.GetFloatTrackedDeviceProperty(unDeviceIndex,prop,ref pError);
- return result;
- }
- public int GetInt32TrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,ref ETrackedPropertyError pError)
- {
- int result = FnTable.GetInt32TrackedDeviceProperty(unDeviceIndex,prop,ref pError);
- return result;
- }
- public ulong GetUint64TrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,ref ETrackedPropertyError pError)
- {
- ulong result = FnTable.GetUint64TrackedDeviceProperty(unDeviceIndex,prop,ref pError);
- return result;
- }
- public HmdMatrix34_t GetMatrix34TrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,ref ETrackedPropertyError pError)
- {
- HmdMatrix34_t result = FnTable.GetMatrix34TrackedDeviceProperty(unDeviceIndex,prop,ref pError);
- return result;
- }
- public uint GetStringTrackedDeviceProperty(uint unDeviceIndex,ETrackedDeviceProperty prop,System.Text.StringBuilder pchValue,uint unBufferSize,ref ETrackedPropertyError pError)
- {
- uint result = FnTable.GetStringTrackedDeviceProperty(unDeviceIndex,prop,pchValue,unBufferSize,ref pError);
- return result;
- }
- public string GetPropErrorNameFromEnum(ETrackedPropertyError error)
- {
- IntPtr result = FnTable.GetPropErrorNameFromEnum(error);
- return Marshal.PtrToStringAnsi(result);
- }
-// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
-// originally mis-compiled with the wrong packing for Linux and OSX.
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _PollNextEventPacked(ref VREvent_t_Packed pEvent,uint uncbVREvent);
- [StructLayout(LayoutKind.Explicit)]
- struct PollNextEventUnion
- {
- [FieldOffset(0)]
- public IVRSystem._PollNextEvent pPollNextEvent;
- [FieldOffset(0)]
- public _PollNextEventPacked pPollNextEventPacked;
- }
- public bool PollNextEvent(ref VREvent_t pEvent,uint uncbVREvent)
- {
-#if !UNITY_METRO
- if ((System.Environment.OSVersion.Platform == System.PlatformID.MacOSX) ||
- (System.Environment.OSVersion.Platform == System.PlatformID.Unix))
- {
- PollNextEventUnion u;
- VREvent_t_Packed event_packed = new VREvent_t_Packed();
- u.pPollNextEventPacked = null;
- u.pPollNextEvent = FnTable.PollNextEvent;
- bool packed_result = u.pPollNextEventPacked(ref event_packed,(uint)System.Runtime.InteropServices.Marshal.SizeOf(typeof(VREvent_t_Packed)));
-
- event_packed.Unpack(ref pEvent);
- return packed_result;
- }
-#endif
- bool result = FnTable.PollNextEvent(ref pEvent,uncbVREvent);
- return result;
- }
- public bool PollNextEventWithPose(ETrackingUniverseOrigin eOrigin,ref VREvent_t pEvent,uint uncbVREvent,ref TrackedDevicePose_t pTrackedDevicePose)
- {
- bool result = FnTable.PollNextEventWithPose(eOrigin,ref pEvent,uncbVREvent,ref pTrackedDevicePose);
- return result;
- }
- public string GetEventTypeNameFromEnum(EVREventType eType)
- {
- IntPtr result = FnTable.GetEventTypeNameFromEnum(eType);
- return Marshal.PtrToStringAnsi(result);
- }
- public HiddenAreaMesh_t GetHiddenAreaMesh(EVREye eEye,EHiddenAreaMeshType type)
- {
- HiddenAreaMesh_t result = FnTable.GetHiddenAreaMesh(eEye,type);
- return result;
- }
-// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
-// originally mis-compiled with the wrong packing for Linux and OSX.
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetControllerStatePacked(uint unControllerDeviceIndex,ref VRControllerState_t_Packed pControllerState,uint unControllerStateSize);
- [StructLayout(LayoutKind.Explicit)]
- struct GetControllerStateUnion
- {
- [FieldOffset(0)]
- public IVRSystem._GetControllerState pGetControllerState;
- [FieldOffset(0)]
- public _GetControllerStatePacked pGetControllerStatePacked;
- }
- public bool GetControllerState(uint unControllerDeviceIndex,ref VRControllerState_t pControllerState,uint unControllerStateSize)
- {
-#if !UNITY_METRO
- if ((System.Environment.OSVersion.Platform == System.PlatformID.MacOSX) ||
- (System.Environment.OSVersion.Platform == System.PlatformID.Unix))
- {
- GetControllerStateUnion u;
- VRControllerState_t_Packed state_packed = new VRControllerState_t_Packed(pControllerState);
- u.pGetControllerStatePacked = null;
- u.pGetControllerState = FnTable.GetControllerState;
- bool packed_result = u.pGetControllerStatePacked(unControllerDeviceIndex,ref state_packed,(uint)System.Runtime.InteropServices.Marshal.SizeOf(typeof(VRControllerState_t_Packed)));
-
- state_packed.Unpack(ref pControllerState);
- return packed_result;
- }
-#endif
- bool result = FnTable.GetControllerState(unControllerDeviceIndex,ref pControllerState,unControllerStateSize);
- return result;
- }
-// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
-// originally mis-compiled with the wrong packing for Linux and OSX.
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetControllerStateWithPosePacked(ETrackingUniverseOrigin eOrigin,uint unControllerDeviceIndex,ref VRControllerState_t_Packed pControllerState,uint unControllerStateSize,ref TrackedDevicePose_t pTrackedDevicePose);
- [StructLayout(LayoutKind.Explicit)]
- struct GetControllerStateWithPoseUnion
- {
- [FieldOffset(0)]
- public IVRSystem._GetControllerStateWithPose pGetControllerStateWithPose;
- [FieldOffset(0)]
- public _GetControllerStateWithPosePacked pGetControllerStateWithPosePacked;
- }
- public bool GetControllerStateWithPose(ETrackingUniverseOrigin eOrigin,uint unControllerDeviceIndex,ref VRControllerState_t pControllerState,uint unControllerStateSize,ref TrackedDevicePose_t pTrackedDevicePose)
- {
-#if !UNITY_METRO
- if ((System.Environment.OSVersion.Platform == System.PlatformID.MacOSX) ||
- (System.Environment.OSVersion.Platform == System.PlatformID.Unix))
- {
- GetControllerStateWithPoseUnion u;
- VRControllerState_t_Packed state_packed = new VRControllerState_t_Packed(pControllerState);
- u.pGetControllerStateWithPosePacked = null;
- u.pGetControllerStateWithPose = FnTable.GetControllerStateWithPose;
- bool packed_result = u.pGetControllerStateWithPosePacked(eOrigin,unControllerDeviceIndex,ref state_packed,(uint)System.Runtime.InteropServices.Marshal.SizeOf(typeof(VRControllerState_t_Packed)),ref pTrackedDevicePose);
-
- state_packed.Unpack(ref pControllerState);
- return packed_result;
- }
-#endif
- bool result = FnTable.GetControllerStateWithPose(eOrigin,unControllerDeviceIndex,ref pControllerState,unControllerStateSize,ref pTrackedDevicePose);
- return result;
- }
- public void TriggerHapticPulse(uint unControllerDeviceIndex,uint unAxisId,char usDurationMicroSec)
- {
- FnTable.TriggerHapticPulse(unControllerDeviceIndex,unAxisId,usDurationMicroSec);
- }
- public string GetButtonIdNameFromEnum(EVRButtonId eButtonId)
- {
- IntPtr result = FnTable.GetButtonIdNameFromEnum(eButtonId);
- return Marshal.PtrToStringAnsi(result);
- }
- public string GetControllerAxisTypeNameFromEnum(EVRControllerAxisType eAxisType)
- {
- IntPtr result = FnTable.GetControllerAxisTypeNameFromEnum(eAxisType);
- return Marshal.PtrToStringAnsi(result);
- }
- public bool CaptureInputFocus()
- {
- bool result = FnTable.CaptureInputFocus();
- return result;
- }
- public void ReleaseInputFocus()
- {
- FnTable.ReleaseInputFocus();
- }
- public bool IsInputFocusCapturedByAnotherProcess()
- {
- bool result = FnTable.IsInputFocusCapturedByAnotherProcess();
- return result;
- }
- public uint DriverDebugRequest(uint unDeviceIndex,string pchRequest,string pchResponseBuffer,uint unResponseBufferSize)
- {
- uint result = FnTable.DriverDebugRequest(unDeviceIndex,pchRequest,pchResponseBuffer,unResponseBufferSize);
- return result;
- }
- public EVRFirmwareError PerformFirmwareUpdate(uint unDeviceIndex)
- {
- EVRFirmwareError result = FnTable.PerformFirmwareUpdate(unDeviceIndex);
- return result;
- }
- public void AcknowledgeQuit_Exiting()
- {
- FnTable.AcknowledgeQuit_Exiting();
- }
- public void AcknowledgeQuit_UserPrompt()
- {
- FnTable.AcknowledgeQuit_UserPrompt();
- }
-}
-
-
-public class CVRExtendedDisplay
-{
- IVRExtendedDisplay FnTable;
- internal CVRExtendedDisplay(IntPtr pInterface)
- {
- FnTable = (IVRExtendedDisplay)Marshal.PtrToStructure(pInterface, typeof(IVRExtendedDisplay));
- }
- public void GetWindowBounds(ref int pnX,ref int pnY,ref uint pnWidth,ref uint pnHeight)
- {
- pnX = 0;
- pnY = 0;
- pnWidth = 0;
- pnHeight = 0;
- FnTable.GetWindowBounds(ref pnX,ref pnY,ref pnWidth,ref pnHeight);
- }
- public void GetEyeOutputViewport(EVREye eEye,ref uint pnX,ref uint pnY,ref uint pnWidth,ref uint pnHeight)
- {
- pnX = 0;
- pnY = 0;
- pnWidth = 0;
- pnHeight = 0;
- FnTable.GetEyeOutputViewport(eEye,ref pnX,ref pnY,ref pnWidth,ref pnHeight);
- }
- public void GetDXGIOutputInfo(ref int pnAdapterIndex,ref int pnAdapterOutputIndex)
- {
- pnAdapterIndex = 0;
- pnAdapterOutputIndex = 0;
- FnTable.GetDXGIOutputInfo(ref pnAdapterIndex,ref pnAdapterOutputIndex);
- }
-}
-
-
-public class CVRTrackedCamera
-{
- IVRTrackedCamera FnTable;
- internal CVRTrackedCamera(IntPtr pInterface)
- {
- FnTable = (IVRTrackedCamera)Marshal.PtrToStructure(pInterface, typeof(IVRTrackedCamera));
- }
- public string GetCameraErrorNameFromEnum(EVRTrackedCameraError eCameraError)
- {
- IntPtr result = FnTable.GetCameraErrorNameFromEnum(eCameraError);
- return Marshal.PtrToStringAnsi(result);
- }
- public EVRTrackedCameraError HasCamera(uint nDeviceIndex,ref bool pHasCamera)
- {
- pHasCamera = false;
- EVRTrackedCameraError result = FnTable.HasCamera(nDeviceIndex,ref pHasCamera);
- return result;
- }
- public EVRTrackedCameraError GetCameraFrameSize(uint nDeviceIndex,EVRTrackedCameraFrameType eFrameType,ref uint pnWidth,ref uint pnHeight,ref uint pnFrameBufferSize)
- {
- pnWidth = 0;
- pnHeight = 0;
- pnFrameBufferSize = 0;
- EVRTrackedCameraError result = FnTable.GetCameraFrameSize(nDeviceIndex,eFrameType,ref pnWidth,ref pnHeight,ref pnFrameBufferSize);
- return result;
- }
- public EVRTrackedCameraError GetCameraIntrinsics(uint nDeviceIndex,EVRTrackedCameraFrameType eFrameType,ref HmdVector2_t pFocalLength,ref HmdVector2_t pCenter)
- {
- EVRTrackedCameraError result = FnTable.GetCameraIntrinsics(nDeviceIndex,eFrameType,ref pFocalLength,ref pCenter);
- return result;
- }
- public EVRTrackedCameraError GetCameraProjection(uint nDeviceIndex,EVRTrackedCameraFrameType eFrameType,float flZNear,float flZFar,ref HmdMatrix44_t pProjection)
- {
- EVRTrackedCameraError result = FnTable.GetCameraProjection(nDeviceIndex,eFrameType,flZNear,flZFar,ref pProjection);
- return result;
- }
- public EVRTrackedCameraError AcquireVideoStreamingService(uint nDeviceIndex,ref ulong pHandle)
- {
- pHandle = 0;
- EVRTrackedCameraError result = FnTable.AcquireVideoStreamingService(nDeviceIndex,ref pHandle);
- return result;
- }
- public EVRTrackedCameraError ReleaseVideoStreamingService(ulong hTrackedCamera)
- {
- EVRTrackedCameraError result = FnTable.ReleaseVideoStreamingService(hTrackedCamera);
- return result;
- }
- public EVRTrackedCameraError GetVideoStreamFrameBuffer(ulong hTrackedCamera,EVRTrackedCameraFrameType eFrameType,IntPtr pFrameBuffer,uint nFrameBufferSize,ref CameraVideoStreamFrameHeader_t pFrameHeader,uint nFrameHeaderSize)
- {
- EVRTrackedCameraError result = FnTable.GetVideoStreamFrameBuffer(hTrackedCamera,eFrameType,pFrameBuffer,nFrameBufferSize,ref pFrameHeader,nFrameHeaderSize);
- return result;
- }
- public EVRTrackedCameraError GetVideoStreamTextureSize(uint nDeviceIndex,EVRTrackedCameraFrameType eFrameType,ref VRTextureBounds_t pTextureBounds,ref uint pnWidth,ref uint pnHeight)
- {
- pnWidth = 0;
- pnHeight = 0;
- EVRTrackedCameraError result = FnTable.GetVideoStreamTextureSize(nDeviceIndex,eFrameType,ref pTextureBounds,ref pnWidth,ref pnHeight);
- return result;
- }
- public EVRTrackedCameraError GetVideoStreamTextureD3D11(ulong hTrackedCamera,EVRTrackedCameraFrameType eFrameType,IntPtr pD3D11DeviceOrResource,ref IntPtr ppD3D11ShaderResourceView,ref CameraVideoStreamFrameHeader_t pFrameHeader,uint nFrameHeaderSize)
- {
- EVRTrackedCameraError result = FnTable.GetVideoStreamTextureD3D11(hTrackedCamera,eFrameType,pD3D11DeviceOrResource,ref ppD3D11ShaderResourceView,ref pFrameHeader,nFrameHeaderSize);
- return result;
- }
- public EVRTrackedCameraError GetVideoStreamTextureGL(ulong hTrackedCamera,EVRTrackedCameraFrameType eFrameType,ref uint pglTextureId,ref CameraVideoStreamFrameHeader_t pFrameHeader,uint nFrameHeaderSize)
- {
- pglTextureId = 0;
- EVRTrackedCameraError result = FnTable.GetVideoStreamTextureGL(hTrackedCamera,eFrameType,ref pglTextureId,ref pFrameHeader,nFrameHeaderSize);
- return result;
- }
- public EVRTrackedCameraError ReleaseVideoStreamTextureGL(ulong hTrackedCamera,uint glTextureId)
- {
- EVRTrackedCameraError result = FnTable.ReleaseVideoStreamTextureGL(hTrackedCamera,glTextureId);
- return result;
- }
-}
-
-
-public class CVRApplications
-{
- IVRApplications FnTable;
- internal CVRApplications(IntPtr pInterface)
- {
- FnTable = (IVRApplications)Marshal.PtrToStructure(pInterface, typeof(IVRApplications));
- }
- public EVRApplicationError AddApplicationManifest(string pchApplicationManifestFullPath,bool bTemporary)
- {
- EVRApplicationError result = FnTable.AddApplicationManifest(pchApplicationManifestFullPath,bTemporary);
- return result;
- }
- public EVRApplicationError RemoveApplicationManifest(string pchApplicationManifestFullPath)
- {
- EVRApplicationError result = FnTable.RemoveApplicationManifest(pchApplicationManifestFullPath);
- return result;
- }
- public bool IsApplicationInstalled(string pchAppKey)
- {
- bool result = FnTable.IsApplicationInstalled(pchAppKey);
- return result;
- }
- public uint GetApplicationCount()
- {
- uint result = FnTable.GetApplicationCount();
- return result;
- }
- public EVRApplicationError GetApplicationKeyByIndex(uint unApplicationIndex,System.Text.StringBuilder pchAppKeyBuffer,uint unAppKeyBufferLen)
- {
- EVRApplicationError result = FnTable.GetApplicationKeyByIndex(unApplicationIndex,pchAppKeyBuffer,unAppKeyBufferLen);
- return result;
- }
- public EVRApplicationError GetApplicationKeyByProcessId(uint unProcessId,string pchAppKeyBuffer,uint unAppKeyBufferLen)
- {
- EVRApplicationError result = FnTable.GetApplicationKeyByProcessId(unProcessId,pchAppKeyBuffer,unAppKeyBufferLen);
- return result;
- }
- public EVRApplicationError LaunchApplication(string pchAppKey)
- {
- EVRApplicationError result = FnTable.LaunchApplication(pchAppKey);
- return result;
- }
- public EVRApplicationError LaunchTemplateApplication(string pchTemplateAppKey,string pchNewAppKey,AppOverrideKeys_t [] pKeys)
- {
- EVRApplicationError result = FnTable.LaunchTemplateApplication(pchTemplateAppKey,pchNewAppKey,pKeys,(uint) pKeys.Length);
- return result;
- }
- public EVRApplicationError LaunchApplicationFromMimeType(string pchMimeType,string pchArgs)
- {
- EVRApplicationError result = FnTable.LaunchApplicationFromMimeType(pchMimeType,pchArgs);
- return result;
- }
- public EVRApplicationError LaunchDashboardOverlay(string pchAppKey)
- {
- EVRApplicationError result = FnTable.LaunchDashboardOverlay(pchAppKey);
- return result;
- }
- public bool CancelApplicationLaunch(string pchAppKey)
- {
- bool result = FnTable.CancelApplicationLaunch(pchAppKey);
- return result;
- }
- public EVRApplicationError IdentifyApplication(uint unProcessId,string pchAppKey)
- {
- EVRApplicationError result = FnTable.IdentifyApplication(unProcessId,pchAppKey);
- return result;
- }
- public uint GetApplicationProcessId(string pchAppKey)
- {
- uint result = FnTable.GetApplicationProcessId(pchAppKey);
- return result;
- }
- public string GetApplicationsErrorNameFromEnum(EVRApplicationError error)
- {
- IntPtr result = FnTable.GetApplicationsErrorNameFromEnum(error);
- return Marshal.PtrToStringAnsi(result);
- }
- public uint GetApplicationPropertyString(string pchAppKey,EVRApplicationProperty eProperty,System.Text.StringBuilder pchPropertyValueBuffer,uint unPropertyValueBufferLen,ref EVRApplicationError peError)
- {
- uint result = FnTable.GetApplicationPropertyString(pchAppKey,eProperty,pchPropertyValueBuffer,unPropertyValueBufferLen,ref peError);
- return result;
- }
- public bool GetApplicationPropertyBool(string pchAppKey,EVRApplicationProperty eProperty,ref EVRApplicationError peError)
- {
- bool result = FnTable.GetApplicationPropertyBool(pchAppKey,eProperty,ref peError);
- return result;
- }
- public ulong GetApplicationPropertyUint64(string pchAppKey,EVRApplicationProperty eProperty,ref EVRApplicationError peError)
- {
- ulong result = FnTable.GetApplicationPropertyUint64(pchAppKey,eProperty,ref peError);
- return result;
- }
- public EVRApplicationError SetApplicationAutoLaunch(string pchAppKey,bool bAutoLaunch)
- {
- EVRApplicationError result = FnTable.SetApplicationAutoLaunch(pchAppKey,bAutoLaunch);
- return result;
- }
- public bool GetApplicationAutoLaunch(string pchAppKey)
- {
- bool result = FnTable.GetApplicationAutoLaunch(pchAppKey);
- return result;
- }
- public EVRApplicationError SetDefaultApplicationForMimeType(string pchAppKey,string pchMimeType)
- {
- EVRApplicationError result = FnTable.SetDefaultApplicationForMimeType(pchAppKey,pchMimeType);
- return result;
- }
- public bool GetDefaultApplicationForMimeType(string pchMimeType,string pchAppKeyBuffer,uint unAppKeyBufferLen)
- {
- bool result = FnTable.GetDefaultApplicationForMimeType(pchMimeType,pchAppKeyBuffer,unAppKeyBufferLen);
- return result;
- }
- public bool GetApplicationSupportedMimeTypes(string pchAppKey,string pchMimeTypesBuffer,uint unMimeTypesBuffer)
- {
- bool result = FnTable.GetApplicationSupportedMimeTypes(pchAppKey,pchMimeTypesBuffer,unMimeTypesBuffer);
- return result;
- }
- public uint GetApplicationsThatSupportMimeType(string pchMimeType,string pchAppKeysThatSupportBuffer,uint unAppKeysThatSupportBuffer)
- {
- uint result = FnTable.GetApplicationsThatSupportMimeType(pchMimeType,pchAppKeysThatSupportBuffer,unAppKeysThatSupportBuffer);
- return result;
- }
- public uint GetApplicationLaunchArguments(uint unHandle,string pchArgs,uint unArgs)
- {
- uint result = FnTable.GetApplicationLaunchArguments(unHandle,pchArgs,unArgs);
- return result;
- }
- public EVRApplicationError GetStartingApplication(string pchAppKeyBuffer,uint unAppKeyBufferLen)
- {
- EVRApplicationError result = FnTable.GetStartingApplication(pchAppKeyBuffer,unAppKeyBufferLen);
- return result;
- }
- public EVRApplicationTransitionState GetTransitionState()
- {
- EVRApplicationTransitionState result = FnTable.GetTransitionState();
- return result;
- }
- public EVRApplicationError PerformApplicationPrelaunchCheck(string pchAppKey)
- {
- EVRApplicationError result = FnTable.PerformApplicationPrelaunchCheck(pchAppKey);
- return result;
- }
- public string GetApplicationsTransitionStateNameFromEnum(EVRApplicationTransitionState state)
- {
- IntPtr result = FnTable.GetApplicationsTransitionStateNameFromEnum(state);
- return Marshal.PtrToStringAnsi(result);
- }
- public bool IsQuitUserPromptRequested()
- {
- bool result = FnTable.IsQuitUserPromptRequested();
- return result;
- }
- public EVRApplicationError LaunchInternalProcess(string pchBinaryPath,string pchArguments,string pchWorkingDirectory)
- {
- EVRApplicationError result = FnTable.LaunchInternalProcess(pchBinaryPath,pchArguments,pchWorkingDirectory);
- return result;
- }
- public uint GetCurrentSceneProcessId()
- {
- uint result = FnTable.GetCurrentSceneProcessId();
- return result;
- }
-}
-
-
-public class CVRChaperone
-{
- IVRChaperone FnTable;
- internal CVRChaperone(IntPtr pInterface)
- {
- FnTable = (IVRChaperone)Marshal.PtrToStructure(pInterface, typeof(IVRChaperone));
- }
- public ChaperoneCalibrationState GetCalibrationState()
- {
- ChaperoneCalibrationState result = FnTable.GetCalibrationState();
- return result;
- }
- public bool GetPlayAreaSize(ref float pSizeX,ref float pSizeZ)
- {
- pSizeX = 0;
- pSizeZ = 0;
- bool result = FnTable.GetPlayAreaSize(ref pSizeX,ref pSizeZ);
- return result;
- }
- public bool GetPlayAreaRect(ref HmdQuad_t rect)
- {
- bool result = FnTable.GetPlayAreaRect(ref rect);
- return result;
- }
- public void ReloadInfo()
- {
- FnTable.ReloadInfo();
- }
- public void SetSceneColor(HmdColor_t color)
- {
- FnTable.SetSceneColor(color);
- }
- public void GetBoundsColor(ref HmdColor_t pOutputColorArray,int nNumOutputColors,float flCollisionBoundsFadeDistance,ref HmdColor_t pOutputCameraColor)
- {
- FnTable.GetBoundsColor(ref pOutputColorArray,nNumOutputColors,flCollisionBoundsFadeDistance,ref pOutputCameraColor);
- }
- public bool AreBoundsVisible()
- {
- bool result = FnTable.AreBoundsVisible();
- return result;
- }
- public void ForceBoundsVisible(bool bForce)
- {
- FnTable.ForceBoundsVisible(bForce);
- }
-}
-
-
-public class CVRChaperoneSetup
-{
- IVRChaperoneSetup FnTable;
- internal CVRChaperoneSetup(IntPtr pInterface)
- {
- FnTable = (IVRChaperoneSetup)Marshal.PtrToStructure(pInterface, typeof(IVRChaperoneSetup));
- }
- public bool CommitWorkingCopy(EChaperoneConfigFile configFile)
- {
- bool result = FnTable.CommitWorkingCopy(configFile);
- return result;
- }
- public void RevertWorkingCopy()
- {
- FnTable.RevertWorkingCopy();
- }
- public bool GetWorkingPlayAreaSize(ref float pSizeX,ref float pSizeZ)
- {
- pSizeX = 0;
- pSizeZ = 0;
- bool result = FnTable.GetWorkingPlayAreaSize(ref pSizeX,ref pSizeZ);
- return result;
- }
- public bool GetWorkingPlayAreaRect(ref HmdQuad_t rect)
- {
- bool result = FnTable.GetWorkingPlayAreaRect(ref rect);
- return result;
- }
- public bool GetWorkingCollisionBoundsInfo(out HmdQuad_t [] pQuadsBuffer)
- {
- uint punQuadsCount = 0;
- bool result = FnTable.GetWorkingCollisionBoundsInfo(null,ref punQuadsCount);
- pQuadsBuffer= new HmdQuad_t[punQuadsCount];
- result = FnTable.GetWorkingCollisionBoundsInfo(pQuadsBuffer,ref punQuadsCount);
- return result;
- }
- public bool GetLiveCollisionBoundsInfo(out HmdQuad_t [] pQuadsBuffer)
- {
- uint punQuadsCount = 0;
- bool result = FnTable.GetLiveCollisionBoundsInfo(null,ref punQuadsCount);
- pQuadsBuffer= new HmdQuad_t[punQuadsCount];
- result = FnTable.GetLiveCollisionBoundsInfo(pQuadsBuffer,ref punQuadsCount);
- return result;
- }
- public bool GetWorkingSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose)
- {
- bool result = FnTable.GetWorkingSeatedZeroPoseToRawTrackingPose(ref pmatSeatedZeroPoseToRawTrackingPose);
- return result;
- }
- public bool GetWorkingStandingZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatStandingZeroPoseToRawTrackingPose)
- {
- bool result = FnTable.GetWorkingStandingZeroPoseToRawTrackingPose(ref pmatStandingZeroPoseToRawTrackingPose);
- return result;
- }
- public void SetWorkingPlayAreaSize(float sizeX,float sizeZ)
- {
- FnTable.SetWorkingPlayAreaSize(sizeX,sizeZ);
- }
- public void SetWorkingCollisionBoundsInfo(HmdQuad_t [] pQuadsBuffer)
- {
- FnTable.SetWorkingCollisionBoundsInfo(pQuadsBuffer,(uint) pQuadsBuffer.Length);
- }
- public void SetWorkingSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pMatSeatedZeroPoseToRawTrackingPose)
- {
- FnTable.SetWorkingSeatedZeroPoseToRawTrackingPose(ref pMatSeatedZeroPoseToRawTrackingPose);
- }
- public void SetWorkingStandingZeroPoseToRawTrackingPose(ref HmdMatrix34_t pMatStandingZeroPoseToRawTrackingPose)
- {
- FnTable.SetWorkingStandingZeroPoseToRawTrackingPose(ref pMatStandingZeroPoseToRawTrackingPose);
- }
- public void ReloadFromDisk(EChaperoneConfigFile configFile)
- {
- FnTable.ReloadFromDisk(configFile);
- }
- public bool GetLiveSeatedZeroPoseToRawTrackingPose(ref HmdMatrix34_t pmatSeatedZeroPoseToRawTrackingPose)
- {
- bool result = FnTable.GetLiveSeatedZeroPoseToRawTrackingPose(ref pmatSeatedZeroPoseToRawTrackingPose);
- return result;
- }
- public void SetWorkingCollisionBoundsTagsInfo(byte [] pTagsBuffer)
- {
- FnTable.SetWorkingCollisionBoundsTagsInfo(pTagsBuffer,(uint) pTagsBuffer.Length);
- }
- public bool GetLiveCollisionBoundsTagsInfo(out byte [] pTagsBuffer)
- {
- uint punTagCount = 0;
- bool result = FnTable.GetLiveCollisionBoundsTagsInfo(null,ref punTagCount);
- pTagsBuffer= new byte[punTagCount];
- result = FnTable.GetLiveCollisionBoundsTagsInfo(pTagsBuffer,ref punTagCount);
- return result;
- }
- public bool SetWorkingPhysicalBoundsInfo(HmdQuad_t [] pQuadsBuffer)
- {
- bool result = FnTable.SetWorkingPhysicalBoundsInfo(pQuadsBuffer,(uint) pQuadsBuffer.Length);
- return result;
- }
- public bool GetLivePhysicalBoundsInfo(out HmdQuad_t [] pQuadsBuffer)
- {
- uint punQuadsCount = 0;
- bool result = FnTable.GetLivePhysicalBoundsInfo(null,ref punQuadsCount);
- pQuadsBuffer= new HmdQuad_t[punQuadsCount];
- result = FnTable.GetLivePhysicalBoundsInfo(pQuadsBuffer,ref punQuadsCount);
- return result;
- }
- public bool ExportLiveToBuffer(System.Text.StringBuilder pBuffer,ref uint pnBufferLength)
- {
- pnBufferLength = 0;
- bool result = FnTable.ExportLiveToBuffer(pBuffer,ref pnBufferLength);
- return result;
- }
- public bool ImportFromBufferToWorking(string pBuffer,uint nImportFlags)
- {
- bool result = FnTable.ImportFromBufferToWorking(pBuffer,nImportFlags);
- return result;
- }
-}
-
-
-public class CVRCompositor
-{
- IVRCompositor FnTable;
- internal CVRCompositor(IntPtr pInterface)
- {
- FnTable = (IVRCompositor)Marshal.PtrToStructure(pInterface, typeof(IVRCompositor));
- }
- public void SetTrackingSpace(ETrackingUniverseOrigin eOrigin)
- {
- FnTable.SetTrackingSpace(eOrigin);
- }
- public ETrackingUniverseOrigin GetTrackingSpace()
- {
- ETrackingUniverseOrigin result = FnTable.GetTrackingSpace();
- return result;
- }
- public EVRCompositorError WaitGetPoses(TrackedDevicePose_t [] pRenderPoseArray,TrackedDevicePose_t [] pGamePoseArray)
- {
- EVRCompositorError result = FnTable.WaitGetPoses(pRenderPoseArray,(uint) pRenderPoseArray.Length,pGamePoseArray,(uint) pGamePoseArray.Length);
- return result;
- }
- public EVRCompositorError GetLastPoses(TrackedDevicePose_t [] pRenderPoseArray,TrackedDevicePose_t [] pGamePoseArray)
- {
- EVRCompositorError result = FnTable.GetLastPoses(pRenderPoseArray,(uint) pRenderPoseArray.Length,pGamePoseArray,(uint) pGamePoseArray.Length);
- return result;
- }
- public EVRCompositorError GetLastPoseForTrackedDeviceIndex(uint unDeviceIndex,ref TrackedDevicePose_t pOutputPose,ref TrackedDevicePose_t pOutputGamePose)
- {
- EVRCompositorError result = FnTable.GetLastPoseForTrackedDeviceIndex(unDeviceIndex,ref pOutputPose,ref pOutputGamePose);
- return result;
- }
- public EVRCompositorError Submit(EVREye eEye,ref Texture_t pTexture,ref VRTextureBounds_t pBounds,EVRSubmitFlags nSubmitFlags)
- {
- EVRCompositorError result = FnTable.Submit(eEye,ref pTexture,ref pBounds,nSubmitFlags);
- return result;
- }
- public void ClearLastSubmittedFrame()
- {
- FnTable.ClearLastSubmittedFrame();
- }
- public void PostPresentHandoff()
- {
- FnTable.PostPresentHandoff();
- }
- public bool GetFrameTiming(ref Compositor_FrameTiming pTiming,uint unFramesAgo)
- {
- bool result = FnTable.GetFrameTiming(ref pTiming,unFramesAgo);
- return result;
- }
- public uint GetFrameTimings(ref Compositor_FrameTiming pTiming,uint nFrames)
- {
- uint result = FnTable.GetFrameTimings(ref pTiming,nFrames);
- return result;
- }
- public float GetFrameTimeRemaining()
- {
- float result = FnTable.GetFrameTimeRemaining();
- return result;
- }
- public void GetCumulativeStats(ref Compositor_CumulativeStats pStats,uint nStatsSizeInBytes)
- {
- FnTable.GetCumulativeStats(ref pStats,nStatsSizeInBytes);
- }
- public void FadeToColor(float fSeconds,float fRed,float fGreen,float fBlue,float fAlpha,bool bBackground)
- {
- FnTable.FadeToColor(fSeconds,fRed,fGreen,fBlue,fAlpha,bBackground);
- }
- public HmdColor_t GetCurrentFadeColor(bool bBackground)
- {
- HmdColor_t result = FnTable.GetCurrentFadeColor(bBackground);
- return result;
- }
- public void FadeGrid(float fSeconds,bool bFadeIn)
- {
- FnTable.FadeGrid(fSeconds,bFadeIn);
- }
- public float GetCurrentGridAlpha()
- {
- float result = FnTable.GetCurrentGridAlpha();
- return result;
- }
- public EVRCompositorError SetSkyboxOverride(Texture_t [] pTextures)
- {
- EVRCompositorError result = FnTable.SetSkyboxOverride(pTextures,(uint) pTextures.Length);
- return result;
- }
- public void ClearSkyboxOverride()
- {
- FnTable.ClearSkyboxOverride();
- }
- public void CompositorBringToFront()
- {
- FnTable.CompositorBringToFront();
- }
- public void CompositorGoToBack()
- {
- FnTable.CompositorGoToBack();
- }
- public void CompositorQuit()
- {
- FnTable.CompositorQuit();
- }
- public bool IsFullscreen()
- {
- bool result = FnTable.IsFullscreen();
- return result;
- }
- public uint GetCurrentSceneFocusProcess()
- {
- uint result = FnTable.GetCurrentSceneFocusProcess();
- return result;
- }
- public uint GetLastFrameRenderer()
- {
- uint result = FnTable.GetLastFrameRenderer();
- return result;
- }
- public bool CanRenderScene()
- {
- bool result = FnTable.CanRenderScene();
- return result;
- }
- public void ShowMirrorWindow()
- {
- FnTable.ShowMirrorWindow();
- }
- public void HideMirrorWindow()
- {
- FnTable.HideMirrorWindow();
- }
- public bool IsMirrorWindowVisible()
- {
- bool result = FnTable.IsMirrorWindowVisible();
- return result;
- }
- public void CompositorDumpImages()
- {
- FnTable.CompositorDumpImages();
- }
- public bool ShouldAppRenderWithLowResources()
- {
- bool result = FnTable.ShouldAppRenderWithLowResources();
- return result;
- }
- public void ForceInterleavedReprojectionOn(bool bOverride)
- {
- FnTable.ForceInterleavedReprojectionOn(bOverride);
- }
- public void ForceReconnectProcess()
- {
- FnTable.ForceReconnectProcess();
- }
- public void SuspendRendering(bool bSuspend)
- {
- FnTable.SuspendRendering(bSuspend);
- }
- public EVRCompositorError GetMirrorTextureD3D11(EVREye eEye,IntPtr pD3D11DeviceOrResource,ref IntPtr ppD3D11ShaderResourceView)
- {
- EVRCompositorError result = FnTable.GetMirrorTextureD3D11(eEye,pD3D11DeviceOrResource,ref ppD3D11ShaderResourceView);
- return result;
- }
- public void ReleaseMirrorTextureD3D11(IntPtr pD3D11ShaderResourceView)
- {
- FnTable.ReleaseMirrorTextureD3D11(pD3D11ShaderResourceView);
- }
- public EVRCompositorError GetMirrorTextureGL(EVREye eEye,ref uint pglTextureId,IntPtr pglSharedTextureHandle)
- {
- pglTextureId = 0;
- EVRCompositorError result = FnTable.GetMirrorTextureGL(eEye,ref pglTextureId,pglSharedTextureHandle);
- return result;
- }
- public bool ReleaseSharedGLTexture(uint glTextureId,IntPtr glSharedTextureHandle)
- {
- bool result = FnTable.ReleaseSharedGLTexture(glTextureId,glSharedTextureHandle);
- return result;
- }
- public void LockGLSharedTextureForAccess(IntPtr glSharedTextureHandle)
- {
- FnTable.LockGLSharedTextureForAccess(glSharedTextureHandle);
- }
- public void UnlockGLSharedTextureForAccess(IntPtr glSharedTextureHandle)
- {
- FnTable.UnlockGLSharedTextureForAccess(glSharedTextureHandle);
- }
- public uint GetVulkanInstanceExtensionsRequired(System.Text.StringBuilder pchValue,uint unBufferSize)
- {
- uint result = FnTable.GetVulkanInstanceExtensionsRequired(pchValue,unBufferSize);
- return result;
- }
- public uint GetVulkanDeviceExtensionsRequired(IntPtr pPhysicalDevice,System.Text.StringBuilder pchValue,uint unBufferSize)
- {
- uint result = FnTable.GetVulkanDeviceExtensionsRequired(pPhysicalDevice,pchValue,unBufferSize);
- return result;
- }
- public void SetExplicitTimingMode(bool bExplicitTimingMode)
- {
- FnTable.SetExplicitTimingMode(bExplicitTimingMode);
- }
- public EVRCompositorError SubmitExplicitTimingData()
- {
- EVRCompositorError result = FnTable.SubmitExplicitTimingData();
- return result;
- }
-}
-
-
-public class CVROverlay
-{
- IVROverlay FnTable;
- internal CVROverlay(IntPtr pInterface)
- {
- FnTable = (IVROverlay)Marshal.PtrToStructure(pInterface, typeof(IVROverlay));
- }
- public EVROverlayError FindOverlay(string pchOverlayKey,ref ulong pOverlayHandle)
- {
- pOverlayHandle = 0;
- EVROverlayError result = FnTable.FindOverlay(pchOverlayKey,ref pOverlayHandle);
- return result;
- }
- public EVROverlayError CreateOverlay(string pchOverlayKey,string pchOverlayName,ref ulong pOverlayHandle)
- {
- pOverlayHandle = 0;
- EVROverlayError result = FnTable.CreateOverlay(pchOverlayKey,pchOverlayName,ref pOverlayHandle);
- return result;
- }
- public EVROverlayError DestroyOverlay(ulong ulOverlayHandle)
- {
- EVROverlayError result = FnTable.DestroyOverlay(ulOverlayHandle);
- return result;
- }
- public EVROverlayError SetHighQualityOverlay(ulong ulOverlayHandle)
- {
- EVROverlayError result = FnTable.SetHighQualityOverlay(ulOverlayHandle);
- return result;
- }
- public ulong GetHighQualityOverlay()
- {
- ulong result = FnTable.GetHighQualityOverlay();
- return result;
- }
- public uint GetOverlayKey(ulong ulOverlayHandle,System.Text.StringBuilder pchValue,uint unBufferSize,ref EVROverlayError pError)
- {
- uint result = FnTable.GetOverlayKey(ulOverlayHandle,pchValue,unBufferSize,ref pError);
- return result;
- }
- public uint GetOverlayName(ulong ulOverlayHandle,System.Text.StringBuilder pchValue,uint unBufferSize,ref EVROverlayError pError)
- {
- uint result = FnTable.GetOverlayName(ulOverlayHandle,pchValue,unBufferSize,ref pError);
- return result;
- }
- public EVROverlayError SetOverlayName(ulong ulOverlayHandle,string pchName)
- {
- EVROverlayError result = FnTable.SetOverlayName(ulOverlayHandle,pchName);
- return result;
- }
- public EVROverlayError GetOverlayImageData(ulong ulOverlayHandle,IntPtr pvBuffer,uint unBufferSize,ref uint punWidth,ref uint punHeight)
- {
- punWidth = 0;
- punHeight = 0;
- EVROverlayError result = FnTable.GetOverlayImageData(ulOverlayHandle,pvBuffer,unBufferSize,ref punWidth,ref punHeight);
- return result;
- }
- public string GetOverlayErrorNameFromEnum(EVROverlayError error)
- {
- IntPtr result = FnTable.GetOverlayErrorNameFromEnum(error);
- return Marshal.PtrToStringAnsi(result);
- }
- public EVROverlayError SetOverlayRenderingPid(ulong ulOverlayHandle,uint unPID)
- {
- EVROverlayError result = FnTable.SetOverlayRenderingPid(ulOverlayHandle,unPID);
- return result;
- }
- public uint GetOverlayRenderingPid(ulong ulOverlayHandle)
- {
- uint result = FnTable.GetOverlayRenderingPid(ulOverlayHandle);
- return result;
- }
- public EVROverlayError SetOverlayFlag(ulong ulOverlayHandle,VROverlayFlags eOverlayFlag,bool bEnabled)
- {
- EVROverlayError result = FnTable.SetOverlayFlag(ulOverlayHandle,eOverlayFlag,bEnabled);
- return result;
- }
- public EVROverlayError GetOverlayFlag(ulong ulOverlayHandle,VROverlayFlags eOverlayFlag,ref bool pbEnabled)
- {
- pbEnabled = false;
- EVROverlayError result = FnTable.GetOverlayFlag(ulOverlayHandle,eOverlayFlag,ref pbEnabled);
- return result;
- }
- public EVROverlayError SetOverlayColor(ulong ulOverlayHandle,float fRed,float fGreen,float fBlue)
- {
- EVROverlayError result = FnTable.SetOverlayColor(ulOverlayHandle,fRed,fGreen,fBlue);
- return result;
- }
- public EVROverlayError GetOverlayColor(ulong ulOverlayHandle,ref float pfRed,ref float pfGreen,ref float pfBlue)
- {
- pfRed = 0;
- pfGreen = 0;
- pfBlue = 0;
- EVROverlayError result = FnTable.GetOverlayColor(ulOverlayHandle,ref pfRed,ref pfGreen,ref pfBlue);
- return result;
- }
- public EVROverlayError SetOverlayAlpha(ulong ulOverlayHandle,float fAlpha)
- {
- EVROverlayError result = FnTable.SetOverlayAlpha(ulOverlayHandle,fAlpha);
- return result;
- }
- public EVROverlayError GetOverlayAlpha(ulong ulOverlayHandle,ref float pfAlpha)
- {
- pfAlpha = 0;
- EVROverlayError result = FnTable.GetOverlayAlpha(ulOverlayHandle,ref pfAlpha);
- return result;
- }
- public EVROverlayError SetOverlayTexelAspect(ulong ulOverlayHandle,float fTexelAspect)
- {
- EVROverlayError result = FnTable.SetOverlayTexelAspect(ulOverlayHandle,fTexelAspect);
- return result;
- }
- public EVROverlayError GetOverlayTexelAspect(ulong ulOverlayHandle,ref float pfTexelAspect)
- {
- pfTexelAspect = 0;
- EVROverlayError result = FnTable.GetOverlayTexelAspect(ulOverlayHandle,ref pfTexelAspect);
- return result;
- }
- public EVROverlayError SetOverlaySortOrder(ulong ulOverlayHandle,uint unSortOrder)
- {
- EVROverlayError result = FnTable.SetOverlaySortOrder(ulOverlayHandle,unSortOrder);
- return result;
- }
- public EVROverlayError GetOverlaySortOrder(ulong ulOverlayHandle,ref uint punSortOrder)
- {
- punSortOrder = 0;
- EVROverlayError result = FnTable.GetOverlaySortOrder(ulOverlayHandle,ref punSortOrder);
- return result;
- }
- public EVROverlayError SetOverlayWidthInMeters(ulong ulOverlayHandle,float fWidthInMeters)
- {
- EVROverlayError result = FnTable.SetOverlayWidthInMeters(ulOverlayHandle,fWidthInMeters);
- return result;
- }
- public EVROverlayError GetOverlayWidthInMeters(ulong ulOverlayHandle,ref float pfWidthInMeters)
- {
- pfWidthInMeters = 0;
- EVROverlayError result = FnTable.GetOverlayWidthInMeters(ulOverlayHandle,ref pfWidthInMeters);
- return result;
- }
- public EVROverlayError SetOverlayAutoCurveDistanceRangeInMeters(ulong ulOverlayHandle,float fMinDistanceInMeters,float fMaxDistanceInMeters)
- {
- EVROverlayError result = FnTable.SetOverlayAutoCurveDistanceRangeInMeters(ulOverlayHandle,fMinDistanceInMeters,fMaxDistanceInMeters);
- return result;
- }
- public EVROverlayError GetOverlayAutoCurveDistanceRangeInMeters(ulong ulOverlayHandle,ref float pfMinDistanceInMeters,ref float pfMaxDistanceInMeters)
- {
- pfMinDistanceInMeters = 0;
- pfMaxDistanceInMeters = 0;
- EVROverlayError result = FnTable.GetOverlayAutoCurveDistanceRangeInMeters(ulOverlayHandle,ref pfMinDistanceInMeters,ref pfMaxDistanceInMeters);
- return result;
- }
- public EVROverlayError SetOverlayTextureColorSpace(ulong ulOverlayHandle,EColorSpace eTextureColorSpace)
- {
- EVROverlayError result = FnTable.SetOverlayTextureColorSpace(ulOverlayHandle,eTextureColorSpace);
- return result;
- }
- public EVROverlayError GetOverlayTextureColorSpace(ulong ulOverlayHandle,ref EColorSpace peTextureColorSpace)
- {
- EVROverlayError result = FnTable.GetOverlayTextureColorSpace(ulOverlayHandle,ref peTextureColorSpace);
- return result;
- }
- public EVROverlayError SetOverlayTextureBounds(ulong ulOverlayHandle,ref VRTextureBounds_t pOverlayTextureBounds)
- {
- EVROverlayError result = FnTable.SetOverlayTextureBounds(ulOverlayHandle,ref pOverlayTextureBounds);
- return result;
- }
- public EVROverlayError GetOverlayTextureBounds(ulong ulOverlayHandle,ref VRTextureBounds_t pOverlayTextureBounds)
- {
- EVROverlayError result = FnTable.GetOverlayTextureBounds(ulOverlayHandle,ref pOverlayTextureBounds);
- return result;
- }
- public uint GetOverlayRenderModel(ulong ulOverlayHandle,string pchValue,uint unBufferSize,ref HmdColor_t pColor,ref EVROverlayError pError)
- {
- uint result = FnTable.GetOverlayRenderModel(ulOverlayHandle,pchValue,unBufferSize,ref pColor,ref pError);
- return result;
- }
- public EVROverlayError SetOverlayRenderModel(ulong ulOverlayHandle,string pchRenderModel,ref HmdColor_t pColor)
- {
- EVROverlayError result = FnTable.SetOverlayRenderModel(ulOverlayHandle,pchRenderModel,ref pColor);
- return result;
- }
- public EVROverlayError GetOverlayTransformType(ulong ulOverlayHandle,ref VROverlayTransformType peTransformType)
- {
- EVROverlayError result = FnTable.GetOverlayTransformType(ulOverlayHandle,ref peTransformType);
- return result;
- }
- public EVROverlayError SetOverlayTransformAbsolute(ulong ulOverlayHandle,ETrackingUniverseOrigin eTrackingOrigin,ref HmdMatrix34_t pmatTrackingOriginToOverlayTransform)
- {
- EVROverlayError result = FnTable.SetOverlayTransformAbsolute(ulOverlayHandle,eTrackingOrigin,ref pmatTrackingOriginToOverlayTransform);
- return result;
- }
- public EVROverlayError GetOverlayTransformAbsolute(ulong ulOverlayHandle,ref ETrackingUniverseOrigin peTrackingOrigin,ref HmdMatrix34_t pmatTrackingOriginToOverlayTransform)
- {
- EVROverlayError result = FnTable.GetOverlayTransformAbsolute(ulOverlayHandle,ref peTrackingOrigin,ref pmatTrackingOriginToOverlayTransform);
- return result;
- }
- public EVROverlayError SetOverlayTransformTrackedDeviceRelative(ulong ulOverlayHandle,uint unTrackedDevice,ref HmdMatrix34_t pmatTrackedDeviceToOverlayTransform)
- {
- EVROverlayError result = FnTable.SetOverlayTransformTrackedDeviceRelative(ulOverlayHandle,unTrackedDevice,ref pmatTrackedDeviceToOverlayTransform);
- return result;
- }
- public EVROverlayError GetOverlayTransformTrackedDeviceRelative(ulong ulOverlayHandle,ref uint punTrackedDevice,ref HmdMatrix34_t pmatTrackedDeviceToOverlayTransform)
- {
- punTrackedDevice = 0;
- EVROverlayError result = FnTable.GetOverlayTransformTrackedDeviceRelative(ulOverlayHandle,ref punTrackedDevice,ref pmatTrackedDeviceToOverlayTransform);
- return result;
- }
- public EVROverlayError SetOverlayTransformTrackedDeviceComponent(ulong ulOverlayHandle,uint unDeviceIndex,string pchComponentName)
- {
- EVROverlayError result = FnTable.SetOverlayTransformTrackedDeviceComponent(ulOverlayHandle,unDeviceIndex,pchComponentName);
- return result;
- }
- public EVROverlayError GetOverlayTransformTrackedDeviceComponent(ulong ulOverlayHandle,ref uint punDeviceIndex,string pchComponentName,uint unComponentNameSize)
- {
- punDeviceIndex = 0;
- EVROverlayError result = FnTable.GetOverlayTransformTrackedDeviceComponent(ulOverlayHandle,ref punDeviceIndex,pchComponentName,unComponentNameSize);
- return result;
- }
- public EVROverlayError GetOverlayTransformOverlayRelative(ulong ulOverlayHandle,ref ulong ulOverlayHandleParent,ref HmdMatrix34_t pmatParentOverlayToOverlayTransform)
- {
- ulOverlayHandleParent = 0;
- EVROverlayError result = FnTable.GetOverlayTransformOverlayRelative(ulOverlayHandle,ref ulOverlayHandleParent,ref pmatParentOverlayToOverlayTransform);
- return result;
- }
- public EVROverlayError SetOverlayTransformOverlayRelative(ulong ulOverlayHandle,ulong ulOverlayHandleParent,ref HmdMatrix34_t pmatParentOverlayToOverlayTransform)
- {
- EVROverlayError result = FnTable.SetOverlayTransformOverlayRelative(ulOverlayHandle,ulOverlayHandleParent,ref pmatParentOverlayToOverlayTransform);
- return result;
- }
- public EVROverlayError ShowOverlay(ulong ulOverlayHandle)
- {
- EVROverlayError result = FnTable.ShowOverlay(ulOverlayHandle);
- return result;
- }
- public EVROverlayError HideOverlay(ulong ulOverlayHandle)
- {
- EVROverlayError result = FnTable.HideOverlay(ulOverlayHandle);
- return result;
- }
- public bool IsOverlayVisible(ulong ulOverlayHandle)
- {
- bool result = FnTable.IsOverlayVisible(ulOverlayHandle);
- return result;
- }
- public EVROverlayError GetTransformForOverlayCoordinates(ulong ulOverlayHandle,ETrackingUniverseOrigin eTrackingOrigin,HmdVector2_t coordinatesInOverlay,ref HmdMatrix34_t pmatTransform)
- {
- EVROverlayError result = FnTable.GetTransformForOverlayCoordinates(ulOverlayHandle,eTrackingOrigin,coordinatesInOverlay,ref pmatTransform);
- return result;
- }
-// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
-// originally mis-compiled with the wrong packing for Linux and OSX.
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _PollNextOverlayEventPacked(ulong ulOverlayHandle,ref VREvent_t_Packed pEvent,uint uncbVREvent);
- [StructLayout(LayoutKind.Explicit)]
- struct PollNextOverlayEventUnion
- {
- [FieldOffset(0)]
- public IVROverlay._PollNextOverlayEvent pPollNextOverlayEvent;
- [FieldOffset(0)]
- public _PollNextOverlayEventPacked pPollNextOverlayEventPacked;
- }
- public bool PollNextOverlayEvent(ulong ulOverlayHandle,ref VREvent_t pEvent,uint uncbVREvent)
- {
-#if !UNITY_METRO
- if ((System.Environment.OSVersion.Platform == System.PlatformID.MacOSX) ||
- (System.Environment.OSVersion.Platform == System.PlatformID.Unix))
- {
- PollNextOverlayEventUnion u;
- VREvent_t_Packed event_packed = new VREvent_t_Packed();
- u.pPollNextOverlayEventPacked = null;
- u.pPollNextOverlayEvent = FnTable.PollNextOverlayEvent;
- bool packed_result = u.pPollNextOverlayEventPacked(ulOverlayHandle,ref event_packed,(uint)System.Runtime.InteropServices.Marshal.SizeOf(typeof(VREvent_t_Packed)));
-
- event_packed.Unpack(ref pEvent);
- return packed_result;
- }
-#endif
- bool result = FnTable.PollNextOverlayEvent(ulOverlayHandle,ref pEvent,uncbVREvent);
- return result;
- }
- public EVROverlayError GetOverlayInputMethod(ulong ulOverlayHandle,ref VROverlayInputMethod peInputMethod)
- {
- EVROverlayError result = FnTable.GetOverlayInputMethod(ulOverlayHandle,ref peInputMethod);
- return result;
- }
- public EVROverlayError SetOverlayInputMethod(ulong ulOverlayHandle,VROverlayInputMethod eInputMethod)
- {
- EVROverlayError result = FnTable.SetOverlayInputMethod(ulOverlayHandle,eInputMethod);
- return result;
- }
- public EVROverlayError GetOverlayMouseScale(ulong ulOverlayHandle,ref HmdVector2_t pvecMouseScale)
- {
- EVROverlayError result = FnTable.GetOverlayMouseScale(ulOverlayHandle,ref pvecMouseScale);
- return result;
- }
- public EVROverlayError SetOverlayMouseScale(ulong ulOverlayHandle,ref HmdVector2_t pvecMouseScale)
- {
- EVROverlayError result = FnTable.SetOverlayMouseScale(ulOverlayHandle,ref pvecMouseScale);
- return result;
- }
- public bool ComputeOverlayIntersection(ulong ulOverlayHandle,ref VROverlayIntersectionParams_t pParams,ref VROverlayIntersectionResults_t pResults)
- {
- bool result = FnTable.ComputeOverlayIntersection(ulOverlayHandle,ref pParams,ref pResults);
- return result;
- }
- public bool HandleControllerOverlayInteractionAsMouse(ulong ulOverlayHandle,uint unControllerDeviceIndex)
- {
- bool result = FnTable.HandleControllerOverlayInteractionAsMouse(ulOverlayHandle,unControllerDeviceIndex);
- return result;
- }
- public bool IsHoverTargetOverlay(ulong ulOverlayHandle)
- {
- bool result = FnTable.IsHoverTargetOverlay(ulOverlayHandle);
- return result;
- }
- public ulong GetGamepadFocusOverlay()
- {
- ulong result = FnTable.GetGamepadFocusOverlay();
- return result;
- }
- public EVROverlayError SetGamepadFocusOverlay(ulong ulNewFocusOverlay)
- {
- EVROverlayError result = FnTable.SetGamepadFocusOverlay(ulNewFocusOverlay);
- return result;
- }
- public EVROverlayError SetOverlayNeighbor(EOverlayDirection eDirection,ulong ulFrom,ulong ulTo)
- {
- EVROverlayError result = FnTable.SetOverlayNeighbor(eDirection,ulFrom,ulTo);
- return result;
- }
- public EVROverlayError MoveGamepadFocusToNeighbor(EOverlayDirection eDirection,ulong ulFrom)
- {
- EVROverlayError result = FnTable.MoveGamepadFocusToNeighbor(eDirection,ulFrom);
- return result;
- }
- public EVROverlayError SetOverlayTexture(ulong ulOverlayHandle,ref Texture_t pTexture)
- {
- EVROverlayError result = FnTable.SetOverlayTexture(ulOverlayHandle,ref pTexture);
- return result;
- }
- public EVROverlayError ClearOverlayTexture(ulong ulOverlayHandle)
- {
- EVROverlayError result = FnTable.ClearOverlayTexture(ulOverlayHandle);
- return result;
- }
- public EVROverlayError SetOverlayRaw(ulong ulOverlayHandle,IntPtr pvBuffer,uint unWidth,uint unHeight,uint unDepth)
- {
- EVROverlayError result = FnTable.SetOverlayRaw(ulOverlayHandle,pvBuffer,unWidth,unHeight,unDepth);
- return result;
- }
- public EVROverlayError SetOverlayFromFile(ulong ulOverlayHandle,string pchFilePath)
- {
- EVROverlayError result = FnTable.SetOverlayFromFile(ulOverlayHandle,pchFilePath);
- return result;
- }
- public EVROverlayError GetOverlayTexture(ulong ulOverlayHandle,ref IntPtr pNativeTextureHandle,IntPtr pNativeTextureRef,ref uint pWidth,ref uint pHeight,ref uint pNativeFormat,ref ETextureType pAPIType,ref EColorSpace pColorSpace,ref VRTextureBounds_t pTextureBounds)
- {
- pWidth = 0;
- pHeight = 0;
- pNativeFormat = 0;
- EVROverlayError result = FnTable.GetOverlayTexture(ulOverlayHandle,ref pNativeTextureHandle,pNativeTextureRef,ref pWidth,ref pHeight,ref pNativeFormat,ref pAPIType,ref pColorSpace,ref pTextureBounds);
- return result;
- }
- public EVROverlayError ReleaseNativeOverlayHandle(ulong ulOverlayHandle,IntPtr pNativeTextureHandle)
- {
- EVROverlayError result = FnTable.ReleaseNativeOverlayHandle(ulOverlayHandle,pNativeTextureHandle);
- return result;
- }
- public EVROverlayError GetOverlayTextureSize(ulong ulOverlayHandle,ref uint pWidth,ref uint pHeight)
- {
- pWidth = 0;
- pHeight = 0;
- EVROverlayError result = FnTable.GetOverlayTextureSize(ulOverlayHandle,ref pWidth,ref pHeight);
- return result;
- }
- public EVROverlayError CreateDashboardOverlay(string pchOverlayKey,string pchOverlayFriendlyName,ref ulong pMainHandle,ref ulong pThumbnailHandle)
- {
- pMainHandle = 0;
- pThumbnailHandle = 0;
- EVROverlayError result = FnTable.CreateDashboardOverlay(pchOverlayKey,pchOverlayFriendlyName,ref pMainHandle,ref pThumbnailHandle);
- return result;
- }
- public bool IsDashboardVisible()
- {
- bool result = FnTable.IsDashboardVisible();
- return result;
- }
- public bool IsActiveDashboardOverlay(ulong ulOverlayHandle)
- {
- bool result = FnTable.IsActiveDashboardOverlay(ulOverlayHandle);
- return result;
- }
- public EVROverlayError SetDashboardOverlaySceneProcess(ulong ulOverlayHandle,uint unProcessId)
- {
- EVROverlayError result = FnTable.SetDashboardOverlaySceneProcess(ulOverlayHandle,unProcessId);
- return result;
- }
- public EVROverlayError GetDashboardOverlaySceneProcess(ulong ulOverlayHandle,ref uint punProcessId)
- {
- punProcessId = 0;
- EVROverlayError result = FnTable.GetDashboardOverlaySceneProcess(ulOverlayHandle,ref punProcessId);
- return result;
- }
- public void ShowDashboard(string pchOverlayToShow)
- {
- FnTable.ShowDashboard(pchOverlayToShow);
- }
- public uint GetPrimaryDashboardDevice()
- {
- uint result = FnTable.GetPrimaryDashboardDevice();
- return result;
- }
- public EVROverlayError ShowKeyboard(int eInputMode,int eLineInputMode,string pchDescription,uint unCharMax,string pchExistingText,bool bUseMinimalMode,ulong uUserValue)
- {
- EVROverlayError result = FnTable.ShowKeyboard(eInputMode,eLineInputMode,pchDescription,unCharMax,pchExistingText,bUseMinimalMode,uUserValue);
- return result;
- }
- public EVROverlayError ShowKeyboardForOverlay(ulong ulOverlayHandle,int eInputMode,int eLineInputMode,string pchDescription,uint unCharMax,string pchExistingText,bool bUseMinimalMode,ulong uUserValue)
- {
- EVROverlayError result = FnTable.ShowKeyboardForOverlay(ulOverlayHandle,eInputMode,eLineInputMode,pchDescription,unCharMax,pchExistingText,bUseMinimalMode,uUserValue);
- return result;
- }
- public uint GetKeyboardText(System.Text.StringBuilder pchText,uint cchText)
- {
- uint result = FnTable.GetKeyboardText(pchText,cchText);
- return result;
- }
- public void HideKeyboard()
- {
- FnTable.HideKeyboard();
- }
- public void SetKeyboardTransformAbsolute(ETrackingUniverseOrigin eTrackingOrigin,ref HmdMatrix34_t pmatTrackingOriginToKeyboardTransform)
- {
- FnTable.SetKeyboardTransformAbsolute(eTrackingOrigin,ref pmatTrackingOriginToKeyboardTransform);
- }
- public void SetKeyboardPositionForOverlay(ulong ulOverlayHandle,HmdRect2_t avoidRect)
- {
- FnTable.SetKeyboardPositionForOverlay(ulOverlayHandle,avoidRect);
- }
- public EVROverlayError SetOverlayIntersectionMask(ulong ulOverlayHandle,ref VROverlayIntersectionMaskPrimitive_t pMaskPrimitives,uint unNumMaskPrimitives,uint unPrimitiveSize)
- {
- EVROverlayError result = FnTable.SetOverlayIntersectionMask(ulOverlayHandle,ref pMaskPrimitives,unNumMaskPrimitives,unPrimitiveSize);
- return result;
- }
- public EVROverlayError GetOverlayFlags(ulong ulOverlayHandle,ref uint pFlags)
- {
- pFlags = 0;
- EVROverlayError result = FnTable.GetOverlayFlags(ulOverlayHandle,ref pFlags);
- return result;
- }
- public VRMessageOverlayResponse ShowMessageOverlay(string pchText,string pchCaption,string pchButton0Text,string pchButton1Text,string pchButton2Text,string pchButton3Text)
- {
- VRMessageOverlayResponse result = FnTable.ShowMessageOverlay(pchText,pchCaption,pchButton0Text,pchButton1Text,pchButton2Text,pchButton3Text);
- return result;
- }
- public void CloseMessageOverlay()
- {
- FnTable.CloseMessageOverlay();
- }
-}
-
-
-public class CVRRenderModels
-{
- IVRRenderModels FnTable;
- internal CVRRenderModels(IntPtr pInterface)
- {
- FnTable = (IVRRenderModels)Marshal.PtrToStructure(pInterface, typeof(IVRRenderModels));
- }
- public EVRRenderModelError LoadRenderModel_Async(string pchRenderModelName,ref IntPtr ppRenderModel)
- {
- EVRRenderModelError result = FnTable.LoadRenderModel_Async(pchRenderModelName,ref ppRenderModel);
- return result;
- }
- public void FreeRenderModel(IntPtr pRenderModel)
- {
- FnTable.FreeRenderModel(pRenderModel);
- }
- public EVRRenderModelError LoadTexture_Async(int textureId,ref IntPtr ppTexture)
- {
- EVRRenderModelError result = FnTable.LoadTexture_Async(textureId,ref ppTexture);
- return result;
- }
- public void FreeTexture(IntPtr pTexture)
- {
- FnTable.FreeTexture(pTexture);
- }
- public EVRRenderModelError LoadTextureD3D11_Async(int textureId,IntPtr pD3D11Device,ref IntPtr ppD3D11Texture2D)
- {
- EVRRenderModelError result = FnTable.LoadTextureD3D11_Async(textureId,pD3D11Device,ref ppD3D11Texture2D);
- return result;
- }
- public EVRRenderModelError LoadIntoTextureD3D11_Async(int textureId,IntPtr pDstTexture)
- {
- EVRRenderModelError result = FnTable.LoadIntoTextureD3D11_Async(textureId,pDstTexture);
- return result;
- }
- public void FreeTextureD3D11(IntPtr pD3D11Texture2D)
- {
- FnTable.FreeTextureD3D11(pD3D11Texture2D);
- }
- public uint GetRenderModelName(uint unRenderModelIndex,System.Text.StringBuilder pchRenderModelName,uint unRenderModelNameLen)
- {
- uint result = FnTable.GetRenderModelName(unRenderModelIndex,pchRenderModelName,unRenderModelNameLen);
- return result;
- }
- public uint GetRenderModelCount()
- {
- uint result = FnTable.GetRenderModelCount();
- return result;
- }
- public uint GetComponentCount(string pchRenderModelName)
- {
- uint result = FnTable.GetComponentCount(pchRenderModelName);
- return result;
- }
- public uint GetComponentName(string pchRenderModelName,uint unComponentIndex,System.Text.StringBuilder pchComponentName,uint unComponentNameLen)
- {
- uint result = FnTable.GetComponentName(pchRenderModelName,unComponentIndex,pchComponentName,unComponentNameLen);
- return result;
- }
- public ulong GetComponentButtonMask(string pchRenderModelName,string pchComponentName)
- {
- ulong result = FnTable.GetComponentButtonMask(pchRenderModelName,pchComponentName);
- return result;
- }
- public uint GetComponentRenderModelName(string pchRenderModelName,string pchComponentName,System.Text.StringBuilder pchComponentRenderModelName,uint unComponentRenderModelNameLen)
- {
- uint result = FnTable.GetComponentRenderModelName(pchRenderModelName,pchComponentName,pchComponentRenderModelName,unComponentRenderModelNameLen);
- return result;
- }
-// This is a terrible hack to workaround the fact that VRControllerState_t and VREvent_t were
-// originally mis-compiled with the wrong packing for Linux and OSX.
- [UnmanagedFunctionPointer(CallingConvention.StdCall)]
- internal delegate bool _GetComponentStatePacked(string pchRenderModelName,string pchComponentName,ref VRControllerState_t_Packed pControllerState,ref RenderModel_ControllerMode_State_t pState,ref RenderModel_ComponentState_t pComponentState);
- [StructLayout(LayoutKind.Explicit)]
- struct GetComponentStateUnion
- {
- [FieldOffset(0)]
- public IVRRenderModels._GetComponentState pGetComponentState;
- [FieldOffset(0)]
- public _GetComponentStatePacked pGetComponentStatePacked;
- }
- public bool GetComponentState(string pchRenderModelName,string pchComponentName,ref VRControllerState_t pControllerState,ref RenderModel_ControllerMode_State_t pState,ref RenderModel_ComponentState_t pComponentState)
- {
-#if !UNITY_METRO
- if ((System.Environment.OSVersion.Platform == System.PlatformID.MacOSX) ||
- (System.Environment.OSVersion.Platform == System.PlatformID.Unix))
- {
- GetComponentStateUnion u;
- VRControllerState_t_Packed state_packed = new VRControllerState_t_Packed(pControllerState);
- u.pGetComponentStatePacked = null;
- u.pGetComponentState = FnTable.GetComponentState;
- bool packed_result = u.pGetComponentStatePacked(pchRenderModelName,pchComponentName,ref state_packed,ref pState,ref pComponentState);
-
- state_packed.Unpack(ref pControllerState);
- return packed_result;
- }
-#endif
- bool result = FnTable.GetComponentState(pchRenderModelName,pchComponentName,ref pControllerState,ref pState,ref pComponentState);
- return result;
- }
- public bool RenderModelHasComponent(string pchRenderModelName,string pchComponentName)
- {
- bool result = FnTable.RenderModelHasComponent(pchRenderModelName,pchComponentName);
- return result;
- }
- public uint GetRenderModelThumbnailURL(string pchRenderModelName,System.Text.StringBuilder pchThumbnailURL,uint unThumbnailURLLen,ref EVRRenderModelError peError)
- {
- uint result = FnTable.GetRenderModelThumbnailURL(pchRenderModelName,pchThumbnailURL,unThumbnailURLLen,ref peError);
- return result;
- }
- public uint GetRenderModelOriginalPath(string pchRenderModelName,System.Text.StringBuilder pchOriginalPath,uint unOriginalPathLen,ref EVRRenderModelError peError)
- {
- uint result = FnTable.GetRenderModelOriginalPath(pchRenderModelName,pchOriginalPath,unOriginalPathLen,ref peError);
- return result;
- }
- public string GetRenderModelErrorNameFromEnum(EVRRenderModelError error)
- {
- IntPtr result = FnTable.GetRenderModelErrorNameFromEnum(error);
- return Marshal.PtrToStringAnsi(result);
- }
-}
-
-
-public class CVRNotifications
-{
- IVRNotifications FnTable;
- internal CVRNotifications(IntPtr pInterface)
- {
- FnTable = (IVRNotifications)Marshal.PtrToStructure(pInterface, typeof(IVRNotifications));
- }
- public EVRNotificationError CreateNotification(ulong ulOverlayHandle,ulong ulUserValue,EVRNotificationType type,string pchText,EVRNotificationStyle style,ref NotificationBitmap_t pImage,ref uint pNotificationId)
- {
- pNotificationId = 0;
- EVRNotificationError result = FnTable.CreateNotification(ulOverlayHandle,ulUserValue,type,pchText,style,ref pImage,ref pNotificationId);
- return result;
- }
- public EVRNotificationError RemoveNotification(uint notificationId)
- {
- EVRNotificationError result = FnTable.RemoveNotification(notificationId);
- return result;
- }
-}
-
-
-public class CVRSettings
-{
- IVRSettings FnTable;
- internal CVRSettings(IntPtr pInterface)
- {
- FnTable = (IVRSettings)Marshal.PtrToStructure(pInterface, typeof(IVRSettings));
- }
- public string GetSettingsErrorNameFromEnum(EVRSettingsError eError)
- {
- IntPtr result = FnTable.GetSettingsErrorNameFromEnum(eError);
- return Marshal.PtrToStringAnsi(result);
- }
- public bool Sync(bool bForce,ref EVRSettingsError peError)
- {
- bool result = FnTable.Sync(bForce,ref peError);
- return result;
- }
- public void SetBool(string pchSection,string pchSettingsKey,bool bValue,ref EVRSettingsError peError)
- {
- FnTable.SetBool(pchSection,pchSettingsKey,bValue,ref peError);
- }
- public void SetInt32(string pchSection,string pchSettingsKey,int nValue,ref EVRSettingsError peError)
- {
- FnTable.SetInt32(pchSection,pchSettingsKey,nValue,ref peError);
- }
- public void SetFloat(string pchSection,string pchSettingsKey,float flValue,ref EVRSettingsError peError)
- {
- FnTable.SetFloat(pchSection,pchSettingsKey,flValue,ref peError);
- }
- public void SetString(string pchSection,string pchSettingsKey,string pchValue,ref EVRSettingsError peError)
- {
- FnTable.SetString(pchSection,pchSettingsKey,pchValue,ref peError);
- }
- public bool GetBool(string pchSection,string pchSettingsKey,ref EVRSettingsError peError)
- {
- bool result = FnTable.GetBool(pchSection,pchSettingsKey,ref peError);
- return result;
- }
- public int GetInt32(string pchSection,string pchSettingsKey,ref EVRSettingsError peError)
- {
- int result = FnTable.GetInt32(pchSection,pchSettingsKey,ref peError);
- return result;
- }
- public float GetFloat(string pchSection,string pchSettingsKey,ref EVRSettingsError peError)
- {
- float result = FnTable.GetFloat(pchSection,pchSettingsKey,ref peError);
- return result;
- }
- public void GetString(string pchSection,string pchSettingsKey,System.Text.StringBuilder pchValue,uint unValueLen,ref EVRSettingsError peError)
- {
- FnTable.GetString(pchSection,pchSettingsKey,pchValue,unValueLen,ref peError);
- }
- public void RemoveSection(string pchSection,ref EVRSettingsError peError)
- {
- FnTable.RemoveSection(pchSection,ref peError);
- }
- public void RemoveKeyInSection(string pchSection,string pchSettingsKey,ref EVRSettingsError peError)
- {
- FnTable.RemoveKeyInSection(pchSection,pchSettingsKey,ref peError);
- }
-}
-
-
-public class CVRScreenshots
-{
- IVRScreenshots FnTable;
- internal CVRScreenshots(IntPtr pInterface)
- {
- FnTable = (IVRScreenshots)Marshal.PtrToStructure(pInterface, typeof(IVRScreenshots));
- }
- public EVRScreenshotError RequestScreenshot(ref uint pOutScreenshotHandle,EVRScreenshotType type,string pchPreviewFilename,string pchVRFilename)
- {
- pOutScreenshotHandle = 0;
- EVRScreenshotError result = FnTable.RequestScreenshot(ref pOutScreenshotHandle,type,pchPreviewFilename,pchVRFilename);
- return result;
- }
- public EVRScreenshotError HookScreenshot(EVRScreenshotType [] pSupportedTypes)
- {
- EVRScreenshotError result = FnTable.HookScreenshot(pSupportedTypes,(int) pSupportedTypes.Length);
- return result;
- }
- public EVRScreenshotType GetScreenshotPropertyType(uint screenshotHandle,ref EVRScreenshotError pError)
- {
- EVRScreenshotType result = FnTable.GetScreenshotPropertyType(screenshotHandle,ref pError);
- return result;
- }
- public uint GetScreenshotPropertyFilename(uint screenshotHandle,EVRScreenshotPropertyFilenames filenameType,System.Text.StringBuilder pchFilename,uint cchFilename,ref EVRScreenshotError pError)
- {
- uint result = FnTable.GetScreenshotPropertyFilename(screenshotHandle,filenameType,pchFilename,cchFilename,ref pError);
- return result;
- }
- public EVRScreenshotError UpdateScreenshotProgress(uint screenshotHandle,float flProgress)
- {
- EVRScreenshotError result = FnTable.UpdateScreenshotProgress(screenshotHandle,flProgress);
- return result;
- }
- public EVRScreenshotError TakeStereoScreenshot(ref uint pOutScreenshotHandle,string pchPreviewFilename,string pchVRFilename)
- {
- pOutScreenshotHandle = 0;
- EVRScreenshotError result = FnTable.TakeStereoScreenshot(ref pOutScreenshotHandle,pchPreviewFilename,pchVRFilename);
- return result;
- }
- public EVRScreenshotError SubmitScreenshot(uint screenshotHandle,EVRScreenshotType type,string pchSourcePreviewFilename,string pchSourceVRFilename)
- {
- EVRScreenshotError result = FnTable.SubmitScreenshot(screenshotHandle,type,pchSourcePreviewFilename,pchSourceVRFilename);
- return result;
- }
-}
-
-
-public class CVRResources
-{
- IVRResources FnTable;
- internal CVRResources(IntPtr pInterface)
- {
- FnTable = (IVRResources)Marshal.PtrToStructure(pInterface, typeof(IVRResources));
- }
- public uint LoadSharedResource(string pchResourceName,string pchBuffer,uint unBufferLen)
- {
- uint result = FnTable.LoadSharedResource(pchResourceName,pchBuffer,unBufferLen);
- return result;
- }
- public uint GetResourceFullPath(string pchResourceName,string pchResourceTypeDirectory,string pchPathBuffer,uint unBufferLen)
- {
- uint result = FnTable.GetResourceFullPath(pchResourceName,pchResourceTypeDirectory,pchPathBuffer,unBufferLen);
- return result;
- }
-}
-
-
-public class CVRDriverManager
-{
- IVRDriverManager FnTable;
- internal CVRDriverManager(IntPtr pInterface)
- {
- FnTable = (IVRDriverManager)Marshal.PtrToStructure(pInterface, typeof(IVRDriverManager));
- }
- public uint GetDriverCount()
- {
- uint result = FnTable.GetDriverCount();
- return result;
- }
- public uint GetDriverName(uint nDriver,System.Text.StringBuilder pchValue,uint unBufferSize)
- {
- uint result = FnTable.GetDriverName(nDriver,pchValue,unBufferSize);
- return result;
- }
-}
-
-
-public class OpenVRInterop
-{
- [DllImportAttribute("openvr_api", EntryPoint = "VR_InitInternal", CallingConvention = CallingConvention.Cdecl)]
- internal static extern uint InitInternal(ref EVRInitError peError, EVRApplicationType eApplicationType);
- [DllImportAttribute("openvr_api", EntryPoint = "VR_ShutdownInternal", CallingConvention = CallingConvention.Cdecl)]
- internal static extern void ShutdownInternal();
- [DllImportAttribute("openvr_api", EntryPoint = "VR_IsHmdPresent", CallingConvention = CallingConvention.Cdecl)]
- internal static extern bool IsHmdPresent();
- [DllImportAttribute("openvr_api", EntryPoint = "VR_IsRuntimeInstalled", CallingConvention = CallingConvention.Cdecl)]
- internal static extern bool IsRuntimeInstalled();
- [DllImportAttribute("openvr_api", EntryPoint = "VR_GetStringForHmdError", CallingConvention = CallingConvention.Cdecl)]
- internal static extern IntPtr GetStringForHmdError(EVRInitError error);
- [DllImportAttribute("openvr_api", EntryPoint = "VR_GetGenericInterface", CallingConvention = CallingConvention.Cdecl)]
- internal static extern IntPtr GetGenericInterface([In, MarshalAs(UnmanagedType.LPStr)] string pchInterfaceVersion, ref EVRInitError peError);
- [DllImportAttribute("openvr_api", EntryPoint = "VR_IsInterfaceVersionValid", CallingConvention = CallingConvention.Cdecl)]
- internal static extern bool IsInterfaceVersionValid([In, MarshalAs(UnmanagedType.LPStr)] string pchInterfaceVersion);
- [DllImportAttribute("openvr_api", EntryPoint = "VR_GetInitToken", CallingConvention = CallingConvention.Cdecl)]
- internal static extern uint GetInitToken();
-}
-
-
-public enum EVREye
-{
- Eye_Left = 0,
- Eye_Right = 1,
-}
-public enum ETextureType
-{
- DirectX = 0,
- OpenGL = 1,
- Vulkan = 2,
- IOSurface = 3,
- DirectX12 = 4,
-}
-public enum EColorSpace
-{
- Auto = 0,
- Gamma = 1,
- Linear = 2,
-}
-public enum ETrackingResult
-{
- Uninitialized = 1,
- Calibrating_InProgress = 100,
- Calibrating_OutOfRange = 101,
- Running_OK = 200,
- Running_OutOfRange = 201,
-}
-public enum ETrackedDeviceClass
-{
- Invalid = 0,
- HMD = 1,
- Controller = 2,
- GenericTracker = 3,
- TrackingReference = 4,
- DisplayRedirect = 5,
-}
-public enum ETrackedControllerRole
-{
- Invalid = 0,
- LeftHand = 1,
- RightHand = 2,
-}
-public enum ETrackingUniverseOrigin
-{
- TrackingUniverseSeated = 0,
- TrackingUniverseStanding = 1,
- TrackingUniverseRawAndUncalibrated = 2,
-}
-public enum ETrackedDeviceProperty
-{
- Prop_Invalid = 0,
- Prop_TrackingSystemName_String = 1000,
- Prop_ModelNumber_String = 1001,
- Prop_SerialNumber_String = 1002,
- Prop_RenderModelName_String = 1003,
- Prop_WillDriftInYaw_Bool = 1004,
- Prop_ManufacturerName_String = 1005,
- Prop_TrackingFirmwareVersion_String = 1006,
- Prop_HardwareRevision_String = 1007,
- Prop_AllWirelessDongleDescriptions_String = 1008,
- Prop_ConnectedWirelessDongle_String = 1009,
- Prop_DeviceIsWireless_Bool = 1010,
- Prop_DeviceIsCharging_Bool = 1011,
- Prop_DeviceBatteryPercentage_Float = 1012,
- Prop_StatusDisplayTransform_Matrix34 = 1013,
- Prop_Firmware_UpdateAvailable_Bool = 1014,
- Prop_Firmware_ManualUpdate_Bool = 1015,
- Prop_Firmware_ManualUpdateURL_String = 1016,
- Prop_HardwareRevision_Uint64 = 1017,
- Prop_FirmwareVersion_Uint64 = 1018,
- Prop_FPGAVersion_Uint64 = 1019,
- Prop_VRCVersion_Uint64 = 1020,
- Prop_RadioVersion_Uint64 = 1021,
- Prop_DongleVersion_Uint64 = 1022,
- Prop_BlockServerShutdown_Bool = 1023,
- Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024,
- Prop_ContainsProximitySensor_Bool = 1025,
- Prop_DeviceProvidesBatteryStatus_Bool = 1026,
- Prop_DeviceCanPowerOff_Bool = 1027,
- Prop_Firmware_ProgrammingTarget_String = 1028,
- Prop_DeviceClass_Int32 = 1029,
- Prop_HasCamera_Bool = 1030,
- Prop_DriverVersion_String = 1031,
- Prop_Firmware_ForceUpdateRequired_Bool = 1032,
- Prop_ViveSystemButtonFixRequired_Bool = 1033,
- Prop_ParentDriver_Uint64 = 1034,
- Prop_ResourceRoot_String = 1035,
- Prop_ReportsTimeSinceVSync_Bool = 2000,
- Prop_SecondsFromVsyncToPhotons_Float = 2001,
- Prop_DisplayFrequency_Float = 2002,
- Prop_UserIpdMeters_Float = 2003,
- Prop_CurrentUniverseId_Uint64 = 2004,
- Prop_PreviousUniverseId_Uint64 = 2005,
- Prop_DisplayFirmwareVersion_Uint64 = 2006,
- Prop_IsOnDesktop_Bool = 2007,
- Prop_DisplayMCType_Int32 = 2008,
- Prop_DisplayMCOffset_Float = 2009,
- Prop_DisplayMCScale_Float = 2010,
- Prop_EdidVendorID_Int32 = 2011,
- Prop_DisplayMCImageLeft_String = 2012,
- Prop_DisplayMCImageRight_String = 2013,
- Prop_DisplayGCBlackClamp_Float = 2014,
- Prop_EdidProductID_Int32 = 2015,
- Prop_CameraToHeadTransform_Matrix34 = 2016,
- Prop_DisplayGCType_Int32 = 2017,
- Prop_DisplayGCOffset_Float = 2018,
- Prop_DisplayGCScale_Float = 2019,
- Prop_DisplayGCPrescale_Float = 2020,
- Prop_DisplayGCImage_String = 2021,
- Prop_LensCenterLeftU_Float = 2022,
- Prop_LensCenterLeftV_Float = 2023,
- Prop_LensCenterRightU_Float = 2024,
- Prop_LensCenterRightV_Float = 2025,
- Prop_UserHeadToEyeDepthMeters_Float = 2026,
- Prop_CameraFirmwareVersion_Uint64 = 2027,
- Prop_CameraFirmwareDescription_String = 2028,
- Prop_DisplayFPGAVersion_Uint64 = 2029,
- Prop_DisplayBootloaderVersion_Uint64 = 2030,
- Prop_DisplayHardwareVersion_Uint64 = 2031,
- Prop_AudioFirmwareVersion_Uint64 = 2032,
- Prop_CameraCompatibilityMode_Int32 = 2033,
- Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034,
- Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035,
- Prop_DisplaySuppressed_Bool = 2036,
- Prop_DisplayAllowNightMode_Bool = 2037,
- Prop_DisplayMCImageWidth_Int32 = 2038,
- Prop_DisplayMCImageHeight_Int32 = 2039,
- Prop_DisplayMCImageNumChannels_Int32 = 2040,
- Prop_DisplayMCImageData_Binary = 2041,
- Prop_SecondsFromPhotonsToVblank_Float = 2042,
- Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043,
- Prop_DisplayDebugMode_Bool = 2044,
- Prop_GraphicsAdapterLuid_Uint64 = 2045,
- Prop_DriverProvidedChaperonePath_String = 2048,
- Prop_AttachedDeviceId_String = 3000,
- Prop_SupportedButtons_Uint64 = 3001,
- Prop_Axis0Type_Int32 = 3002,
- Prop_Axis1Type_Int32 = 3003,
- Prop_Axis2Type_Int32 = 3004,
- Prop_Axis3Type_Int32 = 3005,
- Prop_Axis4Type_Int32 = 3006,
- Prop_ControllerRoleHint_Int32 = 3007,
- Prop_FieldOfViewLeftDegrees_Float = 4000,
- Prop_FieldOfViewRightDegrees_Float = 4001,
- Prop_FieldOfViewTopDegrees_Float = 4002,
- Prop_FieldOfViewBottomDegrees_Float = 4003,
- Prop_TrackingRangeMinimumMeters_Float = 4004,
- Prop_TrackingRangeMaximumMeters_Float = 4005,
- Prop_ModeLabel_String = 4006,
- Prop_IconPathName_String = 5000,
- Prop_NamedIconPathDeviceOff_String = 5001,
- Prop_NamedIconPathDeviceSearching_String = 5002,
- Prop_NamedIconPathDeviceSearchingAlert_String = 5003,
- Prop_NamedIconPathDeviceReady_String = 5004,
- Prop_NamedIconPathDeviceReadyAlert_String = 5005,
- Prop_NamedIconPathDeviceNotReady_String = 5006,
- Prop_NamedIconPathDeviceStandby_String = 5007,
- Prop_NamedIconPathDeviceAlertLow_String = 5008,
- Prop_DisplayHiddenArea_Binary_Start = 5100,
- Prop_DisplayHiddenArea_Binary_End = 5150,
- Prop_UserConfigPath_String = 6000,
- Prop_InstallPath_String = 6001,
- Prop_HasDisplayComponent_Bool = 6002,
- Prop_HasControllerComponent_Bool = 6003,
- Prop_HasCameraComponent_Bool = 6004,
- Prop_HasDriverDirectModeComponent_Bool = 6005,
- Prop_HasVirtualDisplayComponent_Bool = 6006,
- Prop_VendorSpecific_Reserved_Start = 10000,
- Prop_VendorSpecific_Reserved_End = 10999,
-}
-public enum ETrackedPropertyError
-{
- TrackedProp_Success = 0,
- TrackedProp_WrongDataType = 1,
- TrackedProp_WrongDeviceClass = 2,
- TrackedProp_BufferTooSmall = 3,
- TrackedProp_UnknownProperty = 4,
- TrackedProp_InvalidDevice = 5,
- TrackedProp_CouldNotContactServer = 6,
- TrackedProp_ValueNotProvidedByDevice = 7,
- TrackedProp_StringExceedsMaximumLength = 8,
- TrackedProp_NotYetAvailable = 9,
- TrackedProp_PermissionDenied = 10,
- TrackedProp_InvalidOperation = 11,
-}
-public enum EVRSubmitFlags
-{
- Submit_Default = 0,
- Submit_LensDistortionAlreadyApplied = 1,
- Submit_GlRenderBuffer = 2,
- Submit_Reserved = 4,
- Submit_TextureWithPose = 8,
-}
-public enum EVRState
-{
- Undefined = -1,
- Off = 0,
- Searching = 1,
- Searching_Alert = 2,
- Ready = 3,
- Ready_Alert = 4,
- NotReady = 5,
- Standby = 6,
- Ready_Alert_Low = 7,
-}
-public enum EVREventType
-{
- VREvent_None = 0,
- VREvent_TrackedDeviceActivated = 100,
- VREvent_TrackedDeviceDeactivated = 101,
- VREvent_TrackedDeviceUpdated = 102,
- VREvent_TrackedDeviceUserInteractionStarted = 103,
- VREvent_TrackedDeviceUserInteractionEnded = 104,
- VREvent_IpdChanged = 105,
- VREvent_EnterStandbyMode = 106,
- VREvent_LeaveStandbyMode = 107,
- VREvent_TrackedDeviceRoleChanged = 108,
- VREvent_WatchdogWakeUpRequested = 109,
- VREvent_LensDistortionChanged = 110,
- VREvent_PropertyChanged = 111,
- VREvent_WirelessDisconnect = 112,
- VREvent_WirelessReconnect = 113,
- VREvent_ButtonPress = 200,
- VREvent_ButtonUnpress = 201,
- VREvent_ButtonTouch = 202,
- VREvent_ButtonUntouch = 203,
- VREvent_MouseMove = 300,
- VREvent_MouseButtonDown = 301,
- VREvent_MouseButtonUp = 302,
- VREvent_FocusEnter = 303,
- VREvent_FocusLeave = 304,
- VREvent_Scroll = 305,
- VREvent_TouchPadMove = 306,
- VREvent_OverlayFocusChanged = 307,
- VREvent_InputFocusCaptured = 400,
- VREvent_InputFocusReleased = 401,
- VREvent_SceneFocusLost = 402,
- VREvent_SceneFocusGained = 403,
- VREvent_SceneApplicationChanged = 404,
- VREvent_SceneFocusChanged = 405,
- VREvent_InputFocusChanged = 406,
- VREvent_SceneApplicationSecondaryRenderingStarted = 407,
- VREvent_HideRenderModels = 410,
- VREvent_ShowRenderModels = 411,
- VREvent_OverlayShown = 500,
- VREvent_OverlayHidden = 501,
- VREvent_DashboardActivated = 502,
- VREvent_DashboardDeactivated = 503,
- VREvent_DashboardThumbSelected = 504,
- VREvent_DashboardRequested = 505,
- VREvent_ResetDashboard = 506,
- VREvent_RenderToast = 507,
- VREvent_ImageLoaded = 508,
- VREvent_ShowKeyboard = 509,
- VREvent_HideKeyboard = 510,
- VREvent_OverlayGamepadFocusGained = 511,
- VREvent_OverlayGamepadFocusLost = 512,
- VREvent_OverlaySharedTextureChanged = 513,
- VREvent_DashboardGuideButtonDown = 514,
- VREvent_DashboardGuideButtonUp = 515,
- VREvent_ScreenshotTriggered = 516,
- VREvent_ImageFailed = 517,
- VREvent_DashboardOverlayCreated = 518,
- VREvent_RequestScreenshot = 520,
- VREvent_ScreenshotTaken = 521,
- VREvent_ScreenshotFailed = 522,
- VREvent_SubmitScreenshotToDashboard = 523,
- VREvent_ScreenshotProgressToDashboard = 524,
- VREvent_PrimaryDashboardDeviceChanged = 525,
- VREvent_Notification_Shown = 600,
- VREvent_Notification_Hidden = 601,
- VREvent_Notification_BeginInteraction = 602,
- VREvent_Notification_Destroyed = 603,
- VREvent_Quit = 700,
- VREvent_ProcessQuit = 701,
- VREvent_QuitAborted_UserPrompt = 702,
- VREvent_QuitAcknowledged = 703,
- VREvent_DriverRequestedQuit = 704,
- VREvent_ChaperoneDataHasChanged = 800,
- VREvent_ChaperoneUniverseHasChanged = 801,
- VREvent_ChaperoneTempDataHasChanged = 802,
- VREvent_ChaperoneSettingsHaveChanged = 803,
- VREvent_SeatedZeroPoseReset = 804,
- VREvent_AudioSettingsHaveChanged = 820,
- VREvent_BackgroundSettingHasChanged = 850,
- VREvent_CameraSettingsHaveChanged = 851,
- VREvent_ReprojectionSettingHasChanged = 852,
- VREvent_ModelSkinSettingsHaveChanged = 853,
- VREvent_EnvironmentSettingsHaveChanged = 854,
- VREvent_PowerSettingsHaveChanged = 855,
- VREvent_EnableHomeAppSettingsHaveChanged = 856,
- VREvent_StatusUpdate = 900,
- VREvent_MCImageUpdated = 1000,
- VREvent_FirmwareUpdateStarted = 1100,
- VREvent_FirmwareUpdateFinished = 1101,
- VREvent_KeyboardClosed = 1200,
- VREvent_KeyboardCharInput = 1201,
- VREvent_KeyboardDone = 1202,
- VREvent_ApplicationTransitionStarted = 1300,
- VREvent_ApplicationTransitionAborted = 1301,
- VREvent_ApplicationTransitionNewAppStarted = 1302,
- VREvent_ApplicationListUpdated = 1303,
- VREvent_ApplicationMimeTypeLoad = 1304,
- VREvent_ApplicationTransitionNewAppLaunchComplete = 1305,
- VREvent_ProcessConnected = 1306,
- VREvent_ProcessDisconnected = 1307,
- VREvent_Compositor_MirrorWindowShown = 1400,
- VREvent_Compositor_MirrorWindowHidden = 1401,
- VREvent_Compositor_ChaperoneBoundsShown = 1410,
- VREvent_Compositor_ChaperoneBoundsHidden = 1411,
- VREvent_TrackedCamera_StartVideoStream = 1500,
- VREvent_TrackedCamera_StopVideoStream = 1501,
- VREvent_TrackedCamera_PauseVideoStream = 1502,
- VREvent_TrackedCamera_ResumeVideoStream = 1503,
- VREvent_TrackedCamera_EditingSurface = 1550,
- VREvent_PerformanceTest_EnableCapture = 1600,
- VREvent_PerformanceTest_DisableCapture = 1601,
- VREvent_PerformanceTest_FidelityLevel = 1602,
- VREvent_MessageOverlay_Closed = 1650,
- VREvent_MessageOverlayCloseRequested = 1651,
- VREvent_VendorSpecific_Reserved_Start = 10000,
- VREvent_VendorSpecific_Reserved_End = 19999,
-}
-public enum EDeviceActivityLevel
-{
- k_EDeviceActivityLevel_Unknown = -1,
- k_EDeviceActivityLevel_Idle = 0,
- k_EDeviceActivityLevel_UserInteraction = 1,
- k_EDeviceActivityLevel_UserInteraction_Timeout = 2,
- k_EDeviceActivityLevel_Standby = 3,
-}
-public enum EVRButtonId
-{
- k_EButton_System = 0,
- k_EButton_ApplicationMenu = 1,
- k_EButton_Grip = 2,
- k_EButton_DPad_Left = 3,
- k_EButton_DPad_Up = 4,
- k_EButton_DPad_Right = 5,
- k_EButton_DPad_Down = 6,
- k_EButton_A = 7,
- k_EButton_ProximitySensor = 31,
- k_EButton_Axis0 = 32,
- k_EButton_Axis1 = 33,
- k_EButton_Axis2 = 34,
- k_EButton_Axis3 = 35,
- k_EButton_Axis4 = 36,
- k_EButton_SteamVR_Touchpad = 32,
- k_EButton_SteamVR_Trigger = 33,
- k_EButton_Dashboard_Back = 2,
- k_EButton_Max = 64,
-}
-public enum EVRMouseButton
-{
- Left = 1,
- Right = 2,
- Middle = 4,
-}
-public enum EHiddenAreaMeshType
-{
- k_eHiddenAreaMesh_Standard = 0,
- k_eHiddenAreaMesh_Inverse = 1,
- k_eHiddenAreaMesh_LineLoop = 2,
- k_eHiddenAreaMesh_Max = 3,
-}
-public enum EVRControllerAxisType
-{
- k_eControllerAxis_None = 0,
- k_eControllerAxis_TrackPad = 1,
- k_eControllerAxis_Joystick = 2,
- k_eControllerAxis_Trigger = 3,
-}
-public enum EVRControllerEventOutputType
-{
- ControllerEventOutput_OSEvents = 0,
- ControllerEventOutput_VREvents = 1,
-}
-public enum ECollisionBoundsStyle
-{
- COLLISION_BOUNDS_STYLE_BEGINNER = 0,
- COLLISION_BOUNDS_STYLE_INTERMEDIATE = 1,
- COLLISION_BOUNDS_STYLE_SQUARES = 2,
- COLLISION_BOUNDS_STYLE_ADVANCED = 3,
- COLLISION_BOUNDS_STYLE_NONE = 4,
- COLLISION_BOUNDS_STYLE_COUNT = 5,
-}
-public enum EVROverlayError
-{
- None = 0,
- UnknownOverlay = 10,
- InvalidHandle = 11,
- PermissionDenied = 12,
- OverlayLimitExceeded = 13,
- WrongVisibilityType = 14,
- KeyTooLong = 15,
- NameTooLong = 16,
- KeyInUse = 17,
- WrongTransformType = 18,
- InvalidTrackedDevice = 19,
- InvalidParameter = 20,
- ThumbnailCantBeDestroyed = 21,
- ArrayTooSmall = 22,
- RequestFailed = 23,
- InvalidTexture = 24,
- UnableToLoadFile = 25,
- KeyboardAlreadyInUse = 26,
- NoNeighbor = 27,
- TooManyMaskPrimitives = 29,
- BadMaskPrimitive = 30,
-}
-public enum EVRApplicationType
-{
- VRApplication_Other = 0,
- VRApplication_Scene = 1,
- VRApplication_Overlay = 2,
- VRApplication_Background = 3,
- VRApplication_Utility = 4,
- VRApplication_VRMonitor = 5,
- VRApplication_SteamWatchdog = 6,
- VRApplication_Bootstrapper = 7,
- VRApplication_Max = 8,
-}
-public enum EVRFirmwareError
-{
- None = 0,
- Success = 1,
- Fail = 2,
-}
-public enum EVRNotificationError
-{
- OK = 0,
- InvalidNotificationId = 100,
- NotificationQueueFull = 101,
- InvalidOverlayHandle = 102,
- SystemWithUserValueAlreadyExists = 103,
-}
-public enum EVRInitError
-{
- None = 0,
- Unknown = 1,
- Init_InstallationNotFound = 100,
- Init_InstallationCorrupt = 101,
- Init_VRClientDLLNotFound = 102,
- Init_FileNotFound = 103,
- Init_FactoryNotFound = 104,
- Init_InterfaceNotFound = 105,
- Init_InvalidInterface = 106,
- Init_UserConfigDirectoryInvalid = 107,
- Init_HmdNotFound = 108,
- Init_NotInitialized = 109,
- Init_PathRegistryNotFound = 110,
- Init_NoConfigPath = 111,
- Init_NoLogPath = 112,
- Init_PathRegistryNotWritable = 113,
- Init_AppInfoInitFailed = 114,
- Init_Retry = 115,
- Init_InitCanceledByUser = 116,
- Init_AnotherAppLaunching = 117,
- Init_SettingsInitFailed = 118,
- Init_ShuttingDown = 119,
- Init_TooManyObjects = 120,
- Init_NoServerForBackgroundApp = 121,
- Init_NotSupportedWithCompositor = 122,
- Init_NotAvailableToUtilityApps = 123,
- Init_Internal = 124,
- Init_HmdDriverIdIsNone = 125,
- Init_HmdNotFoundPresenceFailed = 126,
- Init_VRMonitorNotFound = 127,
- Init_VRMonitorStartupFailed = 128,
- Init_LowPowerWatchdogNotSupported = 129,
- Init_InvalidApplicationType = 130,
- Init_NotAvailableToWatchdogApps = 131,
- Init_WatchdogDisabledInSettings = 132,
- Init_VRDashboardNotFound = 133,
- Init_VRDashboardStartupFailed = 134,
- Init_VRHomeNotFound = 135,
- Init_VRHomeStartupFailed = 136,
- Init_RebootingBusy = 137,
- Init_FirmwareUpdateBusy = 138,
- Init_FirmwareRecoveryBusy = 139,
- Driver_Failed = 200,
- Driver_Unknown = 201,
- Driver_HmdUnknown = 202,
- Driver_NotLoaded = 203,
- Driver_RuntimeOutOfDate = 204,
- Driver_HmdInUse = 205,
- Driver_NotCalibrated = 206,
- Driver_CalibrationInvalid = 207,
- Driver_HmdDisplayNotFound = 208,
- Driver_TrackedDeviceInterfaceUnknown = 209,
- Driver_HmdDriverIdOutOfBounds = 211,
- Driver_HmdDisplayMirrored = 212,
- IPC_ServerInitFailed = 300,
- IPC_ConnectFailed = 301,
- IPC_SharedStateInitFailed = 302,
- IPC_CompositorInitFailed = 303,
- IPC_MutexInitFailed = 304,
- IPC_Failed = 305,
- IPC_CompositorConnectFailed = 306,
- IPC_CompositorInvalidConnectResponse = 307,
- IPC_ConnectFailedAfterMultipleAttempts = 308,
- Compositor_Failed = 400,
- Compositor_D3D11HardwareRequired = 401,
- Compositor_FirmwareRequiresUpdate = 402,
- Compositor_OverlayInitFailed = 403,
- Compositor_ScreenshotsInitFailed = 404,
- Compositor_UnableToCreateDevice = 405,
- VendorSpecific_UnableToConnectToOculusRuntime = 1000,
- VendorSpecific_HmdFound_CantOpenDevice = 1101,
- VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
- VendorSpecific_HmdFound_NoStoredConfig = 1103,
- VendorSpecific_HmdFound_ConfigTooBig = 1104,
- VendorSpecific_HmdFound_ConfigTooSmall = 1105,
- VendorSpecific_HmdFound_UnableToInitZLib = 1106,
- VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107,
- VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108,
- VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109,
- VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110,
- VendorSpecific_HmdFound_UserDataAddressRange = 1111,
- VendorSpecific_HmdFound_UserDataError = 1112,
- VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
- Steam_SteamInstallationNotFound = 2000,
-}
-public enum EVRScreenshotType
-{
- None = 0,
- Mono = 1,
- Stereo = 2,
- Cubemap = 3,
- MonoPanorama = 4,
- StereoPanorama = 5,
-}
-public enum EVRScreenshotPropertyFilenames
-{
- Preview = 0,
- VR = 1,
-}
-public enum EVRTrackedCameraError
-{
- None = 0,
- OperationFailed = 100,
- InvalidHandle = 101,
- InvalidFrameHeaderVersion = 102,
- OutOfHandles = 103,
- IPCFailure = 104,
- NotSupportedForThisDevice = 105,
- SharedMemoryFailure = 106,
- FrameBufferingFailure = 107,
- StreamSetupFailure = 108,
- InvalidGLTextureId = 109,
- InvalidSharedTextureHandle = 110,
- FailedToGetGLTextureId = 111,
- SharedTextureFailure = 112,
- NoFrameAvailable = 113,
- InvalidArgument = 114,
- InvalidFrameBufferSize = 115,
-}
-public enum EVRTrackedCameraFrameType
-{
- Distorted = 0,
- Undistorted = 1,
- MaximumUndistorted = 2,
- MAX_CAMERA_FRAME_TYPES = 3,
-}
-public enum EVRApplicationError
-{
- None = 0,
- AppKeyAlreadyExists = 100,
- NoManifest = 101,
- NoApplication = 102,
- InvalidIndex = 103,
- UnknownApplication = 104,
- IPCFailed = 105,
- ApplicationAlreadyRunning = 106,
- InvalidManifest = 107,
- InvalidApplication = 108,
- LaunchFailed = 109,
- ApplicationAlreadyStarting = 110,
- LaunchInProgress = 111,
- OldApplicationQuitting = 112,
- TransitionAborted = 113,
- IsTemplate = 114,
- SteamVRIsExiting = 115,
- BufferTooSmall = 200,
- PropertyNotSet = 201,
- UnknownProperty = 202,
- InvalidParameter = 203,
-}
-public enum EVRApplicationProperty
-{
- Name_String = 0,
- LaunchType_String = 11,
- WorkingDirectory_String = 12,
- BinaryPath_String = 13,
- Arguments_String = 14,
- URL_String = 15,
- Description_String = 50,
- NewsURL_String = 51,
- ImagePath_String = 52,
- Source_String = 53,
- IsDashboardOverlay_Bool = 60,
- IsTemplate_Bool = 61,
- IsInstanced_Bool = 62,
- IsInternal_Bool = 63,
- WantsCompositorPauseInStandby_Bool = 64,
- LastLaunchTime_Uint64 = 70,
-}
-public enum EVRApplicationTransitionState
-{
- VRApplicationTransition_None = 0,
- VRApplicationTransition_OldAppQuitSent = 10,
- VRApplicationTransition_WaitingForExternalLaunch = 11,
- VRApplicationTransition_NewAppLaunched = 20,
-}
-public enum ChaperoneCalibrationState
-{
- OK = 1,
- Warning = 100,
- Warning_BaseStationMayHaveMoved = 101,
- Warning_BaseStationRemoved = 102,
- Warning_SeatedBoundsInvalid = 103,
- Error = 200,
- Error_BaseStationUninitialized = 201,
- Error_BaseStationConflict = 202,
- Error_PlayAreaInvalid = 203,
- Error_CollisionBoundsInvalid = 204,
-}
-public enum EChaperoneConfigFile
-{
- Live = 1,
- Temp = 2,
-}
-public enum EChaperoneImportFlags
-{
- EChaperoneImport_BoundsOnly = 1,
-}
-public enum EVRCompositorError
-{
- None = 0,
- RequestFailed = 1,
- IncompatibleVersion = 100,
- DoNotHaveFocus = 101,
- InvalidTexture = 102,
- IsNotSceneApplication = 103,
- TextureIsOnWrongDevice = 104,
- TextureUsesUnsupportedFormat = 105,
- SharedTexturesNotSupported = 106,
- IndexOutOfRange = 107,
- AlreadySubmitted = 108,
- InvalidBounds = 109,
-}
-public enum VROverlayInputMethod
-{
- None = 0,
- Mouse = 1,
-}
-public enum VROverlayTransformType
-{
- VROverlayTransform_Absolute = 0,
- VROverlayTransform_TrackedDeviceRelative = 1,
- VROverlayTransform_SystemOverlay = 2,
- VROverlayTransform_TrackedComponent = 3,
-}
-public enum VROverlayFlags
-{
- None = 0,
- Curved = 1,
- RGSS4X = 2,
- NoDashboardTab = 3,
- AcceptsGamepadEvents = 4,
- ShowGamepadFocus = 5,
- SendVRScrollEvents = 6,
- SendVRTouchpadEvents = 7,
- ShowTouchPadScrollWheel = 8,
- TransferOwnershipToInternalProcess = 9,
- SideBySide_Parallel = 10,
- SideBySide_Crossed = 11,
- Panorama = 12,
- StereoPanorama = 13,
- SortWithNonSceneOverlays = 14,
- VisibleInDashboard = 15,
-}
-public enum VRMessageOverlayResponse
-{
- ButtonPress_0 = 0,
- ButtonPress_1 = 1,
- ButtonPress_2 = 2,
- ButtonPress_3 = 3,
- CouldntFindSystemOverlay = 4,
- CouldntFindOrCreateClientOverlay = 5,
- ApplicationQuit = 6,
-}
-public enum EGamepadTextInputMode
-{
- k_EGamepadTextInputModeNormal = 0,
- k_EGamepadTextInputModePassword = 1,
- k_EGamepadTextInputModeSubmit = 2,
-}
-public enum EGamepadTextInputLineMode
-{
- k_EGamepadTextInputLineModeSingleLine = 0,
- k_EGamepadTextInputLineModeMultipleLines = 1,
-}
-public enum EOverlayDirection
-{
- Up = 0,
- Down = 1,
- Left = 2,
- Right = 3,
- Count = 4,
-}
-public enum EVROverlayIntersectionMaskPrimitiveType
-{
- OverlayIntersectionPrimitiveType_Rectangle = 0,
- OverlayIntersectionPrimitiveType_Circle = 1,
-}
-public enum EVRRenderModelError
-{
- None = 0,
- Loading = 100,
- NotSupported = 200,
- InvalidArg = 300,
- InvalidModel = 301,
- NoShapes = 302,
- MultipleShapes = 303,
- TooManyVertices = 304,
- MultipleTextures = 305,
- BufferTooSmall = 306,
- NotEnoughNormals = 307,
- NotEnoughTexCoords = 308,
- InvalidTexture = 400,
-}
-public enum EVRComponentProperty
-{
- IsStatic = 1,
- IsVisible = 2,
- IsTouched = 4,
- IsPressed = 8,
- IsScrolled = 16,
-}
-public enum EVRNotificationType
-{
- Transient = 0,
- Persistent = 1,
- Transient_SystemWithUserValue = 2,
-}
-public enum EVRNotificationStyle
-{
- None = 0,
- Application = 100,
- Contact_Disabled = 200,
- Contact_Enabled = 201,
- Contact_Active = 202,
-}
-public enum EVRSettingsError
-{
- None = 0,
- IPCFailed = 1,
- WriteFailed = 2,
- ReadFailed = 3,
- JsonParseFailed = 4,
- UnsetSettingHasNoDefault = 5,
-}
-public enum EVRScreenshotError
-{
- None = 0,
- RequestFailed = 1,
- IncompatibleVersion = 100,
- NotFound = 101,
- BufferTooSmall = 102,
- ScreenshotAlreadyInProgress = 108,
-}
-
-[StructLayout(LayoutKind.Explicit)] public struct VREvent_Data_t
-{
- [FieldOffset(0)] public VREvent_Reserved_t reserved;
- [FieldOffset(0)] public VREvent_Controller_t controller;
- [FieldOffset(0)] public VREvent_Mouse_t mouse;
- [FieldOffset(0)] public VREvent_Scroll_t scroll;
- [FieldOffset(0)] public VREvent_Process_t process;
- [FieldOffset(0)] public VREvent_Notification_t notification;
- [FieldOffset(0)] public VREvent_Overlay_t overlay;
- [FieldOffset(0)] public VREvent_Status_t status;
- [FieldOffset(0)] public VREvent_Ipd_t ipd;
- [FieldOffset(0)] public VREvent_Chaperone_t chaperone;
- [FieldOffset(0)] public VREvent_PerformanceTest_t performanceTest;
- [FieldOffset(0)] public VREvent_TouchPadMove_t touchPadMove;
- [FieldOffset(0)] public VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset;
- [FieldOffset(0)] public VREvent_Screenshot_t screenshot;
- [FieldOffset(0)] public VREvent_ScreenshotProgress_t screenshotProgress;
- [FieldOffset(0)] public VREvent_ApplicationLaunch_t applicationLaunch;
- [FieldOffset(0)] public VREvent_EditingCameraSurface_t cameraSurface;
- [FieldOffset(0)] public VREvent_MessageOverlay_t messageOverlay;
- [FieldOffset(0)] public VREvent_Keyboard_t keyboard; // This has to be at the end due to a mono bug
-}
-
-
-[StructLayout(LayoutKind.Explicit)] public struct VROverlayIntersectionMaskPrimitive_Data_t
-{
- [FieldOffset(0)] public IntersectionMaskRectangle_t m_Rectangle;
- [FieldOffset(0)] public IntersectionMaskCircle_t m_Circle;
-}
-
-[StructLayout(LayoutKind.Sequential)] public struct HmdMatrix34_t
-{
- public float m0; //float[3][4]
- public float m1;
- public float m2;
- public float m3;
- public float m4;
- public float m5;
- public float m6;
- public float m7;
- public float m8;
- public float m9;
- public float m10;
- public float m11;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdMatrix44_t
-{
- public float m0; //float[4][4]
- public float m1;
- public float m2;
- public float m3;
- public float m4;
- public float m5;
- public float m6;
- public float m7;
- public float m8;
- public float m9;
- public float m10;
- public float m11;
- public float m12;
- public float m13;
- public float m14;
- public float m15;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdVector3_t
-{
- public float v0; //float[3]
- public float v1;
- public float v2;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdVector4_t
-{
- public float v0; //float[4]
- public float v1;
- public float v2;
- public float v3;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdVector3d_t
-{
- public double v0; //double[3]
- public double v1;
- public double v2;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdVector2_t
-{
- public float v0; //float[2]
- public float v1;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdQuaternion_t
-{
- public double w;
- public double x;
- public double y;
- public double z;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdColor_t
-{
- public float r;
- public float g;
- public float b;
- public float a;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdQuad_t
-{
- public HmdVector3_t vCorners0; //HmdVector3_t[4]
- public HmdVector3_t vCorners1;
- public HmdVector3_t vCorners2;
- public HmdVector3_t vCorners3;
-}
-[StructLayout(LayoutKind.Sequential)] public struct HmdRect2_t
-{
- public HmdVector2_t vTopLeft;
- public HmdVector2_t vBottomRight;
-}
-[StructLayout(LayoutKind.Sequential)] public struct DistortionCoordinates_t
-{
- public float rfRed0; //float[2]
- public float rfRed1;
- public float rfGreen0; //float[2]
- public float rfGreen1;
- public float rfBlue0; //float[2]
- public float rfBlue1;
-}
-[StructLayout(LayoutKind.Sequential)] public struct Texture_t
-{
- public IntPtr handle; // void *
- public ETextureType eType;
- public EColorSpace eColorSpace;
-}
-[StructLayout(LayoutKind.Sequential)] public struct TrackedDevicePose_t
-{
- public HmdMatrix34_t mDeviceToAbsoluteTracking;
- public HmdVector3_t vVelocity;
- public HmdVector3_t vAngularVelocity;
- public ETrackingResult eTrackingResult;
- [MarshalAs(UnmanagedType.I1)]
- public bool bPoseIsValid;
- [MarshalAs(UnmanagedType.I1)]
- public bool bDeviceIsConnected;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VRTextureBounds_t
-{
- public float uMin;
- public float vMin;
- public float uMax;
- public float vMax;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VRTextureWithPose_t
-{
- public HmdMatrix34_t mDeviceToAbsoluteTracking;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VRVulkanTextureData_t
-{
- public ulong m_nImage;
- public IntPtr m_pDevice; // struct VkDevice_T *
- public IntPtr m_pPhysicalDevice; // struct VkPhysicalDevice_T *
- public IntPtr m_pInstance; // struct VkInstance_T *
- public IntPtr m_pQueue; // struct VkQueue_T *
- public uint m_nQueueFamilyIndex;
- public uint m_nWidth;
- public uint m_nHeight;
- public uint m_nFormat;
- public uint m_nSampleCount;
-}
-[StructLayout(LayoutKind.Sequential)] public struct D3D12TextureData_t
-{
- public IntPtr m_pResource; // struct ID3D12Resource *
- public IntPtr m_pCommandQueue; // struct ID3D12CommandQueue *
- public uint m_nNodeMask;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Controller_t
-{
- public uint button;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Mouse_t
-{
- public float x;
- public float y;
- public uint button;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Scroll_t
-{
- public float xdelta;
- public float ydelta;
- public uint repeatCount;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_TouchPadMove_t
-{
- [MarshalAs(UnmanagedType.I1)]
- public bool bFingerDown;
- public float flSecondsFingerDown;
- public float fValueXFirst;
- public float fValueYFirst;
- public float fValueXRaw;
- public float fValueYRaw;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Notification_t
-{
- public ulong ulUserValue;
- public uint notificationId;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Process_t
-{
- public uint pid;
- public uint oldPid;
- [MarshalAs(UnmanagedType.I1)]
- public bool bForced;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Overlay_t
-{
- public ulong overlayHandle;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Status_t
-{
- public uint statusState;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Keyboard_t
-{
- public byte cNewInput0,cNewInput1,cNewInput2,cNewInput3,cNewInput4,cNewInput5,cNewInput6,cNewInput7;
- public ulong uUserValue;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Ipd_t
-{
- public float ipdMeters;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Chaperone_t
-{
- public ulong m_nPreviousUniverse;
- public ulong m_nCurrentUniverse;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Reserved_t
-{
- public ulong reserved0;
- public ulong reserved1;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_PerformanceTest_t
-{
- public uint m_nFidelityLevel;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_SeatedZeroPoseReset_t
-{
- [MarshalAs(UnmanagedType.I1)]
- public bool bResetBySystemMenu;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Screenshot_t
-{
- public uint handle;
- public uint type;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_ScreenshotProgress_t
-{
- public float progress;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_ApplicationLaunch_t
-{
- public uint pid;
- public uint unArgsHandle;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_EditingCameraSurface_t
-{
- public ulong overlayHandle;
- public uint nVisualMode;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_MessageOverlay_t
-{
- public uint unVRMessageOverlayResponse;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_Property_t
-{
- public ulong container;
- public ETrackedDeviceProperty prop;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VREvent_t
-{
- public uint eventType;
- public uint trackedDeviceIndex;
- public float eventAgeSeconds;
- public VREvent_Data_t data;
-}
-// This structure is for backwards binary compatibility on Linux and OSX only
-[StructLayout(LayoutKind.Sequential, Pack = 4)] public struct VREvent_t_Packed
-{
- public uint eventType;
- public uint trackedDeviceIndex;
- public float eventAgeSeconds;
- public VREvent_Data_t data;
- public VREvent_t_Packed(VREvent_t unpacked)
- {
- this.eventType = unpacked.eventType;
- this.trackedDeviceIndex = unpacked.trackedDeviceIndex;
- this.eventAgeSeconds = unpacked.eventAgeSeconds;
- this.data = unpacked.data;
- }
- public void Unpack(ref VREvent_t unpacked)
- {
- unpacked.eventType = this.eventType;
- unpacked.trackedDeviceIndex = this.trackedDeviceIndex;
- unpacked.eventAgeSeconds = this.eventAgeSeconds;
- unpacked.data = this.data;
- }
-}
-[StructLayout(LayoutKind.Sequential)] public struct HiddenAreaMesh_t
-{
- public IntPtr pVertexData; // const struct vr::HmdVector2_t *
- public uint unTriangleCount;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VRControllerAxis_t
-{
- public float x;
- public float y;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VRControllerState_t
-{
- public uint unPacketNum;
- public ulong ulButtonPressed;
- public ulong ulButtonTouched;
- public VRControllerAxis_t rAxis0; //VRControllerAxis_t[5]
- public VRControllerAxis_t rAxis1;
- public VRControllerAxis_t rAxis2;
- public VRControllerAxis_t rAxis3;
- public VRControllerAxis_t rAxis4;
-}
-// This structure is for backwards binary compatibility on Linux and OSX only
-[StructLayout(LayoutKind.Sequential, Pack = 4)] public struct VRControllerState_t_Packed
-{
- public uint unPacketNum;
- public ulong ulButtonPressed;
- public ulong ulButtonTouched;
- public VRControllerAxis_t rAxis0; //VRControllerAxis_t[5]
- public VRControllerAxis_t rAxis1;
- public VRControllerAxis_t rAxis2;
- public VRControllerAxis_t rAxis3;
- public VRControllerAxis_t rAxis4;
- public VRControllerState_t_Packed(VRControllerState_t unpacked)
- {
- this.unPacketNum = unpacked.unPacketNum;
- this.ulButtonPressed = unpacked.ulButtonPressed;
- this.ulButtonTouched = unpacked.ulButtonTouched;
- this.rAxis0 = unpacked.rAxis0;
- this.rAxis1 = unpacked.rAxis1;
- this.rAxis2 = unpacked.rAxis2;
- this.rAxis3 = unpacked.rAxis3;
- this.rAxis4 = unpacked.rAxis4;
- }
- public void Unpack(ref VRControllerState_t unpacked)
- {
- unpacked.unPacketNum = this.unPacketNum;
- unpacked.ulButtonPressed = this.ulButtonPressed;
- unpacked.ulButtonTouched = this.ulButtonTouched;
- unpacked.rAxis0 = this.rAxis0;
- unpacked.rAxis1 = this.rAxis1;
- unpacked.rAxis2 = this.rAxis2;
- unpacked.rAxis3 = this.rAxis3;
- unpacked.rAxis4 = this.rAxis4;
- }
-}
-[StructLayout(LayoutKind.Sequential)] public struct Compositor_OverlaySettings
-{
- public uint size;
- [MarshalAs(UnmanagedType.I1)]
- public bool curved;
- [MarshalAs(UnmanagedType.I1)]
- public bool antialias;
- public float scale;
- public float distance;
- public float alpha;
- public float uOffset;
- public float vOffset;
- public float uScale;
- public float vScale;
- public float gridDivs;
- public float gridWidth;
- public float gridScale;
- public HmdMatrix44_t transform;
-}
-[StructLayout(LayoutKind.Sequential)] public struct CameraVideoStreamFrameHeader_t
-{
- public EVRTrackedCameraFrameType eFrameType;
- public uint nWidth;
- public uint nHeight;
- public uint nBytesPerPixel;
- public uint nFrameSequence;
- public TrackedDevicePose_t standingTrackedDevicePose;
-}
-[StructLayout(LayoutKind.Sequential)] public struct AppOverrideKeys_t
-{
- public IntPtr pchKey; // const char *
- public IntPtr pchValue; // const char *
-}
-[StructLayout(LayoutKind.Sequential)] public struct Compositor_FrameTiming
-{
- public uint m_nSize;
- public uint m_nFrameIndex;
- public uint m_nNumFramePresents;
- public uint m_nNumMisPresented;
- public uint m_nNumDroppedFrames;
- public uint m_nReprojectionFlags;
- public double m_flSystemTimeInSeconds;
- public float m_flPreSubmitGpuMs;
- public float m_flPostSubmitGpuMs;
- public float m_flTotalRenderGpuMs;
- public float m_flCompositorRenderGpuMs;
- public float m_flCompositorRenderCpuMs;
- public float m_flCompositorIdleCpuMs;
- public float m_flClientFrameIntervalMs;
- public float m_flPresentCallCpuMs;
- public float m_flWaitForPresentCpuMs;
- public float m_flSubmitFrameMs;
- public float m_flWaitGetPosesCalledMs;
- public float m_flNewPosesReadyMs;
- public float m_flNewFrameReadyMs;
- public float m_flCompositorUpdateStartMs;
- public float m_flCompositorUpdateEndMs;
- public float m_flCompositorRenderStartMs;
- public TrackedDevicePose_t m_HmdPose;
-}
-[StructLayout(LayoutKind.Sequential)] public struct Compositor_CumulativeStats
-{
- public uint m_nPid;
- public uint m_nNumFramePresents;
- public uint m_nNumDroppedFrames;
- public uint m_nNumReprojectedFrames;
- public uint m_nNumFramePresentsOnStartup;
- public uint m_nNumDroppedFramesOnStartup;
- public uint m_nNumReprojectedFramesOnStartup;
- public uint m_nNumLoading;
- public uint m_nNumFramePresentsLoading;
- public uint m_nNumDroppedFramesLoading;
- public uint m_nNumReprojectedFramesLoading;
- public uint m_nNumTimedOut;
- public uint m_nNumFramePresentsTimedOut;
- public uint m_nNumDroppedFramesTimedOut;
- public uint m_nNumReprojectedFramesTimedOut;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VROverlayIntersectionParams_t
-{
- public HmdVector3_t vSource;
- public HmdVector3_t vDirection;
- public ETrackingUniverseOrigin eOrigin;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VROverlayIntersectionResults_t
-{
- public HmdVector3_t vPoint;
- public HmdVector3_t vNormal;
- public HmdVector2_t vUVs;
- public float fDistance;
-}
-[StructLayout(LayoutKind.Sequential)] public struct IntersectionMaskRectangle_t
-{
- public float m_flTopLeftX;
- public float m_flTopLeftY;
- public float m_flWidth;
- public float m_flHeight;
-}
-[StructLayout(LayoutKind.Sequential)] public struct IntersectionMaskCircle_t
-{
- public float m_flCenterX;
- public float m_flCenterY;
- public float m_flRadius;
-}
-[StructLayout(LayoutKind.Sequential)] public struct VROverlayIntersectionMaskPrimitive_t
-{
- public EVROverlayIntersectionMaskPrimitiveType m_nPrimitiveType;
- public VROverlayIntersectionMaskPrimitive_Data_t m_Primitive;
-}
-[StructLayout(LayoutKind.Sequential)] public struct RenderModel_ComponentState_t
-{
- public HmdMatrix34_t mTrackingToComponentRenderModel;
- public HmdMatrix34_t mTrackingToComponentLocal;
- public uint uProperties;
-}
-[StructLayout(LayoutKind.Sequential)] public struct RenderModel_Vertex_t
-{
- public HmdVector3_t vPosition;
- public HmdVector3_t vNormal;
- public float rfTextureCoord0; //float[2]
- public float rfTextureCoord1;
-}
-[StructLayout(LayoutKind.Sequential)] public struct RenderModel_TextureMap_t
-{
- public char unWidth;
- public char unHeight;
- public IntPtr rubTextureMapData; // const uint8_t *
-}
-// This structure is for backwards binary compatibility on Linux and OSX only
-[StructLayout(LayoutKind.Sequential, Pack = 4)] public struct RenderModel_TextureMap_t_Packed
-{
- public char unWidth;
- public char unHeight;
- public IntPtr rubTextureMapData; // const uint8_t *
- public RenderModel_TextureMap_t_Packed(RenderModel_TextureMap_t unpacked)
- {
- this.unWidth = unpacked.unWidth;
- this.unHeight = unpacked.unHeight;
- this.rubTextureMapData = unpacked.rubTextureMapData;
- }
- public void Unpack(ref RenderModel_TextureMap_t unpacked)
- {
- unpacked.unWidth = this.unWidth;
- unpacked.unHeight = this.unHeight;
- unpacked.rubTextureMapData = this.rubTextureMapData;
- }
-}
-[StructLayout(LayoutKind.Sequential)] public struct RenderModel_t
-{
- public IntPtr rVertexData; // const struct vr::RenderModel_Vertex_t *
- public uint unVertexCount;
- public IntPtr rIndexData; // const uint16_t *
- public uint unTriangleCount;
- public int diffuseTextureId;
-}
-// This structure is for backwards binary compatibility on Linux and OSX only
-[StructLayout(LayoutKind.Sequential, Pack = 4)] public struct RenderModel_t_Packed
-{
- public IntPtr rVertexData; // const struct vr::RenderModel_Vertex_t *
- public uint unVertexCount;
- public IntPtr rIndexData; // const uint16_t *
- public uint unTriangleCount;
- public int diffuseTextureId;
- public RenderModel_t_Packed(RenderModel_t unpacked)
- {
- this.rVertexData = unpacked.rVertexData;
- this.unVertexCount = unpacked.unVertexCount;
- this.rIndexData = unpacked.rIndexData;
- this.unTriangleCount = unpacked.unTriangleCount;
- this.diffuseTextureId = unpacked.diffuseTextureId;
- }
- public void Unpack(ref RenderModel_t unpacked)
- {
- unpacked.rVertexData = this.rVertexData;
- unpacked.unVertexCount = this.unVertexCount;
- unpacked.rIndexData = this.rIndexData;
- unpacked.unTriangleCount = this.unTriangleCount;
- unpacked.diffuseTextureId = this.diffuseTextureId;
- }
-}
-[StructLayout(LayoutKind.Sequential)] public struct RenderModel_ControllerMode_State_t
-{
- [MarshalAs(UnmanagedType.I1)]
- public bool bScrollWheelVisible;
-}
-[StructLayout(LayoutKind.Sequential)] public struct NotificationBitmap_t
-{
- public IntPtr m_pImageData; // void *
- public int m_nWidth;
- public int m_nHeight;
- public int m_nBytesPerPixel;
-}
-[StructLayout(LayoutKind.Sequential)] public struct COpenVRContext
-{
- public IntPtr m_pVRSystem; // class vr::IVRSystem *
- public IntPtr m_pVRChaperone; // class vr::IVRChaperone *
- public IntPtr m_pVRChaperoneSetup; // class vr::IVRChaperoneSetup *
- public IntPtr m_pVRCompositor; // class vr::IVRCompositor *
- public IntPtr m_pVROverlay; // class vr::IVROverlay *
- public IntPtr m_pVRResources; // class vr::IVRResources *
- public IntPtr m_pVRRenderModels; // class vr::IVRRenderModels *
- public IntPtr m_pVRExtendedDisplay; // class vr::IVRExtendedDisplay *
- public IntPtr m_pVRSettings; // class vr::IVRSettings *
- public IntPtr m_pVRApplications; // class vr::IVRApplications *
- public IntPtr m_pVRTrackedCamera; // class vr::IVRTrackedCamera *
- public IntPtr m_pVRScreenshots; // class vr::IVRScreenshots *
- public IntPtr m_pVRDriverManager; // class vr::IVRDriverManager *
-}
-
-public class OpenVR
-{
-
- public static uint InitInternal(ref EVRInitError peError, EVRApplicationType eApplicationType)
- {
- return OpenVRInterop.InitInternal(ref peError, eApplicationType);
- }
-
- public static void ShutdownInternal()
- {
- OpenVRInterop.ShutdownInternal();
- }
-
- public static bool IsHmdPresent()
- {
- return OpenVRInterop.IsHmdPresent();
- }
-
- public static bool IsRuntimeInstalled()
- {
- return OpenVRInterop.IsRuntimeInstalled();
- }
-
- public static string GetStringForHmdError(EVRInitError error)
- {
- return Marshal.PtrToStringAnsi(OpenVRInterop.GetStringForHmdError(error));
- }
-
- public static IntPtr GetGenericInterface(string pchInterfaceVersion, ref EVRInitError peError)
- {
- return OpenVRInterop.GetGenericInterface(pchInterfaceVersion, ref peError);
- }
-
- public static bool IsInterfaceVersionValid(string pchInterfaceVersion)
- {
- return OpenVRInterop.IsInterfaceVersionValid(pchInterfaceVersion);
- }
-
- public static uint GetInitToken()
- {
- return OpenVRInterop.GetInitToken();
- }
-
- public const uint k_nDriverNone = 4294967295;
- public const uint k_unMaxDriverDebugResponseSize = 32768;
- public const uint k_unTrackedDeviceIndex_Hmd = 0;
- public const uint k_unMaxTrackedDeviceCount = 16;
- public const uint k_unTrackedDeviceIndexOther = 4294967294;
- public const uint k_unTrackedDeviceIndexInvalid = 4294967295;
- public const ulong k_ulInvalidPropertyContainer = 0;
- public const uint k_unInvalidPropertyTag = 0;
- public const uint k_unFloatPropertyTag = 1;
- public const uint k_unInt32PropertyTag = 2;
- public const uint k_unUint64PropertyTag = 3;
- public const uint k_unBoolPropertyTag = 4;
- public const uint k_unStringPropertyTag = 5;
- public const uint k_unHmdMatrix34PropertyTag = 20;
- public const uint k_unHmdMatrix44PropertyTag = 21;
- public const uint k_unHmdVector3PropertyTag = 22;
- public const uint k_unHmdVector4PropertyTag = 23;
- public const uint k_unHiddenAreaPropertyTag = 30;
- public const uint k_unOpenVRInternalReserved_Start = 1000;
- public const uint k_unOpenVRInternalReserved_End = 10000;
- public const uint k_unMaxPropertyStringSize = 32768;
- public const uint k_unControllerStateAxisCount = 5;
- public const ulong k_ulOverlayHandleInvalid = 0;
- public const uint k_unScreenshotHandleInvalid = 0;
- public const string IVRSystem_Version = "IVRSystem_017";
- public const string IVRExtendedDisplay_Version = "IVRExtendedDisplay_001";
- public const string IVRTrackedCamera_Version = "IVRTrackedCamera_003";
- public const uint k_unMaxApplicationKeyLength = 128;
- public const string k_pch_MimeType_HomeApp = "vr/home";
- public const string k_pch_MimeType_GameTheater = "vr/game_theater";
- public const string IVRApplications_Version = "IVRApplications_006";
- public const string IVRChaperone_Version = "IVRChaperone_003";
- public const string IVRChaperoneSetup_Version = "IVRChaperoneSetup_005";
- public const string IVRCompositor_Version = "IVRCompositor_021";
- public const uint k_unVROverlayMaxKeyLength = 128;
- public const uint k_unVROverlayMaxNameLength = 128;
- public const uint k_unMaxOverlayCount = 64;
- public const uint k_unMaxOverlayIntersectionMaskPrimitivesCount = 32;
- public const string IVROverlay_Version = "IVROverlay_016";
- public const string k_pch_Controller_Component_GDC2015 = "gdc2015";
- public const string k_pch_Controller_Component_Base = "base";
- public const string k_pch_Controller_Component_Tip = "tip";
- public const string k_pch_Controller_Component_HandGrip = "handgrip";
- public const string k_pch_Controller_Component_Status = "status";
- public const string IVRRenderModels_Version = "IVRRenderModels_005";
- public const uint k_unNotificationTextMaxSize = 256;
- public const string IVRNotifications_Version = "IVRNotifications_002";
- public const uint k_unMaxSettingsKeyLength = 128;
- public const string IVRSettings_Version = "IVRSettings_002";
- public const string k_pch_SteamVR_Section = "steamvr";
- public const string k_pch_SteamVR_RequireHmd_String = "requireHmd";
- public const string k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver";
- public const string k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd";
- public const string k_pch_SteamVR_DisplayDebug_Bool = "displayDebug";
- public const string k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe";
- public const string k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX";
- public const string k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY";
- public const string k_pch_SteamVR_SendSystemButtonToAllApps_Bool = "sendSystemButtonToAllApps";
- public const string k_pch_SteamVR_LogLevel_Int32 = "loglevel";
- public const string k_pch_SteamVR_IPD_Float = "ipd";
- public const string k_pch_SteamVR_Background_String = "background";
- public const string k_pch_SteamVR_BackgroundUseDomeProjection_Bool = "backgroundUseDomeProjection";
- public const string k_pch_SteamVR_BackgroundCameraHeight_Float = "backgroundCameraHeight";
- public const string k_pch_SteamVR_BackgroundDomeRadius_Float = "backgroundDomeRadius";
- public const string k_pch_SteamVR_GridColor_String = "gridColor";
- public const string k_pch_SteamVR_PlayAreaColor_String = "playAreaColor";
- public const string k_pch_SteamVR_ShowStage_Bool = "showStage";
- public const string k_pch_SteamVR_ActivateMultipleDrivers_Bool = "activateMultipleDrivers";
- public const string k_pch_SteamVR_DirectMode_Bool = "directMode";
- public const string k_pch_SteamVR_DirectModeEdidVid_Int32 = "directModeEdidVid";
- public const string k_pch_SteamVR_DirectModeEdidPid_Int32 = "directModeEdidPid";
- public const string k_pch_SteamVR_UsingSpeakers_Bool = "usingSpeakers";
- public const string k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees";
- public const string k_pch_SteamVR_BaseStationPowerManagement_Bool = "basestationPowerManagement";
- public const string k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses";
- public const string k_pch_SteamVR_SupersampleScale_Float = "supersampleScale";
- public const string k_pch_SteamVR_AllowAsyncReprojection_Bool = "allowAsyncReprojection";
- public const string k_pch_SteamVR_AllowReprojection_Bool = "allowInterleavedReprojection";
- public const string k_pch_SteamVR_ForceReprojection_Bool = "forceReprojection";
- public const string k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
- public const string k_pch_SteamVR_DefaultMirrorView_Int32 = "defaultMirrorView";
- public const string k_pch_SteamVR_ShowMirrorView_Bool = "showMirrorView";
- public const string k_pch_SteamVR_MirrorViewGeometry_String = "mirrorViewGeometry";
- public const string k_pch_SteamVR_StartMonitorFromAppLaunch = "startMonitorFromAppLaunch";
- public const string k_pch_SteamVR_StartCompositorFromAppLaunch_Bool = "startCompositorFromAppLaunch";
- public const string k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch";
- public const string k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard";
- public const string k_pch_SteamVR_EnableHomeApp = "enableHomeApp";
- public const string k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec";
- public const string k_pch_SteamVR_RetailDemo_Bool = "retailDemo";
- public const string k_pch_SteamVR_IpdOffset_Float = "ipdOffset";
- public const string k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering";
- public const string k_pch_SteamVR_EnableLinuxVulkanAsync_Bool = "enableLinuxVulkanAsync";
- public const string k_pch_Lighthouse_Section = "driver_lighthouse";
- public const string k_pch_Lighthouse_DisableIMU_Bool = "disableimu";
- public const string k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation";
- public const string k_pch_Lighthouse_DisambiguationDebug_Int32 = "disambiguationdebug";
- public const string k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
- public const string k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
- public const string k_pch_Null_Section = "driver_null";
- public const string k_pch_Null_SerialNumber_String = "serialNumber";
- public const string k_pch_Null_ModelNumber_String = "modelNumber";
- public const string k_pch_Null_WindowX_Int32 = "windowX";
- public const string k_pch_Null_WindowY_Int32 = "windowY";
- public const string k_pch_Null_WindowWidth_Int32 = "windowWidth";
- public const string k_pch_Null_WindowHeight_Int32 = "windowHeight";
- public const string k_pch_Null_RenderWidth_Int32 = "renderWidth";
- public const string k_pch_Null_RenderHeight_Int32 = "renderHeight";
- public const string k_pch_Null_SecondsFromVsyncToPhotons_Float = "secondsFromVsyncToPhotons";
- public const string k_pch_Null_DisplayFrequency_Float = "displayFrequency";
- public const string k_pch_UserInterface_Section = "userinterface";
- public const string k_pch_UserInterface_StatusAlwaysOnTop_Bool = "StatusAlwaysOnTop";
- public const string k_pch_UserInterface_MinimizeToTray_Bool = "MinimizeToTray";
- public const string k_pch_UserInterface_Screenshots_Bool = "screenshots";
- public const string k_pch_UserInterface_ScreenshotType_Int = "screenshotType";
- public const string k_pch_Notifications_Section = "notifications";
- public const string k_pch_Notifications_DoNotDisturb_Bool = "DoNotDisturb";
- public const string k_pch_Keyboard_Section = "keyboard";
- public const string k_pch_Keyboard_TutorialCompletions = "TutorialCompletions";
- public const string k_pch_Keyboard_ScaleX = "ScaleX";
- public const string k_pch_Keyboard_ScaleY = "ScaleY";
- public const string k_pch_Keyboard_OffsetLeftX = "OffsetLeftX";
- public const string k_pch_Keyboard_OffsetRightX = "OffsetRightX";
- public const string k_pch_Keyboard_OffsetY = "OffsetY";
- public const string k_pch_Keyboard_Smoothing = "Smoothing";
- public const string k_pch_Perf_Section = "perfcheck";
- public const string k_pch_Perf_HeuristicActive_Bool = "heuristicActive";
- public const string k_pch_Perf_NotifyInHMD_Bool = "warnInHMD";
- public const string k_pch_Perf_NotifyOnlyOnce_Bool = "warnOnlyOnce";
- public const string k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore";
- public const string k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit";
- public const string k_pch_Perf_TestData_Float = "perfTestData";
- public const string k_pch_Perf_LinuxGPUProfiling_Bool = "linuxGPUProfiling";
- public const string k_pch_CollisionBounds_Section = "collisionBounds";
- public const string k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle";
- public const string k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn";
- public const string k_pch_CollisionBounds_CenterMarkerOn_Bool = "CollisionBoundsCenterMarkerOn";
- public const string k_pch_CollisionBounds_PlaySpaceOn_Bool = "CollisionBoundsPlaySpaceOn";
- public const string k_pch_CollisionBounds_FadeDistance_Float = "CollisionBoundsFadeDistance";
- public const string k_pch_CollisionBounds_ColorGammaR_Int32 = "CollisionBoundsColorGammaR";
- public const string k_pch_CollisionBounds_ColorGammaG_Int32 = "CollisionBoundsColorGammaG";
- public const string k_pch_CollisionBounds_ColorGammaB_Int32 = "CollisionBoundsColorGammaB";
- public const string k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsColorGammaA";
- public const string k_pch_Camera_Section = "camera";
- public const string k_pch_Camera_EnableCamera_Bool = "enableCamera";
- public const string k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard";
- public const string k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds";
- public const string k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView";
- public const string k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR";
- public const string k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG";
- public const string k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB";
- public const string k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA";
- public const string k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength";
- public const string k_pch_audio_Section = "audio";
- public const string k_pch_audio_OnPlaybackDevice_String = "onPlaybackDevice";
- public const string k_pch_audio_OnRecordDevice_String = "onRecordDevice";
- public const string k_pch_audio_OnPlaybackMirrorDevice_String = "onPlaybackMirrorDevice";
- public const string k_pch_audio_OffPlaybackDevice_String = "offPlaybackDevice";
- public const string k_pch_audio_OffRecordDevice_String = "offRecordDevice";
- public const string k_pch_audio_VIVEHDMIGain = "viveHDMIGain";
- public const string k_pch_Power_Section = "power";
- public const string k_pch_Power_PowerOffOnExit_Bool = "powerOffOnExit";
- public const string k_pch_Power_TurnOffScreensTimeout_Float = "turnOffScreensTimeout";
- public const string k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout";
- public const string k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout";
- public const string k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress";
- public const string k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby";
- public const string k_pch_Dashboard_Section = "dashboard";
- public const string k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
- public const string k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
- public const string k_pch_modelskin_Section = "modelskins";
- public const string k_pch_Driver_Enable_Bool = "enable";
- public const string IVRScreenshots_Version = "IVRScreenshots_001";
- public const string IVRResources_Version = "IVRResources_001";
- public const string IVRDriverManager_Version = "IVRDriverManager_001";
-
- static uint VRToken { get; set; }
-
- const string FnTable_Prefix = "FnTable:";
-
- class COpenVRContext
- {
- public COpenVRContext() { Clear(); }
-
- public void Clear()
- {
- m_pVRSystem = null;
- m_pVRChaperone = null;
- m_pVRChaperoneSetup = null;
- m_pVRCompositor = null;
- m_pVROverlay = null;
- m_pVRRenderModels = null;
- m_pVRExtendedDisplay = null;
- m_pVRSettings = null;
- m_pVRApplications = null;
- m_pVRScreenshots = null;
- m_pVRTrackedCamera = null;
- }
-
- void CheckClear()
- {
- if (VRToken != GetInitToken())
- {
- Clear();
- VRToken = GetInitToken();
- }
- }
-
- public CVRSystem VRSystem()
- {
- CheckClear();
- if (m_pVRSystem == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRSystem_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRSystem = new CVRSystem(pInterface);
- }
- return m_pVRSystem;
- }
-
- public CVRChaperone VRChaperone()
- {
- CheckClear();
- if (m_pVRChaperone == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRChaperone_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRChaperone = new CVRChaperone(pInterface);
- }
- return m_pVRChaperone;
- }
-
- public CVRChaperoneSetup VRChaperoneSetup()
- {
- CheckClear();
- if (m_pVRChaperoneSetup == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRChaperoneSetup_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRChaperoneSetup = new CVRChaperoneSetup(pInterface);
- }
- return m_pVRChaperoneSetup;
- }
-
- public CVRCompositor VRCompositor()
- {
- CheckClear();
- if (m_pVRCompositor == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRCompositor_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRCompositor = new CVRCompositor(pInterface);
- }
- return m_pVRCompositor;
- }
-
- public CVROverlay VROverlay()
- {
- CheckClear();
- if (m_pVROverlay == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVROverlay_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVROverlay = new CVROverlay(pInterface);
- }
- return m_pVROverlay;
- }
-
- public CVRRenderModels VRRenderModels()
- {
- CheckClear();
- if (m_pVRRenderModels == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRRenderModels_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRRenderModels = new CVRRenderModels(pInterface);
- }
- return m_pVRRenderModels;
- }
-
- public CVRExtendedDisplay VRExtendedDisplay()
- {
- CheckClear();
- if (m_pVRExtendedDisplay == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRExtendedDisplay_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRExtendedDisplay = new CVRExtendedDisplay(pInterface);
- }
- return m_pVRExtendedDisplay;
- }
-
- public CVRSettings VRSettings()
- {
- CheckClear();
- if (m_pVRSettings == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRSettings_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRSettings = new CVRSettings(pInterface);
- }
- return m_pVRSettings;
- }
-
- public CVRApplications VRApplications()
- {
- CheckClear();
- if (m_pVRApplications == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRApplications_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRApplications = new CVRApplications(pInterface);
- }
- return m_pVRApplications;
- }
-
- public CVRScreenshots VRScreenshots()
- {
- CheckClear();
- if (m_pVRScreenshots == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRScreenshots_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRScreenshots = new CVRScreenshots(pInterface);
- }
- return m_pVRScreenshots;
- }
-
- public CVRTrackedCamera VRTrackedCamera()
- {
- CheckClear();
- if (m_pVRTrackedCamera == null)
- {
- var eError = EVRInitError.None;
- var pInterface = OpenVRInterop.GetGenericInterface(FnTable_Prefix+IVRTrackedCamera_Version, ref eError);
- if (pInterface != IntPtr.Zero && eError == EVRInitError.None)
- m_pVRTrackedCamera = new CVRTrackedCamera(pInterface);
- }
- return m_pVRTrackedCamera;
- }
-
- private CVRSystem m_pVRSystem;
- private CVRChaperone m_pVRChaperone;
- private CVRChaperoneSetup m_pVRChaperoneSetup;
- private CVRCompositor m_pVRCompositor;
- private CVROverlay m_pVROverlay;
- private CVRRenderModels m_pVRRenderModels;
- private CVRExtendedDisplay m_pVRExtendedDisplay;
- private CVRSettings m_pVRSettings;
- private CVRApplications m_pVRApplications;
- private CVRScreenshots m_pVRScreenshots;
- private CVRTrackedCamera m_pVRTrackedCamera;
- };
-
- private static COpenVRContext _OpenVRInternal_ModuleContext = null;
- static COpenVRContext OpenVRInternal_ModuleContext
- {
- get
- {
- if (_OpenVRInternal_ModuleContext == null)
- _OpenVRInternal_ModuleContext = new COpenVRContext();
- return _OpenVRInternal_ModuleContext;
- }
- }
-
- public static CVRSystem System { get { return OpenVRInternal_ModuleContext.VRSystem(); } }
- public static CVRChaperone Chaperone { get { return OpenVRInternal_ModuleContext.VRChaperone(); } }
- public static CVRChaperoneSetup ChaperoneSetup { get { return OpenVRInternal_ModuleContext.VRChaperoneSetup(); } }
- public static CVRCompositor Compositor { get { return OpenVRInternal_ModuleContext.VRCompositor(); } }
- public static CVROverlay Overlay { get { return OpenVRInternal_ModuleContext.VROverlay(); } }
- public static CVRRenderModels RenderModels { get { return OpenVRInternal_ModuleContext.VRRenderModels(); } }
- public static CVRExtendedDisplay ExtendedDisplay { get { return OpenVRInternal_ModuleContext.VRExtendedDisplay(); } }
- public static CVRSettings Settings { get { return OpenVRInternal_ModuleContext.VRSettings(); } }
- public static CVRApplications Applications { get { return OpenVRInternal_ModuleContext.VRApplications(); } }
- public static CVRScreenshots Screenshots { get { return OpenVRInternal_ModuleContext.VRScreenshots(); } }
- public static CVRTrackedCamera TrackedCamera { get { return OpenVRInternal_ModuleContext.VRTrackedCamera(); } }
-
- /** Finds the active installation of vrclient.dll and initializes it */
- public static CVRSystem Init(ref EVRInitError peError, EVRApplicationType eApplicationType = EVRApplicationType.VRApplication_Scene)
- {
- VRToken = InitInternal(ref peError, eApplicationType);
- OpenVRInternal_ModuleContext.Clear();
-
- if (peError != EVRInitError.None)
- return null;
-
- bool bInterfaceValid = IsInterfaceVersionValid(IVRSystem_Version);
- if (!bInterfaceValid)
- {
- ShutdownInternal();
- peError = EVRInitError.Init_InterfaceNotFound;
- return null;
- }
-
- return OpenVR.System;
- }
-
- /** unloads vrclient.dll. Any interface pointers from the interface are
- * invalid after this point */
- public static void Shutdown()
- {
- ShutdownInternal();
- }
-
-}
-
-
-
-}
-
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.json b/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.json
deleted file mode 100644
index 8fa11a6..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_api.json
+++ /dev/null
@@ -1,3923 +0,0 @@
-{"typedefs":[{"typedef": "vr::glSharedTextureHandle_t","type": "void *"}
-,{"typedef": "vr::glInt_t","type": "int32_t"}
-,{"typedef": "vr::glUInt_t","type": "uint32_t"}
-,{"typedef": "vr::SharedTextureHandle_t","type": "uint64_t"}
-,{"typedef": "vr::DriverId_t","type": "uint32_t"}
-,{"typedef": "vr::TrackedDeviceIndex_t","type": "uint32_t"}
-,{"typedef": "vr::PropertyContainerHandle_t","type": "uint64_t"}
-,{"typedef": "vr::PropertyTypeTag_t","type": "uint32_t"}
-,{"typedef": "vr::VREvent_Data_t","type": "union VREvent_Data_t"}
-,{"typedef": "vr::VRControllerState_t","type": "struct vr::VRControllerState001_t"}
-,{"typedef": "vr::VROverlayHandle_t","type": "uint64_t"}
-,{"typedef": "vr::TrackedCameraHandle_t","type": "uint64_t"}
-,{"typedef": "vr::ScreenshotHandle_t","type": "uint32_t"}
-,{"typedef": "vr::VROverlayIntersectionMaskPrimitive_Data_t","type": "union VROverlayIntersectionMaskPrimitive_Data_t"}
-,{"typedef": "vr::VRComponentProperties","type": "uint32_t"}
-,{"typedef": "vr::TextureID_t","type": "int32_t"}
-,{"typedef": "vr::VRNotificationId","type": "uint32_t"}
-,{"typedef": "vr::HmdError","type": "enum vr::EVRInitError"}
-,{"typedef": "vr::Hmd_Eye","type": "enum vr::EVREye"}
-,{"typedef": "vr::ColorSpace","type": "enum vr::EColorSpace"}
-,{"typedef": "vr::HmdTrackingResult","type": "enum vr::ETrackingResult"}
-,{"typedef": "vr::TrackedDeviceClass","type": "enum vr::ETrackedDeviceClass"}
-,{"typedef": "vr::TrackingUniverseOrigin","type": "enum vr::ETrackingUniverseOrigin"}
-,{"typedef": "vr::TrackedDeviceProperty","type": "enum vr::ETrackedDeviceProperty"}
-,{"typedef": "vr::TrackedPropertyError","type": "enum vr::ETrackedPropertyError"}
-,{"typedef": "vr::VRSubmitFlags_t","type": "enum vr::EVRSubmitFlags"}
-,{"typedef": "vr::VRState_t","type": "enum vr::EVRState"}
-,{"typedef": "vr::CollisionBoundsStyle_t","type": "enum vr::ECollisionBoundsStyle"}
-,{"typedef": "vr::VROverlayError","type": "enum vr::EVROverlayError"}
-,{"typedef": "vr::VRFirmwareError","type": "enum vr::EVRFirmwareError"}
-,{"typedef": "vr::VRCompositorError","type": "enum vr::EVRCompositorError"}
-,{"typedef": "vr::VRScreenshotsError","type": "enum vr::EVRScreenshotError"}
-],
-"enums":[
- {"enumname": "vr::EVREye","values": [
- {"name": "Eye_Left","value": "0"}
- ,{"name": "Eye_Right","value": "1"}
-]}
-, {"enumname": "vr::ETextureType","values": [
- {"name": "TextureType_DirectX","value": "0"}
- ,{"name": "TextureType_OpenGL","value": "1"}
- ,{"name": "TextureType_Vulkan","value": "2"}
- ,{"name": "TextureType_IOSurface","value": "3"}
- ,{"name": "TextureType_DirectX12","value": "4"}
-]}
-, {"enumname": "vr::EColorSpace","values": [
- {"name": "ColorSpace_Auto","value": "0"}
- ,{"name": "ColorSpace_Gamma","value": "1"}
- ,{"name": "ColorSpace_Linear","value": "2"}
-]}
-, {"enumname": "vr::ETrackingResult","values": [
- {"name": "TrackingResult_Uninitialized","value": "1"}
- ,{"name": "TrackingResult_Calibrating_InProgress","value": "100"}
- ,{"name": "TrackingResult_Calibrating_OutOfRange","value": "101"}
- ,{"name": "TrackingResult_Running_OK","value": "200"}
- ,{"name": "TrackingResult_Running_OutOfRange","value": "201"}
-]}
-, {"enumname": "vr::ETrackedDeviceClass","values": [
- {"name": "TrackedDeviceClass_Invalid","value": "0"}
- ,{"name": "TrackedDeviceClass_HMD","value": "1"}
- ,{"name": "TrackedDeviceClass_Controller","value": "2"}
- ,{"name": "TrackedDeviceClass_GenericTracker","value": "3"}
- ,{"name": "TrackedDeviceClass_TrackingReference","value": "4"}
- ,{"name": "TrackedDeviceClass_DisplayRedirect","value": "5"}
-]}
-, {"enumname": "vr::ETrackedControllerRole","values": [
- {"name": "TrackedControllerRole_Invalid","value": "0"}
- ,{"name": "TrackedControllerRole_LeftHand","value": "1"}
- ,{"name": "TrackedControllerRole_RightHand","value": "2"}
-]}
-, {"enumname": "vr::ETrackingUniverseOrigin","values": [
- {"name": "TrackingUniverseSeated","value": "0"}
- ,{"name": "TrackingUniverseStanding","value": "1"}
- ,{"name": "TrackingUniverseRawAndUncalibrated","value": "2"}
-]}
-, {"enumname": "vr::ETrackedDeviceProperty","values": [
- {"name": "Prop_Invalid","value": "0"}
- ,{"name": "Prop_TrackingSystemName_String","value": "1000"}
- ,{"name": "Prop_ModelNumber_String","value": "1001"}
- ,{"name": "Prop_SerialNumber_String","value": "1002"}
- ,{"name": "Prop_RenderModelName_String","value": "1003"}
- ,{"name": "Prop_WillDriftInYaw_Bool","value": "1004"}
- ,{"name": "Prop_ManufacturerName_String","value": "1005"}
- ,{"name": "Prop_TrackingFirmwareVersion_String","value": "1006"}
- ,{"name": "Prop_HardwareRevision_String","value": "1007"}
- ,{"name": "Prop_AllWirelessDongleDescriptions_String","value": "1008"}
- ,{"name": "Prop_ConnectedWirelessDongle_String","value": "1009"}
- ,{"name": "Prop_DeviceIsWireless_Bool","value": "1010"}
- ,{"name": "Prop_DeviceIsCharging_Bool","value": "1011"}
- ,{"name": "Prop_DeviceBatteryPercentage_Float","value": "1012"}
- ,{"name": "Prop_StatusDisplayTransform_Matrix34","value": "1013"}
- ,{"name": "Prop_Firmware_UpdateAvailable_Bool","value": "1014"}
- ,{"name": "Prop_Firmware_ManualUpdate_Bool","value": "1015"}
- ,{"name": "Prop_Firmware_ManualUpdateURL_String","value": "1016"}
- ,{"name": "Prop_HardwareRevision_Uint64","value": "1017"}
- ,{"name": "Prop_FirmwareVersion_Uint64","value": "1018"}
- ,{"name": "Prop_FPGAVersion_Uint64","value": "1019"}
- ,{"name": "Prop_VRCVersion_Uint64","value": "1020"}
- ,{"name": "Prop_RadioVersion_Uint64","value": "1021"}
- ,{"name": "Prop_DongleVersion_Uint64","value": "1022"}
- ,{"name": "Prop_BlockServerShutdown_Bool","value": "1023"}
- ,{"name": "Prop_CanUnifyCoordinateSystemWithHmd_Bool","value": "1024"}
- ,{"name": "Prop_ContainsProximitySensor_Bool","value": "1025"}
- ,{"name": "Prop_DeviceProvidesBatteryStatus_Bool","value": "1026"}
- ,{"name": "Prop_DeviceCanPowerOff_Bool","value": "1027"}
- ,{"name": "Prop_Firmware_ProgrammingTarget_String","value": "1028"}
- ,{"name": "Prop_DeviceClass_Int32","value": "1029"}
- ,{"name": "Prop_HasCamera_Bool","value": "1030"}
- ,{"name": "Prop_DriverVersion_String","value": "1031"}
- ,{"name": "Prop_Firmware_ForceUpdateRequired_Bool","value": "1032"}
- ,{"name": "Prop_ViveSystemButtonFixRequired_Bool","value": "1033"}
- ,{"name": "Prop_ParentDriver_Uint64","value": "1034"}
- ,{"name": "Prop_ResourceRoot_String","value": "1035"}
- ,{"name": "Prop_ReportsTimeSinceVSync_Bool","value": "2000"}
- ,{"name": "Prop_SecondsFromVsyncToPhotons_Float","value": "2001"}
- ,{"name": "Prop_DisplayFrequency_Float","value": "2002"}
- ,{"name": "Prop_UserIpdMeters_Float","value": "2003"}
- ,{"name": "Prop_CurrentUniverseId_Uint64","value": "2004"}
- ,{"name": "Prop_PreviousUniverseId_Uint64","value": "2005"}
- ,{"name": "Prop_DisplayFirmwareVersion_Uint64","value": "2006"}
- ,{"name": "Prop_IsOnDesktop_Bool","value": "2007"}
- ,{"name": "Prop_DisplayMCType_Int32","value": "2008"}
- ,{"name": "Prop_DisplayMCOffset_Float","value": "2009"}
- ,{"name": "Prop_DisplayMCScale_Float","value": "2010"}
- ,{"name": "Prop_EdidVendorID_Int32","value": "2011"}
- ,{"name": "Prop_DisplayMCImageLeft_String","value": "2012"}
- ,{"name": "Prop_DisplayMCImageRight_String","value": "2013"}
- ,{"name": "Prop_DisplayGCBlackClamp_Float","value": "2014"}
- ,{"name": "Prop_EdidProductID_Int32","value": "2015"}
- ,{"name": "Prop_CameraToHeadTransform_Matrix34","value": "2016"}
- ,{"name": "Prop_DisplayGCType_Int32","value": "2017"}
- ,{"name": "Prop_DisplayGCOffset_Float","value": "2018"}
- ,{"name": "Prop_DisplayGCScale_Float","value": "2019"}
- ,{"name": "Prop_DisplayGCPrescale_Float","value": "2020"}
- ,{"name": "Prop_DisplayGCImage_String","value": "2021"}
- ,{"name": "Prop_LensCenterLeftU_Float","value": "2022"}
- ,{"name": "Prop_LensCenterLeftV_Float","value": "2023"}
- ,{"name": "Prop_LensCenterRightU_Float","value": "2024"}
- ,{"name": "Prop_LensCenterRightV_Float","value": "2025"}
- ,{"name": "Prop_UserHeadToEyeDepthMeters_Float","value": "2026"}
- ,{"name": "Prop_CameraFirmwareVersion_Uint64","value": "2027"}
- ,{"name": "Prop_CameraFirmwareDescription_String","value": "2028"}
- ,{"name": "Prop_DisplayFPGAVersion_Uint64","value": "2029"}
- ,{"name": "Prop_DisplayBootloaderVersion_Uint64","value": "2030"}
- ,{"name": "Prop_DisplayHardwareVersion_Uint64","value": "2031"}
- ,{"name": "Prop_AudioFirmwareVersion_Uint64","value": "2032"}
- ,{"name": "Prop_CameraCompatibilityMode_Int32","value": "2033"}
- ,{"name": "Prop_ScreenshotHorizontalFieldOfViewDegrees_Float","value": "2034"}
- ,{"name": "Prop_ScreenshotVerticalFieldOfViewDegrees_Float","value": "2035"}
- ,{"name": "Prop_DisplaySuppressed_Bool","value": "2036"}
- ,{"name": "Prop_DisplayAllowNightMode_Bool","value": "2037"}
- ,{"name": "Prop_DisplayMCImageWidth_Int32","value": "2038"}
- ,{"name": "Prop_DisplayMCImageHeight_Int32","value": "2039"}
- ,{"name": "Prop_DisplayMCImageNumChannels_Int32","value": "2040"}
- ,{"name": "Prop_DisplayMCImageData_Binary","value": "2041"}
- ,{"name": "Prop_SecondsFromPhotonsToVblank_Float","value": "2042"}
- ,{"name": "Prop_DriverDirectModeSendsVsyncEvents_Bool","value": "2043"}
- ,{"name": "Prop_DisplayDebugMode_Bool","value": "2044"}
- ,{"name": "Prop_GraphicsAdapterLuid_Uint64","value": "2045"}
- ,{"name": "Prop_DriverProvidedChaperonePath_String","value": "2048"}
- ,{"name": "Prop_AttachedDeviceId_String","value": "3000"}
- ,{"name": "Prop_SupportedButtons_Uint64","value": "3001"}
- ,{"name": "Prop_Axis0Type_Int32","value": "3002"}
- ,{"name": "Prop_Axis1Type_Int32","value": "3003"}
- ,{"name": "Prop_Axis2Type_Int32","value": "3004"}
- ,{"name": "Prop_Axis3Type_Int32","value": "3005"}
- ,{"name": "Prop_Axis4Type_Int32","value": "3006"}
- ,{"name": "Prop_ControllerRoleHint_Int32","value": "3007"}
- ,{"name": "Prop_FieldOfViewLeftDegrees_Float","value": "4000"}
- ,{"name": "Prop_FieldOfViewRightDegrees_Float","value": "4001"}
- ,{"name": "Prop_FieldOfViewTopDegrees_Float","value": "4002"}
- ,{"name": "Prop_FieldOfViewBottomDegrees_Float","value": "4003"}
- ,{"name": "Prop_TrackingRangeMinimumMeters_Float","value": "4004"}
- ,{"name": "Prop_TrackingRangeMaximumMeters_Float","value": "4005"}
- ,{"name": "Prop_ModeLabel_String","value": "4006"}
- ,{"name": "Prop_IconPathName_String","value": "5000"}
- ,{"name": "Prop_NamedIconPathDeviceOff_String","value": "5001"}
- ,{"name": "Prop_NamedIconPathDeviceSearching_String","value": "5002"}
- ,{"name": "Prop_NamedIconPathDeviceSearchingAlert_String","value": "5003"}
- ,{"name": "Prop_NamedIconPathDeviceReady_String","value": "5004"}
- ,{"name": "Prop_NamedIconPathDeviceReadyAlert_String","value": "5005"}
- ,{"name": "Prop_NamedIconPathDeviceNotReady_String","value": "5006"}
- ,{"name": "Prop_NamedIconPathDeviceStandby_String","value": "5007"}
- ,{"name": "Prop_NamedIconPathDeviceAlertLow_String","value": "5008"}
- ,{"name": "Prop_DisplayHiddenArea_Binary_Start","value": "5100"}
- ,{"name": "Prop_DisplayHiddenArea_Binary_End","value": "5150"}
- ,{"name": "Prop_UserConfigPath_String","value": "6000"}
- ,{"name": "Prop_InstallPath_String","value": "6001"}
- ,{"name": "Prop_HasDisplayComponent_Bool","value": "6002"}
- ,{"name": "Prop_HasControllerComponent_Bool","value": "6003"}
- ,{"name": "Prop_HasCameraComponent_Bool","value": "6004"}
- ,{"name": "Prop_HasDriverDirectModeComponent_Bool","value": "6005"}
- ,{"name": "Prop_HasVirtualDisplayComponent_Bool","value": "6006"}
- ,{"name": "Prop_VendorSpecific_Reserved_Start","value": "10000"}
- ,{"name": "Prop_VendorSpecific_Reserved_End","value": "10999"}
-]}
-, {"enumname": "vr::ETrackedPropertyError","values": [
- {"name": "TrackedProp_Success","value": "0"}
- ,{"name": "TrackedProp_WrongDataType","value": "1"}
- ,{"name": "TrackedProp_WrongDeviceClass","value": "2"}
- ,{"name": "TrackedProp_BufferTooSmall","value": "3"}
- ,{"name": "TrackedProp_UnknownProperty","value": "4"}
- ,{"name": "TrackedProp_InvalidDevice","value": "5"}
- ,{"name": "TrackedProp_CouldNotContactServer","value": "6"}
- ,{"name": "TrackedProp_ValueNotProvidedByDevice","value": "7"}
- ,{"name": "TrackedProp_StringExceedsMaximumLength","value": "8"}
- ,{"name": "TrackedProp_NotYetAvailable","value": "9"}
- ,{"name": "TrackedProp_PermissionDenied","value": "10"}
- ,{"name": "TrackedProp_InvalidOperation","value": "11"}
-]}
-, {"enumname": "vr::EVRSubmitFlags","values": [
- {"name": "Submit_Default","value": "0"}
- ,{"name": "Submit_LensDistortionAlreadyApplied","value": "1"}
- ,{"name": "Submit_GlRenderBuffer","value": "2"}
- ,{"name": "Submit_Reserved","value": "4"}
- ,{"name": "Submit_TextureWithPose","value": "8"}
-]}
-, {"enumname": "vr::EVRState","values": [
- {"name": "VRState_Undefined","value": "-1"}
- ,{"name": "VRState_Off","value": "0"}
- ,{"name": "VRState_Searching","value": "1"}
- ,{"name": "VRState_Searching_Alert","value": "2"}
- ,{"name": "VRState_Ready","value": "3"}
- ,{"name": "VRState_Ready_Alert","value": "4"}
- ,{"name": "VRState_NotReady","value": "5"}
- ,{"name": "VRState_Standby","value": "6"}
- ,{"name": "VRState_Ready_Alert_Low","value": "7"}
-]}
-, {"enumname": "vr::EVREventType","values": [
- {"name": "VREvent_None","value": "0"}
- ,{"name": "VREvent_TrackedDeviceActivated","value": "100"}
- ,{"name": "VREvent_TrackedDeviceDeactivated","value": "101"}
- ,{"name": "VREvent_TrackedDeviceUpdated","value": "102"}
- ,{"name": "VREvent_TrackedDeviceUserInteractionStarted","value": "103"}
- ,{"name": "VREvent_TrackedDeviceUserInteractionEnded","value": "104"}
- ,{"name": "VREvent_IpdChanged","value": "105"}
- ,{"name": "VREvent_EnterStandbyMode","value": "106"}
- ,{"name": "VREvent_LeaveStandbyMode","value": "107"}
- ,{"name": "VREvent_TrackedDeviceRoleChanged","value": "108"}
- ,{"name": "VREvent_WatchdogWakeUpRequested","value": "109"}
- ,{"name": "VREvent_LensDistortionChanged","value": "110"}
- ,{"name": "VREvent_PropertyChanged","value": "111"}
- ,{"name": "VREvent_WirelessDisconnect","value": "112"}
- ,{"name": "VREvent_WirelessReconnect","value": "113"}
- ,{"name": "VREvent_ButtonPress","value": "200"}
- ,{"name": "VREvent_ButtonUnpress","value": "201"}
- ,{"name": "VREvent_ButtonTouch","value": "202"}
- ,{"name": "VREvent_ButtonUntouch","value": "203"}
- ,{"name": "VREvent_MouseMove","value": "300"}
- ,{"name": "VREvent_MouseButtonDown","value": "301"}
- ,{"name": "VREvent_MouseButtonUp","value": "302"}
- ,{"name": "VREvent_FocusEnter","value": "303"}
- ,{"name": "VREvent_FocusLeave","value": "304"}
- ,{"name": "VREvent_Scroll","value": "305"}
- ,{"name": "VREvent_TouchPadMove","value": "306"}
- ,{"name": "VREvent_OverlayFocusChanged","value": "307"}
- ,{"name": "VREvent_InputFocusCaptured","value": "400"}
- ,{"name": "VREvent_InputFocusReleased","value": "401"}
- ,{"name": "VREvent_SceneFocusLost","value": "402"}
- ,{"name": "VREvent_SceneFocusGained","value": "403"}
- ,{"name": "VREvent_SceneApplicationChanged","value": "404"}
- ,{"name": "VREvent_SceneFocusChanged","value": "405"}
- ,{"name": "VREvent_InputFocusChanged","value": "406"}
- ,{"name": "VREvent_SceneApplicationSecondaryRenderingStarted","value": "407"}
- ,{"name": "VREvent_HideRenderModels","value": "410"}
- ,{"name": "VREvent_ShowRenderModels","value": "411"}
- ,{"name": "VREvent_OverlayShown","value": "500"}
- ,{"name": "VREvent_OverlayHidden","value": "501"}
- ,{"name": "VREvent_DashboardActivated","value": "502"}
- ,{"name": "VREvent_DashboardDeactivated","value": "503"}
- ,{"name": "VREvent_DashboardThumbSelected","value": "504"}
- ,{"name": "VREvent_DashboardRequested","value": "505"}
- ,{"name": "VREvent_ResetDashboard","value": "506"}
- ,{"name": "VREvent_RenderToast","value": "507"}
- ,{"name": "VREvent_ImageLoaded","value": "508"}
- ,{"name": "VREvent_ShowKeyboard","value": "509"}
- ,{"name": "VREvent_HideKeyboard","value": "510"}
- ,{"name": "VREvent_OverlayGamepadFocusGained","value": "511"}
- ,{"name": "VREvent_OverlayGamepadFocusLost","value": "512"}
- ,{"name": "VREvent_OverlaySharedTextureChanged","value": "513"}
- ,{"name": "VREvent_DashboardGuideButtonDown","value": "514"}
- ,{"name": "VREvent_DashboardGuideButtonUp","value": "515"}
- ,{"name": "VREvent_ScreenshotTriggered","value": "516"}
- ,{"name": "VREvent_ImageFailed","value": "517"}
- ,{"name": "VREvent_DashboardOverlayCreated","value": "518"}
- ,{"name": "VREvent_RequestScreenshot","value": "520"}
- ,{"name": "VREvent_ScreenshotTaken","value": "521"}
- ,{"name": "VREvent_ScreenshotFailed","value": "522"}
- ,{"name": "VREvent_SubmitScreenshotToDashboard","value": "523"}
- ,{"name": "VREvent_ScreenshotProgressToDashboard","value": "524"}
- ,{"name": "VREvent_PrimaryDashboardDeviceChanged","value": "525"}
- ,{"name": "VREvent_Notification_Shown","value": "600"}
- ,{"name": "VREvent_Notification_Hidden","value": "601"}
- ,{"name": "VREvent_Notification_BeginInteraction","value": "602"}
- ,{"name": "VREvent_Notification_Destroyed","value": "603"}
- ,{"name": "VREvent_Quit","value": "700"}
- ,{"name": "VREvent_ProcessQuit","value": "701"}
- ,{"name": "VREvent_QuitAborted_UserPrompt","value": "702"}
- ,{"name": "VREvent_QuitAcknowledged","value": "703"}
- ,{"name": "VREvent_DriverRequestedQuit","value": "704"}
- ,{"name": "VREvent_ChaperoneDataHasChanged","value": "800"}
- ,{"name": "VREvent_ChaperoneUniverseHasChanged","value": "801"}
- ,{"name": "VREvent_ChaperoneTempDataHasChanged","value": "802"}
- ,{"name": "VREvent_ChaperoneSettingsHaveChanged","value": "803"}
- ,{"name": "VREvent_SeatedZeroPoseReset","value": "804"}
- ,{"name": "VREvent_AudioSettingsHaveChanged","value": "820"}
- ,{"name": "VREvent_BackgroundSettingHasChanged","value": "850"}
- ,{"name": "VREvent_CameraSettingsHaveChanged","value": "851"}
- ,{"name": "VREvent_ReprojectionSettingHasChanged","value": "852"}
- ,{"name": "VREvent_ModelSkinSettingsHaveChanged","value": "853"}
- ,{"name": "VREvent_EnvironmentSettingsHaveChanged","value": "854"}
- ,{"name": "VREvent_PowerSettingsHaveChanged","value": "855"}
- ,{"name": "VREvent_EnableHomeAppSettingsHaveChanged","value": "856"}
- ,{"name": "VREvent_StatusUpdate","value": "900"}
- ,{"name": "VREvent_MCImageUpdated","value": "1000"}
- ,{"name": "VREvent_FirmwareUpdateStarted","value": "1100"}
- ,{"name": "VREvent_FirmwareUpdateFinished","value": "1101"}
- ,{"name": "VREvent_KeyboardClosed","value": "1200"}
- ,{"name": "VREvent_KeyboardCharInput","value": "1201"}
- ,{"name": "VREvent_KeyboardDone","value": "1202"}
- ,{"name": "VREvent_ApplicationTransitionStarted","value": "1300"}
- ,{"name": "VREvent_ApplicationTransitionAborted","value": "1301"}
- ,{"name": "VREvent_ApplicationTransitionNewAppStarted","value": "1302"}
- ,{"name": "VREvent_ApplicationListUpdated","value": "1303"}
- ,{"name": "VREvent_ApplicationMimeTypeLoad","value": "1304"}
- ,{"name": "VREvent_ApplicationTransitionNewAppLaunchComplete","value": "1305"}
- ,{"name": "VREvent_ProcessConnected","value": "1306"}
- ,{"name": "VREvent_ProcessDisconnected","value": "1307"}
- ,{"name": "VREvent_Compositor_MirrorWindowShown","value": "1400"}
- ,{"name": "VREvent_Compositor_MirrorWindowHidden","value": "1401"}
- ,{"name": "VREvent_Compositor_ChaperoneBoundsShown","value": "1410"}
- ,{"name": "VREvent_Compositor_ChaperoneBoundsHidden","value": "1411"}
- ,{"name": "VREvent_TrackedCamera_StartVideoStream","value": "1500"}
- ,{"name": "VREvent_TrackedCamera_StopVideoStream","value": "1501"}
- ,{"name": "VREvent_TrackedCamera_PauseVideoStream","value": "1502"}
- ,{"name": "VREvent_TrackedCamera_ResumeVideoStream","value": "1503"}
- ,{"name": "VREvent_TrackedCamera_EditingSurface","value": "1550"}
- ,{"name": "VREvent_PerformanceTest_EnableCapture","value": "1600"}
- ,{"name": "VREvent_PerformanceTest_DisableCapture","value": "1601"}
- ,{"name": "VREvent_PerformanceTest_FidelityLevel","value": "1602"}
- ,{"name": "VREvent_MessageOverlay_Closed","value": "1650"}
- ,{"name": "VREvent_MessageOverlayCloseRequested","value": "1651"}
- ,{"name": "VREvent_VendorSpecific_Reserved_Start","value": "10000"}
- ,{"name": "VREvent_VendorSpecific_Reserved_End","value": "19999"}
-]}
-, {"enumname": "vr::EDeviceActivityLevel","values": [
- {"name": "k_EDeviceActivityLevel_Unknown","value": "-1"}
- ,{"name": "k_EDeviceActivityLevel_Idle","value": "0"}
- ,{"name": "k_EDeviceActivityLevel_UserInteraction","value": "1"}
- ,{"name": "k_EDeviceActivityLevel_UserInteraction_Timeout","value": "2"}
- ,{"name": "k_EDeviceActivityLevel_Standby","value": "3"}
-]}
-, {"enumname": "vr::EVRButtonId","values": [
- {"name": "k_EButton_System","value": "0"}
- ,{"name": "k_EButton_ApplicationMenu","value": "1"}
- ,{"name": "k_EButton_Grip","value": "2"}
- ,{"name": "k_EButton_DPad_Left","value": "3"}
- ,{"name": "k_EButton_DPad_Up","value": "4"}
- ,{"name": "k_EButton_DPad_Right","value": "5"}
- ,{"name": "k_EButton_DPad_Down","value": "6"}
- ,{"name": "k_EButton_A","value": "7"}
- ,{"name": "k_EButton_ProximitySensor","value": "31"}
- ,{"name": "k_EButton_Axis0","value": "32"}
- ,{"name": "k_EButton_Axis1","value": "33"}
- ,{"name": "k_EButton_Axis2","value": "34"}
- ,{"name": "k_EButton_Axis3","value": "35"}
- ,{"name": "k_EButton_Axis4","value": "36"}
- ,{"name": "k_EButton_SteamVR_Touchpad","value": "32"}
- ,{"name": "k_EButton_SteamVR_Trigger","value": "33"}
- ,{"name": "k_EButton_Dashboard_Back","value": "2"}
- ,{"name": "k_EButton_Max","value": "64"}
-]}
-, {"enumname": "vr::EVRMouseButton","values": [
- {"name": "VRMouseButton_Left","value": "1"}
- ,{"name": "VRMouseButton_Right","value": "2"}
- ,{"name": "VRMouseButton_Middle","value": "4"}
-]}
-, {"enumname": "vr::EHiddenAreaMeshType","values": [
- {"name": "k_eHiddenAreaMesh_Standard","value": "0"}
- ,{"name": "k_eHiddenAreaMesh_Inverse","value": "1"}
- ,{"name": "k_eHiddenAreaMesh_LineLoop","value": "2"}
- ,{"name": "k_eHiddenAreaMesh_Max","value": "3"}
-]}
-, {"enumname": "vr::EVRControllerAxisType","values": [
- {"name": "k_eControllerAxis_None","value": "0"}
- ,{"name": "k_eControllerAxis_TrackPad","value": "1"}
- ,{"name": "k_eControllerAxis_Joystick","value": "2"}
- ,{"name": "k_eControllerAxis_Trigger","value": "3"}
-]}
-, {"enumname": "vr::EVRControllerEventOutputType","values": [
- {"name": "ControllerEventOutput_OSEvents","value": "0"}
- ,{"name": "ControllerEventOutput_VREvents","value": "1"}
-]}
-, {"enumname": "vr::ECollisionBoundsStyle","values": [
- {"name": "COLLISION_BOUNDS_STYLE_BEGINNER","value": "0"}
- ,{"name": "COLLISION_BOUNDS_STYLE_INTERMEDIATE","value": "1"}
- ,{"name": "COLLISION_BOUNDS_STYLE_SQUARES","value": "2"}
- ,{"name": "COLLISION_BOUNDS_STYLE_ADVANCED","value": "3"}
- ,{"name": "COLLISION_BOUNDS_STYLE_NONE","value": "4"}
- ,{"name": "COLLISION_BOUNDS_STYLE_COUNT","value": "5"}
-]}
-, {"enumname": "vr::EVROverlayError","values": [
- {"name": "VROverlayError_None","value": "0"}
- ,{"name": "VROverlayError_UnknownOverlay","value": "10"}
- ,{"name": "VROverlayError_InvalidHandle","value": "11"}
- ,{"name": "VROverlayError_PermissionDenied","value": "12"}
- ,{"name": "VROverlayError_OverlayLimitExceeded","value": "13"}
- ,{"name": "VROverlayError_WrongVisibilityType","value": "14"}
- ,{"name": "VROverlayError_KeyTooLong","value": "15"}
- ,{"name": "VROverlayError_NameTooLong","value": "16"}
- ,{"name": "VROverlayError_KeyInUse","value": "17"}
- ,{"name": "VROverlayError_WrongTransformType","value": "18"}
- ,{"name": "VROverlayError_InvalidTrackedDevice","value": "19"}
- ,{"name": "VROverlayError_InvalidParameter","value": "20"}
- ,{"name": "VROverlayError_ThumbnailCantBeDestroyed","value": "21"}
- ,{"name": "VROverlayError_ArrayTooSmall","value": "22"}
- ,{"name": "VROverlayError_RequestFailed","value": "23"}
- ,{"name": "VROverlayError_InvalidTexture","value": "24"}
- ,{"name": "VROverlayError_UnableToLoadFile","value": "25"}
- ,{"name": "VROverlayError_KeyboardAlreadyInUse","value": "26"}
- ,{"name": "VROverlayError_NoNeighbor","value": "27"}
- ,{"name": "VROverlayError_TooManyMaskPrimitives","value": "29"}
- ,{"name": "VROverlayError_BadMaskPrimitive","value": "30"}
-]}
-, {"enumname": "vr::EVRApplicationType","values": [
- {"name": "VRApplication_Other","value": "0"}
- ,{"name": "VRApplication_Scene","value": "1"}
- ,{"name": "VRApplication_Overlay","value": "2"}
- ,{"name": "VRApplication_Background","value": "3"}
- ,{"name": "VRApplication_Utility","value": "4"}
- ,{"name": "VRApplication_VRMonitor","value": "5"}
- ,{"name": "VRApplication_SteamWatchdog","value": "6"}
- ,{"name": "VRApplication_Bootstrapper","value": "7"}
- ,{"name": "VRApplication_Max","value": "8"}
-]}
-, {"enumname": "vr::EVRFirmwareError","values": [
- {"name": "VRFirmwareError_None","value": "0"}
- ,{"name": "VRFirmwareError_Success","value": "1"}
- ,{"name": "VRFirmwareError_Fail","value": "2"}
-]}
-, {"enumname": "vr::EVRNotificationError","values": [
- {"name": "VRNotificationError_OK","value": "0"}
- ,{"name": "VRNotificationError_InvalidNotificationId","value": "100"}
- ,{"name": "VRNotificationError_NotificationQueueFull","value": "101"}
- ,{"name": "VRNotificationError_InvalidOverlayHandle","value": "102"}
- ,{"name": "VRNotificationError_SystemWithUserValueAlreadyExists","value": "103"}
-]}
-, {"enumname": "vr::EVRInitError","values": [
- {"name": "VRInitError_None","value": "0"}
- ,{"name": "VRInitError_Unknown","value": "1"}
- ,{"name": "VRInitError_Init_InstallationNotFound","value": "100"}
- ,{"name": "VRInitError_Init_InstallationCorrupt","value": "101"}
- ,{"name": "VRInitError_Init_VRClientDLLNotFound","value": "102"}
- ,{"name": "VRInitError_Init_FileNotFound","value": "103"}
- ,{"name": "VRInitError_Init_FactoryNotFound","value": "104"}
- ,{"name": "VRInitError_Init_InterfaceNotFound","value": "105"}
- ,{"name": "VRInitError_Init_InvalidInterface","value": "106"}
- ,{"name": "VRInitError_Init_UserConfigDirectoryInvalid","value": "107"}
- ,{"name": "VRInitError_Init_HmdNotFound","value": "108"}
- ,{"name": "VRInitError_Init_NotInitialized","value": "109"}
- ,{"name": "VRInitError_Init_PathRegistryNotFound","value": "110"}
- ,{"name": "VRInitError_Init_NoConfigPath","value": "111"}
- ,{"name": "VRInitError_Init_NoLogPath","value": "112"}
- ,{"name": "VRInitError_Init_PathRegistryNotWritable","value": "113"}
- ,{"name": "VRInitError_Init_AppInfoInitFailed","value": "114"}
- ,{"name": "VRInitError_Init_Retry","value": "115"}
- ,{"name": "VRInitError_Init_InitCanceledByUser","value": "116"}
- ,{"name": "VRInitError_Init_AnotherAppLaunching","value": "117"}
- ,{"name": "VRInitError_Init_SettingsInitFailed","value": "118"}
- ,{"name": "VRInitError_Init_ShuttingDown","value": "119"}
- ,{"name": "VRInitError_Init_TooManyObjects","value": "120"}
- ,{"name": "VRInitError_Init_NoServerForBackgroundApp","value": "121"}
- ,{"name": "VRInitError_Init_NotSupportedWithCompositor","value": "122"}
- ,{"name": "VRInitError_Init_NotAvailableToUtilityApps","value": "123"}
- ,{"name": "VRInitError_Init_Internal","value": "124"}
- ,{"name": "VRInitError_Init_HmdDriverIdIsNone","value": "125"}
- ,{"name": "VRInitError_Init_HmdNotFoundPresenceFailed","value": "126"}
- ,{"name": "VRInitError_Init_VRMonitorNotFound","value": "127"}
- ,{"name": "VRInitError_Init_VRMonitorStartupFailed","value": "128"}
- ,{"name": "VRInitError_Init_LowPowerWatchdogNotSupported","value": "129"}
- ,{"name": "VRInitError_Init_InvalidApplicationType","value": "130"}
- ,{"name": "VRInitError_Init_NotAvailableToWatchdogApps","value": "131"}
- ,{"name": "VRInitError_Init_WatchdogDisabledInSettings","value": "132"}
- ,{"name": "VRInitError_Init_VRDashboardNotFound","value": "133"}
- ,{"name": "VRInitError_Init_VRDashboardStartupFailed","value": "134"}
- ,{"name": "VRInitError_Init_VRHomeNotFound","value": "135"}
- ,{"name": "VRInitError_Init_VRHomeStartupFailed","value": "136"}
- ,{"name": "VRInitError_Init_RebootingBusy","value": "137"}
- ,{"name": "VRInitError_Init_FirmwareUpdateBusy","value": "138"}
- ,{"name": "VRInitError_Init_FirmwareRecoveryBusy","value": "139"}
- ,{"name": "VRInitError_Driver_Failed","value": "200"}
- ,{"name": "VRInitError_Driver_Unknown","value": "201"}
- ,{"name": "VRInitError_Driver_HmdUnknown","value": "202"}
- ,{"name": "VRInitError_Driver_NotLoaded","value": "203"}
- ,{"name": "VRInitError_Driver_RuntimeOutOfDate","value": "204"}
- ,{"name": "VRInitError_Driver_HmdInUse","value": "205"}
- ,{"name": "VRInitError_Driver_NotCalibrated","value": "206"}
- ,{"name": "VRInitError_Driver_CalibrationInvalid","value": "207"}
- ,{"name": "VRInitError_Driver_HmdDisplayNotFound","value": "208"}
- ,{"name": "VRInitError_Driver_TrackedDeviceInterfaceUnknown","value": "209"}
- ,{"name": "VRInitError_Driver_HmdDriverIdOutOfBounds","value": "211"}
- ,{"name": "VRInitError_Driver_HmdDisplayMirrored","value": "212"}
- ,{"name": "VRInitError_IPC_ServerInitFailed","value": "300"}
- ,{"name": "VRInitError_IPC_ConnectFailed","value": "301"}
- ,{"name": "VRInitError_IPC_SharedStateInitFailed","value": "302"}
- ,{"name": "VRInitError_IPC_CompositorInitFailed","value": "303"}
- ,{"name": "VRInitError_IPC_MutexInitFailed","value": "304"}
- ,{"name": "VRInitError_IPC_Failed","value": "305"}
- ,{"name": "VRInitError_IPC_CompositorConnectFailed","value": "306"}
- ,{"name": "VRInitError_IPC_CompositorInvalidConnectResponse","value": "307"}
- ,{"name": "VRInitError_IPC_ConnectFailedAfterMultipleAttempts","value": "308"}
- ,{"name": "VRInitError_Compositor_Failed","value": "400"}
- ,{"name": "VRInitError_Compositor_D3D11HardwareRequired","value": "401"}
- ,{"name": "VRInitError_Compositor_FirmwareRequiresUpdate","value": "402"}
- ,{"name": "VRInitError_Compositor_OverlayInitFailed","value": "403"}
- ,{"name": "VRInitError_Compositor_ScreenshotsInitFailed","value": "404"}
- ,{"name": "VRInitError_Compositor_UnableToCreateDevice","value": "405"}
- ,{"name": "VRInitError_VendorSpecific_UnableToConnectToOculusRuntime","value": "1000"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_CantOpenDevice","value": "1101"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart","value": "1102"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_NoStoredConfig","value": "1103"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_ConfigTooBig","value": "1104"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_ConfigTooSmall","value": "1105"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToInitZLib","value": "1106"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion","value": "1107"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart","value": "1108"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart","value": "1109"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext","value": "1110"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UserDataAddressRange","value": "1111"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_UserDataError","value": "1112"}
- ,{"name": "VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck","value": "1113"}
- ,{"name": "VRInitError_Steam_SteamInstallationNotFound","value": "2000"}
-]}
-, {"enumname": "vr::EVRScreenshotType","values": [
- {"name": "VRScreenshotType_None","value": "0"}
- ,{"name": "VRScreenshotType_Mono","value": "1"}
- ,{"name": "VRScreenshotType_Stereo","value": "2"}
- ,{"name": "VRScreenshotType_Cubemap","value": "3"}
- ,{"name": "VRScreenshotType_MonoPanorama","value": "4"}
- ,{"name": "VRScreenshotType_StereoPanorama","value": "5"}
-]}
-, {"enumname": "vr::EVRScreenshotPropertyFilenames","values": [
- {"name": "VRScreenshotPropertyFilenames_Preview","value": "0"}
- ,{"name": "VRScreenshotPropertyFilenames_VR","value": "1"}
-]}
-, {"enumname": "vr::EVRTrackedCameraError","values": [
- {"name": "VRTrackedCameraError_None","value": "0"}
- ,{"name": "VRTrackedCameraError_OperationFailed","value": "100"}
- ,{"name": "VRTrackedCameraError_InvalidHandle","value": "101"}
- ,{"name": "VRTrackedCameraError_InvalidFrameHeaderVersion","value": "102"}
- ,{"name": "VRTrackedCameraError_OutOfHandles","value": "103"}
- ,{"name": "VRTrackedCameraError_IPCFailure","value": "104"}
- ,{"name": "VRTrackedCameraError_NotSupportedForThisDevice","value": "105"}
- ,{"name": "VRTrackedCameraError_SharedMemoryFailure","value": "106"}
- ,{"name": "VRTrackedCameraError_FrameBufferingFailure","value": "107"}
- ,{"name": "VRTrackedCameraError_StreamSetupFailure","value": "108"}
- ,{"name": "VRTrackedCameraError_InvalidGLTextureId","value": "109"}
- ,{"name": "VRTrackedCameraError_InvalidSharedTextureHandle","value": "110"}
- ,{"name": "VRTrackedCameraError_FailedToGetGLTextureId","value": "111"}
- ,{"name": "VRTrackedCameraError_SharedTextureFailure","value": "112"}
- ,{"name": "VRTrackedCameraError_NoFrameAvailable","value": "113"}
- ,{"name": "VRTrackedCameraError_InvalidArgument","value": "114"}
- ,{"name": "VRTrackedCameraError_InvalidFrameBufferSize","value": "115"}
-]}
-, {"enumname": "vr::EVRTrackedCameraFrameType","values": [
- {"name": "VRTrackedCameraFrameType_Distorted","value": "0"}
- ,{"name": "VRTrackedCameraFrameType_Undistorted","value": "1"}
- ,{"name": "VRTrackedCameraFrameType_MaximumUndistorted","value": "2"}
- ,{"name": "MAX_CAMERA_FRAME_TYPES","value": "3"}
-]}
-, {"enumname": "vr::EVRApplicationError","values": [
- {"name": "VRApplicationError_None","value": "0"}
- ,{"name": "VRApplicationError_AppKeyAlreadyExists","value": "100"}
- ,{"name": "VRApplicationError_NoManifest","value": "101"}
- ,{"name": "VRApplicationError_NoApplication","value": "102"}
- ,{"name": "VRApplicationError_InvalidIndex","value": "103"}
- ,{"name": "VRApplicationError_UnknownApplication","value": "104"}
- ,{"name": "VRApplicationError_IPCFailed","value": "105"}
- ,{"name": "VRApplicationError_ApplicationAlreadyRunning","value": "106"}
- ,{"name": "VRApplicationError_InvalidManifest","value": "107"}
- ,{"name": "VRApplicationError_InvalidApplication","value": "108"}
- ,{"name": "VRApplicationError_LaunchFailed","value": "109"}
- ,{"name": "VRApplicationError_ApplicationAlreadyStarting","value": "110"}
- ,{"name": "VRApplicationError_LaunchInProgress","value": "111"}
- ,{"name": "VRApplicationError_OldApplicationQuitting","value": "112"}
- ,{"name": "VRApplicationError_TransitionAborted","value": "113"}
- ,{"name": "VRApplicationError_IsTemplate","value": "114"}
- ,{"name": "VRApplicationError_SteamVRIsExiting","value": "115"}
- ,{"name": "VRApplicationError_BufferTooSmall","value": "200"}
- ,{"name": "VRApplicationError_PropertyNotSet","value": "201"}
- ,{"name": "VRApplicationError_UnknownProperty","value": "202"}
- ,{"name": "VRApplicationError_InvalidParameter","value": "203"}
-]}
-, {"enumname": "vr::EVRApplicationProperty","values": [
- {"name": "VRApplicationProperty_Name_String","value": "0"}
- ,{"name": "VRApplicationProperty_LaunchType_String","value": "11"}
- ,{"name": "VRApplicationProperty_WorkingDirectory_String","value": "12"}
- ,{"name": "VRApplicationProperty_BinaryPath_String","value": "13"}
- ,{"name": "VRApplicationProperty_Arguments_String","value": "14"}
- ,{"name": "VRApplicationProperty_URL_String","value": "15"}
- ,{"name": "VRApplicationProperty_Description_String","value": "50"}
- ,{"name": "VRApplicationProperty_NewsURL_String","value": "51"}
- ,{"name": "VRApplicationProperty_ImagePath_String","value": "52"}
- ,{"name": "VRApplicationProperty_Source_String","value": "53"}
- ,{"name": "VRApplicationProperty_IsDashboardOverlay_Bool","value": "60"}
- ,{"name": "VRApplicationProperty_IsTemplate_Bool","value": "61"}
- ,{"name": "VRApplicationProperty_IsInstanced_Bool","value": "62"}
- ,{"name": "VRApplicationProperty_IsInternal_Bool","value": "63"}
- ,{"name": "VRApplicationProperty_WantsCompositorPauseInStandby_Bool","value": "64"}
- ,{"name": "VRApplicationProperty_LastLaunchTime_Uint64","value": "70"}
-]}
-, {"enumname": "vr::EVRApplicationTransitionState","values": [
- {"name": "VRApplicationTransition_None","value": "0"}
- ,{"name": "VRApplicationTransition_OldAppQuitSent","value": "10"}
- ,{"name": "VRApplicationTransition_WaitingForExternalLaunch","value": "11"}
- ,{"name": "VRApplicationTransition_NewAppLaunched","value": "20"}
-]}
-, {"enumname": "vr::ChaperoneCalibrationState","values": [
- {"name": "ChaperoneCalibrationState_OK","value": "1"}
- ,{"name": "ChaperoneCalibrationState_Warning","value": "100"}
- ,{"name": "ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved","value": "101"}
- ,{"name": "ChaperoneCalibrationState_Warning_BaseStationRemoved","value": "102"}
- ,{"name": "ChaperoneCalibrationState_Warning_SeatedBoundsInvalid","value": "103"}
- ,{"name": "ChaperoneCalibrationState_Error","value": "200"}
- ,{"name": "ChaperoneCalibrationState_Error_BaseStationUninitialized","value": "201"}
- ,{"name": "ChaperoneCalibrationState_Error_BaseStationConflict","value": "202"}
- ,{"name": "ChaperoneCalibrationState_Error_PlayAreaInvalid","value": "203"}
- ,{"name": "ChaperoneCalibrationState_Error_CollisionBoundsInvalid","value": "204"}
-]}
-, {"enumname": "vr::EChaperoneConfigFile","values": [
- {"name": "EChaperoneConfigFile_Live","value": "1"}
- ,{"name": "EChaperoneConfigFile_Temp","value": "2"}
-]}
-, {"enumname": "vr::EChaperoneImportFlags","values": [
- {"name": "EChaperoneImport_BoundsOnly","value": "1"}
-]}
-, {"enumname": "vr::EVRCompositorError","values": [
- {"name": "VRCompositorError_None","value": "0"}
- ,{"name": "VRCompositorError_RequestFailed","value": "1"}
- ,{"name": "VRCompositorError_IncompatibleVersion","value": "100"}
- ,{"name": "VRCompositorError_DoNotHaveFocus","value": "101"}
- ,{"name": "VRCompositorError_InvalidTexture","value": "102"}
- ,{"name": "VRCompositorError_IsNotSceneApplication","value": "103"}
- ,{"name": "VRCompositorError_TextureIsOnWrongDevice","value": "104"}
- ,{"name": "VRCompositorError_TextureUsesUnsupportedFormat","value": "105"}
- ,{"name": "VRCompositorError_SharedTexturesNotSupported","value": "106"}
- ,{"name": "VRCompositorError_IndexOutOfRange","value": "107"}
- ,{"name": "VRCompositorError_AlreadySubmitted","value": "108"}
- ,{"name": "VRCompositorError_InvalidBounds","value": "109"}
-]}
-, {"enumname": "vr::VROverlayInputMethod","values": [
- {"name": "VROverlayInputMethod_None","value": "0"}
- ,{"name": "VROverlayInputMethod_Mouse","value": "1"}
-]}
-, {"enumname": "vr::VROverlayTransformType","values": [
- {"name": "VROverlayTransform_Absolute","value": "0"}
- ,{"name": "VROverlayTransform_TrackedDeviceRelative","value": "1"}
- ,{"name": "VROverlayTransform_SystemOverlay","value": "2"}
- ,{"name": "VROverlayTransform_TrackedComponent","value": "3"}
-]}
-, {"enumname": "vr::VROverlayFlags","values": [
- {"name": "VROverlayFlags_None","value": "0"}
- ,{"name": "VROverlayFlags_Curved","value": "1"}
- ,{"name": "VROverlayFlags_RGSS4X","value": "2"}
- ,{"name": "VROverlayFlags_NoDashboardTab","value": "3"}
- ,{"name": "VROverlayFlags_AcceptsGamepadEvents","value": "4"}
- ,{"name": "VROverlayFlags_ShowGamepadFocus","value": "5"}
- ,{"name": "VROverlayFlags_SendVRScrollEvents","value": "6"}
- ,{"name": "VROverlayFlags_SendVRTouchpadEvents","value": "7"}
- ,{"name": "VROverlayFlags_ShowTouchPadScrollWheel","value": "8"}
- ,{"name": "VROverlayFlags_TransferOwnershipToInternalProcess","value": "9"}
- ,{"name": "VROverlayFlags_SideBySide_Parallel","value": "10"}
- ,{"name": "VROverlayFlags_SideBySide_Crossed","value": "11"}
- ,{"name": "VROverlayFlags_Panorama","value": "12"}
- ,{"name": "VROverlayFlags_StereoPanorama","value": "13"}
- ,{"name": "VROverlayFlags_SortWithNonSceneOverlays","value": "14"}
- ,{"name": "VROverlayFlags_VisibleInDashboard","value": "15"}
-]}
-, {"enumname": "vr::VRMessageOverlayResponse","values": [
- {"name": "VRMessageOverlayResponse_ButtonPress_0","value": "0"}
- ,{"name": "VRMessageOverlayResponse_ButtonPress_1","value": "1"}
- ,{"name": "VRMessageOverlayResponse_ButtonPress_2","value": "2"}
- ,{"name": "VRMessageOverlayResponse_ButtonPress_3","value": "3"}
- ,{"name": "VRMessageOverlayResponse_CouldntFindSystemOverlay","value": "4"}
- ,{"name": "VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay","value": "5"}
- ,{"name": "VRMessageOverlayResponse_ApplicationQuit","value": "6"}
-]}
-, {"enumname": "vr::EGamepadTextInputMode","values": [
- {"name": "k_EGamepadTextInputModeNormal","value": "0"}
- ,{"name": "k_EGamepadTextInputModePassword","value": "1"}
- ,{"name": "k_EGamepadTextInputModeSubmit","value": "2"}
-]}
-, {"enumname": "vr::EGamepadTextInputLineMode","values": [
- {"name": "k_EGamepadTextInputLineModeSingleLine","value": "0"}
- ,{"name": "k_EGamepadTextInputLineModeMultipleLines","value": "1"}
-]}
-, {"enumname": "vr::EOverlayDirection","values": [
- {"name": "OverlayDirection_Up","value": "0"}
- ,{"name": "OverlayDirection_Down","value": "1"}
- ,{"name": "OverlayDirection_Left","value": "2"}
- ,{"name": "OverlayDirection_Right","value": "3"}
- ,{"name": "OverlayDirection_Count","value": "4"}
-]}
-, {"enumname": "vr::EVROverlayIntersectionMaskPrimitiveType","values": [
- {"name": "OverlayIntersectionPrimitiveType_Rectangle","value": "0"}
- ,{"name": "OverlayIntersectionPrimitiveType_Circle","value": "1"}
-]}
-, {"enumname": "vr::EVRRenderModelError","values": [
- {"name": "VRRenderModelError_None","value": "0"}
- ,{"name": "VRRenderModelError_Loading","value": "100"}
- ,{"name": "VRRenderModelError_NotSupported","value": "200"}
- ,{"name": "VRRenderModelError_InvalidArg","value": "300"}
- ,{"name": "VRRenderModelError_InvalidModel","value": "301"}
- ,{"name": "VRRenderModelError_NoShapes","value": "302"}
- ,{"name": "VRRenderModelError_MultipleShapes","value": "303"}
- ,{"name": "VRRenderModelError_TooManyVertices","value": "304"}
- ,{"name": "VRRenderModelError_MultipleTextures","value": "305"}
- ,{"name": "VRRenderModelError_BufferTooSmall","value": "306"}
- ,{"name": "VRRenderModelError_NotEnoughNormals","value": "307"}
- ,{"name": "VRRenderModelError_NotEnoughTexCoords","value": "308"}
- ,{"name": "VRRenderModelError_InvalidTexture","value": "400"}
-]}
-, {"enumname": "vr::EVRComponentProperty","values": [
- {"name": "VRComponentProperty_IsStatic","value": "1"}
- ,{"name": "VRComponentProperty_IsVisible","value": "2"}
- ,{"name": "VRComponentProperty_IsTouched","value": "4"}
- ,{"name": "VRComponentProperty_IsPressed","value": "8"}
- ,{"name": "VRComponentProperty_IsScrolled","value": "16"}
-]}
-, {"enumname": "vr::EVRNotificationType","values": [
- {"name": "EVRNotificationType_Transient","value": "0"}
- ,{"name": "EVRNotificationType_Persistent","value": "1"}
- ,{"name": "EVRNotificationType_Transient_SystemWithUserValue","value": "2"}
-]}
-, {"enumname": "vr::EVRNotificationStyle","values": [
- {"name": "EVRNotificationStyle_None","value": "0"}
- ,{"name": "EVRNotificationStyle_Application","value": "100"}
- ,{"name": "EVRNotificationStyle_Contact_Disabled","value": "200"}
- ,{"name": "EVRNotificationStyle_Contact_Enabled","value": "201"}
- ,{"name": "EVRNotificationStyle_Contact_Active","value": "202"}
-]}
-, {"enumname": "vr::EVRSettingsError","values": [
- {"name": "VRSettingsError_None","value": "0"}
- ,{"name": "VRSettingsError_IPCFailed","value": "1"}
- ,{"name": "VRSettingsError_WriteFailed","value": "2"}
- ,{"name": "VRSettingsError_ReadFailed","value": "3"}
- ,{"name": "VRSettingsError_JsonParseFailed","value": "4"}
- ,{"name": "VRSettingsError_UnsetSettingHasNoDefault","value": "5"}
-]}
-, {"enumname": "vr::EVRScreenshotError","values": [
- {"name": "VRScreenshotError_None","value": "0"}
- ,{"name": "VRScreenshotError_RequestFailed","value": "1"}
- ,{"name": "VRScreenshotError_IncompatibleVersion","value": "100"}
- ,{"name": "VRScreenshotError_NotFound","value": "101"}
- ,{"name": "VRScreenshotError_BufferTooSmall","value": "102"}
- ,{"name": "VRScreenshotError_ScreenshotAlreadyInProgress","value": "108"}
-]}
-],
-"consts":[{
- "constname": "k_nDriverNone","consttype": "const uint32_t", "constval": "4294967295"}
-,{
- "constname": "k_unMaxDriverDebugResponseSize","consttype": "const uint32_t", "constval": "32768"}
-,{
- "constname": "k_unTrackedDeviceIndex_Hmd","consttype": "const uint32_t", "constval": "0"}
-,{
- "constname": "k_unMaxTrackedDeviceCount","consttype": "const uint32_t", "constval": "16"}
-,{
- "constname": "k_unTrackedDeviceIndexOther","consttype": "const uint32_t", "constval": "4294967294"}
-,{
- "constname": "k_unTrackedDeviceIndexInvalid","consttype": "const uint32_t", "constval": "4294967295"}
-,{
- "constname": "k_ulInvalidPropertyContainer","consttype": "const PropertyContainerHandle_t", "constval": "0"}
-,{
- "constname": "k_unInvalidPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "0"}
-,{
- "constname": "k_unFloatPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "1"}
-,{
- "constname": "k_unInt32PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "2"}
-,{
- "constname": "k_unUint64PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "3"}
-,{
- "constname": "k_unBoolPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "4"}
-,{
- "constname": "k_unStringPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "5"}
-,{
- "constname": "k_unHmdMatrix34PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "20"}
-,{
- "constname": "k_unHmdMatrix44PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "21"}
-,{
- "constname": "k_unHmdVector3PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "22"}
-,{
- "constname": "k_unHmdVector4PropertyTag","consttype": "const PropertyTypeTag_t", "constval": "23"}
-,{
- "constname": "k_unHiddenAreaPropertyTag","consttype": "const PropertyTypeTag_t", "constval": "30"}
-,{
- "constname": "k_unOpenVRInternalReserved_Start","consttype": "const PropertyTypeTag_t", "constval": "1000"}
-,{
- "constname": "k_unOpenVRInternalReserved_End","consttype": "const PropertyTypeTag_t", "constval": "10000"}
-,{
- "constname": "k_unMaxPropertyStringSize","consttype": "const uint32_t", "constval": "32768"}
-,{
- "constname": "k_unControllerStateAxisCount","consttype": "const uint32_t", "constval": "5"}
-,{
- "constname": "k_ulOverlayHandleInvalid","consttype": "const VROverlayHandle_t", "constval": "0"}
-,{
- "constname": "k_unScreenshotHandleInvalid","consttype": "const uint32_t", "constval": "0"}
-,{
- "constname": "IVRSystem_Version","consttype": "const char *const", "constval": "IVRSystem_017"}
-,{
- "constname": "IVRExtendedDisplay_Version","consttype": "const char *const", "constval": "IVRExtendedDisplay_001"}
-,{
- "constname": "IVRTrackedCamera_Version","consttype": "const char *const", "constval": "IVRTrackedCamera_003"}
-,{
- "constname": "k_unMaxApplicationKeyLength","consttype": "const uint32_t", "constval": "128"}
-,{
- "constname": "k_pch_MimeType_HomeApp","consttype": "const char *const", "constval": "vr/home"}
-,{
- "constname": "k_pch_MimeType_GameTheater","consttype": "const char *const", "constval": "vr/game_theater"}
-,{
- "constname": "IVRApplications_Version","consttype": "const char *const", "constval": "IVRApplications_006"}
-,{
- "constname": "IVRChaperone_Version","consttype": "const char *const", "constval": "IVRChaperone_003"}
-,{
- "constname": "IVRChaperoneSetup_Version","consttype": "const char *const", "constval": "IVRChaperoneSetup_005"}
-,{
- "constname": "IVRCompositor_Version","consttype": "const char *const", "constval": "IVRCompositor_021"}
-,{
- "constname": "k_unVROverlayMaxKeyLength","consttype": "const uint32_t", "constval": "128"}
-,{
- "constname": "k_unVROverlayMaxNameLength","consttype": "const uint32_t", "constval": "128"}
-,{
- "constname": "k_unMaxOverlayCount","consttype": "const uint32_t", "constval": "64"}
-,{
- "constname": "k_unMaxOverlayIntersectionMaskPrimitivesCount","consttype": "const uint32_t", "constval": "32"}
-,{
- "constname": "IVROverlay_Version","consttype": "const char *const", "constval": "IVROverlay_016"}
-,{
- "constname": "k_pch_Controller_Component_GDC2015","consttype": "const char *const", "constval": "gdc2015"}
-,{
- "constname": "k_pch_Controller_Component_Base","consttype": "const char *const", "constval": "base"}
-,{
- "constname": "k_pch_Controller_Component_Tip","consttype": "const char *const", "constval": "tip"}
-,{
- "constname": "k_pch_Controller_Component_HandGrip","consttype": "const char *const", "constval": "handgrip"}
-,{
- "constname": "k_pch_Controller_Component_Status","consttype": "const char *const", "constval": "status"}
-,{
- "constname": "IVRRenderModels_Version","consttype": "const char *const", "constval": "IVRRenderModels_005"}
-,{
- "constname": "k_unNotificationTextMaxSize","consttype": "const uint32_t", "constval": "256"}
-,{
- "constname": "IVRNotifications_Version","consttype": "const char *const", "constval": "IVRNotifications_002"}
-,{
- "constname": "k_unMaxSettingsKeyLength","consttype": "const uint32_t", "constval": "128"}
-,{
- "constname": "IVRSettings_Version","consttype": "const char *const", "constval": "IVRSettings_002"}
-,{
- "constname": "k_pch_SteamVR_Section","consttype": "const char *const", "constval": "steamvr"}
-,{
- "constname": "k_pch_SteamVR_RequireHmd_String","consttype": "const char *const", "constval": "requireHmd"}
-,{
- "constname": "k_pch_SteamVR_ForcedDriverKey_String","consttype": "const char *const", "constval": "forcedDriver"}
-,{
- "constname": "k_pch_SteamVR_ForcedHmdKey_String","consttype": "const char *const", "constval": "forcedHmd"}
-,{
- "constname": "k_pch_SteamVR_DisplayDebug_Bool","consttype": "const char *const", "constval": "displayDebug"}
-,{
- "constname": "k_pch_SteamVR_DebugProcessPipe_String","consttype": "const char *const", "constval": "debugProcessPipe"}
-,{
- "constname": "k_pch_SteamVR_DisplayDebugX_Int32","consttype": "const char *const", "constval": "displayDebugX"}
-,{
- "constname": "k_pch_SteamVR_DisplayDebugY_Int32","consttype": "const char *const", "constval": "displayDebugY"}
-,{
- "constname": "k_pch_SteamVR_SendSystemButtonToAllApps_Bool","consttype": "const char *const", "constval": "sendSystemButtonToAllApps"}
-,{
- "constname": "k_pch_SteamVR_LogLevel_Int32","consttype": "const char *const", "constval": "loglevel"}
-,{
- "constname": "k_pch_SteamVR_IPD_Float","consttype": "const char *const", "constval": "ipd"}
-,{
- "constname": "k_pch_SteamVR_Background_String","consttype": "const char *const", "constval": "background"}
-,{
- "constname": "k_pch_SteamVR_BackgroundUseDomeProjection_Bool","consttype": "const char *const", "constval": "backgroundUseDomeProjection"}
-,{
- "constname": "k_pch_SteamVR_BackgroundCameraHeight_Float","consttype": "const char *const", "constval": "backgroundCameraHeight"}
-,{
- "constname": "k_pch_SteamVR_BackgroundDomeRadius_Float","consttype": "const char *const", "constval": "backgroundDomeRadius"}
-,{
- "constname": "k_pch_SteamVR_GridColor_String","consttype": "const char *const", "constval": "gridColor"}
-,{
- "constname": "k_pch_SteamVR_PlayAreaColor_String","consttype": "const char *const", "constval": "playAreaColor"}
-,{
- "constname": "k_pch_SteamVR_ShowStage_Bool","consttype": "const char *const", "constval": "showStage"}
-,{
- "constname": "k_pch_SteamVR_ActivateMultipleDrivers_Bool","consttype": "const char *const", "constval": "activateMultipleDrivers"}
-,{
- "constname": "k_pch_SteamVR_DirectMode_Bool","consttype": "const char *const", "constval": "directMode"}
-,{
- "constname": "k_pch_SteamVR_DirectModeEdidVid_Int32","consttype": "const char *const", "constval": "directModeEdidVid"}
-,{
- "constname": "k_pch_SteamVR_DirectModeEdidPid_Int32","consttype": "const char *const", "constval": "directModeEdidPid"}
-,{
- "constname": "k_pch_SteamVR_UsingSpeakers_Bool","consttype": "const char *const", "constval": "usingSpeakers"}
-,{
- "constname": "k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float","consttype": "const char *const", "constval": "speakersForwardYawOffsetDegrees"}
-,{
- "constname": "k_pch_SteamVR_BaseStationPowerManagement_Bool","consttype": "const char *const", "constval": "basestationPowerManagement"}
-,{
- "constname": "k_pch_SteamVR_NeverKillProcesses_Bool","consttype": "const char *const", "constval": "neverKillProcesses"}
-,{
- "constname": "k_pch_SteamVR_SupersampleScale_Float","consttype": "const char *const", "constval": "supersampleScale"}
-,{
- "constname": "k_pch_SteamVR_AllowAsyncReprojection_Bool","consttype": "const char *const", "constval": "allowAsyncReprojection"}
-,{
- "constname": "k_pch_SteamVR_AllowReprojection_Bool","consttype": "const char *const", "constval": "allowInterleavedReprojection"}
-,{
- "constname": "k_pch_SteamVR_ForceReprojection_Bool","consttype": "const char *const", "constval": "forceReprojection"}
-,{
- "constname": "k_pch_SteamVR_ForceFadeOnBadTracking_Bool","consttype": "const char *const", "constval": "forceFadeOnBadTracking"}
-,{
- "constname": "k_pch_SteamVR_DefaultMirrorView_Int32","consttype": "const char *const", "constval": "defaultMirrorView"}
-,{
- "constname": "k_pch_SteamVR_ShowMirrorView_Bool","consttype": "const char *const", "constval": "showMirrorView"}
-,{
- "constname": "k_pch_SteamVR_MirrorViewGeometry_String","consttype": "const char *const", "constval": "mirrorViewGeometry"}
-,{
- "constname": "k_pch_SteamVR_StartMonitorFromAppLaunch","consttype": "const char *const", "constval": "startMonitorFromAppLaunch"}
-,{
- "constname": "k_pch_SteamVR_StartCompositorFromAppLaunch_Bool","consttype": "const char *const", "constval": "startCompositorFromAppLaunch"}
-,{
- "constname": "k_pch_SteamVR_StartDashboardFromAppLaunch_Bool","consttype": "const char *const", "constval": "startDashboardFromAppLaunch"}
-,{
- "constname": "k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool","consttype": "const char *const", "constval": "startOverlayAppsFromDashboard"}
-,{
- "constname": "k_pch_SteamVR_EnableHomeApp","consttype": "const char *const", "constval": "enableHomeApp"}
-,{
- "constname": "k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32","consttype": "const char *const", "constval": "CycleBackgroundImageTimeSec"}
-,{
- "constname": "k_pch_SteamVR_RetailDemo_Bool","consttype": "const char *const", "constval": "retailDemo"}
-,{
- "constname": "k_pch_SteamVR_IpdOffset_Float","consttype": "const char *const", "constval": "ipdOffset"}
-,{
- "constname": "k_pch_SteamVR_AllowSupersampleFiltering_Bool","consttype": "const char *const", "constval": "allowSupersampleFiltering"}
-,{
- "constname": "k_pch_SteamVR_EnableLinuxVulkanAsync_Bool","consttype": "const char *const", "constval": "enableLinuxVulkanAsync"}
-,{
- "constname": "k_pch_Lighthouse_Section","consttype": "const char *const", "constval": "driver_lighthouse"}
-,{
- "constname": "k_pch_Lighthouse_DisableIMU_Bool","consttype": "const char *const", "constval": "disableimu"}
-,{
- "constname": "k_pch_Lighthouse_UseDisambiguation_String","consttype": "const char *const", "constval": "usedisambiguation"}
-,{
- "constname": "k_pch_Lighthouse_DisambiguationDebug_Int32","consttype": "const char *const", "constval": "disambiguationdebug"}
-,{
- "constname": "k_pch_Lighthouse_PrimaryBasestation_Int32","consttype": "const char *const", "constval": "primarybasestation"}
-,{
- "constname": "k_pch_Lighthouse_DBHistory_Bool","consttype": "const char *const", "constval": "dbhistory"}
-,{
- "constname": "k_pch_Null_Section","consttype": "const char *const", "constval": "driver_null"}
-,{
- "constname": "k_pch_Null_SerialNumber_String","consttype": "const char *const", "constval": "serialNumber"}
-,{
- "constname": "k_pch_Null_ModelNumber_String","consttype": "const char *const", "constval": "modelNumber"}
-,{
- "constname": "k_pch_Null_WindowX_Int32","consttype": "const char *const", "constval": "windowX"}
-,{
- "constname": "k_pch_Null_WindowY_Int32","consttype": "const char *const", "constval": "windowY"}
-,{
- "constname": "k_pch_Null_WindowWidth_Int32","consttype": "const char *const", "constval": "windowWidth"}
-,{
- "constname": "k_pch_Null_WindowHeight_Int32","consttype": "const char *const", "constval": "windowHeight"}
-,{
- "constname": "k_pch_Null_RenderWidth_Int32","consttype": "const char *const", "constval": "renderWidth"}
-,{
- "constname": "k_pch_Null_RenderHeight_Int32","consttype": "const char *const", "constval": "renderHeight"}
-,{
- "constname": "k_pch_Null_SecondsFromVsyncToPhotons_Float","consttype": "const char *const", "constval": "secondsFromVsyncToPhotons"}
-,{
- "constname": "k_pch_Null_DisplayFrequency_Float","consttype": "const char *const", "constval": "displayFrequency"}
-,{
- "constname": "k_pch_UserInterface_Section","consttype": "const char *const", "constval": "userinterface"}
-,{
- "constname": "k_pch_UserInterface_StatusAlwaysOnTop_Bool","consttype": "const char *const", "constval": "StatusAlwaysOnTop"}
-,{
- "constname": "k_pch_UserInterface_MinimizeToTray_Bool","consttype": "const char *const", "constval": "MinimizeToTray"}
-,{
- "constname": "k_pch_UserInterface_Screenshots_Bool","consttype": "const char *const", "constval": "screenshots"}
-,{
- "constname": "k_pch_UserInterface_ScreenshotType_Int","consttype": "const char *const", "constval": "screenshotType"}
-,{
- "constname": "k_pch_Notifications_Section","consttype": "const char *const", "constval": "notifications"}
-,{
- "constname": "k_pch_Notifications_DoNotDisturb_Bool","consttype": "const char *const", "constval": "DoNotDisturb"}
-,{
- "constname": "k_pch_Keyboard_Section","consttype": "const char *const", "constval": "keyboard"}
-,{
- "constname": "k_pch_Keyboard_TutorialCompletions","consttype": "const char *const", "constval": "TutorialCompletions"}
-,{
- "constname": "k_pch_Keyboard_ScaleX","consttype": "const char *const", "constval": "ScaleX"}
-,{
- "constname": "k_pch_Keyboard_ScaleY","consttype": "const char *const", "constval": "ScaleY"}
-,{
- "constname": "k_pch_Keyboard_OffsetLeftX","consttype": "const char *const", "constval": "OffsetLeftX"}
-,{
- "constname": "k_pch_Keyboard_OffsetRightX","consttype": "const char *const", "constval": "OffsetRightX"}
-,{
- "constname": "k_pch_Keyboard_OffsetY","consttype": "const char *const", "constval": "OffsetY"}
-,{
- "constname": "k_pch_Keyboard_Smoothing","consttype": "const char *const", "constval": "Smoothing"}
-,{
- "constname": "k_pch_Perf_Section","consttype": "const char *const", "constval": "perfcheck"}
-,{
- "constname": "k_pch_Perf_HeuristicActive_Bool","consttype": "const char *const", "constval": "heuristicActive"}
-,{
- "constname": "k_pch_Perf_NotifyInHMD_Bool","consttype": "const char *const", "constval": "warnInHMD"}
-,{
- "constname": "k_pch_Perf_NotifyOnlyOnce_Bool","consttype": "const char *const", "constval": "warnOnlyOnce"}
-,{
- "constname": "k_pch_Perf_AllowTimingStore_Bool","consttype": "const char *const", "constval": "allowTimingStore"}
-,{
- "constname": "k_pch_Perf_SaveTimingsOnExit_Bool","consttype": "const char *const", "constval": "saveTimingsOnExit"}
-,{
- "constname": "k_pch_Perf_TestData_Float","consttype": "const char *const", "constval": "perfTestData"}
-,{
- "constname": "k_pch_Perf_LinuxGPUProfiling_Bool","consttype": "const char *const", "constval": "linuxGPUProfiling"}
-,{
- "constname": "k_pch_CollisionBounds_Section","consttype": "const char *const", "constval": "collisionBounds"}
-,{
- "constname": "k_pch_CollisionBounds_Style_Int32","consttype": "const char *const", "constval": "CollisionBoundsStyle"}
-,{
- "constname": "k_pch_CollisionBounds_GroundPerimeterOn_Bool","consttype": "const char *const", "constval": "CollisionBoundsGroundPerimeterOn"}
-,{
- "constname": "k_pch_CollisionBounds_CenterMarkerOn_Bool","consttype": "const char *const", "constval": "CollisionBoundsCenterMarkerOn"}
-,{
- "constname": "k_pch_CollisionBounds_PlaySpaceOn_Bool","consttype": "const char *const", "constval": "CollisionBoundsPlaySpaceOn"}
-,{
- "constname": "k_pch_CollisionBounds_FadeDistance_Float","consttype": "const char *const", "constval": "CollisionBoundsFadeDistance"}
-,{
- "constname": "k_pch_CollisionBounds_ColorGammaR_Int32","consttype": "const char *const", "constval": "CollisionBoundsColorGammaR"}
-,{
- "constname": "k_pch_CollisionBounds_ColorGammaG_Int32","consttype": "const char *const", "constval": "CollisionBoundsColorGammaG"}
-,{
- "constname": "k_pch_CollisionBounds_ColorGammaB_Int32","consttype": "const char *const", "constval": "CollisionBoundsColorGammaB"}
-,{
- "constname": "k_pch_CollisionBounds_ColorGammaA_Int32","consttype": "const char *const", "constval": "CollisionBoundsColorGammaA"}
-,{
- "constname": "k_pch_Camera_Section","consttype": "const char *const", "constval": "camera"}
-,{
- "constname": "k_pch_Camera_EnableCamera_Bool","consttype": "const char *const", "constval": "enableCamera"}
-,{
- "constname": "k_pch_Camera_EnableCameraInDashboard_Bool","consttype": "const char *const", "constval": "enableCameraInDashboard"}
-,{
- "constname": "k_pch_Camera_EnableCameraForCollisionBounds_Bool","consttype": "const char *const", "constval": "enableCameraForCollisionBounds"}
-,{
- "constname": "k_pch_Camera_EnableCameraForRoomView_Bool","consttype": "const char *const", "constval": "enableCameraForRoomView"}
-,{
- "constname": "k_pch_Camera_BoundsColorGammaR_Int32","consttype": "const char *const", "constval": "cameraBoundsColorGammaR"}
-,{
- "constname": "k_pch_Camera_BoundsColorGammaG_Int32","consttype": "const char *const", "constval": "cameraBoundsColorGammaG"}
-,{
- "constname": "k_pch_Camera_BoundsColorGammaB_Int32","consttype": "const char *const", "constval": "cameraBoundsColorGammaB"}
-,{
- "constname": "k_pch_Camera_BoundsColorGammaA_Int32","consttype": "const char *const", "constval": "cameraBoundsColorGammaA"}
-,{
- "constname": "k_pch_Camera_BoundsStrength_Int32","consttype": "const char *const", "constval": "cameraBoundsStrength"}
-,{
- "constname": "k_pch_audio_Section","consttype": "const char *const", "constval": "audio"}
-,{
- "constname": "k_pch_audio_OnPlaybackDevice_String","consttype": "const char *const", "constval": "onPlaybackDevice"}
-,{
- "constname": "k_pch_audio_OnRecordDevice_String","consttype": "const char *const", "constval": "onRecordDevice"}
-,{
- "constname": "k_pch_audio_OnPlaybackMirrorDevice_String","consttype": "const char *const", "constval": "onPlaybackMirrorDevice"}
-,{
- "constname": "k_pch_audio_OffPlaybackDevice_String","consttype": "const char *const", "constval": "offPlaybackDevice"}
-,{
- "constname": "k_pch_audio_OffRecordDevice_String","consttype": "const char *const", "constval": "offRecordDevice"}
-,{
- "constname": "k_pch_audio_VIVEHDMIGain","consttype": "const char *const", "constval": "viveHDMIGain"}
-,{
- "constname": "k_pch_Power_Section","consttype": "const char *const", "constval": "power"}
-,{
- "constname": "k_pch_Power_PowerOffOnExit_Bool","consttype": "const char *const", "constval": "powerOffOnExit"}
-,{
- "constname": "k_pch_Power_TurnOffScreensTimeout_Float","consttype": "const char *const", "constval": "turnOffScreensTimeout"}
-,{
- "constname": "k_pch_Power_TurnOffControllersTimeout_Float","consttype": "const char *const", "constval": "turnOffControllersTimeout"}
-,{
- "constname": "k_pch_Power_ReturnToWatchdogTimeout_Float","consttype": "const char *const", "constval": "returnToWatchdogTimeout"}
-,{
- "constname": "k_pch_Power_AutoLaunchSteamVROnButtonPress","consttype": "const char *const", "constval": "autoLaunchSteamVROnButtonPress"}
-,{
- "constname": "k_pch_Power_PauseCompositorOnStandby_Bool","consttype": "const char *const", "constval": "pauseCompositorOnStandby"}
-,{
- "constname": "k_pch_Dashboard_Section","consttype": "const char *const", "constval": "dashboard"}
-,{
- "constname": "k_pch_Dashboard_EnableDashboard_Bool","consttype": "const char *const", "constval": "enableDashboard"}
-,{
- "constname": "k_pch_Dashboard_ArcadeMode_Bool","consttype": "const char *const", "constval": "arcadeMode"}
-,{
- "constname": "k_pch_modelskin_Section","consttype": "const char *const", "constval": "modelskins"}
-,{
- "constname": "k_pch_Driver_Enable_Bool","consttype": "const char *const", "constval": "enable"}
-,{
- "constname": "IVRScreenshots_Version","consttype": "const char *const", "constval": "IVRScreenshots_001"}
-,{
- "constname": "IVRResources_Version","consttype": "const char *const", "constval": "IVRResources_001"}
-,{
- "constname": "IVRDriverManager_Version","consttype": "const char *const", "constval": "IVRDriverManager_001"}
-],
-"structs":[{"struct": "vr::HmdMatrix34_t","fields": [
-{ "fieldname": "m", "fieldtype": "float [3][4]"}]}
-,{"struct": "vr::HmdMatrix44_t","fields": [
-{ "fieldname": "m", "fieldtype": "float [4][4]"}]}
-,{"struct": "vr::HmdVector3_t","fields": [
-{ "fieldname": "v", "fieldtype": "float [3]"}]}
-,{"struct": "vr::HmdVector4_t","fields": [
-{ "fieldname": "v", "fieldtype": "float [4]"}]}
-,{"struct": "vr::HmdVector3d_t","fields": [
-{ "fieldname": "v", "fieldtype": "double [3]"}]}
-,{"struct": "vr::HmdVector2_t","fields": [
-{ "fieldname": "v", "fieldtype": "float [2]"}]}
-,{"struct": "vr::HmdQuaternion_t","fields": [
-{ "fieldname": "w", "fieldtype": "double"},
-{ "fieldname": "x", "fieldtype": "double"},
-{ "fieldname": "y", "fieldtype": "double"},
-{ "fieldname": "z", "fieldtype": "double"}]}
-,{"struct": "vr::HmdColor_t","fields": [
-{ "fieldname": "r", "fieldtype": "float"},
-{ "fieldname": "g", "fieldtype": "float"},
-{ "fieldname": "b", "fieldtype": "float"},
-{ "fieldname": "a", "fieldtype": "float"}]}
-,{"struct": "vr::HmdQuad_t","fields": [
-{ "fieldname": "vCorners", "fieldtype": "struct vr::HmdVector3_t [4]"}]}
-,{"struct": "vr::HmdRect2_t","fields": [
-{ "fieldname": "vTopLeft", "fieldtype": "struct vr::HmdVector2_t"},
-{ "fieldname": "vBottomRight", "fieldtype": "struct vr::HmdVector2_t"}]}
-,{"struct": "vr::DistortionCoordinates_t","fields": [
-{ "fieldname": "rfRed", "fieldtype": "float [2]"},
-{ "fieldname": "rfGreen", "fieldtype": "float [2]"},
-{ "fieldname": "rfBlue", "fieldtype": "float [2]"}]}
-,{"struct": "vr::Texture_t","fields": [
-{ "fieldname": "handle", "fieldtype": "void *"},
-{ "fieldname": "eType", "fieldtype": "enum vr::ETextureType"},
-{ "fieldname": "eColorSpace", "fieldtype": "enum vr::EColorSpace"}]}
-,{"struct": "vr::TrackedDevicePose_t","fields": [
-{ "fieldname": "mDeviceToAbsoluteTracking", "fieldtype": "struct vr::HmdMatrix34_t"},
-{ "fieldname": "vVelocity", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "vAngularVelocity", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "eTrackingResult", "fieldtype": "enum vr::ETrackingResult"},
-{ "fieldname": "bPoseIsValid", "fieldtype": "_Bool"},
-{ "fieldname": "bDeviceIsConnected", "fieldtype": "_Bool"}]}
-,{"struct": "vr::VRTextureBounds_t","fields": [
-{ "fieldname": "uMin", "fieldtype": "float"},
-{ "fieldname": "vMin", "fieldtype": "float"},
-{ "fieldname": "uMax", "fieldtype": "float"},
-{ "fieldname": "vMax", "fieldtype": "float"}]}
-,{"struct": "vr::VRTextureWithPose_t","fields": [
-{ "fieldname": "mDeviceToAbsoluteTracking", "fieldtype": "struct vr::HmdMatrix34_t"}]}
-,{"struct": "vr::VRVulkanTextureData_t","fields": [
-{ "fieldname": "m_nImage", "fieldtype": "uint64_t"},
-{ "fieldname": "m_pDevice", "fieldtype": "struct VkDevice_T *"},
-{ "fieldname": "m_pPhysicalDevice", "fieldtype": "struct VkPhysicalDevice_T *"},
-{ "fieldname": "m_pInstance", "fieldtype": "struct VkInstance_T *"},
-{ "fieldname": "m_pQueue", "fieldtype": "struct VkQueue_T *"},
-{ "fieldname": "m_nQueueFamilyIndex", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nWidth", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nHeight", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nFormat", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nSampleCount", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::D3D12TextureData_t","fields": [
-{ "fieldname": "m_pResource", "fieldtype": "struct ID3D12Resource *"},
-{ "fieldname": "m_pCommandQueue", "fieldtype": "struct ID3D12CommandQueue *"},
-{ "fieldname": "m_nNodeMask", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Controller_t","fields": [
-{ "fieldname": "button", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Mouse_t","fields": [
-{ "fieldname": "x", "fieldtype": "float"},
-{ "fieldname": "y", "fieldtype": "float"},
-{ "fieldname": "button", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Scroll_t","fields": [
-{ "fieldname": "xdelta", "fieldtype": "float"},
-{ "fieldname": "ydelta", "fieldtype": "float"},
-{ "fieldname": "repeatCount", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_TouchPadMove_t","fields": [
-{ "fieldname": "bFingerDown", "fieldtype": "_Bool"},
-{ "fieldname": "flSecondsFingerDown", "fieldtype": "float"},
-{ "fieldname": "fValueXFirst", "fieldtype": "float"},
-{ "fieldname": "fValueYFirst", "fieldtype": "float"},
-{ "fieldname": "fValueXRaw", "fieldtype": "float"},
-{ "fieldname": "fValueYRaw", "fieldtype": "float"}]}
-,{"struct": "vr::VREvent_Notification_t","fields": [
-{ "fieldname": "ulUserValue", "fieldtype": "uint64_t"},
-{ "fieldname": "notificationId", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Process_t","fields": [
-{ "fieldname": "pid", "fieldtype": "uint32_t"},
-{ "fieldname": "oldPid", "fieldtype": "uint32_t"},
-{ "fieldname": "bForced", "fieldtype": "_Bool"}]}
-,{"struct": "vr::VREvent_Overlay_t","fields": [
-{ "fieldname": "overlayHandle", "fieldtype": "uint64_t"}]}
-,{"struct": "vr::VREvent_Status_t","fields": [
-{ "fieldname": "statusState", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Keyboard_t","fields": [
-{ "fieldname": "cNewInput", "fieldtype": "char [8]"},
-{ "fieldname": "uUserValue", "fieldtype": "uint64_t"}]}
-,{"struct": "vr::VREvent_Ipd_t","fields": [
-{ "fieldname": "ipdMeters", "fieldtype": "float"}]}
-,{"struct": "vr::VREvent_Chaperone_t","fields": [
-{ "fieldname": "m_nPreviousUniverse", "fieldtype": "uint64_t"},
-{ "fieldname": "m_nCurrentUniverse", "fieldtype": "uint64_t"}]}
-,{"struct": "vr::VREvent_Reserved_t","fields": [
-{ "fieldname": "reserved0", "fieldtype": "uint64_t"},
-{ "fieldname": "reserved1", "fieldtype": "uint64_t"}]}
-,{"struct": "vr::VREvent_PerformanceTest_t","fields": [
-{ "fieldname": "m_nFidelityLevel", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_SeatedZeroPoseReset_t","fields": [
-{ "fieldname": "bResetBySystemMenu", "fieldtype": "_Bool"}]}
-,{"struct": "vr::VREvent_Screenshot_t","fields": [
-{ "fieldname": "handle", "fieldtype": "uint32_t"},
-{ "fieldname": "type", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_ScreenshotProgress_t","fields": [
-{ "fieldname": "progress", "fieldtype": "float"}]}
-,{"struct": "vr::VREvent_ApplicationLaunch_t","fields": [
-{ "fieldname": "pid", "fieldtype": "uint32_t"},
-{ "fieldname": "unArgsHandle", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_EditingCameraSurface_t","fields": [
-{ "fieldname": "overlayHandle", "fieldtype": "uint64_t"},
-{ "fieldname": "nVisualMode", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_MessageOverlay_t","fields": [
-{ "fieldname": "unVRMessageOverlayResponse", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VREvent_Property_t","fields": [
-{ "fieldname": "container", "fieldtype": "PropertyContainerHandle_t"},
-{ "fieldname": "prop", "fieldtype": "enum vr::ETrackedDeviceProperty"}]}
-,{"struct": "vr::(anonymous)","fields": [
-{ "fieldname": "reserved", "fieldtype": "struct vr::VREvent_Reserved_t"},
-{ "fieldname": "controller", "fieldtype": "struct vr::VREvent_Controller_t"},
-{ "fieldname": "mouse", "fieldtype": "struct vr::VREvent_Mouse_t"},
-{ "fieldname": "scroll", "fieldtype": "struct vr::VREvent_Scroll_t"},
-{ "fieldname": "process", "fieldtype": "struct vr::VREvent_Process_t"},
-{ "fieldname": "notification", "fieldtype": "struct vr::VREvent_Notification_t"},
-{ "fieldname": "overlay", "fieldtype": "struct vr::VREvent_Overlay_t"},
-{ "fieldname": "status", "fieldtype": "struct vr::VREvent_Status_t"},
-{ "fieldname": "keyboard", "fieldtype": "struct vr::VREvent_Keyboard_t"},
-{ "fieldname": "ipd", "fieldtype": "struct vr::VREvent_Ipd_t"},
-{ "fieldname": "chaperone", "fieldtype": "struct vr::VREvent_Chaperone_t"},
-{ "fieldname": "performanceTest", "fieldtype": "struct vr::VREvent_PerformanceTest_t"},
-{ "fieldname": "touchPadMove", "fieldtype": "struct vr::VREvent_TouchPadMove_t"},
-{ "fieldname": "seatedZeroPoseReset", "fieldtype": "struct vr::VREvent_SeatedZeroPoseReset_t"},
-{ "fieldname": "screenshot", "fieldtype": "struct vr::VREvent_Screenshot_t"},
-{ "fieldname": "screenshotProgress", "fieldtype": "struct vr::VREvent_ScreenshotProgress_t"},
-{ "fieldname": "applicationLaunch", "fieldtype": "struct vr::VREvent_ApplicationLaunch_t"},
-{ "fieldname": "cameraSurface", "fieldtype": "struct vr::VREvent_EditingCameraSurface_t"},
-{ "fieldname": "messageOverlay", "fieldtype": "struct vr::VREvent_MessageOverlay_t"},
-{ "fieldname": "property", "fieldtype": "struct vr::VREvent_Property_t"}]}
-,{"struct": "vr::VREvent_t","fields": [
-{ "fieldname": "eventType", "fieldtype": "uint32_t"},
-{ "fieldname": "trackedDeviceIndex", "fieldtype": "TrackedDeviceIndex_t"},
-{ "fieldname": "eventAgeSeconds", "fieldtype": "float"},
-{ "fieldname": "data", "fieldtype": "VREvent_Data_t"}]}
-,{"struct": "vr::HiddenAreaMesh_t","fields": [
-{ "fieldname": "pVertexData", "fieldtype": "const struct vr::HmdVector2_t *"},
-{ "fieldname": "unTriangleCount", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VRControllerAxis_t","fields": [
-{ "fieldname": "x", "fieldtype": "float"},
-{ "fieldname": "y", "fieldtype": "float"}]}
-,{"struct": "vr::VRControllerState001_t","fields": [
-{ "fieldname": "unPacketNum", "fieldtype": "uint32_t"},
-{ "fieldname": "ulButtonPressed", "fieldtype": "uint64_t"},
-{ "fieldname": "ulButtonTouched", "fieldtype": "uint64_t"},
-{ "fieldname": "rAxis", "fieldtype": "struct vr::VRControllerAxis_t [5]"}]}
-,{"struct": "vr::Compositor_OverlaySettings","fields": [
-{ "fieldname": "size", "fieldtype": "uint32_t"},
-{ "fieldname": "curved", "fieldtype": "_Bool"},
-{ "fieldname": "antialias", "fieldtype": "_Bool"},
-{ "fieldname": "scale", "fieldtype": "float"},
-{ "fieldname": "distance", "fieldtype": "float"},
-{ "fieldname": "alpha", "fieldtype": "float"},
-{ "fieldname": "uOffset", "fieldtype": "float"},
-{ "fieldname": "vOffset", "fieldtype": "float"},
-{ "fieldname": "uScale", "fieldtype": "float"},
-{ "fieldname": "vScale", "fieldtype": "float"},
-{ "fieldname": "gridDivs", "fieldtype": "float"},
-{ "fieldname": "gridWidth", "fieldtype": "float"},
-{ "fieldname": "gridScale", "fieldtype": "float"},
-{ "fieldname": "transform", "fieldtype": "struct vr::HmdMatrix44_t"}]}
-,{"struct": "vr::CameraVideoStreamFrameHeader_t","fields": [
-{ "fieldname": "eFrameType", "fieldtype": "enum vr::EVRTrackedCameraFrameType"},
-{ "fieldname": "nWidth", "fieldtype": "uint32_t"},
-{ "fieldname": "nHeight", "fieldtype": "uint32_t"},
-{ "fieldname": "nBytesPerPixel", "fieldtype": "uint32_t"},
-{ "fieldname": "nFrameSequence", "fieldtype": "uint32_t"},
-{ "fieldname": "standingTrackedDevicePose", "fieldtype": "struct vr::TrackedDevicePose_t"}]}
-,{"struct": "vr::AppOverrideKeys_t","fields": [
-{ "fieldname": "pchKey", "fieldtype": "const char *"},
-{ "fieldname": "pchValue", "fieldtype": "const char *"}]}
-,{"struct": "vr::Compositor_FrameTiming","fields": [
-{ "fieldname": "m_nSize", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nFrameIndex", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumFramePresents", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumMisPresented", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumDroppedFrames", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nReprojectionFlags", "fieldtype": "uint32_t"},
-{ "fieldname": "m_flSystemTimeInSeconds", "fieldtype": "double"},
-{ "fieldname": "m_flPreSubmitGpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flPostSubmitGpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flTotalRenderGpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorRenderGpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorRenderCpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorIdleCpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flClientFrameIntervalMs", "fieldtype": "float"},
-{ "fieldname": "m_flPresentCallCpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flWaitForPresentCpuMs", "fieldtype": "float"},
-{ "fieldname": "m_flSubmitFrameMs", "fieldtype": "float"},
-{ "fieldname": "m_flWaitGetPosesCalledMs", "fieldtype": "float"},
-{ "fieldname": "m_flNewPosesReadyMs", "fieldtype": "float"},
-{ "fieldname": "m_flNewFrameReadyMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorUpdateStartMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorUpdateEndMs", "fieldtype": "float"},
-{ "fieldname": "m_flCompositorRenderStartMs", "fieldtype": "float"},
-{ "fieldname": "m_HmdPose", "fieldtype": "vr::TrackedDevicePose_t"}]}
-,{"struct": "vr::Compositor_CumulativeStats","fields": [
-{ "fieldname": "m_nPid", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumFramePresents", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumDroppedFrames", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumReprojectedFrames", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumFramePresentsOnStartup", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumDroppedFramesOnStartup", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumReprojectedFramesOnStartup", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumLoading", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumFramePresentsLoading", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumDroppedFramesLoading", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumReprojectedFramesLoading", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumTimedOut", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumFramePresentsTimedOut", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumDroppedFramesTimedOut", "fieldtype": "uint32_t"},
-{ "fieldname": "m_nNumReprojectedFramesTimedOut", "fieldtype": "uint32_t"}]}
-,{"struct": "vr::VROverlayIntersectionParams_t","fields": [
-{ "fieldname": "vSource", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "vDirection", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "eOrigin", "fieldtype": "enum vr::ETrackingUniverseOrigin"}]}
-,{"struct": "vr::VROverlayIntersectionResults_t","fields": [
-{ "fieldname": "vPoint", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "vNormal", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "vUVs", "fieldtype": "struct vr::HmdVector2_t"},
-{ "fieldname": "fDistance", "fieldtype": "float"}]}
-,{"struct": "vr::IntersectionMaskRectangle_t","fields": [
-{ "fieldname": "m_flTopLeftX", "fieldtype": "float"},
-{ "fieldname": "m_flTopLeftY", "fieldtype": "float"},
-{ "fieldname": "m_flWidth", "fieldtype": "float"},
-{ "fieldname": "m_flHeight", "fieldtype": "float"}]}
-,{"struct": "vr::IntersectionMaskCircle_t","fields": [
-{ "fieldname": "m_flCenterX", "fieldtype": "float"},
-{ "fieldname": "m_flCenterY", "fieldtype": "float"},
-{ "fieldname": "m_flRadius", "fieldtype": "float"}]}
-,{"struct": "vr::(anonymous)","fields": [
-{ "fieldname": "m_Rectangle", "fieldtype": "struct vr::IntersectionMaskRectangle_t"},
-{ "fieldname": "m_Circle", "fieldtype": "struct vr::IntersectionMaskCircle_t"}]}
-,{"struct": "vr::VROverlayIntersectionMaskPrimitive_t","fields": [
-{ "fieldname": "m_nPrimitiveType", "fieldtype": "enum vr::EVROverlayIntersectionMaskPrimitiveType"},
-{ "fieldname": "m_Primitive", "fieldtype": "VROverlayIntersectionMaskPrimitive_Data_t"}]}
-,{"struct": "vr::RenderModel_ComponentState_t","fields": [
-{ "fieldname": "mTrackingToComponentRenderModel", "fieldtype": "struct vr::HmdMatrix34_t"},
-{ "fieldname": "mTrackingToComponentLocal", "fieldtype": "struct vr::HmdMatrix34_t"},
-{ "fieldname": "uProperties", "fieldtype": "VRComponentProperties"}]}
-,{"struct": "vr::RenderModel_Vertex_t","fields": [
-{ "fieldname": "vPosition", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "vNormal", "fieldtype": "struct vr::HmdVector3_t"},
-{ "fieldname": "rfTextureCoord", "fieldtype": "float [2]"}]}
-,{"struct": "vr::RenderModel_TextureMap_t","fields": [
-{ "fieldname": "unWidth", "fieldtype": "uint16_t"},
-{ "fieldname": "unHeight", "fieldtype": "uint16_t"},
-{ "fieldname": "rubTextureMapData", "fieldtype": "const uint8_t *"}]}
-,{"struct": "vr::RenderModel_t","fields": [
-{ "fieldname": "rVertexData", "fieldtype": "const struct vr::RenderModel_Vertex_t *"},
-{ "fieldname": "unVertexCount", "fieldtype": "uint32_t"},
-{ "fieldname": "rIndexData", "fieldtype": "const uint16_t *"},
-{ "fieldname": "unTriangleCount", "fieldtype": "uint32_t"},
-{ "fieldname": "diffuseTextureId", "fieldtype": "TextureID_t"}]}
-,{"struct": "vr::RenderModel_ControllerMode_State_t","fields": [
-{ "fieldname": "bScrollWheelVisible", "fieldtype": "_Bool"}]}
-,{"struct": "vr::NotificationBitmap_t","fields": [
-{ "fieldname": "m_pImageData", "fieldtype": "void *"},
-{ "fieldname": "m_nWidth", "fieldtype": "int32_t"},
-{ "fieldname": "m_nHeight", "fieldtype": "int32_t"},
-{ "fieldname": "m_nBytesPerPixel", "fieldtype": "int32_t"}]}
-,{"struct": "vr::COpenVRContext","fields": [
-{ "fieldname": "m_pVRSystem", "fieldtype": "class vr::IVRSystem *"},
-{ "fieldname": "m_pVRChaperone", "fieldtype": "class vr::IVRChaperone *"},
-{ "fieldname": "m_pVRChaperoneSetup", "fieldtype": "class vr::IVRChaperoneSetup *"},
-{ "fieldname": "m_pVRCompositor", "fieldtype": "class vr::IVRCompositor *"},
-{ "fieldname": "m_pVROverlay", "fieldtype": "class vr::IVROverlay *"},
-{ "fieldname": "m_pVRResources", "fieldtype": "class vr::IVRResources *"},
-{ "fieldname": "m_pVRRenderModels", "fieldtype": "class vr::IVRRenderModels *"},
-{ "fieldname": "m_pVRExtendedDisplay", "fieldtype": "class vr::IVRExtendedDisplay *"},
-{ "fieldname": "m_pVRSettings", "fieldtype": "class vr::IVRSettings *"},
-{ "fieldname": "m_pVRApplications", "fieldtype": "class vr::IVRApplications *"},
-{ "fieldname": "m_pVRTrackedCamera", "fieldtype": "class vr::IVRTrackedCamera *"},
-{ "fieldname": "m_pVRScreenshots", "fieldtype": "class vr::IVRScreenshots *"},
-{ "fieldname": "m_pVRDriverManager", "fieldtype": "class vr::IVRDriverManager *"}]}
-],
-"methods":[{
- "classname": "vr::IVRSystem",
- "methodname": "GetRecommendedRenderTargetSize",
- "returntype": "void",
- "params": [
-{ "paramname": "pnWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetProjectionMatrix",
- "returntype": "struct vr::HmdMatrix44_t",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "fNearZ" ,"paramtype": "float"},
-{ "paramname": "fFarZ" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetProjectionRaw",
- "returntype": "void",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "pfLeft" ,"paramtype": "float *"},
-{ "paramname": "pfRight" ,"paramtype": "float *"},
-{ "paramname": "pfTop" ,"paramtype": "float *"},
-{ "paramname": "pfBottom" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "ComputeDistortion",
- "returntype": "bool",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "fU" ,"paramtype": "float"},
-{ "paramname": "fV" ,"paramtype": "float"},
-{ "paramname": "pDistortionCoordinates" ,"paramtype": "struct vr::DistortionCoordinates_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetEyeToHeadTransform",
- "returntype": "struct vr::HmdMatrix34_t",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetTimeSinceLastVsync",
- "returntype": "bool",
- "params": [
-{ "paramname": "pfSecondsSinceLastVsync" ,"paramtype": "float *"},
-{ "paramname": "pulFrameCounter" ,"paramtype": "uint64_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetD3D9AdapterIndex",
- "returntype": "int32_t"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetDXGIOutputInfo",
- "returntype": "void",
- "params": [
-{ "paramname": "pnAdapterIndex" ,"paramtype": "int32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetOutputDevice",
- "returntype": "void",
- "params": [
-{ "paramname": "pnDevice" ,"paramtype": "uint64_t *"},
-{ "paramname": "textureType" ,"paramtype": "vr::ETextureType"},
-{ "paramname": "pInstance" ,"paramtype": "struct VkInstance_T *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "IsDisplayOnDesktop",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "SetDisplayVisibility",
- "returntype": "bool",
- "params": [
-{ "paramname": "bIsVisibleOnDesktop" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetDeviceToAbsoluteTrackingPose",
- "returntype": "void",
- "params": [
-{ "paramname": "eOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "fPredictedSecondsToPhotonsFromNow" ,"paramtype": "float"},
-{ "paramname": "pTrackedDevicePoseArray" ,"array_count": "unTrackedDevicePoseArrayCount" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "unTrackedDevicePoseArrayCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "ResetSeatedZeroPose",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetSeatedZeroPoseToStandingAbsoluteTrackingPose",
- "returntype": "struct vr::HmdMatrix34_t"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetRawZeroPoseToStandingAbsoluteTrackingPose",
- "returntype": "struct vr::HmdMatrix34_t"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetSortedTrackedDeviceIndicesOfClass",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "eTrackedDeviceClass" ,"paramtype": "vr::ETrackedDeviceClass"},
-{ "paramname": "punTrackedDeviceIndexArray" ,"array_count": "unTrackedDeviceIndexArrayCount" ,"paramtype": "vr::TrackedDeviceIndex_t *"},
-{ "paramname": "unTrackedDeviceIndexArrayCount" ,"paramtype": "uint32_t"},
-{ "paramname": "unRelativeToTrackedDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetTrackedDeviceActivityLevel",
- "returntype": "vr::EDeviceActivityLevel",
- "params": [
-{ "paramname": "unDeviceId" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "ApplyTransform",
- "returntype": "void",
- "params": [
-{ "paramname": "pOutputPose" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "pTrackedDevicePose" ,"paramtype": "const struct vr::TrackedDevicePose_t *"},
-{ "paramname": "pTransform" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetTrackedDeviceIndexForControllerRole",
- "returntype": "vr::TrackedDeviceIndex_t",
- "params": [
-{ "paramname": "unDeviceType" ,"paramtype": "vr::ETrackedControllerRole"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetControllerRoleForTrackedDeviceIndex",
- "returntype": "vr::ETrackedControllerRole",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetTrackedDeviceClass",
- "returntype": "vr::ETrackedDeviceClass",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "IsTrackedDeviceConnected",
- "returntype": "bool",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetBoolTrackedDeviceProperty",
- "returntype": "bool",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetFloatTrackedDeviceProperty",
- "returntype": "float",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetInt32TrackedDeviceProperty",
- "returntype": "int32_t",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetUint64TrackedDeviceProperty",
- "returntype": "uint64_t",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetMatrix34TrackedDeviceProperty",
- "returntype": "struct vr::HmdMatrix34_t",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetStringTrackedDeviceProperty",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "prop" ,"paramtype": "vr::ETrackedDeviceProperty"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pError" ,"paramtype": "vr::ETrackedPropertyError *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetPropErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "error" ,"paramtype": "vr::ETrackedPropertyError"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "PollNextEvent",
- "returntype": "bool",
- "params": [
-{ "paramname": "pEvent" ,"paramtype": "struct vr::VREvent_t *"},
-{ "paramname": "uncbVREvent" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "PollNextEventWithPose",
- "returntype": "bool",
- "params": [
-{ "paramname": "eOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "pEvent" ,"paramtype": "struct vr::VREvent_t *"},
-{ "paramname": "uncbVREvent" ,"paramtype": "uint32_t"},
-{ "paramname": "pTrackedDevicePose" ,"paramtype": "vr::TrackedDevicePose_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetEventTypeNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "eType" ,"paramtype": "vr::EVREventType"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetHiddenAreaMesh",
- "returntype": "struct vr::HiddenAreaMesh_t",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "type" ,"paramtype": "vr::EHiddenAreaMeshType"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetControllerState",
- "returntype": "bool",
- "params": [
-{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pControllerState" ,"paramtype": "vr::VRControllerState_t *"},
-{ "paramname": "unControllerStateSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetControllerStateWithPose",
- "returntype": "bool",
- "params": [
-{ "paramname": "eOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pControllerState" ,"paramtype": "vr::VRControllerState_t *"},
-{ "paramname": "unControllerStateSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pTrackedDevicePose" ,"paramtype": "struct vr::TrackedDevicePose_t *"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "TriggerHapticPulse",
- "returntype": "void",
- "params": [
-{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "unAxisId" ,"paramtype": "uint32_t"},
-{ "paramname": "usDurationMicroSec" ,"paramtype": "unsigned short"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetButtonIdNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "eButtonId" ,"paramtype": "vr::EVRButtonId"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "GetControllerAxisTypeNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "eAxisType" ,"paramtype": "vr::EVRControllerAxisType"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "CaptureInputFocus",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "ReleaseInputFocus",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "IsInputFocusCapturedByAnotherProcess",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "DriverDebugRequest",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pchRequest" ,"paramtype": "const char *"},
-{ "paramname": "pchResponseBuffer" ,"paramtype": "char *"},
-{ "paramname": "unResponseBufferSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "PerformFirmwareUpdate",
- "returntype": "vr::EVRFirmwareError",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "AcknowledgeQuit_Exiting",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRSystem",
- "methodname": "AcknowledgeQuit_UserPrompt",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRExtendedDisplay",
- "methodname": "GetWindowBounds",
- "returntype": "void",
- "params": [
-{ "paramname": "pnX" ,"paramtype": "int32_t *"},
-{ "paramname": "pnY" ,"paramtype": "int32_t *"},
-{ "paramname": "pnWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRExtendedDisplay",
- "methodname": "GetEyeOutputViewport",
- "returntype": "void",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "pnX" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnY" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRExtendedDisplay",
- "methodname": "GetDXGIOutputInfo",
- "returntype": "void",
- "params": [
-{ "paramname": "pnAdapterIndex" ,"paramtype": "int32_t *"},
-{ "paramname": "pnAdapterOutputIndex" ,"paramtype": "int32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetCameraErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "eCameraError" ,"paramtype": "vr::EVRTrackedCameraError"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "HasCamera",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pHasCamera" ,"paramtype": "bool *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetCameraFrameSize",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pnWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnHeight" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnFrameBufferSize" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetCameraIntrinsics",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pFocalLength" ,"paramtype": "vr::HmdVector2_t *"},
-{ "paramname": "pCenter" ,"paramtype": "vr::HmdVector2_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetCameraProjection",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "flZNear" ,"paramtype": "float"},
-{ "paramname": "flZFar" ,"paramtype": "float"},
-{ "paramname": "pProjection" ,"paramtype": "vr::HmdMatrix44_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "AcquireVideoStreamingService",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pHandle" ,"paramtype": "vr::TrackedCameraHandle_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "ReleaseVideoStreamingService",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "hTrackedCamera" ,"paramtype": "vr::TrackedCameraHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetVideoStreamFrameBuffer",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "hTrackedCamera" ,"paramtype": "vr::TrackedCameraHandle_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pFrameBuffer" ,"paramtype": "void *"},
-{ "paramname": "nFrameBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pFrameHeader" ,"paramtype": "vr::CameraVideoStreamFrameHeader_t *"},
-{ "paramname": "nFrameHeaderSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetVideoStreamTextureSize",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "nDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pTextureBounds" ,"paramtype": "vr::VRTextureBounds_t *"},
-{ "paramname": "pnWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pnHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetVideoStreamTextureD3D11",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "hTrackedCamera" ,"paramtype": "vr::TrackedCameraHandle_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pD3D11DeviceOrResource" ,"paramtype": "void *"},
-{ "paramname": "ppD3D11ShaderResourceView" ,"paramtype": "void **"},
-{ "paramname": "pFrameHeader" ,"paramtype": "vr::CameraVideoStreamFrameHeader_t *"},
-{ "paramname": "nFrameHeaderSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "GetVideoStreamTextureGL",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "hTrackedCamera" ,"paramtype": "vr::TrackedCameraHandle_t"},
-{ "paramname": "eFrameType" ,"paramtype": "vr::EVRTrackedCameraFrameType"},
-{ "paramname": "pglTextureId" ,"paramtype": "vr::glUInt_t *"},
-{ "paramname": "pFrameHeader" ,"paramtype": "vr::CameraVideoStreamFrameHeader_t *"},
-{ "paramname": "nFrameHeaderSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRTrackedCamera",
- "methodname": "ReleaseVideoStreamTextureGL",
- "returntype": "vr::EVRTrackedCameraError",
- "params": [
-{ "paramname": "hTrackedCamera" ,"paramtype": "vr::TrackedCameraHandle_t"},
-{ "paramname": "glTextureId" ,"paramtype": "vr::glUInt_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "AddApplicationManifest",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchApplicationManifestFullPath" ,"paramtype": "const char *"},
-{ "paramname": "bTemporary" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "RemoveApplicationManifest",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchApplicationManifestFullPath" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "IsApplicationInstalled",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationCount",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationKeyByIndex",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "unApplicationIndex" ,"paramtype": "uint32_t"},
-{ "paramname": "pchAppKeyBuffer" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationKeyByProcessId",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "unProcessId" ,"paramtype": "uint32_t"},
-{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
-{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "LaunchApplication",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "LaunchTemplateApplication",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchTemplateAppKey" ,"paramtype": "const char *"},
-{ "paramname": "pchNewAppKey" ,"paramtype": "const char *"},
-{ "paramname": "pKeys" ,"array_count": "unKeys" ,"paramtype": "const struct vr::AppOverrideKeys_t *"},
-{ "paramname": "unKeys" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "LaunchApplicationFromMimeType",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchMimeType" ,"paramtype": "const char *"},
-{ "paramname": "pchArgs" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "LaunchDashboardOverlay",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "CancelApplicationLaunch",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "IdentifyApplication",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "unProcessId" ,"paramtype": "uint32_t"},
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationProcessId",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationsErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "error" ,"paramtype": "vr::EVRApplicationError"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationPropertyString",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "eProperty" ,"paramtype": "vr::EVRApplicationProperty"},
-{ "paramname": "pchPropertyValueBuffer" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unPropertyValueBufferLen" ,"paramtype": "uint32_t"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRApplicationError *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationPropertyBool",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "eProperty" ,"paramtype": "vr::EVRApplicationProperty"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRApplicationError *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationPropertyUint64",
- "returntype": "uint64_t",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "eProperty" ,"paramtype": "vr::EVRApplicationProperty"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRApplicationError *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "SetApplicationAutoLaunch",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "bAutoLaunch" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationAutoLaunch",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "SetDefaultApplicationForMimeType",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "pchMimeType" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetDefaultApplicationForMimeType",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchMimeType" ,"paramtype": "const char *"},
-{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
-{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationSupportedMimeTypes",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"},
-{ "paramname": "pchMimeTypesBuffer" ,"paramtype": "char *"},
-{ "paramname": "unMimeTypesBuffer" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationsThatSupportMimeType",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchMimeType" ,"paramtype": "const char *"},
-{ "paramname": "pchAppKeysThatSupportBuffer" ,"paramtype": "char *"},
-{ "paramname": "unAppKeysThatSupportBuffer" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationLaunchArguments",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "unHandle" ,"paramtype": "uint32_t"},
-{ "paramname": "pchArgs" ,"paramtype": "char *"},
-{ "paramname": "unArgs" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetStartingApplication",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKeyBuffer" ,"paramtype": "char *"},
-{ "paramname": "unAppKeyBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetTransitionState",
- "returntype": "vr::EVRApplicationTransitionState"
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "PerformApplicationPrelaunchCheck",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchAppKey" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetApplicationsTransitionStateNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "state" ,"paramtype": "vr::EVRApplicationTransitionState"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "IsQuitUserPromptRequested",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "LaunchInternalProcess",
- "returntype": "vr::EVRApplicationError",
- "params": [
-{ "paramname": "pchBinaryPath" ,"paramtype": "const char *"},
-{ "paramname": "pchArguments" ,"paramtype": "const char *"},
-{ "paramname": "pchWorkingDirectory" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRApplications",
- "methodname": "GetCurrentSceneProcessId",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "GetCalibrationState",
- "returntype": "vr::ChaperoneCalibrationState"
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "GetPlayAreaSize",
- "returntype": "bool",
- "params": [
-{ "paramname": "pSizeX" ,"paramtype": "float *"},
-{ "paramname": "pSizeZ" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "GetPlayAreaRect",
- "returntype": "bool",
- "params": [
-{ "paramname": "rect" ,"paramtype": "struct vr::HmdQuad_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "ReloadInfo",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "SetSceneColor",
- "returntype": "void",
- "params": [
-{ "paramname": "color" ,"paramtype": "struct vr::HmdColor_t"}
- ]
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "GetBoundsColor",
- "returntype": "void",
- "params": [
-{ "paramname": "pOutputColorArray" ,"paramtype": "struct vr::HmdColor_t *"},
-{ "paramname": "nNumOutputColors" ,"paramtype": "int"},
-{ "paramname": "flCollisionBoundsFadeDistance" ,"paramtype": "float"},
-{ "paramname": "pOutputCameraColor" ,"paramtype": "struct vr::HmdColor_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "AreBoundsVisible",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRChaperone",
- "methodname": "ForceBoundsVisible",
- "returntype": "void",
- "params": [
-{ "paramname": "bForce" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "CommitWorkingCopy",
- "returntype": "bool",
- "params": [
-{ "paramname": "configFile" ,"paramtype": "vr::EChaperoneConfigFile"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "RevertWorkingCopy",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetWorkingPlayAreaSize",
- "returntype": "bool",
- "params": [
-{ "paramname": "pSizeX" ,"paramtype": "float *"},
-{ "paramname": "pSizeZ" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetWorkingPlayAreaRect",
- "returntype": "bool",
- "params": [
-{ "paramname": "rect" ,"paramtype": "struct vr::HmdQuad_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetWorkingCollisionBoundsInfo",
- "returntype": "bool",
- "params": [
-{ "paramname": "pQuadsBuffer" ,"out_array_count": "punQuadsCount" ,"paramtype": "struct vr::HmdQuad_t *"},
-{ "paramname": "punQuadsCount" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetLiveCollisionBoundsInfo",
- "returntype": "bool",
- "params": [
-{ "paramname": "pQuadsBuffer" ,"out_array_count": "punQuadsCount" ,"paramtype": "struct vr::HmdQuad_t *"},
-{ "paramname": "punQuadsCount" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetWorkingSeatedZeroPoseToRawTrackingPose",
- "returntype": "bool",
- "params": [
-{ "paramname": "pmatSeatedZeroPoseToRawTrackingPose" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetWorkingStandingZeroPoseToRawTrackingPose",
- "returntype": "bool",
- "params": [
-{ "paramname": "pmatStandingZeroPoseToRawTrackingPose" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingPlayAreaSize",
- "returntype": "void",
- "params": [
-{ "paramname": "sizeX" ,"paramtype": "float"},
-{ "paramname": "sizeZ" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingCollisionBoundsInfo",
- "returntype": "void",
- "params": [
-{ "paramname": "pQuadsBuffer" ,"array_count": "unQuadsCount" ,"paramtype": "struct vr::HmdQuad_t *"},
-{ "paramname": "unQuadsCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingSeatedZeroPoseToRawTrackingPose",
- "returntype": "void",
- "params": [
-{ "paramname": "pMatSeatedZeroPoseToRawTrackingPose" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingStandingZeroPoseToRawTrackingPose",
- "returntype": "void",
- "params": [
-{ "paramname": "pMatStandingZeroPoseToRawTrackingPose" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "ReloadFromDisk",
- "returntype": "void",
- "params": [
-{ "paramname": "configFile" ,"paramtype": "vr::EChaperoneConfigFile"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetLiveSeatedZeroPoseToRawTrackingPose",
- "returntype": "bool",
- "params": [
-{ "paramname": "pmatSeatedZeroPoseToRawTrackingPose" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingCollisionBoundsTagsInfo",
- "returntype": "void",
- "params": [
-{ "paramname": "pTagsBuffer" ,"array_count": "unTagCount" ,"paramtype": "uint8_t *"},
-{ "paramname": "unTagCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetLiveCollisionBoundsTagsInfo",
- "returntype": "bool",
- "params": [
-{ "paramname": "pTagsBuffer" ,"out_array_count": "punTagCount" ,"paramtype": "uint8_t *"},
-{ "paramname": "punTagCount" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "SetWorkingPhysicalBoundsInfo",
- "returntype": "bool",
- "params": [
-{ "paramname": "pQuadsBuffer" ,"array_count": "unQuadsCount" ,"paramtype": "struct vr::HmdQuad_t *"},
-{ "paramname": "unQuadsCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "GetLivePhysicalBoundsInfo",
- "returntype": "bool",
- "params": [
-{ "paramname": "pQuadsBuffer" ,"out_array_count": "punQuadsCount" ,"paramtype": "struct vr::HmdQuad_t *"},
-{ "paramname": "punQuadsCount" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "ExportLiveToBuffer",
- "returntype": "bool",
- "params": [
-{ "paramname": "pBuffer" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "pnBufferLength" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVRChaperoneSetup",
- "methodname": "ImportFromBufferToWorking",
- "returntype": "bool",
- "params": [
-{ "paramname": "pBuffer" ,"paramtype": "const char *"},
-{ "paramname": "nImportFlags" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "SetTrackingSpace",
- "returntype": "void",
- "params": [
-{ "paramname": "eOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetTrackingSpace",
- "returntype": "vr::ETrackingUniverseOrigin"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "WaitGetPoses",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "pRenderPoseArray" ,"array_count": "unRenderPoseArrayCount" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "unRenderPoseArrayCount" ,"paramtype": "uint32_t"},
-{ "paramname": "pGamePoseArray" ,"array_count": "unGamePoseArrayCount" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "unGamePoseArrayCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetLastPoses",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "pRenderPoseArray" ,"array_count": "unRenderPoseArrayCount" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "unRenderPoseArrayCount" ,"paramtype": "uint32_t"},
-{ "paramname": "pGamePoseArray" ,"array_count": "unGamePoseArrayCount" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "unGamePoseArrayCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetLastPoseForTrackedDeviceIndex",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pOutputPose" ,"paramtype": "struct vr::TrackedDevicePose_t *"},
-{ "paramname": "pOutputGamePose" ,"paramtype": "struct vr::TrackedDevicePose_t *"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "Submit",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "pTexture" ,"paramtype": "const struct vr::Texture_t *"},
-{ "paramname": "pBounds" ,"paramtype": "const struct vr::VRTextureBounds_t *"},
-{ "paramname": "nSubmitFlags" ,"paramtype": "vr::EVRSubmitFlags"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ClearLastSubmittedFrame",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "PostPresentHandoff",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetFrameTiming",
- "returntype": "bool",
- "params": [
-{ "paramname": "pTiming" ,"paramtype": "struct vr::Compositor_FrameTiming *"},
-{ "paramname": "unFramesAgo" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetFrameTimings",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pTiming" ,"paramtype": "struct vr::Compositor_FrameTiming *"},
-{ "paramname": "nFrames" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetFrameTimeRemaining",
- "returntype": "float"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetCumulativeStats",
- "returntype": "void",
- "params": [
-{ "paramname": "pStats" ,"paramtype": "struct vr::Compositor_CumulativeStats *"},
-{ "paramname": "nStatsSizeInBytes" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "FadeToColor",
- "returntype": "void",
- "params": [
-{ "paramname": "fSeconds" ,"paramtype": "float"},
-{ "paramname": "fRed" ,"paramtype": "float"},
-{ "paramname": "fGreen" ,"paramtype": "float"},
-{ "paramname": "fBlue" ,"paramtype": "float"},
-{ "paramname": "fAlpha" ,"paramtype": "float"},
-{ "paramname": "bBackground" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetCurrentFadeColor",
- "returntype": "struct vr::HmdColor_t",
- "params": [
-{ "paramname": "bBackground" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "FadeGrid",
- "returntype": "void",
- "params": [
-{ "paramname": "fSeconds" ,"paramtype": "float"},
-{ "paramname": "bFadeIn" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetCurrentGridAlpha",
- "returntype": "float"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "SetSkyboxOverride",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "pTextures" ,"array_count": "unTextureCount" ,"paramtype": "const struct vr::Texture_t *"},
-{ "paramname": "unTextureCount" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ClearSkyboxOverride",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "CompositorBringToFront",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "CompositorGoToBack",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "CompositorQuit",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "IsFullscreen",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetCurrentSceneFocusProcess",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetLastFrameRenderer",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "CanRenderScene",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ShowMirrorWindow",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "HideMirrorWindow",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "IsMirrorWindowVisible",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "CompositorDumpImages",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ShouldAppRenderWithLowResources",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ForceInterleavedReprojectionOn",
- "returntype": "void",
- "params": [
-{ "paramname": "bOverride" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ForceReconnectProcess",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "SuspendRendering",
- "returntype": "void",
- "params": [
-{ "paramname": "bSuspend" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetMirrorTextureD3D11",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "pD3D11DeviceOrResource" ,"paramtype": "void *"},
-{ "paramname": "ppD3D11ShaderResourceView" ,"paramtype": "void **"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ReleaseMirrorTextureD3D11",
- "returntype": "void",
- "params": [
-{ "paramname": "pD3D11ShaderResourceView" ,"paramtype": "void *"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetMirrorTextureGL",
- "returntype": "vr::EVRCompositorError",
- "params": [
-{ "paramname": "eEye" ,"paramtype": "vr::EVREye"},
-{ "paramname": "pglTextureId" ,"paramtype": "vr::glUInt_t *"},
-{ "paramname": "pglSharedTextureHandle" ,"paramtype": "vr::glSharedTextureHandle_t *"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "ReleaseSharedGLTexture",
- "returntype": "bool",
- "params": [
-{ "paramname": "glTextureId" ,"paramtype": "vr::glUInt_t"},
-{ "paramname": "glSharedTextureHandle" ,"paramtype": "vr::glSharedTextureHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "LockGLSharedTextureForAccess",
- "returntype": "void",
- "params": [
-{ "paramname": "glSharedTextureHandle" ,"paramtype": "vr::glSharedTextureHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "UnlockGLSharedTextureForAccess",
- "returntype": "void",
- "params": [
-{ "paramname": "glSharedTextureHandle" ,"paramtype": "vr::glSharedTextureHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetVulkanInstanceExtensionsRequired",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "GetVulkanDeviceExtensionsRequired",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pPhysicalDevice" ,"paramtype": "struct VkPhysicalDevice_T *"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "SetExplicitTimingMode",
- "returntype": "void",
- "params": [
-{ "paramname": "bExplicitTimingMode" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVRCompositor",
- "methodname": "SubmitExplicitTimingData",
- "returntype": "vr::EVRCompositorError"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "FindOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "pchOverlayKey" ,"paramtype": "const char *"},
-{ "paramname": "pOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "CreateOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "pchOverlayKey" ,"paramtype": "const char *"},
-{ "paramname": "pchOverlayName" ,"paramtype": "const char *"},
-{ "paramname": "pOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "DestroyOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetHighQualityOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetHighQualityOverlay",
- "returntype": "vr::VROverlayHandle_t"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayKey",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pError" ,"paramtype": "vr::EVROverlayError *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayName",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pError" ,"paramtype": "vr::EVROverlayError *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayName",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchName" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayImageData",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pvBuffer" ,"paramtype": "void *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "punWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "punHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "error" ,"paramtype": "vr::EVROverlayError"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayRenderingPid",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unPID" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayRenderingPid",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayFlag",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eOverlayFlag" ,"paramtype": "vr::VROverlayFlags"},
-{ "paramname": "bEnabled" ,"paramtype": "bool"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayFlag",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eOverlayFlag" ,"paramtype": "vr::VROverlayFlags"},
-{ "paramname": "pbEnabled" ,"paramtype": "bool *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayColor",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "fRed" ,"paramtype": "float"},
-{ "paramname": "fGreen" ,"paramtype": "float"},
-{ "paramname": "fBlue" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayColor",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pfRed" ,"paramtype": "float *"},
-{ "paramname": "pfGreen" ,"paramtype": "float *"},
-{ "paramname": "pfBlue" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayAlpha",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "fAlpha" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayAlpha",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pfAlpha" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTexelAspect",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "fTexelAspect" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTexelAspect",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pfTexelAspect" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlaySortOrder",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unSortOrder" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlaySortOrder",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "punSortOrder" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayWidthInMeters",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "fWidthInMeters" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayWidthInMeters",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pfWidthInMeters" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayAutoCurveDistanceRangeInMeters",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "fMinDistanceInMeters" ,"paramtype": "float"},
-{ "paramname": "fMaxDistanceInMeters" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayAutoCurveDistanceRangeInMeters",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pfMinDistanceInMeters" ,"paramtype": "float *"},
-{ "paramname": "pfMaxDistanceInMeters" ,"paramtype": "float *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTextureColorSpace",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eTextureColorSpace" ,"paramtype": "vr::EColorSpace"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTextureColorSpace",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "peTextureColorSpace" ,"paramtype": "vr::EColorSpace *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTextureBounds",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pOverlayTextureBounds" ,"paramtype": "const struct vr::VRTextureBounds_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTextureBounds",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pOverlayTextureBounds" ,"paramtype": "struct vr::VRTextureBounds_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayRenderModel",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchValue" ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"},
-{ "paramname": "pColor" ,"paramtype": "struct vr::HmdColor_t *"},
-{ "paramname": "pError" ,"paramtype": "vr::EVROverlayError *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayRenderModel",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchRenderModel" ,"paramtype": "const char *"},
-{ "paramname": "pColor" ,"paramtype": "const struct vr::HmdColor_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTransformType",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "peTransformType" ,"paramtype": "vr::VROverlayTransformType *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTransformAbsolute",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eTrackingOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "pmatTrackingOriginToOverlayTransform" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTransformAbsolute",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "peTrackingOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin *"},
-{ "paramname": "pmatTrackingOriginToOverlayTransform" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTransformTrackedDeviceRelative",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unTrackedDevice" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pmatTrackedDeviceToOverlayTransform" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTransformTrackedDeviceRelative",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "punTrackedDevice" ,"paramtype": "vr::TrackedDeviceIndex_t *"},
-{ "paramname": "pmatTrackedDeviceToOverlayTransform" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTransformTrackedDeviceComponent",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"},
-{ "paramname": "pchComponentName" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTransformTrackedDeviceComponent",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "punDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t *"},
-{ "paramname": "pchComponentName" ,"paramtype": "char *"},
-{ "paramname": "unComponentNameSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTransformOverlayRelative",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "ulOverlayHandleParent" ,"paramtype": "vr::VROverlayHandle_t *"},
-{ "paramname": "pmatParentOverlayToOverlayTransform" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTransformOverlayRelative",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "ulOverlayHandleParent" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pmatParentOverlayToOverlayTransform" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ShowOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "HideOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "IsOverlayVisible",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetTransformForOverlayCoordinates",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eTrackingOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "coordinatesInOverlay" ,"paramtype": "struct vr::HmdVector2_t"},
-{ "paramname": "pmatTransform" ,"paramtype": "struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "PollNextOverlayEvent",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pEvent" ,"paramtype": "struct vr::VREvent_t *"},
-{ "paramname": "uncbVREvent" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayInputMethod",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "peInputMethod" ,"paramtype": "vr::VROverlayInputMethod *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayInputMethod",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eInputMethod" ,"paramtype": "vr::VROverlayInputMethod"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayMouseScale",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pvecMouseScale" ,"paramtype": "struct vr::HmdVector2_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayMouseScale",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pvecMouseScale" ,"paramtype": "const struct vr::HmdVector2_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ComputeOverlayIntersection",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pParams" ,"paramtype": "const struct vr::VROverlayIntersectionParams_t *"},
-{ "paramname": "pResults" ,"paramtype": "struct vr::VROverlayIntersectionResults_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "HandleControllerOverlayInteractionAsMouse",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unControllerDeviceIndex" ,"paramtype": "vr::TrackedDeviceIndex_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "IsHoverTargetOverlay",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetGamepadFocusOverlay",
- "returntype": "vr::VROverlayHandle_t"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetGamepadFocusOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulNewFocusOverlay" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayNeighbor",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "eDirection" ,"paramtype": "vr::EOverlayDirection"},
-{ "paramname": "ulFrom" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "ulTo" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "MoveGamepadFocusToNeighbor",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "eDirection" ,"paramtype": "vr::EOverlayDirection"},
-{ "paramname": "ulFrom" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayTexture",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pTexture" ,"paramtype": "const struct vr::Texture_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ClearOverlayTexture",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayRaw",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pvBuffer" ,"paramtype": "void *"},
-{ "paramname": "unWidth" ,"paramtype": "uint32_t"},
-{ "paramname": "unHeight" ,"paramtype": "uint32_t"},
-{ "paramname": "unDepth" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayFromFile",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pchFilePath" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTexture",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pNativeTextureHandle" ,"paramtype": "void **"},
-{ "paramname": "pNativeTextureRef" ,"paramtype": "void *"},
-{ "paramname": "pWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pHeight" ,"paramtype": "uint32_t *"},
-{ "paramname": "pNativeFormat" ,"paramtype": "uint32_t *"},
-{ "paramname": "pAPIType" ,"paramtype": "vr::ETextureType *"},
-{ "paramname": "pColorSpace" ,"paramtype": "vr::EColorSpace *"},
-{ "paramname": "pTextureBounds" ,"paramtype": "struct vr::VRTextureBounds_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ReleaseNativeOverlayHandle",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pNativeTextureHandle" ,"paramtype": "void *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayTextureSize",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pWidth" ,"paramtype": "uint32_t *"},
-{ "paramname": "pHeight" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "CreateDashboardOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "pchOverlayKey" ,"paramtype": "const char *"},
-{ "paramname": "pchOverlayFriendlyName" ,"paramtype": "const char *"},
-{ "paramname": "pMainHandle" ,"paramtype": "vr::VROverlayHandle_t *"},
-{ "paramname": "pThumbnailHandle" ,"paramtype": "vr::VROverlayHandle_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "IsDashboardVisible",
- "returntype": "bool"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "IsActiveDashboardOverlay",
- "returntype": "bool",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetDashboardOverlaySceneProcess",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "unProcessId" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetDashboardOverlaySceneProcess",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "punProcessId" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ShowDashboard",
- "returntype": "void",
- "params": [
-{ "paramname": "pchOverlayToShow" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetPrimaryDashboardDevice",
- "returntype": "vr::TrackedDeviceIndex_t"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ShowKeyboard",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "eInputMode" ,"paramtype": "vr::EGamepadTextInputMode"},
-{ "paramname": "eLineInputMode" ,"paramtype": "vr::EGamepadTextInputLineMode"},
-{ "paramname": "pchDescription" ,"paramtype": "const char *"},
-{ "paramname": "unCharMax" ,"paramtype": "uint32_t"},
-{ "paramname": "pchExistingText" ,"paramtype": "const char *"},
-{ "paramname": "bUseMinimalMode" ,"paramtype": "bool"},
-{ "paramname": "uUserValue" ,"paramtype": "uint64_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ShowKeyboardForOverlay",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "eInputMode" ,"paramtype": "vr::EGamepadTextInputMode"},
-{ "paramname": "eLineInputMode" ,"paramtype": "vr::EGamepadTextInputLineMode"},
-{ "paramname": "pchDescription" ,"paramtype": "const char *"},
-{ "paramname": "unCharMax" ,"paramtype": "uint32_t"},
-{ "paramname": "pchExistingText" ,"paramtype": "const char *"},
-{ "paramname": "bUseMinimalMode" ,"paramtype": "bool"},
-{ "paramname": "uUserValue" ,"paramtype": "uint64_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetKeyboardText",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchText" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "cchText" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "HideKeyboard",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetKeyboardTransformAbsolute",
- "returntype": "void",
- "params": [
-{ "paramname": "eTrackingOrigin" ,"paramtype": "vr::ETrackingUniverseOrigin"},
-{ "paramname": "pmatTrackingOriginToKeyboardTransform" ,"paramtype": "const struct vr::HmdMatrix34_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetKeyboardPositionForOverlay",
- "returntype": "void",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "avoidRect" ,"paramtype": "struct vr::HmdRect2_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "SetOverlayIntersectionMask",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pMaskPrimitives" ,"paramtype": "struct vr::VROverlayIntersectionMaskPrimitive_t *"},
-{ "paramname": "unNumMaskPrimitives" ,"paramtype": "uint32_t"},
-{ "paramname": "unPrimitiveSize" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "GetOverlayFlags",
- "returntype": "vr::EVROverlayError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "pFlags" ,"paramtype": "uint32_t *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "ShowMessageOverlay",
- "returntype": "vr::VRMessageOverlayResponse",
- "params": [
-{ "paramname": "pchText" ,"paramtype": "const char *"},
-{ "paramname": "pchCaption" ,"paramtype": "const char *"},
-{ "paramname": "pchButton0Text" ,"paramtype": "const char *"},
-{ "paramname": "pchButton1Text" ,"paramtype": "const char *"},
-{ "paramname": "pchButton2Text" ,"paramtype": "const char *"},
-{ "paramname": "pchButton3Text" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVROverlay",
- "methodname": "CloseMessageOverlay",
- "returntype": "void"
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "LoadRenderModel_Async",
- "returntype": "vr::EVRRenderModelError",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "ppRenderModel" ,"paramtype": "struct vr::RenderModel_t **"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "FreeRenderModel",
- "returntype": "void",
- "params": [
-{ "paramname": "pRenderModel" ,"paramtype": "struct vr::RenderModel_t *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "LoadTexture_Async",
- "returntype": "vr::EVRRenderModelError",
- "params": [
-{ "paramname": "textureId" ,"paramtype": "vr::TextureID_t"},
-{ "paramname": "ppTexture" ,"paramtype": "struct vr::RenderModel_TextureMap_t **"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "FreeTexture",
- "returntype": "void",
- "params": [
-{ "paramname": "pTexture" ,"paramtype": "struct vr::RenderModel_TextureMap_t *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "LoadTextureD3D11_Async",
- "returntype": "vr::EVRRenderModelError",
- "params": [
-{ "paramname": "textureId" ,"paramtype": "vr::TextureID_t"},
-{ "paramname": "pD3D11Device" ,"paramtype": "void *"},
-{ "paramname": "ppD3D11Texture2D" ,"paramtype": "void **"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "LoadIntoTextureD3D11_Async",
- "returntype": "vr::EVRRenderModelError",
- "params": [
-{ "paramname": "textureId" ,"paramtype": "vr::TextureID_t"},
-{ "paramname": "pDstTexture" ,"paramtype": "void *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "FreeTextureD3D11",
- "returntype": "void",
- "params": [
-{ "paramname": "pD3D11Texture2D" ,"paramtype": "void *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetRenderModelName",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "unRenderModelIndex" ,"paramtype": "uint32_t"},
-{ "paramname": "pchRenderModelName" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unRenderModelNameLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetRenderModelCount",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetComponentCount",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetComponentName",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "unComponentIndex" ,"paramtype": "uint32_t"},
-{ "paramname": "pchComponentName" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unComponentNameLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetComponentButtonMask",
- "returntype": "uint64_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchComponentName" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetComponentRenderModelName",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchComponentName" ,"paramtype": "const char *"},
-{ "paramname": "pchComponentRenderModelName" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unComponentRenderModelNameLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetComponentState",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchComponentName" ,"paramtype": "const char *"},
-{ "paramname": "pControllerState" ,"paramtype": "const vr::VRControllerState_t *"},
-{ "paramname": "pState" ,"paramtype": "const struct vr::RenderModel_ControllerMode_State_t *"},
-{ "paramname": "pComponentState" ,"paramtype": "struct vr::RenderModel_ComponentState_t *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "RenderModelHasComponent",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchComponentName" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetRenderModelThumbnailURL",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchThumbnailURL" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unThumbnailURLLen" ,"paramtype": "uint32_t"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRRenderModelError *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetRenderModelOriginalPath",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchRenderModelName" ,"paramtype": "const char *"},
-{ "paramname": "pchOriginalPath" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unOriginalPathLen" ,"paramtype": "uint32_t"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRRenderModelError *"}
- ]
-}
-,{
- "classname": "vr::IVRRenderModels",
- "methodname": "GetRenderModelErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "error" ,"paramtype": "vr::EVRRenderModelError"}
- ]
-}
-,{
- "classname": "vr::IVRNotifications",
- "methodname": "CreateNotification",
- "returntype": "vr::EVRNotificationError",
- "params": [
-{ "paramname": "ulOverlayHandle" ,"paramtype": "vr::VROverlayHandle_t"},
-{ "paramname": "ulUserValue" ,"paramtype": "uint64_t"},
-{ "paramname": "type" ,"paramtype": "vr::EVRNotificationType"},
-{ "paramname": "pchText" ,"paramtype": "const char *"},
-{ "paramname": "style" ,"paramtype": "vr::EVRNotificationStyle"},
-{ "paramname": "pImage" ,"paramtype": "const struct vr::NotificationBitmap_t *"},
-{ "paramname": "pNotificationId" ,"paramtype": "vr::VRNotificationId *"}
- ]
-}
-,{
- "classname": "vr::IVRNotifications",
- "methodname": "RemoveNotification",
- "returntype": "vr::EVRNotificationError",
- "params": [
-{ "paramname": "notificationId" ,"paramtype": "vr::VRNotificationId"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "GetSettingsErrorNameFromEnum",
- "returntype": "const char *",
- "params": [
-{ "paramname": "eError" ,"paramtype": "vr::EVRSettingsError"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "Sync",
- "returntype": "bool",
- "params": [
-{ "paramname": "bForce" ,"paramtype": "bool"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "SetBool",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "bValue" ,"paramtype": "bool"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "SetInt32",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "nValue" ,"paramtype": "int32_t"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "SetFloat",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "flValue" ,"paramtype": "float"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "SetString",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "pchValue" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "GetBool",
- "returntype": "bool",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "GetInt32",
- "returntype": "int32_t",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "GetFloat",
- "returntype": "float",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "GetString",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unValueLen" ,"paramtype": "uint32_t"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "RemoveSection",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRSettings",
- "methodname": "RemoveKeyInSection",
- "returntype": "void",
- "params": [
-{ "paramname": "pchSection" ,"paramtype": "const char *"},
-{ "paramname": "pchSettingsKey" ,"paramtype": "const char *"},
-{ "paramname": "peError" ,"paramtype": "vr::EVRSettingsError *"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "RequestScreenshot",
- "returntype": "vr::EVRScreenshotError",
- "params": [
-{ "paramname": "pOutScreenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t *"},
-{ "paramname": "type" ,"paramtype": "vr::EVRScreenshotType"},
-{ "paramname": "pchPreviewFilename" ,"paramtype": "const char *"},
-{ "paramname": "pchVRFilename" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "HookScreenshot",
- "returntype": "vr::EVRScreenshotError",
- "params": [
-{ "paramname": "pSupportedTypes" ,"array_count": "numTypes" ,"paramtype": "const vr::EVRScreenshotType *"},
-{ "paramname": "numTypes" ,"paramtype": "int"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "GetScreenshotPropertyType",
- "returntype": "vr::EVRScreenshotType",
- "params": [
-{ "paramname": "screenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t"},
-{ "paramname": "pError" ,"paramtype": "vr::EVRScreenshotError *"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "GetScreenshotPropertyFilename",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "screenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t"},
-{ "paramname": "filenameType" ,"paramtype": "vr::EVRScreenshotPropertyFilenames"},
-{ "paramname": "pchFilename" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "cchFilename" ,"paramtype": "uint32_t"},
-{ "paramname": "pError" ,"paramtype": "vr::EVRScreenshotError *"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "UpdateScreenshotProgress",
- "returntype": "vr::EVRScreenshotError",
- "params": [
-{ "paramname": "screenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t"},
-{ "paramname": "flProgress" ,"paramtype": "float"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "TakeStereoScreenshot",
- "returntype": "vr::EVRScreenshotError",
- "params": [
-{ "paramname": "pOutScreenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t *"},
-{ "paramname": "pchPreviewFilename" ,"paramtype": "const char *"},
-{ "paramname": "pchVRFilename" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRScreenshots",
- "methodname": "SubmitScreenshot",
- "returntype": "vr::EVRScreenshotError",
- "params": [
-{ "paramname": "screenshotHandle" ,"paramtype": "vr::ScreenshotHandle_t"},
-{ "paramname": "type" ,"paramtype": "vr::EVRScreenshotType"},
-{ "paramname": "pchSourcePreviewFilename" ,"paramtype": "const char *"},
-{ "paramname": "pchSourceVRFilename" ,"paramtype": "const char *"}
- ]
-}
-,{
- "classname": "vr::IVRResources",
- "methodname": "LoadSharedResource",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchResourceName" ,"paramtype": "const char *"},
-{ "paramname": "pchBuffer" ,"paramtype": "char *"},
-{ "paramname": "unBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRResources",
- "methodname": "GetResourceFullPath",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "pchResourceName" ,"paramtype": "const char *"},
-{ "paramname": "pchResourceTypeDirectory" ,"paramtype": "const char *"},
-{ "paramname": "pchPathBuffer" ,"paramtype": "char *"},
-{ "paramname": "unBufferLen" ,"paramtype": "uint32_t"}
- ]
-}
-,{
- "classname": "vr::IVRDriverManager",
- "methodname": "GetDriverCount",
- "returntype": "uint32_t"
-}
-,{
- "classname": "vr::IVRDriverManager",
- "methodname": "GetDriverName",
- "returntype": "uint32_t",
- "params": [
-{ "paramname": "nDriver" ,"paramtype": "vr::DriverId_t"},
-{ "paramname": "pchValue" ,"out_string": " " ,"paramtype": "char *"},
-{ "paramname": "unBufferSize" ,"paramtype": "uint32_t"}
- ]
-}
-]
-} \ No newline at end of file
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_capi.h b/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_capi.h
deleted file mode 100644
index 50f8958..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_capi.h
+++ /dev/null
@@ -1,1942 +0,0 @@
-//======= Copyright (c) Valve Corporation, All rights reserved. ===============
-//
-// Purpose: Header for flatted SteamAPI. Use this for binding to other languages.
-// This file is auto-generated, do not edit it.
-//
-//=============================================================================
-
-#ifndef __OPENVR_API_FLAT_H__
-#define __OPENVR_API_FLAT_H__
-#if defined( _WIN32 ) || defined( __clang__ )
-#pragma once
-#endif
-
-#ifdef __cplusplus
-#define EXTERN_C extern "C"
-#else
-#define EXTERN_C
-#endif
-
-#if defined( _WIN32 )
-#define OPENVR_FNTABLE_CALLTYPE __stdcall
-#else
-#define OPENVR_FNTABLE_CALLTYPE
-#endif
-
-// OPENVR API export macro
-#if defined( _WIN32 ) && !defined( _X360 )
- #if defined( OPENVR_API_EXPORTS )
- #define S_API EXTERN_C __declspec( dllexport )
- #elif defined( OPENVR_API_NODLL )
- #define S_API EXTERN_C
- #else
- #define S_API extern "C" __declspec( dllimport )
- #endif // OPENVR_API_EXPORTS
-#elif defined( __GNUC__ )
- #if defined( OPENVR_API_EXPORTS )
- #define S_API EXTERN_C __attribute__ ((visibility("default")))
- #else
- #define S_API EXTERN_C
- #endif // OPENVR_API_EXPORTS
-#else // !WIN32
- #if defined( OPENVR_API_EXPORTS )
- #define S_API EXTERN_C
- #else
- #define S_API EXTERN_C
- #endif // OPENVR_API_EXPORTS
-#endif
-
-#include <stdint.h>
-
-#if defined( __WIN32 )
-typedef char bool;
-#else
-#include <stdbool.h>
-#endif
-
-typedef uint64_t PropertyContainerHandle_t;
-typedef uint32_t PropertyTypeTag_t;
-typedef uint64_t VRActionHandle_t;
-typedef uint64_t VRActionSetHandle_t;
-typedef uint64_t VRInputOriginHandle_t;
-
-
-// OpenVR Constants
-
-static const unsigned int k_nDriverNone = 4294967295;
-static const unsigned int k_unMaxDriverDebugResponseSize = 32768;
-static const unsigned int k_unTrackedDeviceIndex_Hmd = 0;
-static const unsigned int k_unMaxTrackedDeviceCount = 16;
-static const unsigned int k_unTrackedDeviceIndexOther = 4294967294;
-static const unsigned int k_unTrackedDeviceIndexInvalid = 4294967295;
-static const unsigned long k_ulInvalidPropertyContainer = 0;
-static const unsigned int k_unInvalidPropertyTag = 0;
-static const unsigned int k_unFloatPropertyTag = 1;
-static const unsigned int k_unInt32PropertyTag = 2;
-static const unsigned int k_unUint64PropertyTag = 3;
-static const unsigned int k_unBoolPropertyTag = 4;
-static const unsigned int k_unStringPropertyTag = 5;
-static const unsigned int k_unHmdMatrix34PropertyTag = 20;
-static const unsigned int k_unHmdMatrix44PropertyTag = 21;
-static const unsigned int k_unHmdVector3PropertyTag = 22;
-static const unsigned int k_unHmdVector4PropertyTag = 23;
-static const unsigned int k_unHiddenAreaPropertyTag = 30;
-static const unsigned int k_unOpenVRInternalReserved_Start = 1000;
-static const unsigned int k_unOpenVRInternalReserved_End = 10000;
-static const unsigned int k_unMaxPropertyStringSize = 32768;
-static const unsigned int k_unControllerStateAxisCount = 5;
-static const unsigned long k_ulOverlayHandleInvalid = 0;
-static const unsigned int k_unScreenshotHandleInvalid = 0;
-static const char * IVRSystem_Version = "IVRSystem_017";
-static const char * IVRExtendedDisplay_Version = "IVRExtendedDisplay_001";
-static const char * IVRTrackedCamera_Version = "IVRTrackedCamera_003";
-static const unsigned int k_unMaxApplicationKeyLength = 128;
-static const char * k_pch_MimeType_HomeApp = "vr/home";
-static const char * k_pch_MimeType_GameTheater = "vr/game_theater";
-static const char * IVRApplications_Version = "IVRApplications_006";
-static const char * IVRChaperone_Version = "IVRChaperone_003";
-static const char * IVRChaperoneSetup_Version = "IVRChaperoneSetup_005";
-static const char * IVRCompositor_Version = "IVRCompositor_021";
-static const unsigned int k_unVROverlayMaxKeyLength = 128;
-static const unsigned int k_unVROverlayMaxNameLength = 128;
-static const unsigned int k_unMaxOverlayCount = 64;
-static const unsigned int k_unMaxOverlayIntersectionMaskPrimitivesCount = 32;
-static const char * IVROverlay_Version = "IVROverlay_016";
-static const char * k_pch_Controller_Component_GDC2015 = "gdc2015";
-static const char * k_pch_Controller_Component_Base = "base";
-static const char * k_pch_Controller_Component_Tip = "tip";
-static const char * k_pch_Controller_Component_HandGrip = "handgrip";
-static const char * k_pch_Controller_Component_Status = "status";
-static const char * IVRRenderModels_Version = "IVRRenderModels_005";
-static const unsigned int k_unNotificationTextMaxSize = 256;
-static const char * IVRNotifications_Version = "IVRNotifications_002";
-static const unsigned int k_unMaxSettingsKeyLength = 128;
-static const char * IVRSettings_Version = "IVRSettings_002";
-static const char * k_pch_SteamVR_Section = "steamvr";
-static const char * k_pch_SteamVR_RequireHmd_String = "requireHmd";
-static const char * k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver";
-static const char * k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd";
-static const char * k_pch_SteamVR_DisplayDebug_Bool = "displayDebug";
-static const char * k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe";
-static const char * k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX";
-static const char * k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY";
-static const char * k_pch_SteamVR_SendSystemButtonToAllApps_Bool = "sendSystemButtonToAllApps";
-static const char * k_pch_SteamVR_LogLevel_Int32 = "loglevel";
-static const char * k_pch_SteamVR_IPD_Float = "ipd";
-static const char * k_pch_SteamVR_Background_String = "background";
-static const char * k_pch_SteamVR_BackgroundUseDomeProjection_Bool = "backgroundUseDomeProjection";
-static const char * k_pch_SteamVR_BackgroundCameraHeight_Float = "backgroundCameraHeight";
-static const char * k_pch_SteamVR_BackgroundDomeRadius_Float = "backgroundDomeRadius";
-static const char * k_pch_SteamVR_GridColor_String = "gridColor";
-static const char * k_pch_SteamVR_PlayAreaColor_String = "playAreaColor";
-static const char * k_pch_SteamVR_ShowStage_Bool = "showStage";
-static const char * k_pch_SteamVR_ActivateMultipleDrivers_Bool = "activateMultipleDrivers";
-static const char * k_pch_SteamVR_DirectMode_Bool = "directMode";
-static const char * k_pch_SteamVR_DirectModeEdidVid_Int32 = "directModeEdidVid";
-static const char * k_pch_SteamVR_DirectModeEdidPid_Int32 = "directModeEdidPid";
-static const char * k_pch_SteamVR_UsingSpeakers_Bool = "usingSpeakers";
-static const char * k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees";
-static const char * k_pch_SteamVR_BaseStationPowerManagement_Bool = "basestationPowerManagement";
-static const char * k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses";
-static const char * k_pch_SteamVR_SupersampleScale_Float = "supersampleScale";
-static const char * k_pch_SteamVR_AllowAsyncReprojection_Bool = "allowAsyncReprojection";
-static const char * k_pch_SteamVR_AllowReprojection_Bool = "allowInterleavedReprojection";
-static const char * k_pch_SteamVR_ForceReprojection_Bool = "forceReprojection";
-static const char * k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
-static const char * k_pch_SteamVR_DefaultMirrorView_Int32 = "defaultMirrorView";
-static const char * k_pch_SteamVR_ShowMirrorView_Bool = "showMirrorView";
-static const char * k_pch_SteamVR_MirrorViewGeometry_String = "mirrorViewGeometry";
-static const char * k_pch_SteamVR_StartMonitorFromAppLaunch = "startMonitorFromAppLaunch";
-static const char * k_pch_SteamVR_StartCompositorFromAppLaunch_Bool = "startCompositorFromAppLaunch";
-static const char * k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch";
-static const char * k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard";
-static const char * k_pch_SteamVR_EnableHomeApp = "enableHomeApp";
-static const char * k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec";
-static const char * k_pch_SteamVR_RetailDemo_Bool = "retailDemo";
-static const char * k_pch_SteamVR_IpdOffset_Float = "ipdOffset";
-static const char * k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering";
-static const char * k_pch_SteamVR_EnableLinuxVulkanAsync_Bool = "enableLinuxVulkanAsync";
-static const char * k_pch_Lighthouse_Section = "driver_lighthouse";
-static const char * k_pch_Lighthouse_DisableIMU_Bool = "disableimu";
-static const char * k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation";
-static const char * k_pch_Lighthouse_DisambiguationDebug_Int32 = "disambiguationdebug";
-static const char * k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
-static const char * k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
-static const char * k_pch_Null_Section = "driver_null";
-static const char * k_pch_Null_SerialNumber_String = "serialNumber";
-static const char * k_pch_Null_ModelNumber_String = "modelNumber";
-static const char * k_pch_Null_WindowX_Int32 = "windowX";
-static const char * k_pch_Null_WindowY_Int32 = "windowY";
-static const char * k_pch_Null_WindowWidth_Int32 = "windowWidth";
-static const char * k_pch_Null_WindowHeight_Int32 = "windowHeight";
-static const char * k_pch_Null_RenderWidth_Int32 = "renderWidth";
-static const char * k_pch_Null_RenderHeight_Int32 = "renderHeight";
-static const char * k_pch_Null_SecondsFromVsyncToPhotons_Float = "secondsFromVsyncToPhotons";
-static const char * k_pch_Null_DisplayFrequency_Float = "displayFrequency";
-static const char * k_pch_UserInterface_Section = "userinterface";
-static const char * k_pch_UserInterface_StatusAlwaysOnTop_Bool = "StatusAlwaysOnTop";
-static const char * k_pch_UserInterface_MinimizeToTray_Bool = "MinimizeToTray";
-static const char * k_pch_UserInterface_Screenshots_Bool = "screenshots";
-static const char * k_pch_UserInterface_ScreenshotType_Int = "screenshotType";
-static const char * k_pch_Notifications_Section = "notifications";
-static const char * k_pch_Notifications_DoNotDisturb_Bool = "DoNotDisturb";
-static const char * k_pch_Keyboard_Section = "keyboard";
-static const char * k_pch_Keyboard_TutorialCompletions = "TutorialCompletions";
-static const char * k_pch_Keyboard_ScaleX = "ScaleX";
-static const char * k_pch_Keyboard_ScaleY = "ScaleY";
-static const char * k_pch_Keyboard_OffsetLeftX = "OffsetLeftX";
-static const char * k_pch_Keyboard_OffsetRightX = "OffsetRightX";
-static const char * k_pch_Keyboard_OffsetY = "OffsetY";
-static const char * k_pch_Keyboard_Smoothing = "Smoothing";
-static const char * k_pch_Perf_Section = "perfcheck";
-static const char * k_pch_Perf_HeuristicActive_Bool = "heuristicActive";
-static const char * k_pch_Perf_NotifyInHMD_Bool = "warnInHMD";
-static const char * k_pch_Perf_NotifyOnlyOnce_Bool = "warnOnlyOnce";
-static const char * k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore";
-static const char * k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit";
-static const char * k_pch_Perf_TestData_Float = "perfTestData";
-static const char * k_pch_Perf_LinuxGPUProfiling_Bool = "linuxGPUProfiling";
-static const char * k_pch_CollisionBounds_Section = "collisionBounds";
-static const char * k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle";
-static const char * k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn";
-static const char * k_pch_CollisionBounds_CenterMarkerOn_Bool = "CollisionBoundsCenterMarkerOn";
-static const char * k_pch_CollisionBounds_PlaySpaceOn_Bool = "CollisionBoundsPlaySpaceOn";
-static const char * k_pch_CollisionBounds_FadeDistance_Float = "CollisionBoundsFadeDistance";
-static const char * k_pch_CollisionBounds_ColorGammaR_Int32 = "CollisionBoundsColorGammaR";
-static const char * k_pch_CollisionBounds_ColorGammaG_Int32 = "CollisionBoundsColorGammaG";
-static const char * k_pch_CollisionBounds_ColorGammaB_Int32 = "CollisionBoundsColorGammaB";
-static const char * k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsColorGammaA";
-static const char * k_pch_Camera_Section = "camera";
-static const char * k_pch_Camera_EnableCamera_Bool = "enableCamera";
-static const char * k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard";
-static const char * k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds";
-static const char * k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView";
-static const char * k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR";
-static const char * k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG";
-static const char * k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB";
-static const char * k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA";
-static const char * k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength";
-static const char * k_pch_audio_Section = "audio";
-static const char * k_pch_audio_OnPlaybackDevice_String = "onPlaybackDevice";
-static const char * k_pch_audio_OnRecordDevice_String = "onRecordDevice";
-static const char * k_pch_audio_OnPlaybackMirrorDevice_String = "onPlaybackMirrorDevice";
-static const char * k_pch_audio_OffPlaybackDevice_String = "offPlaybackDevice";
-static const char * k_pch_audio_OffRecordDevice_String = "offRecordDevice";
-static const char * k_pch_audio_VIVEHDMIGain = "viveHDMIGain";
-static const char * k_pch_Power_Section = "power";
-static const char * k_pch_Power_PowerOffOnExit_Bool = "powerOffOnExit";
-static const char * k_pch_Power_TurnOffScreensTimeout_Float = "turnOffScreensTimeout";
-static const char * k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout";
-static const char * k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout";
-static const char * k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress";
-static const char * k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby";
-static const char * k_pch_Dashboard_Section = "dashboard";
-static const char * k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
-static const char * k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
-static const char * k_pch_modelskin_Section = "modelskins";
-static const char * k_pch_Driver_Enable_Bool = "enable";
-static const char * IVRScreenshots_Version = "IVRScreenshots_001";
-static const char * IVRResources_Version = "IVRResources_001";
-static const char * IVRDriverManager_Version = "IVRDriverManager_001";
-
-// OpenVR Enums
-
-typedef enum EVREye
-{
- EVREye_Eye_Left = 0,
- EVREye_Eye_Right = 1,
-} EVREye;
-
-typedef enum ETextureType
-{
- ETextureType_TextureType_DirectX = 0,
- ETextureType_TextureType_OpenGL = 1,
- ETextureType_TextureType_Vulkan = 2,
- ETextureType_TextureType_IOSurface = 3,
- ETextureType_TextureType_DirectX12 = 4,
-} ETextureType;
-
-typedef enum EColorSpace
-{
- EColorSpace_ColorSpace_Auto = 0,
- EColorSpace_ColorSpace_Gamma = 1,
- EColorSpace_ColorSpace_Linear = 2,
-} EColorSpace;
-
-typedef enum ETrackingResult
-{
- ETrackingResult_TrackingResult_Uninitialized = 1,
- ETrackingResult_TrackingResult_Calibrating_InProgress = 100,
- ETrackingResult_TrackingResult_Calibrating_OutOfRange = 101,
- ETrackingResult_TrackingResult_Running_OK = 200,
- ETrackingResult_TrackingResult_Running_OutOfRange = 201,
-} ETrackingResult;
-
-typedef enum ETrackedDeviceClass
-{
- ETrackedDeviceClass_TrackedDeviceClass_Invalid = 0,
- ETrackedDeviceClass_TrackedDeviceClass_HMD = 1,
- ETrackedDeviceClass_TrackedDeviceClass_Controller = 2,
- ETrackedDeviceClass_TrackedDeviceClass_GenericTracker = 3,
- ETrackedDeviceClass_TrackedDeviceClass_TrackingReference = 4,
- ETrackedDeviceClass_TrackedDeviceClass_DisplayRedirect = 5,
-} ETrackedDeviceClass;
-
-typedef enum ETrackedControllerRole
-{
- ETrackedControllerRole_TrackedControllerRole_Invalid = 0,
- ETrackedControllerRole_TrackedControllerRole_LeftHand = 1,
- ETrackedControllerRole_TrackedControllerRole_RightHand = 2,
-} ETrackedControllerRole;
-
-typedef enum ETrackingUniverseOrigin
-{
- ETrackingUniverseOrigin_TrackingUniverseSeated = 0,
- ETrackingUniverseOrigin_TrackingUniverseStanding = 1,
- ETrackingUniverseOrigin_TrackingUniverseRawAndUncalibrated = 2,
-} ETrackingUniverseOrigin;
-
-typedef enum ETrackedDeviceProperty
-{
- ETrackedDeviceProperty_Prop_Invalid = 0,
- ETrackedDeviceProperty_Prop_TrackingSystemName_String = 1000,
- ETrackedDeviceProperty_Prop_ModelNumber_String = 1001,
- ETrackedDeviceProperty_Prop_SerialNumber_String = 1002,
- ETrackedDeviceProperty_Prop_RenderModelName_String = 1003,
- ETrackedDeviceProperty_Prop_WillDriftInYaw_Bool = 1004,
- ETrackedDeviceProperty_Prop_ManufacturerName_String = 1005,
- ETrackedDeviceProperty_Prop_TrackingFirmwareVersion_String = 1006,
- ETrackedDeviceProperty_Prop_HardwareRevision_String = 1007,
- ETrackedDeviceProperty_Prop_AllWirelessDongleDescriptions_String = 1008,
- ETrackedDeviceProperty_Prop_ConnectedWirelessDongle_String = 1009,
- ETrackedDeviceProperty_Prop_DeviceIsWireless_Bool = 1010,
- ETrackedDeviceProperty_Prop_DeviceIsCharging_Bool = 1011,
- ETrackedDeviceProperty_Prop_DeviceBatteryPercentage_Float = 1012,
- ETrackedDeviceProperty_Prop_StatusDisplayTransform_Matrix34 = 1013,
- ETrackedDeviceProperty_Prop_Firmware_UpdateAvailable_Bool = 1014,
- ETrackedDeviceProperty_Prop_Firmware_ManualUpdate_Bool = 1015,
- ETrackedDeviceProperty_Prop_Firmware_ManualUpdateURL_String = 1016,
- ETrackedDeviceProperty_Prop_HardwareRevision_Uint64 = 1017,
- ETrackedDeviceProperty_Prop_FirmwareVersion_Uint64 = 1018,
- ETrackedDeviceProperty_Prop_FPGAVersion_Uint64 = 1019,
- ETrackedDeviceProperty_Prop_VRCVersion_Uint64 = 1020,
- ETrackedDeviceProperty_Prop_RadioVersion_Uint64 = 1021,
- ETrackedDeviceProperty_Prop_DongleVersion_Uint64 = 1022,
- ETrackedDeviceProperty_Prop_BlockServerShutdown_Bool = 1023,
- ETrackedDeviceProperty_Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024,
- ETrackedDeviceProperty_Prop_ContainsProximitySensor_Bool = 1025,
- ETrackedDeviceProperty_Prop_DeviceProvidesBatteryStatus_Bool = 1026,
- ETrackedDeviceProperty_Prop_DeviceCanPowerOff_Bool = 1027,
- ETrackedDeviceProperty_Prop_Firmware_ProgrammingTarget_String = 1028,
- ETrackedDeviceProperty_Prop_DeviceClass_Int32 = 1029,
- ETrackedDeviceProperty_Prop_HasCamera_Bool = 1030,
- ETrackedDeviceProperty_Prop_DriverVersion_String = 1031,
- ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool = 1032,
- ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool = 1033,
- ETrackedDeviceProperty_Prop_ParentDriver_Uint64 = 1034,
- ETrackedDeviceProperty_Prop_ResourceRoot_String = 1035,
- ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000,
- ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001,
- ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002,
- ETrackedDeviceProperty_Prop_UserIpdMeters_Float = 2003,
- ETrackedDeviceProperty_Prop_CurrentUniverseId_Uint64 = 2004,
- ETrackedDeviceProperty_Prop_PreviousUniverseId_Uint64 = 2005,
- ETrackedDeviceProperty_Prop_DisplayFirmwareVersion_Uint64 = 2006,
- ETrackedDeviceProperty_Prop_IsOnDesktop_Bool = 2007,
- ETrackedDeviceProperty_Prop_DisplayMCType_Int32 = 2008,
- ETrackedDeviceProperty_Prop_DisplayMCOffset_Float = 2009,
- ETrackedDeviceProperty_Prop_DisplayMCScale_Float = 2010,
- ETrackedDeviceProperty_Prop_EdidVendorID_Int32 = 2011,
- ETrackedDeviceProperty_Prop_DisplayMCImageLeft_String = 2012,
- ETrackedDeviceProperty_Prop_DisplayMCImageRight_String = 2013,
- ETrackedDeviceProperty_Prop_DisplayGCBlackClamp_Float = 2014,
- ETrackedDeviceProperty_Prop_EdidProductID_Int32 = 2015,
- ETrackedDeviceProperty_Prop_CameraToHeadTransform_Matrix34 = 2016,
- ETrackedDeviceProperty_Prop_DisplayGCType_Int32 = 2017,
- ETrackedDeviceProperty_Prop_DisplayGCOffset_Float = 2018,
- ETrackedDeviceProperty_Prop_DisplayGCScale_Float = 2019,
- ETrackedDeviceProperty_Prop_DisplayGCPrescale_Float = 2020,
- ETrackedDeviceProperty_Prop_DisplayGCImage_String = 2021,
- ETrackedDeviceProperty_Prop_LensCenterLeftU_Float = 2022,
- ETrackedDeviceProperty_Prop_LensCenterLeftV_Float = 2023,
- ETrackedDeviceProperty_Prop_LensCenterRightU_Float = 2024,
- ETrackedDeviceProperty_Prop_LensCenterRightV_Float = 2025,
- ETrackedDeviceProperty_Prop_UserHeadToEyeDepthMeters_Float = 2026,
- ETrackedDeviceProperty_Prop_CameraFirmwareVersion_Uint64 = 2027,
- ETrackedDeviceProperty_Prop_CameraFirmwareDescription_String = 2028,
- ETrackedDeviceProperty_Prop_DisplayFPGAVersion_Uint64 = 2029,
- ETrackedDeviceProperty_Prop_DisplayBootloaderVersion_Uint64 = 2030,
- ETrackedDeviceProperty_Prop_DisplayHardwareVersion_Uint64 = 2031,
- ETrackedDeviceProperty_Prop_AudioFirmwareVersion_Uint64 = 2032,
- ETrackedDeviceProperty_Prop_CameraCompatibilityMode_Int32 = 2033,
- ETrackedDeviceProperty_Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034,
- ETrackedDeviceProperty_Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035,
- ETrackedDeviceProperty_Prop_DisplaySuppressed_Bool = 2036,
- ETrackedDeviceProperty_Prop_DisplayAllowNightMode_Bool = 2037,
- ETrackedDeviceProperty_Prop_DisplayMCImageWidth_Int32 = 2038,
- ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32 = 2039,
- ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32 = 2040,
- ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary = 2041,
- ETrackedDeviceProperty_Prop_SecondsFromPhotonsToVblank_Float = 2042,
- ETrackedDeviceProperty_Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043,
- ETrackedDeviceProperty_Prop_DisplayDebugMode_Bool = 2044,
- ETrackedDeviceProperty_Prop_GraphicsAdapterLuid_Uint64 = 2045,
- ETrackedDeviceProperty_Prop_DriverProvidedChaperonePath_String = 2048,
- ETrackedDeviceProperty_Prop_AttachedDeviceId_String = 3000,
- ETrackedDeviceProperty_Prop_SupportedButtons_Uint64 = 3001,
- ETrackedDeviceProperty_Prop_Axis0Type_Int32 = 3002,
- ETrackedDeviceProperty_Prop_Axis1Type_Int32 = 3003,
- ETrackedDeviceProperty_Prop_Axis2Type_Int32 = 3004,
- ETrackedDeviceProperty_Prop_Axis3Type_Int32 = 3005,
- ETrackedDeviceProperty_Prop_Axis4Type_Int32 = 3006,
- ETrackedDeviceProperty_Prop_ControllerRoleHint_Int32 = 3007,
- ETrackedDeviceProperty_Prop_FieldOfViewLeftDegrees_Float = 4000,
- ETrackedDeviceProperty_Prop_FieldOfViewRightDegrees_Float = 4001,
- ETrackedDeviceProperty_Prop_FieldOfViewTopDegrees_Float = 4002,
- ETrackedDeviceProperty_Prop_FieldOfViewBottomDegrees_Float = 4003,
- ETrackedDeviceProperty_Prop_TrackingRangeMinimumMeters_Float = 4004,
- ETrackedDeviceProperty_Prop_TrackingRangeMaximumMeters_Float = 4005,
- ETrackedDeviceProperty_Prop_ModeLabel_String = 4006,
- ETrackedDeviceProperty_Prop_IconPathName_String = 5000,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceOff_String = 5001,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearching_String = 5002,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceSearchingAlert_String = 5003,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceReady_String = 5004,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceReadyAlert_String = 5005,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceNotReady_String = 5006,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceStandby_String = 5007,
- ETrackedDeviceProperty_Prop_NamedIconPathDeviceAlertLow_String = 5008,
- ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_Start = 5100,
- ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End = 5150,
- ETrackedDeviceProperty_Prop_UserConfigPath_String = 6000,
- ETrackedDeviceProperty_Prop_InstallPath_String = 6001,
- ETrackedDeviceProperty_Prop_HasDisplayComponent_Bool = 6002,
- ETrackedDeviceProperty_Prop_HasControllerComponent_Bool = 6003,
- ETrackedDeviceProperty_Prop_HasCameraComponent_Bool = 6004,
- ETrackedDeviceProperty_Prop_HasDriverDirectModeComponent_Bool = 6005,
- ETrackedDeviceProperty_Prop_HasVirtualDisplayComponent_Bool = 6006,
- ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start = 10000,
- ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End = 10999,
-} ETrackedDeviceProperty;
-
-typedef enum ETrackedPropertyError
-{
- ETrackedPropertyError_TrackedProp_Success = 0,
- ETrackedPropertyError_TrackedProp_WrongDataType = 1,
- ETrackedPropertyError_TrackedProp_WrongDeviceClass = 2,
- ETrackedPropertyError_TrackedProp_BufferTooSmall = 3,
- ETrackedPropertyError_TrackedProp_UnknownProperty = 4,
- ETrackedPropertyError_TrackedProp_InvalidDevice = 5,
- ETrackedPropertyError_TrackedProp_CouldNotContactServer = 6,
- ETrackedPropertyError_TrackedProp_ValueNotProvidedByDevice = 7,
- ETrackedPropertyError_TrackedProp_StringExceedsMaximumLength = 8,
- ETrackedPropertyError_TrackedProp_NotYetAvailable = 9,
- ETrackedPropertyError_TrackedProp_PermissionDenied = 10,
- ETrackedPropertyError_TrackedProp_InvalidOperation = 11,
-} ETrackedPropertyError;
-
-typedef enum EVRSubmitFlags
-{
- EVRSubmitFlags_Submit_Default = 0,
- EVRSubmitFlags_Submit_LensDistortionAlreadyApplied = 1,
- EVRSubmitFlags_Submit_GlRenderBuffer = 2,
- EVRSubmitFlags_Submit_Reserved = 4,
- EVRSubmitFlags_Submit_TextureWithPose = 8,
-} EVRSubmitFlags;
-
-typedef enum EVRState
-{
- EVRState_VRState_Undefined = -1,
- EVRState_VRState_Off = 0,
- EVRState_VRState_Searching = 1,
- EVRState_VRState_Searching_Alert = 2,
- EVRState_VRState_Ready = 3,
- EVRState_VRState_Ready_Alert = 4,
- EVRState_VRState_NotReady = 5,
- EVRState_VRState_Standby = 6,
- EVRState_VRState_Ready_Alert_Low = 7,
-} EVRState;
-
-typedef enum EVREventType
-{
- EVREventType_VREvent_None = 0,
- EVREventType_VREvent_TrackedDeviceActivated = 100,
- EVREventType_VREvent_TrackedDeviceDeactivated = 101,
- EVREventType_VREvent_TrackedDeviceUpdated = 102,
- EVREventType_VREvent_TrackedDeviceUserInteractionStarted = 103,
- EVREventType_VREvent_TrackedDeviceUserInteractionEnded = 104,
- EVREventType_VREvent_IpdChanged = 105,
- EVREventType_VREvent_EnterStandbyMode = 106,
- EVREventType_VREvent_LeaveStandbyMode = 107,
- EVREventType_VREvent_TrackedDeviceRoleChanged = 108,
- EVREventType_VREvent_WatchdogWakeUpRequested = 109,
- EVREventType_VREvent_LensDistortionChanged = 110,
- EVREventType_VREvent_PropertyChanged = 111,
- EVREventType_VREvent_WirelessDisconnect = 112,
- EVREventType_VREvent_WirelessReconnect = 113,
- EVREventType_VREvent_ButtonPress = 200,
- EVREventType_VREvent_ButtonUnpress = 201,
- EVREventType_VREvent_ButtonTouch = 202,
- EVREventType_VREvent_ButtonUntouch = 203,
- EVREventType_VREvent_MouseMove = 300,
- EVREventType_VREvent_MouseButtonDown = 301,
- EVREventType_VREvent_MouseButtonUp = 302,
- EVREventType_VREvent_FocusEnter = 303,
- EVREventType_VREvent_FocusLeave = 304,
- EVREventType_VREvent_Scroll = 305,
- EVREventType_VREvent_TouchPadMove = 306,
- EVREventType_VREvent_OverlayFocusChanged = 307,
- EVREventType_VREvent_InputFocusCaptured = 400,
- EVREventType_VREvent_InputFocusReleased = 401,
- EVREventType_VREvent_SceneFocusLost = 402,
- EVREventType_VREvent_SceneFocusGained = 403,
- EVREventType_VREvent_SceneApplicationChanged = 404,
- EVREventType_VREvent_SceneFocusChanged = 405,
- EVREventType_VREvent_InputFocusChanged = 406,
- EVREventType_VREvent_SceneApplicationSecondaryRenderingStarted = 407,
- EVREventType_VREvent_HideRenderModels = 410,
- EVREventType_VREvent_ShowRenderModels = 411,
- EVREventType_VREvent_OverlayShown = 500,
- EVREventType_VREvent_OverlayHidden = 501,
- EVREventType_VREvent_DashboardActivated = 502,
- EVREventType_VREvent_DashboardDeactivated = 503,
- EVREventType_VREvent_DashboardThumbSelected = 504,
- EVREventType_VREvent_DashboardRequested = 505,
- EVREventType_VREvent_ResetDashboard = 506,
- EVREventType_VREvent_RenderToast = 507,
- EVREventType_VREvent_ImageLoaded = 508,
- EVREventType_VREvent_ShowKeyboard = 509,
- EVREventType_VREvent_HideKeyboard = 510,
- EVREventType_VREvent_OverlayGamepadFocusGained = 511,
- EVREventType_VREvent_OverlayGamepadFocusLost = 512,
- EVREventType_VREvent_OverlaySharedTextureChanged = 513,
- EVREventType_VREvent_DashboardGuideButtonDown = 514,
- EVREventType_VREvent_DashboardGuideButtonUp = 515,
- EVREventType_VREvent_ScreenshotTriggered = 516,
- EVREventType_VREvent_ImageFailed = 517,
- EVREventType_VREvent_DashboardOverlayCreated = 518,
- EVREventType_VREvent_RequestScreenshot = 520,
- EVREventType_VREvent_ScreenshotTaken = 521,
- EVREventType_VREvent_ScreenshotFailed = 522,
- EVREventType_VREvent_SubmitScreenshotToDashboard = 523,
- EVREventType_VREvent_ScreenshotProgressToDashboard = 524,
- EVREventType_VREvent_PrimaryDashboardDeviceChanged = 525,
- EVREventType_VREvent_Notification_Shown = 600,
- EVREventType_VREvent_Notification_Hidden = 601,
- EVREventType_VREvent_Notification_BeginInteraction = 602,
- EVREventType_VREvent_Notification_Destroyed = 603,
- EVREventType_VREvent_Quit = 700,
- EVREventType_VREvent_ProcessQuit = 701,
- EVREventType_VREvent_QuitAborted_UserPrompt = 702,
- EVREventType_VREvent_QuitAcknowledged = 703,
- EVREventType_VREvent_DriverRequestedQuit = 704,
- EVREventType_VREvent_ChaperoneDataHasChanged = 800,
- EVREventType_VREvent_ChaperoneUniverseHasChanged = 801,
- EVREventType_VREvent_ChaperoneTempDataHasChanged = 802,
- EVREventType_VREvent_ChaperoneSettingsHaveChanged = 803,
- EVREventType_VREvent_SeatedZeroPoseReset = 804,
- EVREventType_VREvent_AudioSettingsHaveChanged = 820,
- EVREventType_VREvent_BackgroundSettingHasChanged = 850,
- EVREventType_VREvent_CameraSettingsHaveChanged = 851,
- EVREventType_VREvent_ReprojectionSettingHasChanged = 852,
- EVREventType_VREvent_ModelSkinSettingsHaveChanged = 853,
- EVREventType_VREvent_EnvironmentSettingsHaveChanged = 854,
- EVREventType_VREvent_PowerSettingsHaveChanged = 855,
- EVREventType_VREvent_EnableHomeAppSettingsHaveChanged = 856,
- EVREventType_VREvent_StatusUpdate = 900,
- EVREventType_VREvent_MCImageUpdated = 1000,
- EVREventType_VREvent_FirmwareUpdateStarted = 1100,
- EVREventType_VREvent_FirmwareUpdateFinished = 1101,
- EVREventType_VREvent_KeyboardClosed = 1200,
- EVREventType_VREvent_KeyboardCharInput = 1201,
- EVREventType_VREvent_KeyboardDone = 1202,
- EVREventType_VREvent_ApplicationTransitionStarted = 1300,
- EVREventType_VREvent_ApplicationTransitionAborted = 1301,
- EVREventType_VREvent_ApplicationTransitionNewAppStarted = 1302,
- EVREventType_VREvent_ApplicationListUpdated = 1303,
- EVREventType_VREvent_ApplicationMimeTypeLoad = 1304,
- EVREventType_VREvent_ApplicationTransitionNewAppLaunchComplete = 1305,
- EVREventType_VREvent_ProcessConnected = 1306,
- EVREventType_VREvent_ProcessDisconnected = 1307,
- EVREventType_VREvent_Compositor_MirrorWindowShown = 1400,
- EVREventType_VREvent_Compositor_MirrorWindowHidden = 1401,
- EVREventType_VREvent_Compositor_ChaperoneBoundsShown = 1410,
- EVREventType_VREvent_Compositor_ChaperoneBoundsHidden = 1411,
- EVREventType_VREvent_TrackedCamera_StartVideoStream = 1500,
- EVREventType_VREvent_TrackedCamera_StopVideoStream = 1501,
- EVREventType_VREvent_TrackedCamera_PauseVideoStream = 1502,
- EVREventType_VREvent_TrackedCamera_ResumeVideoStream = 1503,
- EVREventType_VREvent_TrackedCamera_EditingSurface = 1550,
- EVREventType_VREvent_PerformanceTest_EnableCapture = 1600,
- EVREventType_VREvent_PerformanceTest_DisableCapture = 1601,
- EVREventType_VREvent_PerformanceTest_FidelityLevel = 1602,
- EVREventType_VREvent_MessageOverlay_Closed = 1650,
- EVREventType_VREvent_MessageOverlayCloseRequested = 1651,
- EVREventType_VREvent_VendorSpecific_Reserved_Start = 10000,
- EVREventType_VREvent_VendorSpecific_Reserved_End = 19999,
-} EVREventType;
-
-typedef enum EDeviceActivityLevel
-{
- EDeviceActivityLevel_k_EDeviceActivityLevel_Unknown = -1,
- EDeviceActivityLevel_k_EDeviceActivityLevel_Idle = 0,
- EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction = 1,
- EDeviceActivityLevel_k_EDeviceActivityLevel_UserInteraction_Timeout = 2,
- EDeviceActivityLevel_k_EDeviceActivityLevel_Standby = 3,
-} EDeviceActivityLevel;
-
-typedef enum EVRButtonId
-{
- EVRButtonId_k_EButton_System = 0,
- EVRButtonId_k_EButton_ApplicationMenu = 1,
- EVRButtonId_k_EButton_Grip = 2,
- EVRButtonId_k_EButton_DPad_Left = 3,
- EVRButtonId_k_EButton_DPad_Up = 4,
- EVRButtonId_k_EButton_DPad_Right = 5,
- EVRButtonId_k_EButton_DPad_Down = 6,
- EVRButtonId_k_EButton_A = 7,
- EVRButtonId_k_EButton_ProximitySensor = 31,
- EVRButtonId_k_EButton_Axis0 = 32,
- EVRButtonId_k_EButton_Axis1 = 33,
- EVRButtonId_k_EButton_Axis2 = 34,
- EVRButtonId_k_EButton_Axis3 = 35,
- EVRButtonId_k_EButton_Axis4 = 36,
- EVRButtonId_k_EButton_SteamVR_Touchpad = 32,
- EVRButtonId_k_EButton_SteamVR_Trigger = 33,
- EVRButtonId_k_EButton_Dashboard_Back = 2,
- EVRButtonId_k_EButton_Max = 64,
-} EVRButtonId;
-
-typedef enum EVRMouseButton
-{
- EVRMouseButton_VRMouseButton_Left = 1,
- EVRMouseButton_VRMouseButton_Right = 2,
- EVRMouseButton_VRMouseButton_Middle = 4,
-} EVRMouseButton;
-
-typedef enum EHiddenAreaMeshType
-{
- EHiddenAreaMeshType_k_eHiddenAreaMesh_Standard = 0,
- EHiddenAreaMeshType_k_eHiddenAreaMesh_Inverse = 1,
- EHiddenAreaMeshType_k_eHiddenAreaMesh_LineLoop = 2,
- EHiddenAreaMeshType_k_eHiddenAreaMesh_Max = 3,
-} EHiddenAreaMeshType;
-
-typedef enum EVRControllerAxisType
-{
- EVRControllerAxisType_k_eControllerAxis_None = 0,
- EVRControllerAxisType_k_eControllerAxis_TrackPad = 1,
- EVRControllerAxisType_k_eControllerAxis_Joystick = 2,
- EVRControllerAxisType_k_eControllerAxis_Trigger = 3,
-} EVRControllerAxisType;
-
-typedef enum EVRControllerEventOutputType
-{
- EVRControllerEventOutputType_ControllerEventOutput_OSEvents = 0,
- EVRControllerEventOutputType_ControllerEventOutput_VREvents = 1,
-} EVRControllerEventOutputType;
-
-typedef enum ECollisionBoundsStyle
-{
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_BEGINNER = 0,
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_INTERMEDIATE = 1,
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_SQUARES = 2,
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_ADVANCED = 3,
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_NONE = 4,
- ECollisionBoundsStyle_COLLISION_BOUNDS_STYLE_COUNT = 5,
-} ECollisionBoundsStyle;
-
-typedef enum EVROverlayError
-{
- EVROverlayError_VROverlayError_None = 0,
- EVROverlayError_VROverlayError_UnknownOverlay = 10,
- EVROverlayError_VROverlayError_InvalidHandle = 11,
- EVROverlayError_VROverlayError_PermissionDenied = 12,
- EVROverlayError_VROverlayError_OverlayLimitExceeded = 13,
- EVROverlayError_VROverlayError_WrongVisibilityType = 14,
- EVROverlayError_VROverlayError_KeyTooLong = 15,
- EVROverlayError_VROverlayError_NameTooLong = 16,
- EVROverlayError_VROverlayError_KeyInUse = 17,
- EVROverlayError_VROverlayError_WrongTransformType = 18,
- EVROverlayError_VROverlayError_InvalidTrackedDevice = 19,
- EVROverlayError_VROverlayError_InvalidParameter = 20,
- EVROverlayError_VROverlayError_ThumbnailCantBeDestroyed = 21,
- EVROverlayError_VROverlayError_ArrayTooSmall = 22,
- EVROverlayError_VROverlayError_RequestFailed = 23,
- EVROverlayError_VROverlayError_InvalidTexture = 24,
- EVROverlayError_VROverlayError_UnableToLoadFile = 25,
- EVROverlayError_VROverlayError_KeyboardAlreadyInUse = 26,
- EVROverlayError_VROverlayError_NoNeighbor = 27,
- EVROverlayError_VROverlayError_TooManyMaskPrimitives = 29,
- EVROverlayError_VROverlayError_BadMaskPrimitive = 30,
-} EVROverlayError;
-
-typedef enum EVRApplicationType
-{
- EVRApplicationType_VRApplication_Other = 0,
- EVRApplicationType_VRApplication_Scene = 1,
- EVRApplicationType_VRApplication_Overlay = 2,
- EVRApplicationType_VRApplication_Background = 3,
- EVRApplicationType_VRApplication_Utility = 4,
- EVRApplicationType_VRApplication_VRMonitor = 5,
- EVRApplicationType_VRApplication_SteamWatchdog = 6,
- EVRApplicationType_VRApplication_Bootstrapper = 7,
- EVRApplicationType_VRApplication_Max = 8,
-} EVRApplicationType;
-
-typedef enum EVRFirmwareError
-{
- EVRFirmwareError_VRFirmwareError_None = 0,
- EVRFirmwareError_VRFirmwareError_Success = 1,
- EVRFirmwareError_VRFirmwareError_Fail = 2,
-} EVRFirmwareError;
-
-typedef enum EVRNotificationError
-{
- EVRNotificationError_VRNotificationError_OK = 0,
- EVRNotificationError_VRNotificationError_InvalidNotificationId = 100,
- EVRNotificationError_VRNotificationError_NotificationQueueFull = 101,
- EVRNotificationError_VRNotificationError_InvalidOverlayHandle = 102,
- EVRNotificationError_VRNotificationError_SystemWithUserValueAlreadyExists = 103,
-} EVRNotificationError;
-
-typedef enum EVRInitError
-{
- EVRInitError_VRInitError_None = 0,
- EVRInitError_VRInitError_Unknown = 1,
- EVRInitError_VRInitError_Init_InstallationNotFound = 100,
- EVRInitError_VRInitError_Init_InstallationCorrupt = 101,
- EVRInitError_VRInitError_Init_VRClientDLLNotFound = 102,
- EVRInitError_VRInitError_Init_FileNotFound = 103,
- EVRInitError_VRInitError_Init_FactoryNotFound = 104,
- EVRInitError_VRInitError_Init_InterfaceNotFound = 105,
- EVRInitError_VRInitError_Init_InvalidInterface = 106,
- EVRInitError_VRInitError_Init_UserConfigDirectoryInvalid = 107,
- EVRInitError_VRInitError_Init_HmdNotFound = 108,
- EVRInitError_VRInitError_Init_NotInitialized = 109,
- EVRInitError_VRInitError_Init_PathRegistryNotFound = 110,
- EVRInitError_VRInitError_Init_NoConfigPath = 111,
- EVRInitError_VRInitError_Init_NoLogPath = 112,
- EVRInitError_VRInitError_Init_PathRegistryNotWritable = 113,
- EVRInitError_VRInitError_Init_AppInfoInitFailed = 114,
- EVRInitError_VRInitError_Init_Retry = 115,
- EVRInitError_VRInitError_Init_InitCanceledByUser = 116,
- EVRInitError_VRInitError_Init_AnotherAppLaunching = 117,
- EVRInitError_VRInitError_Init_SettingsInitFailed = 118,
- EVRInitError_VRInitError_Init_ShuttingDown = 119,
- EVRInitError_VRInitError_Init_TooManyObjects = 120,
- EVRInitError_VRInitError_Init_NoServerForBackgroundApp = 121,
- EVRInitError_VRInitError_Init_NotSupportedWithCompositor = 122,
- EVRInitError_VRInitError_Init_NotAvailableToUtilityApps = 123,
- EVRInitError_VRInitError_Init_Internal = 124,
- EVRInitError_VRInitError_Init_HmdDriverIdIsNone = 125,
- EVRInitError_VRInitError_Init_HmdNotFoundPresenceFailed = 126,
- EVRInitError_VRInitError_Init_VRMonitorNotFound = 127,
- EVRInitError_VRInitError_Init_VRMonitorStartupFailed = 128,
- EVRInitError_VRInitError_Init_LowPowerWatchdogNotSupported = 129,
- EVRInitError_VRInitError_Init_InvalidApplicationType = 130,
- EVRInitError_VRInitError_Init_NotAvailableToWatchdogApps = 131,
- EVRInitError_VRInitError_Init_WatchdogDisabledInSettings = 132,
- EVRInitError_VRInitError_Init_VRDashboardNotFound = 133,
- EVRInitError_VRInitError_Init_VRDashboardStartupFailed = 134,
- EVRInitError_VRInitError_Init_VRHomeNotFound = 135,
- EVRInitError_VRInitError_Init_VRHomeStartupFailed = 136,
- EVRInitError_VRInitError_Init_RebootingBusy = 137,
- EVRInitError_VRInitError_Init_FirmwareUpdateBusy = 138,
- EVRInitError_VRInitError_Init_FirmwareRecoveryBusy = 139,
- EVRInitError_VRInitError_Driver_Failed = 200,
- EVRInitError_VRInitError_Driver_Unknown = 201,
- EVRInitError_VRInitError_Driver_HmdUnknown = 202,
- EVRInitError_VRInitError_Driver_NotLoaded = 203,
- EVRInitError_VRInitError_Driver_RuntimeOutOfDate = 204,
- EVRInitError_VRInitError_Driver_HmdInUse = 205,
- EVRInitError_VRInitError_Driver_NotCalibrated = 206,
- EVRInitError_VRInitError_Driver_CalibrationInvalid = 207,
- EVRInitError_VRInitError_Driver_HmdDisplayNotFound = 208,
- EVRInitError_VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209,
- EVRInitError_VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
- EVRInitError_VRInitError_Driver_HmdDisplayMirrored = 212,
- EVRInitError_VRInitError_IPC_ServerInitFailed = 300,
- EVRInitError_VRInitError_IPC_ConnectFailed = 301,
- EVRInitError_VRInitError_IPC_SharedStateInitFailed = 302,
- EVRInitError_VRInitError_IPC_CompositorInitFailed = 303,
- EVRInitError_VRInitError_IPC_MutexInitFailed = 304,
- EVRInitError_VRInitError_IPC_Failed = 305,
- EVRInitError_VRInitError_IPC_CompositorConnectFailed = 306,
- EVRInitError_VRInitError_IPC_CompositorInvalidConnectResponse = 307,
- EVRInitError_VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308,
- EVRInitError_VRInitError_Compositor_Failed = 400,
- EVRInitError_VRInitError_Compositor_D3D11HardwareRequired = 401,
- EVRInitError_VRInitError_Compositor_FirmwareRequiresUpdate = 402,
- EVRInitError_VRInitError_Compositor_OverlayInitFailed = 403,
- EVRInitError_VRInitError_Compositor_ScreenshotsInitFailed = 404,
- EVRInitError_VRInitError_Compositor_UnableToCreateDevice = 405,
- EVRInitError_VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
- EVRInitError_VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
- EVRInitError_VRInitError_Steam_SteamInstallationNotFound = 2000,
-} EVRInitError;
-
-typedef enum EVRScreenshotType
-{
- EVRScreenshotType_VRScreenshotType_None = 0,
- EVRScreenshotType_VRScreenshotType_Mono = 1,
- EVRScreenshotType_VRScreenshotType_Stereo = 2,
- EVRScreenshotType_VRScreenshotType_Cubemap = 3,
- EVRScreenshotType_VRScreenshotType_MonoPanorama = 4,
- EVRScreenshotType_VRScreenshotType_StereoPanorama = 5,
-} EVRScreenshotType;
-
-typedef enum EVRScreenshotPropertyFilenames
-{
- EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_Preview = 0,
- EVRScreenshotPropertyFilenames_VRScreenshotPropertyFilenames_VR = 1,
-} EVRScreenshotPropertyFilenames;
-
-typedef enum EVRTrackedCameraError
-{
- EVRTrackedCameraError_VRTrackedCameraError_None = 0,
- EVRTrackedCameraError_VRTrackedCameraError_OperationFailed = 100,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidHandle = 101,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameHeaderVersion = 102,
- EVRTrackedCameraError_VRTrackedCameraError_OutOfHandles = 103,
- EVRTrackedCameraError_VRTrackedCameraError_IPCFailure = 104,
- EVRTrackedCameraError_VRTrackedCameraError_NotSupportedForThisDevice = 105,
- EVRTrackedCameraError_VRTrackedCameraError_SharedMemoryFailure = 106,
- EVRTrackedCameraError_VRTrackedCameraError_FrameBufferingFailure = 107,
- EVRTrackedCameraError_VRTrackedCameraError_StreamSetupFailure = 108,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidGLTextureId = 109,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidSharedTextureHandle = 110,
- EVRTrackedCameraError_VRTrackedCameraError_FailedToGetGLTextureId = 111,
- EVRTrackedCameraError_VRTrackedCameraError_SharedTextureFailure = 112,
- EVRTrackedCameraError_VRTrackedCameraError_NoFrameAvailable = 113,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidArgument = 114,
- EVRTrackedCameraError_VRTrackedCameraError_InvalidFrameBufferSize = 115,
-} EVRTrackedCameraError;
-
-typedef enum EVRTrackedCameraFrameType
-{
- EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Distorted = 0,
- EVRTrackedCameraFrameType_VRTrackedCameraFrameType_Undistorted = 1,
- EVRTrackedCameraFrameType_VRTrackedCameraFrameType_MaximumUndistorted = 2,
- EVRTrackedCameraFrameType_MAX_CAMERA_FRAME_TYPES = 3,
-} EVRTrackedCameraFrameType;
-
-typedef enum EVRApplicationError
-{
- EVRApplicationError_VRApplicationError_None = 0,
- EVRApplicationError_VRApplicationError_AppKeyAlreadyExists = 100,
- EVRApplicationError_VRApplicationError_NoManifest = 101,
- EVRApplicationError_VRApplicationError_NoApplication = 102,
- EVRApplicationError_VRApplicationError_InvalidIndex = 103,
- EVRApplicationError_VRApplicationError_UnknownApplication = 104,
- EVRApplicationError_VRApplicationError_IPCFailed = 105,
- EVRApplicationError_VRApplicationError_ApplicationAlreadyRunning = 106,
- EVRApplicationError_VRApplicationError_InvalidManifest = 107,
- EVRApplicationError_VRApplicationError_InvalidApplication = 108,
- EVRApplicationError_VRApplicationError_LaunchFailed = 109,
- EVRApplicationError_VRApplicationError_ApplicationAlreadyStarting = 110,
- EVRApplicationError_VRApplicationError_LaunchInProgress = 111,
- EVRApplicationError_VRApplicationError_OldApplicationQuitting = 112,
- EVRApplicationError_VRApplicationError_TransitionAborted = 113,
- EVRApplicationError_VRApplicationError_IsTemplate = 114,
- EVRApplicationError_VRApplicationError_SteamVRIsExiting = 115,
- EVRApplicationError_VRApplicationError_BufferTooSmall = 200,
- EVRApplicationError_VRApplicationError_PropertyNotSet = 201,
- EVRApplicationError_VRApplicationError_UnknownProperty = 202,
- EVRApplicationError_VRApplicationError_InvalidParameter = 203,
-} EVRApplicationError;
-
-typedef enum EVRApplicationProperty
-{
- EVRApplicationProperty_VRApplicationProperty_Name_String = 0,
- EVRApplicationProperty_VRApplicationProperty_LaunchType_String = 11,
- EVRApplicationProperty_VRApplicationProperty_WorkingDirectory_String = 12,
- EVRApplicationProperty_VRApplicationProperty_BinaryPath_String = 13,
- EVRApplicationProperty_VRApplicationProperty_Arguments_String = 14,
- EVRApplicationProperty_VRApplicationProperty_URL_String = 15,
- EVRApplicationProperty_VRApplicationProperty_Description_String = 50,
- EVRApplicationProperty_VRApplicationProperty_NewsURL_String = 51,
- EVRApplicationProperty_VRApplicationProperty_ImagePath_String = 52,
- EVRApplicationProperty_VRApplicationProperty_Source_String = 53,
- EVRApplicationProperty_VRApplicationProperty_IsDashboardOverlay_Bool = 60,
- EVRApplicationProperty_VRApplicationProperty_IsTemplate_Bool = 61,
- EVRApplicationProperty_VRApplicationProperty_IsInstanced_Bool = 62,
- EVRApplicationProperty_VRApplicationProperty_IsInternal_Bool = 63,
- EVRApplicationProperty_VRApplicationProperty_WantsCompositorPauseInStandby_Bool = 64,
- EVRApplicationProperty_VRApplicationProperty_LastLaunchTime_Uint64 = 70,
-} EVRApplicationProperty;
-
-typedef enum EVRApplicationTransitionState
-{
- EVRApplicationTransitionState_VRApplicationTransition_None = 0,
- EVRApplicationTransitionState_VRApplicationTransition_OldAppQuitSent = 10,
- EVRApplicationTransitionState_VRApplicationTransition_WaitingForExternalLaunch = 11,
- EVRApplicationTransitionState_VRApplicationTransition_NewAppLaunched = 20,
-} EVRApplicationTransitionState;
-
-typedef enum ChaperoneCalibrationState
-{
- ChaperoneCalibrationState_OK = 1,
- ChaperoneCalibrationState_Warning = 100,
- ChaperoneCalibrationState_Warning_BaseStationMayHaveMoved = 101,
- ChaperoneCalibrationState_Warning_BaseStationRemoved = 102,
- ChaperoneCalibrationState_Warning_SeatedBoundsInvalid = 103,
- ChaperoneCalibrationState_Error = 200,
- ChaperoneCalibrationState_Error_BaseStationUninitialized = 201,
- ChaperoneCalibrationState_Error_BaseStationConflict = 202,
- ChaperoneCalibrationState_Error_PlayAreaInvalid = 203,
- ChaperoneCalibrationState_Error_CollisionBoundsInvalid = 204,
-} ChaperoneCalibrationState;
-
-typedef enum EChaperoneConfigFile
-{
- EChaperoneConfigFile_Live = 1,
- EChaperoneConfigFile_Temp = 2,
-} EChaperoneConfigFile;
-
-typedef enum EChaperoneImportFlags
-{
- EChaperoneImportFlags_EChaperoneImport_BoundsOnly = 1,
-} EChaperoneImportFlags;
-
-typedef enum EVRCompositorError
-{
- EVRCompositorError_VRCompositorError_None = 0,
- EVRCompositorError_VRCompositorError_RequestFailed = 1,
- EVRCompositorError_VRCompositorError_IncompatibleVersion = 100,
- EVRCompositorError_VRCompositorError_DoNotHaveFocus = 101,
- EVRCompositorError_VRCompositorError_InvalidTexture = 102,
- EVRCompositorError_VRCompositorError_IsNotSceneApplication = 103,
- EVRCompositorError_VRCompositorError_TextureIsOnWrongDevice = 104,
- EVRCompositorError_VRCompositorError_TextureUsesUnsupportedFormat = 105,
- EVRCompositorError_VRCompositorError_SharedTexturesNotSupported = 106,
- EVRCompositorError_VRCompositorError_IndexOutOfRange = 107,
- EVRCompositorError_VRCompositorError_AlreadySubmitted = 108,
- EVRCompositorError_VRCompositorError_InvalidBounds = 109,
-} EVRCompositorError;
-
-typedef enum VROverlayInputMethod
-{
- VROverlayInputMethod_None = 0,
- VROverlayInputMethod_Mouse = 1,
-} VROverlayInputMethod;
-
-typedef enum VROverlayTransformType
-{
- VROverlayTransformType_VROverlayTransform_Absolute = 0,
- VROverlayTransformType_VROverlayTransform_TrackedDeviceRelative = 1,
- VROverlayTransformType_VROverlayTransform_SystemOverlay = 2,
- VROverlayTransformType_VROverlayTransform_TrackedComponent = 3,
-} VROverlayTransformType;
-
-typedef enum VROverlayFlags
-{
- VROverlayFlags_None = 0,
- VROverlayFlags_Curved = 1,
- VROverlayFlags_RGSS4X = 2,
- VROverlayFlags_NoDashboardTab = 3,
- VROverlayFlags_AcceptsGamepadEvents = 4,
- VROverlayFlags_ShowGamepadFocus = 5,
- VROverlayFlags_SendVRScrollEvents = 6,
- VROverlayFlags_SendVRTouchpadEvents = 7,
- VROverlayFlags_ShowTouchPadScrollWheel = 8,
- VROverlayFlags_TransferOwnershipToInternalProcess = 9,
- VROverlayFlags_SideBySide_Parallel = 10,
- VROverlayFlags_SideBySide_Crossed = 11,
- VROverlayFlags_Panorama = 12,
- VROverlayFlags_StereoPanorama = 13,
- VROverlayFlags_SortWithNonSceneOverlays = 14,
- VROverlayFlags_VisibleInDashboard = 15,
-} VROverlayFlags;
-
-typedef enum VRMessageOverlayResponse
-{
- VRMessageOverlayResponse_ButtonPress_0 = 0,
- VRMessageOverlayResponse_ButtonPress_1 = 1,
- VRMessageOverlayResponse_ButtonPress_2 = 2,
- VRMessageOverlayResponse_ButtonPress_3 = 3,
- VRMessageOverlayResponse_CouldntFindSystemOverlay = 4,
- VRMessageOverlayResponse_CouldntFindOrCreateClientOverlay = 5,
- VRMessageOverlayResponse_ApplicationQuit = 6,
-} VRMessageOverlayResponse;
-
-typedef enum EGamepadTextInputMode
-{
- EGamepadTextInputMode_k_EGamepadTextInputModeNormal = 0,
- EGamepadTextInputMode_k_EGamepadTextInputModePassword = 1,
- EGamepadTextInputMode_k_EGamepadTextInputModeSubmit = 2,
-} EGamepadTextInputMode;
-
-typedef enum EGamepadTextInputLineMode
-{
- EGamepadTextInputLineMode_k_EGamepadTextInputLineModeSingleLine = 0,
- EGamepadTextInputLineMode_k_EGamepadTextInputLineModeMultipleLines = 1,
-} EGamepadTextInputLineMode;
-
-typedef enum EOverlayDirection
-{
- EOverlayDirection_OverlayDirection_Up = 0,
- EOverlayDirection_OverlayDirection_Down = 1,
- EOverlayDirection_OverlayDirection_Left = 2,
- EOverlayDirection_OverlayDirection_Right = 3,
- EOverlayDirection_OverlayDirection_Count = 4,
-} EOverlayDirection;
-
-typedef enum EVROverlayIntersectionMaskPrimitiveType
-{
- EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Rectangle = 0,
- EVROverlayIntersectionMaskPrimitiveType_OverlayIntersectionPrimitiveType_Circle = 1,
-} EVROverlayIntersectionMaskPrimitiveType;
-
-typedef enum EVRRenderModelError
-{
- EVRRenderModelError_VRRenderModelError_None = 0,
- EVRRenderModelError_VRRenderModelError_Loading = 100,
- EVRRenderModelError_VRRenderModelError_NotSupported = 200,
- EVRRenderModelError_VRRenderModelError_InvalidArg = 300,
- EVRRenderModelError_VRRenderModelError_InvalidModel = 301,
- EVRRenderModelError_VRRenderModelError_NoShapes = 302,
- EVRRenderModelError_VRRenderModelError_MultipleShapes = 303,
- EVRRenderModelError_VRRenderModelError_TooManyVertices = 304,
- EVRRenderModelError_VRRenderModelError_MultipleTextures = 305,
- EVRRenderModelError_VRRenderModelError_BufferTooSmall = 306,
- EVRRenderModelError_VRRenderModelError_NotEnoughNormals = 307,
- EVRRenderModelError_VRRenderModelError_NotEnoughTexCoords = 308,
- EVRRenderModelError_VRRenderModelError_InvalidTexture = 400,
-} EVRRenderModelError;
-
-typedef enum EVRComponentProperty
-{
- EVRComponentProperty_VRComponentProperty_IsStatic = 1,
- EVRComponentProperty_VRComponentProperty_IsVisible = 2,
- EVRComponentProperty_VRComponentProperty_IsTouched = 4,
- EVRComponentProperty_VRComponentProperty_IsPressed = 8,
- EVRComponentProperty_VRComponentProperty_IsScrolled = 16,
-} EVRComponentProperty;
-
-typedef enum EVRNotificationType
-{
- EVRNotificationType_Transient = 0,
- EVRNotificationType_Persistent = 1,
- EVRNotificationType_Transient_SystemWithUserValue = 2,
-} EVRNotificationType;
-
-typedef enum EVRNotificationStyle
-{
- EVRNotificationStyle_None = 0,
- EVRNotificationStyle_Application = 100,
- EVRNotificationStyle_Contact_Disabled = 200,
- EVRNotificationStyle_Contact_Enabled = 201,
- EVRNotificationStyle_Contact_Active = 202,
-} EVRNotificationStyle;
-
-typedef enum EVRSettingsError
-{
- EVRSettingsError_VRSettingsError_None = 0,
- EVRSettingsError_VRSettingsError_IPCFailed = 1,
- EVRSettingsError_VRSettingsError_WriteFailed = 2,
- EVRSettingsError_VRSettingsError_ReadFailed = 3,
- EVRSettingsError_VRSettingsError_JsonParseFailed = 4,
- EVRSettingsError_VRSettingsError_UnsetSettingHasNoDefault = 5,
-} EVRSettingsError;
-
-typedef enum EVRScreenshotError
-{
- EVRScreenshotError_VRScreenshotError_None = 0,
- EVRScreenshotError_VRScreenshotError_RequestFailed = 1,
- EVRScreenshotError_VRScreenshotError_IncompatibleVersion = 100,
- EVRScreenshotError_VRScreenshotError_NotFound = 101,
- EVRScreenshotError_VRScreenshotError_BufferTooSmall = 102,
- EVRScreenshotError_VRScreenshotError_ScreenshotAlreadyInProgress = 108,
-} EVRScreenshotError;
-
-
-// OpenVR typedefs
-
-typedef uint32_t TrackedDeviceIndex_t;
-typedef uint32_t VRNotificationId;
-typedef uint64_t VROverlayHandle_t;
-
-typedef void * glSharedTextureHandle_t;
-typedef int32_t glInt_t;
-typedef uint32_t glUInt_t;
-typedef uint64_t SharedTextureHandle_t;
-typedef uint32_t DriverId_t;
-typedef uint32_t TrackedDeviceIndex_t;
-typedef uint64_t PropertyContainerHandle_t;
-typedef uint32_t PropertyTypeTag_t;
-typedef uint64_t VROverlayHandle_t;
-typedef uint64_t TrackedCameraHandle_t;
-typedef uint32_t ScreenshotHandle_t;
-typedef uint32_t VRComponentProperties;
-typedef int32_t TextureID_t;
-typedef uint32_t VRNotificationId;
-typedef EVRInitError HmdError;
-typedef EVREye Hmd_Eye;
-typedef EColorSpace ColorSpace;
-typedef ETrackingResult HmdTrackingResult;
-typedef ETrackedDeviceClass TrackedDeviceClass;
-typedef ETrackingUniverseOrigin TrackingUniverseOrigin;
-typedef ETrackedDeviceProperty TrackedDeviceProperty;
-typedef ETrackedPropertyError TrackedPropertyError;
-typedef EVRSubmitFlags VRSubmitFlags_t;
-typedef EVRState VRState_t;
-typedef ECollisionBoundsStyle CollisionBoundsStyle_t;
-typedef EVROverlayError VROverlayError;
-typedef EVRFirmwareError VRFirmwareError;
-typedef EVRCompositorError VRCompositorError;
-typedef EVRScreenshotError VRScreenshotsError;
-
-// OpenVR Structs
-
-typedef struct HmdMatrix34_t
-{
- float m[3][4]; //float[3][4]
-} HmdMatrix34_t;
-
-typedef struct HmdMatrix44_t
-{
- float m[4][4]; //float[4][4]
-} HmdMatrix44_t;
-
-typedef struct HmdVector3_t
-{
- float v[3]; //float[3]
-} HmdVector3_t;
-
-typedef struct HmdVector4_t
-{
- float v[4]; //float[4]
-} HmdVector4_t;
-
-typedef struct HmdVector3d_t
-{
- double v[3]; //double[3]
-} HmdVector3d_t;
-
-typedef struct HmdVector2_t
-{
- float v[2]; //float[2]
-} HmdVector2_t;
-
-typedef struct HmdQuaternion_t
-{
- double w;
- double x;
- double y;
- double z;
-} HmdQuaternion_t;
-
-typedef struct HmdColor_t
-{
- float r;
- float g;
- float b;
- float a;
-} HmdColor_t;
-
-typedef struct HmdQuad_t
-{
- struct HmdVector3_t vCorners[4]; //struct vr::HmdVector3_t[4]
-} HmdQuad_t;
-
-typedef struct HmdRect2_t
-{
- struct HmdVector2_t vTopLeft;
- struct HmdVector2_t vBottomRight;
-} HmdRect2_t;
-
-typedef struct DistortionCoordinates_t
-{
- float rfRed[2]; //float[2]
- float rfGreen[2]; //float[2]
- float rfBlue[2]; //float[2]
-} DistortionCoordinates_t;
-
-typedef struct Texture_t
-{
- void * handle; // void *
- enum ETextureType eType;
- enum EColorSpace eColorSpace;
-} Texture_t;
-
-typedef struct TrackedDevicePose_t
-{
- struct HmdMatrix34_t mDeviceToAbsoluteTracking;
- struct HmdVector3_t vVelocity;
- struct HmdVector3_t vAngularVelocity;
- enum ETrackingResult eTrackingResult;
- bool bPoseIsValid;
- bool bDeviceIsConnected;
-} TrackedDevicePose_t;
-
-typedef struct VRTextureBounds_t
-{
- float uMin;
- float vMin;
- float uMax;
- float vMax;
-} VRTextureBounds_t;
-
-typedef struct VRTextureWithPose_t
-{
- struct HmdMatrix34_t mDeviceToAbsoluteTracking;
-} VRTextureWithPose_t;
-
-typedef struct VRVulkanTextureData_t
-{
- uint64_t m_nImage;
- struct VkDevice_T * m_pDevice; // struct VkDevice_T *
- struct VkPhysicalDevice_T * m_pPhysicalDevice; // struct VkPhysicalDevice_T *
- struct VkInstance_T * m_pInstance; // struct VkInstance_T *
- struct VkQueue_T * m_pQueue; // struct VkQueue_T *
- uint32_t m_nQueueFamilyIndex;
- uint32_t m_nWidth;
- uint32_t m_nHeight;
- uint32_t m_nFormat;
- uint32_t m_nSampleCount;
-} VRVulkanTextureData_t;
-
-typedef struct D3D12TextureData_t
-{
- struct ID3D12Resource * m_pResource; // struct ID3D12Resource *
- struct ID3D12CommandQueue * m_pCommandQueue; // struct ID3D12CommandQueue *
- uint32_t m_nNodeMask;
-} D3D12TextureData_t;
-
-typedef struct VREvent_Controller_t
-{
- uint32_t button;
-} VREvent_Controller_t;
-
-typedef struct VREvent_Mouse_t
-{
- float x;
- float y;
- uint32_t button;
-} VREvent_Mouse_t;
-
-typedef struct VREvent_Scroll_t
-{
- float xdelta;
- float ydelta;
- uint32_t repeatCount;
-} VREvent_Scroll_t;
-
-typedef struct VREvent_TouchPadMove_t
-{
- bool bFingerDown;
- float flSecondsFingerDown;
- float fValueXFirst;
- float fValueYFirst;
- float fValueXRaw;
- float fValueYRaw;
-} VREvent_TouchPadMove_t;
-
-typedef struct VREvent_Notification_t
-{
- uint64_t ulUserValue;
- uint32_t notificationId;
-} VREvent_Notification_t;
-
-typedef struct VREvent_Process_t
-{
- uint32_t pid;
- uint32_t oldPid;
- bool bForced;
-} VREvent_Process_t;
-
-typedef struct VREvent_Overlay_t
-{
- uint64_t overlayHandle;
-} VREvent_Overlay_t;
-
-typedef struct VREvent_Status_t
-{
- uint32_t statusState;
-} VREvent_Status_t;
-
-typedef struct VREvent_Keyboard_t
-{
- char * cNewInput[8]; //char[8]
- uint64_t uUserValue;
-} VREvent_Keyboard_t;
-
-typedef struct VREvent_Ipd_t
-{
- float ipdMeters;
-} VREvent_Ipd_t;
-
-typedef struct VREvent_Chaperone_t
-{
- uint64_t m_nPreviousUniverse;
- uint64_t m_nCurrentUniverse;
-} VREvent_Chaperone_t;
-
-typedef struct VREvent_Reserved_t
-{
- uint64_t reserved0;
- uint64_t reserved1;
-} VREvent_Reserved_t;
-
-typedef struct VREvent_PerformanceTest_t
-{
- uint32_t m_nFidelityLevel;
-} VREvent_PerformanceTest_t;
-
-typedef struct VREvent_SeatedZeroPoseReset_t
-{
- bool bResetBySystemMenu;
-} VREvent_SeatedZeroPoseReset_t;
-
-typedef struct VREvent_Screenshot_t
-{
- uint32_t handle;
- uint32_t type;
-} VREvent_Screenshot_t;
-
-typedef struct VREvent_ScreenshotProgress_t
-{
- float progress;
-} VREvent_ScreenshotProgress_t;
-
-typedef struct VREvent_ApplicationLaunch_t
-{
- uint32_t pid;
- uint32_t unArgsHandle;
-} VREvent_ApplicationLaunch_t;
-
-typedef struct VREvent_EditingCameraSurface_t
-{
- uint64_t overlayHandle;
- uint32_t nVisualMode;
-} VREvent_EditingCameraSurface_t;
-
-typedef struct VREvent_MessageOverlay_t
-{
- uint32_t unVRMessageOverlayResponse;
-} VREvent_MessageOverlay_t;
-
-typedef struct VREvent_Property_t
-{
- PropertyContainerHandle_t container;
- enum ETrackedDeviceProperty prop;
-} VREvent_Property_t;
-
-typedef struct HiddenAreaMesh_t
-{
- struct HmdVector2_t * pVertexData; // const struct vr::HmdVector2_t *
- uint32_t unTriangleCount;
-} HiddenAreaMesh_t;
-
-typedef struct VRControllerAxis_t
-{
- float x;
- float y;
-} VRControllerAxis_t;
-
-typedef struct VRControllerState_t
-{
- uint32_t unPacketNum;
- uint64_t ulButtonPressed;
- uint64_t ulButtonTouched;
- struct VRControllerAxis_t rAxis[5]; //struct vr::VRControllerAxis_t[5]
-} VRControllerState_t;
-
-typedef struct Compositor_OverlaySettings
-{
- uint32_t size;
- bool curved;
- bool antialias;
- float scale;
- float distance;
- float alpha;
- float uOffset;
- float vOffset;
- float uScale;
- float vScale;
- float gridDivs;
- float gridWidth;
- float gridScale;
- struct HmdMatrix44_t transform;
-} Compositor_OverlaySettings;
-
-typedef struct CameraVideoStreamFrameHeader_t
-{
- enum EVRTrackedCameraFrameType eFrameType;
- uint32_t nWidth;
- uint32_t nHeight;
- uint32_t nBytesPerPixel;
- uint32_t nFrameSequence;
- struct TrackedDevicePose_t standingTrackedDevicePose;
-} CameraVideoStreamFrameHeader_t;
-
-typedef struct AppOverrideKeys_t
-{
- char * pchKey; // const char *
- char * pchValue; // const char *
-} AppOverrideKeys_t;
-
-typedef struct Compositor_FrameTiming
-{
- uint32_t m_nSize;
- uint32_t m_nFrameIndex;
- uint32_t m_nNumFramePresents;
- uint32_t m_nNumMisPresented;
- uint32_t m_nNumDroppedFrames;
- uint32_t m_nReprojectionFlags;
- double m_flSystemTimeInSeconds;
- float m_flPreSubmitGpuMs;
- float m_flPostSubmitGpuMs;
- float m_flTotalRenderGpuMs;
- float m_flCompositorRenderGpuMs;
- float m_flCompositorRenderCpuMs;
- float m_flCompositorIdleCpuMs;
- float m_flClientFrameIntervalMs;
- float m_flPresentCallCpuMs;
- float m_flWaitForPresentCpuMs;
- float m_flSubmitFrameMs;
- float m_flWaitGetPosesCalledMs;
- float m_flNewPosesReadyMs;
- float m_flNewFrameReadyMs;
- float m_flCompositorUpdateStartMs;
- float m_flCompositorUpdateEndMs;
- float m_flCompositorRenderStartMs;
- TrackedDevicePose_t m_HmdPose;
-} Compositor_FrameTiming;
-
-typedef struct Compositor_CumulativeStats
-{
- uint32_t m_nPid;
- uint32_t m_nNumFramePresents;
- uint32_t m_nNumDroppedFrames;
- uint32_t m_nNumReprojectedFrames;
- uint32_t m_nNumFramePresentsOnStartup;
- uint32_t m_nNumDroppedFramesOnStartup;
- uint32_t m_nNumReprojectedFramesOnStartup;
- uint32_t m_nNumLoading;
- uint32_t m_nNumFramePresentsLoading;
- uint32_t m_nNumDroppedFramesLoading;
- uint32_t m_nNumReprojectedFramesLoading;
- uint32_t m_nNumTimedOut;
- uint32_t m_nNumFramePresentsTimedOut;
- uint32_t m_nNumDroppedFramesTimedOut;
- uint32_t m_nNumReprojectedFramesTimedOut;
-} Compositor_CumulativeStats;
-
-typedef struct VROverlayIntersectionParams_t
-{
- struct HmdVector3_t vSource;
- struct HmdVector3_t vDirection;
- enum ETrackingUniverseOrigin eOrigin;
-} VROverlayIntersectionParams_t;
-
-typedef struct VROverlayIntersectionResults_t
-{
- struct HmdVector3_t vPoint;
- struct HmdVector3_t vNormal;
- struct HmdVector2_t vUVs;
- float fDistance;
-} VROverlayIntersectionResults_t;
-
-typedef struct IntersectionMaskRectangle_t
-{
- float m_flTopLeftX;
- float m_flTopLeftY;
- float m_flWidth;
- float m_flHeight;
-} IntersectionMaskRectangle_t;
-
-typedef struct IntersectionMaskCircle_t
-{
- float m_flCenterX;
- float m_flCenterY;
- float m_flRadius;
-} IntersectionMaskCircle_t;
-
-typedef struct RenderModel_ComponentState_t
-{
- struct HmdMatrix34_t mTrackingToComponentRenderModel;
- struct HmdMatrix34_t mTrackingToComponentLocal;
- VRComponentProperties uProperties;
-} RenderModel_ComponentState_t;
-
-typedef struct RenderModel_Vertex_t
-{
- struct HmdVector3_t vPosition;
- struct HmdVector3_t vNormal;
- float rfTextureCoord[2]; //float[2]
-} RenderModel_Vertex_t;
-
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( push, 4 )
-#endif
-typedef struct RenderModel_TextureMap_t
-{
- uint16_t unWidth;
- uint16_t unHeight;
- uint8_t * rubTextureMapData; // const uint8_t *
-} RenderModel_TextureMap_t;
-
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( push, 4 )
-#endif
-typedef struct RenderModel_t
-{
- struct RenderModel_Vertex_t * rVertexData; // const struct vr::RenderModel_Vertex_t *
- uint32_t unVertexCount;
- uint16_t * rIndexData; // const uint16_t *
- uint32_t unTriangleCount;
- TextureID_t diffuseTextureId;
-} RenderModel_t;
-
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-typedef struct RenderModel_ControllerMode_State_t
-{
- bool bScrollWheelVisible;
-} RenderModel_ControllerMode_State_t;
-
-typedef struct NotificationBitmap_t
-{
- void * m_pImageData; // void *
- int32_t m_nWidth;
- int32_t m_nHeight;
- int32_t m_nBytesPerPixel;
-} NotificationBitmap_t;
-
-typedef struct COpenVRContext
-{
- intptr_t m_pVRSystem; // class vr::IVRSystem *
- intptr_t m_pVRChaperone; // class vr::IVRChaperone *
- intptr_t m_pVRChaperoneSetup; // class vr::IVRChaperoneSetup *
- intptr_t m_pVRCompositor; // class vr::IVRCompositor *
- intptr_t m_pVROverlay; // class vr::IVROverlay *
- intptr_t m_pVRResources; // class vr::IVRResources *
- intptr_t m_pVRRenderModels; // class vr::IVRRenderModels *
- intptr_t m_pVRExtendedDisplay; // class vr::IVRExtendedDisplay *
- intptr_t m_pVRSettings; // class vr::IVRSettings *
- intptr_t m_pVRApplications; // class vr::IVRApplications *
- intptr_t m_pVRTrackedCamera; // class vr::IVRTrackedCamera *
- intptr_t m_pVRScreenshots; // class vr::IVRScreenshots *
- intptr_t m_pVRDriverManager; // class vr::IVRDriverManager *
-} COpenVRContext;
-
-
-typedef union
-{
- VREvent_Reserved_t reserved;
- VREvent_Controller_t controller;
- VREvent_Mouse_t mouse;
- VREvent_Scroll_t scroll;
- VREvent_Process_t process;
- VREvent_Notification_t notification;
- VREvent_Overlay_t overlay;
- VREvent_Status_t status;
- VREvent_Keyboard_t keyboard;
- VREvent_Ipd_t ipd;
- VREvent_Chaperone_t chaperone;
- VREvent_PerformanceTest_t performanceTest;
- VREvent_TouchPadMove_t touchPadMove;
- VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset;
-} VREvent_Data_t;
-
-/** An event posted by the server to all running applications */
-struct VREvent_t
-{
- uint32_t eventType; // EVREventType enum
- TrackedDeviceIndex_t trackedDeviceIndex;
- float eventAgeSeconds;
- // event data must be the end of the struct as its size is variable
- VREvent_Data_t data;
-};
-
-
-typedef union
-{
- IntersectionMaskRectangle_t m_Rectangle;
- IntersectionMaskCircle_t m_Circle;
-} VROverlayIntersectionMaskPrimitive_Data_t;
-
-struct VROverlayIntersectionMaskPrimitive_t
-{
- EVROverlayIntersectionMaskPrimitiveType m_nPrimitiveType;
- VROverlayIntersectionMaskPrimitive_Data_t m_Primitive;
-};
-
-
-// OpenVR Function Pointer Tables
-
-struct VR_IVRSystem_FnTable
-{
- void (OPENVR_FNTABLE_CALLTYPE *GetRecommendedRenderTargetSize)(uint32_t * pnWidth, uint32_t * pnHeight);
- struct HmdMatrix44_t (OPENVR_FNTABLE_CALLTYPE *GetProjectionMatrix)(EVREye eEye, float fNearZ, float fFarZ);
- void (OPENVR_FNTABLE_CALLTYPE *GetProjectionRaw)(EVREye eEye, float * pfLeft, float * pfRight, float * pfTop, float * pfBottom);
- bool (OPENVR_FNTABLE_CALLTYPE *ComputeDistortion)(EVREye eEye, float fU, float fV, struct DistortionCoordinates_t * pDistortionCoordinates);
- struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetEyeToHeadTransform)(EVREye eEye);
- bool (OPENVR_FNTABLE_CALLTYPE *GetTimeSinceLastVsync)(float * pfSecondsSinceLastVsync, uint64_t * pulFrameCounter);
- int32_t (OPENVR_FNTABLE_CALLTYPE *GetD3D9AdapterIndex)();
- void (OPENVR_FNTABLE_CALLTYPE *GetDXGIOutputInfo)(int32_t * pnAdapterIndex);
- void (OPENVR_FNTABLE_CALLTYPE *GetOutputDevice)(uint64_t * pnDevice, ETextureType textureType, struct VkInstance_T * pInstance);
- bool (OPENVR_FNTABLE_CALLTYPE *IsDisplayOnDesktop)();
- bool (OPENVR_FNTABLE_CALLTYPE *SetDisplayVisibility)(bool bIsVisibleOnDesktop);
- void (OPENVR_FNTABLE_CALLTYPE *GetDeviceToAbsoluteTrackingPose)(ETrackingUniverseOrigin eOrigin, float fPredictedSecondsToPhotonsFromNow, struct TrackedDevicePose_t * pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount);
- void (OPENVR_FNTABLE_CALLTYPE *ResetSeatedZeroPose)();
- struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetSeatedZeroPoseToStandingAbsoluteTrackingPose)();
- struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetRawZeroPoseToStandingAbsoluteTrackingPose)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetSortedTrackedDeviceIndicesOfClass)(ETrackedDeviceClass eTrackedDeviceClass, TrackedDeviceIndex_t * punTrackedDeviceIndexArray, uint32_t unTrackedDeviceIndexArrayCount, TrackedDeviceIndex_t unRelativeToTrackedDeviceIndex);
- EDeviceActivityLevel (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceActivityLevel)(TrackedDeviceIndex_t unDeviceId);
- void (OPENVR_FNTABLE_CALLTYPE *ApplyTransform)(struct TrackedDevicePose_t * pOutputPose, struct TrackedDevicePose_t * pTrackedDevicePose, struct HmdMatrix34_t * pTransform);
- TrackedDeviceIndex_t (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceIndexForControllerRole)(ETrackedControllerRole unDeviceType);
- ETrackedControllerRole (OPENVR_FNTABLE_CALLTYPE *GetControllerRoleForTrackedDeviceIndex)(TrackedDeviceIndex_t unDeviceIndex);
- ETrackedDeviceClass (OPENVR_FNTABLE_CALLTYPE *GetTrackedDeviceClass)(TrackedDeviceIndex_t unDeviceIndex);
- bool (OPENVR_FNTABLE_CALLTYPE *IsTrackedDeviceConnected)(TrackedDeviceIndex_t unDeviceIndex);
- bool (OPENVR_FNTABLE_CALLTYPE *GetBoolTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError);
- float (OPENVR_FNTABLE_CALLTYPE *GetFloatTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError);
- int32_t (OPENVR_FNTABLE_CALLTYPE *GetInt32TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError);
- uint64_t (OPENVR_FNTABLE_CALLTYPE *GetUint64TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError);
- struct HmdMatrix34_t (OPENVR_FNTABLE_CALLTYPE *GetMatrix34TrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, ETrackedPropertyError * pError);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetStringTrackedDeviceProperty)(TrackedDeviceIndex_t unDeviceIndex, ETrackedDeviceProperty prop, char * pchValue, uint32_t unBufferSize, ETrackedPropertyError * pError);
- char * (OPENVR_FNTABLE_CALLTYPE *GetPropErrorNameFromEnum)(ETrackedPropertyError error);
- bool (OPENVR_FNTABLE_CALLTYPE *PollNextEvent)(struct VREvent_t * pEvent, uint32_t uncbVREvent);
- bool (OPENVR_FNTABLE_CALLTYPE *PollNextEventWithPose)(ETrackingUniverseOrigin eOrigin, struct VREvent_t * pEvent, uint32_t uncbVREvent, TrackedDevicePose_t * pTrackedDevicePose);
- char * (OPENVR_FNTABLE_CALLTYPE *GetEventTypeNameFromEnum)(EVREventType eType);
- struct HiddenAreaMesh_t (OPENVR_FNTABLE_CALLTYPE *GetHiddenAreaMesh)(EVREye eEye, EHiddenAreaMeshType type);
- bool (OPENVR_FNTABLE_CALLTYPE *GetControllerState)(TrackedDeviceIndex_t unControllerDeviceIndex, VRControllerState_t * pControllerState, uint32_t unControllerStateSize);
- bool (OPENVR_FNTABLE_CALLTYPE *GetControllerStateWithPose)(ETrackingUniverseOrigin eOrigin, TrackedDeviceIndex_t unControllerDeviceIndex, VRControllerState_t * pControllerState, uint32_t unControllerStateSize, struct TrackedDevicePose_t * pTrackedDevicePose);
- void (OPENVR_FNTABLE_CALLTYPE *TriggerHapticPulse)(TrackedDeviceIndex_t unControllerDeviceIndex, uint32_t unAxisId, unsigned short usDurationMicroSec);
- char * (OPENVR_FNTABLE_CALLTYPE *GetButtonIdNameFromEnum)(EVRButtonId eButtonId);
- char * (OPENVR_FNTABLE_CALLTYPE *GetControllerAxisTypeNameFromEnum)(EVRControllerAxisType eAxisType);
- bool (OPENVR_FNTABLE_CALLTYPE *CaptureInputFocus)();
- void (OPENVR_FNTABLE_CALLTYPE *ReleaseInputFocus)();
- bool (OPENVR_FNTABLE_CALLTYPE *IsInputFocusCapturedByAnotherProcess)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *DriverDebugRequest)(TrackedDeviceIndex_t unDeviceIndex, char * pchRequest, char * pchResponseBuffer, uint32_t unResponseBufferSize);
- EVRFirmwareError (OPENVR_FNTABLE_CALLTYPE *PerformFirmwareUpdate)(TrackedDeviceIndex_t unDeviceIndex);
- void (OPENVR_FNTABLE_CALLTYPE *AcknowledgeQuit_Exiting)();
- void (OPENVR_FNTABLE_CALLTYPE *AcknowledgeQuit_UserPrompt)();
-};
-
-struct VR_IVRExtendedDisplay_FnTable
-{
- void (OPENVR_FNTABLE_CALLTYPE *GetWindowBounds)(int32_t * pnX, int32_t * pnY, uint32_t * pnWidth, uint32_t * pnHeight);
- void (OPENVR_FNTABLE_CALLTYPE *GetEyeOutputViewport)(EVREye eEye, uint32_t * pnX, uint32_t * pnY, uint32_t * pnWidth, uint32_t * pnHeight);
- void (OPENVR_FNTABLE_CALLTYPE *GetDXGIOutputInfo)(int32_t * pnAdapterIndex, int32_t * pnAdapterOutputIndex);
-};
-
-struct VR_IVRTrackedCamera_FnTable
-{
- char * (OPENVR_FNTABLE_CALLTYPE *GetCameraErrorNameFromEnum)(EVRTrackedCameraError eCameraError);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *HasCamera)(TrackedDeviceIndex_t nDeviceIndex, bool * pHasCamera);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraFrameSize)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, uint32_t * pnWidth, uint32_t * pnHeight, uint32_t * pnFrameBufferSize);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraIntrinsics)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, HmdVector2_t * pFocalLength, HmdVector2_t * pCenter);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetCameraProjection)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, float flZNear, float flZFar, HmdMatrix44_t * pProjection);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *AcquireVideoStreamingService)(TrackedDeviceIndex_t nDeviceIndex, TrackedCameraHandle_t * pHandle);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *ReleaseVideoStreamingService)(TrackedCameraHandle_t hTrackedCamera);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamFrameBuffer)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, void * pFrameBuffer, uint32_t nFrameBufferSize, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureSize)(TrackedDeviceIndex_t nDeviceIndex, EVRTrackedCameraFrameType eFrameType, VRTextureBounds_t * pTextureBounds, uint32_t * pnWidth, uint32_t * pnHeight);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureD3D11)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, void * pD3D11DeviceOrResource, void ** ppD3D11ShaderResourceView, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *GetVideoStreamTextureGL)(TrackedCameraHandle_t hTrackedCamera, EVRTrackedCameraFrameType eFrameType, glUInt_t * pglTextureId, CameraVideoStreamFrameHeader_t * pFrameHeader, uint32_t nFrameHeaderSize);
- EVRTrackedCameraError (OPENVR_FNTABLE_CALLTYPE *ReleaseVideoStreamTextureGL)(TrackedCameraHandle_t hTrackedCamera, glUInt_t glTextureId);
-};
-
-struct VR_IVRApplications_FnTable
-{
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *AddApplicationManifest)(char * pchApplicationManifestFullPath, bool bTemporary);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *RemoveApplicationManifest)(char * pchApplicationManifestFullPath);
- bool (OPENVR_FNTABLE_CALLTYPE *IsApplicationInstalled)(char * pchAppKey);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationCount)();
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetApplicationKeyByIndex)(uint32_t unApplicationIndex, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetApplicationKeyByProcessId)(uint32_t unProcessId, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchApplication)(char * pchAppKey);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchTemplateApplication)(char * pchTemplateAppKey, char * pchNewAppKey, struct AppOverrideKeys_t * pKeys, uint32_t unKeys);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchApplicationFromMimeType)(char * pchMimeType, char * pchArgs);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchDashboardOverlay)(char * pchAppKey);
- bool (OPENVR_FNTABLE_CALLTYPE *CancelApplicationLaunch)(char * pchAppKey);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *IdentifyApplication)(uint32_t unProcessId, char * pchAppKey);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationProcessId)(char * pchAppKey);
- char * (OPENVR_FNTABLE_CALLTYPE *GetApplicationsErrorNameFromEnum)(EVRApplicationError error);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyString)(char * pchAppKey, EVRApplicationProperty eProperty, char * pchPropertyValueBuffer, uint32_t unPropertyValueBufferLen, EVRApplicationError * peError);
- bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyBool)(char * pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError * peError);
- uint64_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationPropertyUint64)(char * pchAppKey, EVRApplicationProperty eProperty, EVRApplicationError * peError);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *SetApplicationAutoLaunch)(char * pchAppKey, bool bAutoLaunch);
- bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationAutoLaunch)(char * pchAppKey);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *SetDefaultApplicationForMimeType)(char * pchAppKey, char * pchMimeType);
- bool (OPENVR_FNTABLE_CALLTYPE *GetDefaultApplicationForMimeType)(char * pchMimeType, char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen);
- bool (OPENVR_FNTABLE_CALLTYPE *GetApplicationSupportedMimeTypes)(char * pchAppKey, char * pchMimeTypesBuffer, uint32_t unMimeTypesBuffer);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationsThatSupportMimeType)(char * pchMimeType, char * pchAppKeysThatSupportBuffer, uint32_t unAppKeysThatSupportBuffer);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetApplicationLaunchArguments)(uint32_t unHandle, char * pchArgs, uint32_t unArgs);
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *GetStartingApplication)(char * pchAppKeyBuffer, uint32_t unAppKeyBufferLen);
- EVRApplicationTransitionState (OPENVR_FNTABLE_CALLTYPE *GetTransitionState)();
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *PerformApplicationPrelaunchCheck)(char * pchAppKey);
- char * (OPENVR_FNTABLE_CALLTYPE *GetApplicationsTransitionStateNameFromEnum)(EVRApplicationTransitionState state);
- bool (OPENVR_FNTABLE_CALLTYPE *IsQuitUserPromptRequested)();
- EVRApplicationError (OPENVR_FNTABLE_CALLTYPE *LaunchInternalProcess)(char * pchBinaryPath, char * pchArguments, char * pchWorkingDirectory);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentSceneProcessId)();
-};
-
-struct VR_IVRChaperone_FnTable
-{
- ChaperoneCalibrationState (OPENVR_FNTABLE_CALLTYPE *GetCalibrationState)();
- bool (OPENVR_FNTABLE_CALLTYPE *GetPlayAreaSize)(float * pSizeX, float * pSizeZ);
- bool (OPENVR_FNTABLE_CALLTYPE *GetPlayAreaRect)(struct HmdQuad_t * rect);
- void (OPENVR_FNTABLE_CALLTYPE *ReloadInfo)();
- void (OPENVR_FNTABLE_CALLTYPE *SetSceneColor)(struct HmdColor_t color);
- void (OPENVR_FNTABLE_CALLTYPE *GetBoundsColor)(struct HmdColor_t * pOutputColorArray, int nNumOutputColors, float flCollisionBoundsFadeDistance, struct HmdColor_t * pOutputCameraColor);
- bool (OPENVR_FNTABLE_CALLTYPE *AreBoundsVisible)();
- void (OPENVR_FNTABLE_CALLTYPE *ForceBoundsVisible)(bool bForce);
-};
-
-struct VR_IVRChaperoneSetup_FnTable
-{
- bool (OPENVR_FNTABLE_CALLTYPE *CommitWorkingCopy)(EChaperoneConfigFile configFile);
- void (OPENVR_FNTABLE_CALLTYPE *RevertWorkingCopy)();
- bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingPlayAreaSize)(float * pSizeX, float * pSizeZ);
- bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingPlayAreaRect)(struct HmdQuad_t * rect);
- bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t * punQuadsCount);
- bool (OPENVR_FNTABLE_CALLTYPE *GetLiveCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t * punQuadsCount);
- bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatSeatedZeroPoseToRawTrackingPose);
- bool (OPENVR_FNTABLE_CALLTYPE *GetWorkingStandingZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatStandingZeroPoseToRawTrackingPose);
- void (OPENVR_FNTABLE_CALLTYPE *SetWorkingPlayAreaSize)(float sizeX, float sizeZ);
- void (OPENVR_FNTABLE_CALLTYPE *SetWorkingCollisionBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t unQuadsCount);
- void (OPENVR_FNTABLE_CALLTYPE *SetWorkingSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pMatSeatedZeroPoseToRawTrackingPose);
- void (OPENVR_FNTABLE_CALLTYPE *SetWorkingStandingZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pMatStandingZeroPoseToRawTrackingPose);
- void (OPENVR_FNTABLE_CALLTYPE *ReloadFromDisk)(EChaperoneConfigFile configFile);
- bool (OPENVR_FNTABLE_CALLTYPE *GetLiveSeatedZeroPoseToRawTrackingPose)(struct HmdMatrix34_t * pmatSeatedZeroPoseToRawTrackingPose);
- void (OPENVR_FNTABLE_CALLTYPE *SetWorkingCollisionBoundsTagsInfo)(uint8_t * pTagsBuffer, uint32_t unTagCount);
- bool (OPENVR_FNTABLE_CALLTYPE *GetLiveCollisionBoundsTagsInfo)(uint8_t * pTagsBuffer, uint32_t * punTagCount);
- bool (OPENVR_FNTABLE_CALLTYPE *SetWorkingPhysicalBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t unQuadsCount);
- bool (OPENVR_FNTABLE_CALLTYPE *GetLivePhysicalBoundsInfo)(struct HmdQuad_t * pQuadsBuffer, uint32_t * punQuadsCount);
- bool (OPENVR_FNTABLE_CALLTYPE *ExportLiveToBuffer)(char * pBuffer, uint32_t * pnBufferLength);
- bool (OPENVR_FNTABLE_CALLTYPE *ImportFromBufferToWorking)(char * pBuffer, uint32_t nImportFlags);
-};
-
-struct VR_IVRCompositor_FnTable
-{
- void (OPENVR_FNTABLE_CALLTYPE *SetTrackingSpace)(ETrackingUniverseOrigin eOrigin);
- ETrackingUniverseOrigin (OPENVR_FNTABLE_CALLTYPE *GetTrackingSpace)();
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *WaitGetPoses)(struct TrackedDevicePose_t * pRenderPoseArray, uint32_t unRenderPoseArrayCount, struct TrackedDevicePose_t * pGamePoseArray, uint32_t unGamePoseArrayCount);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetLastPoses)(struct TrackedDevicePose_t * pRenderPoseArray, uint32_t unRenderPoseArrayCount, struct TrackedDevicePose_t * pGamePoseArray, uint32_t unGamePoseArrayCount);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetLastPoseForTrackedDeviceIndex)(TrackedDeviceIndex_t unDeviceIndex, struct TrackedDevicePose_t * pOutputPose, struct TrackedDevicePose_t * pOutputGamePose);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *Submit)(EVREye eEye, struct Texture_t * pTexture, struct VRTextureBounds_t * pBounds, EVRSubmitFlags nSubmitFlags);
- void (OPENVR_FNTABLE_CALLTYPE *ClearLastSubmittedFrame)();
- void (OPENVR_FNTABLE_CALLTYPE *PostPresentHandoff)();
- bool (OPENVR_FNTABLE_CALLTYPE *GetFrameTiming)(struct Compositor_FrameTiming * pTiming, uint32_t unFramesAgo);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetFrameTimings)(struct Compositor_FrameTiming * pTiming, uint32_t nFrames);
- float (OPENVR_FNTABLE_CALLTYPE *GetFrameTimeRemaining)();
- void (OPENVR_FNTABLE_CALLTYPE *GetCumulativeStats)(struct Compositor_CumulativeStats * pStats, uint32_t nStatsSizeInBytes);
- void (OPENVR_FNTABLE_CALLTYPE *FadeToColor)(float fSeconds, float fRed, float fGreen, float fBlue, float fAlpha, bool bBackground);
- struct HmdColor_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentFadeColor)(bool bBackground);
- void (OPENVR_FNTABLE_CALLTYPE *FadeGrid)(float fSeconds, bool bFadeIn);
- float (OPENVR_FNTABLE_CALLTYPE *GetCurrentGridAlpha)();
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *SetSkyboxOverride)(struct Texture_t * pTextures, uint32_t unTextureCount);
- void (OPENVR_FNTABLE_CALLTYPE *ClearSkyboxOverride)();
- void (OPENVR_FNTABLE_CALLTYPE *CompositorBringToFront)();
- void (OPENVR_FNTABLE_CALLTYPE *CompositorGoToBack)();
- void (OPENVR_FNTABLE_CALLTYPE *CompositorQuit)();
- bool (OPENVR_FNTABLE_CALLTYPE *IsFullscreen)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetCurrentSceneFocusProcess)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetLastFrameRenderer)();
- bool (OPENVR_FNTABLE_CALLTYPE *CanRenderScene)();
- void (OPENVR_FNTABLE_CALLTYPE *ShowMirrorWindow)();
- void (OPENVR_FNTABLE_CALLTYPE *HideMirrorWindow)();
- bool (OPENVR_FNTABLE_CALLTYPE *IsMirrorWindowVisible)();
- void (OPENVR_FNTABLE_CALLTYPE *CompositorDumpImages)();
- bool (OPENVR_FNTABLE_CALLTYPE *ShouldAppRenderWithLowResources)();
- void (OPENVR_FNTABLE_CALLTYPE *ForceInterleavedReprojectionOn)(bool bOverride);
- void (OPENVR_FNTABLE_CALLTYPE *ForceReconnectProcess)();
- void (OPENVR_FNTABLE_CALLTYPE *SuspendRendering)(bool bSuspend);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetMirrorTextureD3D11)(EVREye eEye, void * pD3D11DeviceOrResource, void ** ppD3D11ShaderResourceView);
- void (OPENVR_FNTABLE_CALLTYPE *ReleaseMirrorTextureD3D11)(void * pD3D11ShaderResourceView);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *GetMirrorTextureGL)(EVREye eEye, glUInt_t * pglTextureId, glSharedTextureHandle_t * pglSharedTextureHandle);
- bool (OPENVR_FNTABLE_CALLTYPE *ReleaseSharedGLTexture)(glUInt_t glTextureId, glSharedTextureHandle_t glSharedTextureHandle);
- void (OPENVR_FNTABLE_CALLTYPE *LockGLSharedTextureForAccess)(glSharedTextureHandle_t glSharedTextureHandle);
- void (OPENVR_FNTABLE_CALLTYPE *UnlockGLSharedTextureForAccess)(glSharedTextureHandle_t glSharedTextureHandle);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetVulkanInstanceExtensionsRequired)(char * pchValue, uint32_t unBufferSize);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetVulkanDeviceExtensionsRequired)(struct VkPhysicalDevice_T * pPhysicalDevice, char * pchValue, uint32_t unBufferSize);
- void (OPENVR_FNTABLE_CALLTYPE *SetExplicitTimingMode)(bool bExplicitTimingMode);
- EVRCompositorError (OPENVR_FNTABLE_CALLTYPE *SubmitExplicitTimingData)();
-};
-
-struct VR_IVROverlay_FnTable
-{
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *FindOverlay)(char * pchOverlayKey, VROverlayHandle_t * pOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *CreateOverlay)(char * pchOverlayKey, char * pchOverlayName, VROverlayHandle_t * pOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *DestroyOverlay)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetHighQualityOverlay)(VROverlayHandle_t ulOverlayHandle);
- VROverlayHandle_t (OPENVR_FNTABLE_CALLTYPE *GetHighQualityOverlay)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayKey)(VROverlayHandle_t ulOverlayHandle, char * pchValue, uint32_t unBufferSize, EVROverlayError * pError);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayName)(VROverlayHandle_t ulOverlayHandle, char * pchValue, uint32_t unBufferSize, EVROverlayError * pError);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayName)(VROverlayHandle_t ulOverlayHandle, char * pchName);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayImageData)(VROverlayHandle_t ulOverlayHandle, void * pvBuffer, uint32_t unBufferSize, uint32_t * punWidth, uint32_t * punHeight);
- char * (OPENVR_FNTABLE_CALLTYPE *GetOverlayErrorNameFromEnum)(EVROverlayError error);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayRenderingPid)(VROverlayHandle_t ulOverlayHandle, uint32_t unPID);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayRenderingPid)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayFlag)(VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool bEnabled);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayFlag)(VROverlayHandle_t ulOverlayHandle, VROverlayFlags eOverlayFlag, bool * pbEnabled);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayColor)(VROverlayHandle_t ulOverlayHandle, float fRed, float fGreen, float fBlue);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayColor)(VROverlayHandle_t ulOverlayHandle, float * pfRed, float * pfGreen, float * pfBlue);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayAlpha)(VROverlayHandle_t ulOverlayHandle, float fAlpha);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayAlpha)(VROverlayHandle_t ulOverlayHandle, float * pfAlpha);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTexelAspect)(VROverlayHandle_t ulOverlayHandle, float fTexelAspect);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTexelAspect)(VROverlayHandle_t ulOverlayHandle, float * pfTexelAspect);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlaySortOrder)(VROverlayHandle_t ulOverlayHandle, uint32_t unSortOrder);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlaySortOrder)(VROverlayHandle_t ulOverlayHandle, uint32_t * punSortOrder);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayWidthInMeters)(VROverlayHandle_t ulOverlayHandle, float fWidthInMeters);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayWidthInMeters)(VROverlayHandle_t ulOverlayHandle, float * pfWidthInMeters);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayAutoCurveDistanceRangeInMeters)(VROverlayHandle_t ulOverlayHandle, float fMinDistanceInMeters, float fMaxDistanceInMeters);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayAutoCurveDistanceRangeInMeters)(VROverlayHandle_t ulOverlayHandle, float * pfMinDistanceInMeters, float * pfMaxDistanceInMeters);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace eTextureColorSpace);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureColorSpace)(VROverlayHandle_t ulOverlayHandle, EColorSpace * peTextureColorSpace);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTextureBounds)(VROverlayHandle_t ulOverlayHandle, struct VRTextureBounds_t * pOverlayTextureBounds);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureBounds)(VROverlayHandle_t ulOverlayHandle, struct VRTextureBounds_t * pOverlayTextureBounds);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetOverlayRenderModel)(VROverlayHandle_t ulOverlayHandle, char * pchValue, uint32_t unBufferSize, struct HmdColor_t * pColor, EVROverlayError * pError);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayRenderModel)(VROverlayHandle_t ulOverlayHandle, char * pchRenderModel, struct HmdColor_t * pColor);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformType)(VROverlayHandle_t ulOverlayHandle, VROverlayTransformType * peTransformType);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformAbsolute)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformAbsolute)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin * peTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformTrackedDeviceRelative)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unTrackedDevice, struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformTrackedDeviceRelative)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t * punTrackedDevice, struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformTrackedDeviceComponent)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unDeviceIndex, char * pchComponentName);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformTrackedDeviceComponent)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t * punDeviceIndex, char * pchComponentName, uint32_t unComponentNameSize);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTransformOverlayRelative)(VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t * ulOverlayHandleParent, struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTransformOverlayRelative)(VROverlayHandle_t ulOverlayHandle, VROverlayHandle_t ulOverlayHandleParent, struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowOverlay)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *HideOverlay)(VROverlayHandle_t ulOverlayHandle);
- bool (OPENVR_FNTABLE_CALLTYPE *IsOverlayVisible)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetTransformForOverlayCoordinates)(VROverlayHandle_t ulOverlayHandle, ETrackingUniverseOrigin eTrackingOrigin, struct HmdVector2_t coordinatesInOverlay, struct HmdMatrix34_t * pmatTransform);
- bool (OPENVR_FNTABLE_CALLTYPE *PollNextOverlayEvent)(VROverlayHandle_t ulOverlayHandle, struct VREvent_t * pEvent, uint32_t uncbVREvent);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod * peInputMethod);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayInputMethod)(VROverlayHandle_t ulOverlayHandle, VROverlayInputMethod eInputMethod);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayMouseScale)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvecMouseScale);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayMouseScale)(VROverlayHandle_t ulOverlayHandle, struct HmdVector2_t * pvecMouseScale);
- bool (OPENVR_FNTABLE_CALLTYPE *ComputeOverlayIntersection)(VROverlayHandle_t ulOverlayHandle, struct VROverlayIntersectionParams_t * pParams, struct VROverlayIntersectionResults_t * pResults);
- bool (OPENVR_FNTABLE_CALLTYPE *HandleControllerOverlayInteractionAsMouse)(VROverlayHandle_t ulOverlayHandle, TrackedDeviceIndex_t unControllerDeviceIndex);
- bool (OPENVR_FNTABLE_CALLTYPE *IsHoverTargetOverlay)(VROverlayHandle_t ulOverlayHandle);
- VROverlayHandle_t (OPENVR_FNTABLE_CALLTYPE *GetGamepadFocusOverlay)();
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetGamepadFocusOverlay)(VROverlayHandle_t ulNewFocusOverlay);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayNeighbor)(EOverlayDirection eDirection, VROverlayHandle_t ulFrom, VROverlayHandle_t ulTo);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *MoveGamepadFocusToNeighbor)(EOverlayDirection eDirection, VROverlayHandle_t ulFrom);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayTexture)(VROverlayHandle_t ulOverlayHandle, struct Texture_t * pTexture);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ClearOverlayTexture)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayRaw)(VROverlayHandle_t ulOverlayHandle, void * pvBuffer, uint32_t unWidth, uint32_t unHeight, uint32_t unDepth);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayFromFile)(VROverlayHandle_t ulOverlayHandle, char * pchFilePath);
- 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);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ReleaseNativeOverlayHandle)(VROverlayHandle_t ulOverlayHandle, void * pNativeTextureHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayTextureSize)(VROverlayHandle_t ulOverlayHandle, uint32_t * pWidth, uint32_t * pHeight);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *CreateDashboardOverlay)(char * pchOverlayKey, char * pchOverlayFriendlyName, VROverlayHandle_t * pMainHandle, VROverlayHandle_t * pThumbnailHandle);
- bool (OPENVR_FNTABLE_CALLTYPE *IsDashboardVisible)();
- bool (OPENVR_FNTABLE_CALLTYPE *IsActiveDashboardOverlay)(VROverlayHandle_t ulOverlayHandle);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetDashboardOverlaySceneProcess)(VROverlayHandle_t ulOverlayHandle, uint32_t unProcessId);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetDashboardOverlaySceneProcess)(VROverlayHandle_t ulOverlayHandle, uint32_t * punProcessId);
- void (OPENVR_FNTABLE_CALLTYPE *ShowDashboard)(char * pchOverlayToShow);
- TrackedDeviceIndex_t (OPENVR_FNTABLE_CALLTYPE *GetPrimaryDashboardDevice)();
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowKeyboard)(EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, char * pchDescription, uint32_t unCharMax, char * pchExistingText, bool bUseMinimalMode, uint64_t uUserValue);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *ShowKeyboardForOverlay)(VROverlayHandle_t ulOverlayHandle, EGamepadTextInputMode eInputMode, EGamepadTextInputLineMode eLineInputMode, char * pchDescription, uint32_t unCharMax, char * pchExistingText, bool bUseMinimalMode, uint64_t uUserValue);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetKeyboardText)(char * pchText, uint32_t cchText);
- void (OPENVR_FNTABLE_CALLTYPE *HideKeyboard)();
- void (OPENVR_FNTABLE_CALLTYPE *SetKeyboardTransformAbsolute)(ETrackingUniverseOrigin eTrackingOrigin, struct HmdMatrix34_t * pmatTrackingOriginToKeyboardTransform);
- void (OPENVR_FNTABLE_CALLTYPE *SetKeyboardPositionForOverlay)(VROverlayHandle_t ulOverlayHandle, struct HmdRect2_t avoidRect);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *SetOverlayIntersectionMask)(VROverlayHandle_t ulOverlayHandle, struct VROverlayIntersectionMaskPrimitive_t * pMaskPrimitives, uint32_t unNumMaskPrimitives, uint32_t unPrimitiveSize);
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE *GetOverlayFlags)(VROverlayHandle_t ulOverlayHandle, uint32_t * pFlags);
- VRMessageOverlayResponse (OPENVR_FNTABLE_CALLTYPE *ShowMessageOverlay)(char * pchText, char * pchCaption, char * pchButton0Text, char * pchButton1Text, char * pchButton2Text, char * pchButton3Text);
- void (OPENVR_FNTABLE_CALLTYPE *CloseMessageOverlay)();
-};
-
-struct VR_IVRRenderModels_FnTable
-{
- EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadRenderModel_Async)(char * pchRenderModelName, struct RenderModel_t ** ppRenderModel);
- void (OPENVR_FNTABLE_CALLTYPE *FreeRenderModel)(struct RenderModel_t * pRenderModel);
- EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadTexture_Async)(TextureID_t textureId, struct RenderModel_TextureMap_t ** ppTexture);
- void (OPENVR_FNTABLE_CALLTYPE *FreeTexture)(struct RenderModel_TextureMap_t * pTexture);
- EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadTextureD3D11_Async)(TextureID_t textureId, void * pD3D11Device, void ** ppD3D11Texture2D);
- EVRRenderModelError (OPENVR_FNTABLE_CALLTYPE *LoadIntoTextureD3D11_Async)(TextureID_t textureId, void * pDstTexture);
- void (OPENVR_FNTABLE_CALLTYPE *FreeTextureD3D11)(void * pD3D11Texture2D);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelName)(uint32_t unRenderModelIndex, char * pchRenderModelName, uint32_t unRenderModelNameLen);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelCount)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentCount)(char * pchRenderModelName);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentName)(char * pchRenderModelName, uint32_t unComponentIndex, char * pchComponentName, uint32_t unComponentNameLen);
- uint64_t (OPENVR_FNTABLE_CALLTYPE *GetComponentButtonMask)(char * pchRenderModelName, char * pchComponentName);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetComponentRenderModelName)(char * pchRenderModelName, char * pchComponentName, char * pchComponentRenderModelName, uint32_t unComponentRenderModelNameLen);
- bool (OPENVR_FNTABLE_CALLTYPE *GetComponentState)(char * pchRenderModelName, char * pchComponentName, VRControllerState_t * pControllerState, struct RenderModel_ControllerMode_State_t * pState, struct RenderModel_ComponentState_t * pComponentState);
- bool (OPENVR_FNTABLE_CALLTYPE *RenderModelHasComponent)(char * pchRenderModelName, char * pchComponentName);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelThumbnailURL)(char * pchRenderModelName, char * pchThumbnailURL, uint32_t unThumbnailURLLen, EVRRenderModelError * peError);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetRenderModelOriginalPath)(char * pchRenderModelName, char * pchOriginalPath, uint32_t unOriginalPathLen, EVRRenderModelError * peError);
- char * (OPENVR_FNTABLE_CALLTYPE *GetRenderModelErrorNameFromEnum)(EVRRenderModelError error);
-};
-
-struct VR_IVRNotifications_FnTable
-{
- EVRNotificationError (OPENVR_FNTABLE_CALLTYPE *CreateNotification)(VROverlayHandle_t ulOverlayHandle, uint64_t ulUserValue, EVRNotificationType type, char * pchText, EVRNotificationStyle style, struct NotificationBitmap_t * pImage, VRNotificationId * pNotificationId);
- EVRNotificationError (OPENVR_FNTABLE_CALLTYPE *RemoveNotification)(VRNotificationId notificationId);
-};
-
-struct VR_IVRSettings_FnTable
-{
- char * (OPENVR_FNTABLE_CALLTYPE *GetSettingsErrorNameFromEnum)(EVRSettingsError eError);
- bool (OPENVR_FNTABLE_CALLTYPE *Sync)(bool bForce, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *SetBool)(char * pchSection, char * pchSettingsKey, bool bValue, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *SetInt32)(char * pchSection, char * pchSettingsKey, int32_t nValue, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *SetFloat)(char * pchSection, char * pchSettingsKey, float flValue, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *SetString)(char * pchSection, char * pchSettingsKey, char * pchValue, EVRSettingsError * peError);
- bool (OPENVR_FNTABLE_CALLTYPE *GetBool)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError);
- int32_t (OPENVR_FNTABLE_CALLTYPE *GetInt32)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError);
- float (OPENVR_FNTABLE_CALLTYPE *GetFloat)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *GetString)(char * pchSection, char * pchSettingsKey, char * pchValue, uint32_t unValueLen, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *RemoveSection)(char * pchSection, EVRSettingsError * peError);
- void (OPENVR_FNTABLE_CALLTYPE *RemoveKeyInSection)(char * pchSection, char * pchSettingsKey, EVRSettingsError * peError);
-};
-
-struct VR_IVRScreenshots_FnTable
-{
- EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *RequestScreenshot)(ScreenshotHandle_t * pOutScreenshotHandle, EVRScreenshotType type, char * pchPreviewFilename, char * pchVRFilename);
- EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *HookScreenshot)(EVRScreenshotType * pSupportedTypes, int numTypes);
- EVRScreenshotType (OPENVR_FNTABLE_CALLTYPE *GetScreenshotPropertyType)(ScreenshotHandle_t screenshotHandle, EVRScreenshotError * pError);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetScreenshotPropertyFilename)(ScreenshotHandle_t screenshotHandle, EVRScreenshotPropertyFilenames filenameType, char * pchFilename, uint32_t cchFilename, EVRScreenshotError * pError);
- EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *UpdateScreenshotProgress)(ScreenshotHandle_t screenshotHandle, float flProgress);
- EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *TakeStereoScreenshot)(ScreenshotHandle_t * pOutScreenshotHandle, char * pchPreviewFilename, char * pchVRFilename);
- EVRScreenshotError (OPENVR_FNTABLE_CALLTYPE *SubmitScreenshot)(ScreenshotHandle_t screenshotHandle, EVRScreenshotType type, char * pchSourcePreviewFilename, char * pchSourceVRFilename);
-};
-
-struct VR_IVRResources_FnTable
-{
- uint32_t (OPENVR_FNTABLE_CALLTYPE *LoadSharedResource)(char * pchResourceName, char * pchBuffer, uint32_t unBufferLen);
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetResourceFullPath)(char * pchResourceName, char * pchResourceTypeDirectory, char * pchPathBuffer, uint32_t unBufferLen);
-};
-
-struct VR_IVRDriverManager_FnTable
-{
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetDriverCount)();
- uint32_t (OPENVR_FNTABLE_CALLTYPE *GetDriverName)(DriverId_t nDriver, char * pchValue, uint32_t unBufferSize);
-};
-
-
-#if 0
-// Global entry points
-S_API intptr_t VR_InitInternal( EVRInitError *peError, EVRApplicationType eType );
-S_API void VR_ShutdownInternal();
-S_API bool VR_IsHmdPresent();
-S_API intptr_t VR_GetGenericInterface( const char *pchInterfaceVersion, EVRInitError *peError );
-S_API bool VR_IsRuntimeInstalled();
-S_API const char * VR_GetVRInitErrorAsSymbol( EVRInitError error );
-S_API const char * VR_GetVRInitErrorAsEnglishDescription( EVRInitError error );
-#endif
-
-#endif // __OPENVR_API_FLAT_H__
-
-
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_driver.h b/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_driver.h
deleted file mode 100644
index 7ab997e..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Headers/openvr_driver.h
+++ /dev/null
@@ -1,2695 +0,0 @@
-#pragma once
-
-// openvr_driver.h
-//========= Copyright Valve Corporation ============//
-// Dynamically generated file. Do not modify this file directly.
-
-#ifndef _OPENVR_DRIVER_API
-#define _OPENVR_DRIVER_API
-
-#include <stdint.h>
-
-
-
-// vrtypes.h
-#ifndef _INCLUDE_VRTYPES_H
-#define _INCLUDE_VRTYPES_H
-
-// Forward declarations to avoid requiring vulkan.h
-struct VkDevice_T;
-struct VkPhysicalDevice_T;
-struct VkInstance_T;
-struct VkQueue_T;
-
-// Forward declarations to avoid requiring d3d12.h
-struct ID3D12Resource;
-struct ID3D12CommandQueue;
-
-namespace vr
-{
-#pragma pack( push, 8 )
-
-typedef void* glSharedTextureHandle_t;
-typedef int32_t glInt_t;
-typedef uint32_t glUInt_t;
-
-// right-handed system
-// +y is up
-// +x is to the right
-// -z is going away from you
-// Distance unit is meters
-struct HmdMatrix34_t
-{
- float m[3][4];
-};
-
-struct HmdMatrix44_t
-{
- float m[4][4];
-};
-
-struct HmdVector3_t
-{
- float v[3];
-};
-
-struct HmdVector4_t
-{
- float v[4];
-};
-
-struct HmdVector3d_t
-{
- double v[3];
-};
-
-struct HmdVector2_t
-{
- float v[2];
-};
-
-struct HmdQuaternion_t
-{
- double w, x, y, z;
-};
-
-struct HmdColor_t
-{
- float r, g, b, a;
-};
-
-struct HmdQuad_t
-{
- HmdVector3_t vCorners[ 4 ];
-};
-
-struct HmdRect2_t
-{
- HmdVector2_t vTopLeft;
- HmdVector2_t vBottomRight;
-};
-
-/** Used to return the post-distortion UVs for each color channel.
-* UVs range from 0 to 1 with 0,0 in the upper left corner of the
-* source render target. The 0,0 to 1,1 range covers a single eye. */
-struct DistortionCoordinates_t
-{
- float rfRed[2];
- float rfGreen[2];
- float rfBlue[2];
-};
-
-enum EVREye
-{
- Eye_Left = 0,
- Eye_Right = 1
-};
-
-enum ETextureType
-{
- TextureType_DirectX = 0, // Handle is an ID3D11Texture
- TextureType_OpenGL = 1, // Handle is an OpenGL texture name or an OpenGL render buffer name, depending on submit flags
- TextureType_Vulkan = 2, // Handle is a pointer to a VRVulkanTextureData_t structure
- TextureType_IOSurface = 3, // Handle is a macOS cross-process-sharable IOSurfaceRef
- TextureType_DirectX12 = 4, // Handle is a pointer to a D3D12TextureData_t structure
-};
-
-enum EColorSpace
-{
- ColorSpace_Auto = 0, // Assumes 'gamma' for 8-bit per component formats, otherwise 'linear'. This mirrors the DXGI formats which have _SRGB variants.
- ColorSpace_Gamma = 1, // Texture data can be displayed directly on the display without any conversion (a.k.a. display native format).
- ColorSpace_Linear = 2, // Same as gamma but has been converted to a linear representation using DXGI's sRGB conversion algorithm.
-};
-
-struct Texture_t
-{
- void* handle; // See ETextureType definition above
- ETextureType eType;
- EColorSpace eColorSpace;
-};
-
-// Handle to a shared texture (HANDLE on Windows obtained using OpenSharedResource).
-typedef uint64_t SharedTextureHandle_t;
-#define INVALID_SHARED_TEXTURE_HANDLE ((vr::SharedTextureHandle_t)0)
-
-enum ETrackingResult
-{
- TrackingResult_Uninitialized = 1,
-
- TrackingResult_Calibrating_InProgress = 100,
- TrackingResult_Calibrating_OutOfRange = 101,
-
- TrackingResult_Running_OK = 200,
- TrackingResult_Running_OutOfRange = 201,
-};
-
-typedef uint32_t DriverId_t;
-static const uint32_t k_nDriverNone = 0xFFFFFFFF;
-
-static const uint32_t k_unMaxDriverDebugResponseSize = 32768;
-
-/** Used to pass device IDs to API calls */
-typedef uint32_t TrackedDeviceIndex_t;
-static const uint32_t k_unTrackedDeviceIndex_Hmd = 0;
-static const uint32_t k_unMaxTrackedDeviceCount = 16;
-static const uint32_t k_unTrackedDeviceIndexOther = 0xFFFFFFFE;
-static const uint32_t k_unTrackedDeviceIndexInvalid = 0xFFFFFFFF;
-
-/** Describes what kind of object is being tracked at a given ID */
-enum ETrackedDeviceClass
-{
- TrackedDeviceClass_Invalid = 0, // the ID was not valid.
- TrackedDeviceClass_HMD = 1, // Head-Mounted Displays
- TrackedDeviceClass_Controller = 2, // Tracked controllers
- TrackedDeviceClass_GenericTracker = 3, // Generic trackers, similar to controllers
- TrackedDeviceClass_TrackingReference = 4, // Camera and base stations that serve as tracking reference points
- TrackedDeviceClass_DisplayRedirect = 5, // Accessories that aren't necessarily tracked themselves, but may redirect video output from other tracked devices
-};
-
-
-/** Describes what specific role associated with a tracked device */
-enum ETrackedControllerRole
-{
- TrackedControllerRole_Invalid = 0, // Invalid value for controller type
- TrackedControllerRole_LeftHand = 1, // Tracked device associated with the left hand
- TrackedControllerRole_RightHand = 2, // Tracked device associated with the right hand
-};
-
-
-/** describes a single pose for a tracked object */
-struct TrackedDevicePose_t
-{
- HmdMatrix34_t mDeviceToAbsoluteTracking;
- HmdVector3_t vVelocity; // velocity in tracker space in m/s
- HmdVector3_t vAngularVelocity; // angular velocity in radians/s (?)
- ETrackingResult eTrackingResult;
- bool bPoseIsValid;
-
- // This indicates that there is a device connected for this spot in the pose array.
- // It could go from true to false if the user unplugs the device.
- bool bDeviceIsConnected;
-};
-
-/** Identifies which style of tracking origin the application wants to use
-* for the poses it is requesting */
-enum ETrackingUniverseOrigin
-{
- TrackingUniverseSeated = 0, // Poses are provided relative to the seated zero pose
- TrackingUniverseStanding = 1, // Poses are provided relative to the safe bounds configured by the user
- TrackingUniverseRawAndUncalibrated = 2, // Poses are provided in the coordinate system defined by the driver. It has Y up and is unified for devices of the same driver. You usually don't want this one.
-};
-
-// Refers to a single container of properties
-typedef uint64_t PropertyContainerHandle_t;
-typedef uint32_t PropertyTypeTag_t;
-
-static const PropertyContainerHandle_t k_ulInvalidPropertyContainer = 0;
-static const PropertyTypeTag_t k_unInvalidPropertyTag = 0;
-
-// Use these tags to set/get common types as struct properties
-static const PropertyTypeTag_t k_unFloatPropertyTag = 1;
-static const PropertyTypeTag_t k_unInt32PropertyTag = 2;
-static const PropertyTypeTag_t k_unUint64PropertyTag = 3;
-static const PropertyTypeTag_t k_unBoolPropertyTag = 4;
-static const PropertyTypeTag_t k_unStringPropertyTag = 5;
-
-static const PropertyTypeTag_t k_unHmdMatrix34PropertyTag = 20;
-static const PropertyTypeTag_t k_unHmdMatrix44PropertyTag = 21;
-static const PropertyTypeTag_t k_unHmdVector3PropertyTag = 22;
-static const PropertyTypeTag_t k_unHmdVector4PropertyTag = 23;
-
-static const PropertyTypeTag_t k_unHiddenAreaPropertyTag = 30;
-
-static const PropertyTypeTag_t k_unOpenVRInternalReserved_Start = 1000;
-static const PropertyTypeTag_t k_unOpenVRInternalReserved_End = 10000;
-
-
-/** Each entry in this enum represents a property that can be retrieved about a
-* tracked device. Many fields are only valid for one ETrackedDeviceClass. */
-enum ETrackedDeviceProperty
-{
- Prop_Invalid = 0,
-
- // general properties that apply to all device classes
- Prop_TrackingSystemName_String = 1000,
- Prop_ModelNumber_String = 1001,
- Prop_SerialNumber_String = 1002,
- Prop_RenderModelName_String = 1003,
- Prop_WillDriftInYaw_Bool = 1004,
- Prop_ManufacturerName_String = 1005,
- Prop_TrackingFirmwareVersion_String = 1006,
- Prop_HardwareRevision_String = 1007,
- Prop_AllWirelessDongleDescriptions_String = 1008,
- Prop_ConnectedWirelessDongle_String = 1009,
- Prop_DeviceIsWireless_Bool = 1010,
- Prop_DeviceIsCharging_Bool = 1011,
- Prop_DeviceBatteryPercentage_Float = 1012, // 0 is empty, 1 is full
- Prop_StatusDisplayTransform_Matrix34 = 1013,
- Prop_Firmware_UpdateAvailable_Bool = 1014,
- Prop_Firmware_ManualUpdate_Bool = 1015,
- Prop_Firmware_ManualUpdateURL_String = 1016,
- Prop_HardwareRevision_Uint64 = 1017,
- Prop_FirmwareVersion_Uint64 = 1018,
- Prop_FPGAVersion_Uint64 = 1019,
- Prop_VRCVersion_Uint64 = 1020,
- Prop_RadioVersion_Uint64 = 1021,
- Prop_DongleVersion_Uint64 = 1022,
- Prop_BlockServerShutdown_Bool = 1023,
- Prop_CanUnifyCoordinateSystemWithHmd_Bool = 1024,
- Prop_ContainsProximitySensor_Bool = 1025,
- Prop_DeviceProvidesBatteryStatus_Bool = 1026,
- Prop_DeviceCanPowerOff_Bool = 1027,
- Prop_Firmware_ProgrammingTarget_String = 1028,
- Prop_DeviceClass_Int32 = 1029,
- Prop_HasCamera_Bool = 1030,
- Prop_DriverVersion_String = 1031,
- Prop_Firmware_ForceUpdateRequired_Bool = 1032,
- Prop_ViveSystemButtonFixRequired_Bool = 1033,
- Prop_ParentDriver_Uint64 = 1034,
- Prop_ResourceRoot_String = 1035,
-
- // Properties that are unique to TrackedDeviceClass_HMD
- Prop_ReportsTimeSinceVSync_Bool = 2000,
- Prop_SecondsFromVsyncToPhotons_Float = 2001,
- Prop_DisplayFrequency_Float = 2002,
- Prop_UserIpdMeters_Float = 2003,
- Prop_CurrentUniverseId_Uint64 = 2004,
- Prop_PreviousUniverseId_Uint64 = 2005,
- Prop_DisplayFirmwareVersion_Uint64 = 2006,
- Prop_IsOnDesktop_Bool = 2007,
- Prop_DisplayMCType_Int32 = 2008,
- Prop_DisplayMCOffset_Float = 2009,
- Prop_DisplayMCScale_Float = 2010,
- Prop_EdidVendorID_Int32 = 2011,
- Prop_DisplayMCImageLeft_String = 2012,
- Prop_DisplayMCImageRight_String = 2013,
- Prop_DisplayGCBlackClamp_Float = 2014,
- Prop_EdidProductID_Int32 = 2015,
- Prop_CameraToHeadTransform_Matrix34 = 2016,
- Prop_DisplayGCType_Int32 = 2017,
- Prop_DisplayGCOffset_Float = 2018,
- Prop_DisplayGCScale_Float = 2019,
- Prop_DisplayGCPrescale_Float = 2020,
- Prop_DisplayGCImage_String = 2021,
- Prop_LensCenterLeftU_Float = 2022,
- Prop_LensCenterLeftV_Float = 2023,
- Prop_LensCenterRightU_Float = 2024,
- Prop_LensCenterRightV_Float = 2025,
- Prop_UserHeadToEyeDepthMeters_Float = 2026,
- Prop_CameraFirmwareVersion_Uint64 = 2027,
- Prop_CameraFirmwareDescription_String = 2028,
- Prop_DisplayFPGAVersion_Uint64 = 2029,
- Prop_DisplayBootloaderVersion_Uint64 = 2030,
- Prop_DisplayHardwareVersion_Uint64 = 2031,
- Prop_AudioFirmwareVersion_Uint64 = 2032,
- Prop_CameraCompatibilityMode_Int32 = 2033,
- Prop_ScreenshotHorizontalFieldOfViewDegrees_Float = 2034,
- Prop_ScreenshotVerticalFieldOfViewDegrees_Float = 2035,
- Prop_DisplaySuppressed_Bool = 2036,
- Prop_DisplayAllowNightMode_Bool = 2037,
- Prop_DisplayMCImageWidth_Int32 = 2038,
- Prop_DisplayMCImageHeight_Int32 = 2039,
- Prop_DisplayMCImageNumChannels_Int32 = 2040,
- Prop_DisplayMCImageData_Binary = 2041,
- Prop_SecondsFromPhotonsToVblank_Float = 2042,
- Prop_DriverDirectModeSendsVsyncEvents_Bool = 2043,
- Prop_DisplayDebugMode_Bool = 2044,
- Prop_GraphicsAdapterLuid_Uint64 = 2045,
- Prop_DriverProvidedChaperonePath_String = 2048,
-
- // Properties that are unique to TrackedDeviceClass_Controller
- Prop_AttachedDeviceId_String = 3000,
- Prop_SupportedButtons_Uint64 = 3001,
- Prop_Axis0Type_Int32 = 3002, // Return value is of type EVRControllerAxisType
- Prop_Axis1Type_Int32 = 3003, // Return value is of type EVRControllerAxisType
- Prop_Axis2Type_Int32 = 3004, // Return value is of type EVRControllerAxisType
- Prop_Axis3Type_Int32 = 3005, // Return value is of type EVRControllerAxisType
- Prop_Axis4Type_Int32 = 3006, // Return value is of type EVRControllerAxisType
- Prop_ControllerRoleHint_Int32 = 3007, // Return value is of type ETrackedControllerRole
-
- // Properties that are unique to TrackedDeviceClass_TrackingReference
- Prop_FieldOfViewLeftDegrees_Float = 4000,
- Prop_FieldOfViewRightDegrees_Float = 4001,
- Prop_FieldOfViewTopDegrees_Float = 4002,
- Prop_FieldOfViewBottomDegrees_Float = 4003,
- Prop_TrackingRangeMinimumMeters_Float = 4004,
- Prop_TrackingRangeMaximumMeters_Float = 4005,
- Prop_ModeLabel_String = 4006,
-
- // Properties that are used for user interface like icons names
- Prop_IconPathName_String = 5000, // DEPRECATED. Value not referenced. Now expected to be part of icon path properties.
- Prop_NamedIconPathDeviceOff_String = 5001, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceSearching_String = 5002, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceSearchingAlert_String = 5003, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceReady_String = 5004, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceReadyAlert_String = 5005, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceNotReady_String = 5006, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceStandby_String = 5007, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
- Prop_NamedIconPathDeviceAlertLow_String = 5008, // {driver}/icons/icon_filename - PNG for static icon, or GIF for animation, 50x32 for headsets and 32x32 for others
-
- // Properties that are used by helpers, but are opaque to applications
- Prop_DisplayHiddenArea_Binary_Start = 5100,
- Prop_DisplayHiddenArea_Binary_End = 5150,
-
- // Properties that are unique to drivers
- Prop_UserConfigPath_String = 6000,
- Prop_InstallPath_String = 6001,
- Prop_HasDisplayComponent_Bool = 6002,
- Prop_HasControllerComponent_Bool = 6003,
- Prop_HasCameraComponent_Bool = 6004,
- Prop_HasDriverDirectModeComponent_Bool = 6005,
- Prop_HasVirtualDisplayComponent_Bool = 6006,
-
- // Vendors are free to expose private debug data in this reserved region
- Prop_VendorSpecific_Reserved_Start = 10000,
- Prop_VendorSpecific_Reserved_End = 10999,
-};
-
-/** No string property will ever be longer than this length */
-static const uint32_t k_unMaxPropertyStringSize = 32 * 1024;
-
-/** Used to return errors that occur when reading properties. */
-enum ETrackedPropertyError
-{
- TrackedProp_Success = 0,
- TrackedProp_WrongDataType = 1,
- TrackedProp_WrongDeviceClass = 2,
- TrackedProp_BufferTooSmall = 3,
- TrackedProp_UnknownProperty = 4, // Driver has not set the property (and may not ever).
- TrackedProp_InvalidDevice = 5,
- TrackedProp_CouldNotContactServer = 6,
- TrackedProp_ValueNotProvidedByDevice = 7,
- TrackedProp_StringExceedsMaximumLength = 8,
- TrackedProp_NotYetAvailable = 9, // The property value isn't known yet, but is expected soon. Call again later.
- TrackedProp_PermissionDenied = 10,
- TrackedProp_InvalidOperation = 11,
-};
-
-/** Allows the application to control what part of the provided texture will be used in the
-* frame buffer. */
-struct VRTextureBounds_t
-{
- float uMin, vMin;
- float uMax, vMax;
-};
-
-/** Allows specifying pose used to render provided scene texture (if different from value returned by WaitGetPoses). */
-struct VRTextureWithPose_t : public Texture_t
-{
- HmdMatrix34_t mDeviceToAbsoluteTracking; // Actual pose used to render scene textures.
-};
-
-/** Allows the application to control how scene textures are used by the compositor when calling Submit. */
-enum EVRSubmitFlags
-{
- // Simple render path. App submits rendered left and right eye images with no lens distortion correction applied.
- Submit_Default = 0x00,
-
- // App submits final left and right eye images with lens distortion already applied (lens distortion makes the images appear
- // barrel distorted with chromatic aberration correction applied). The app would have used the data returned by
- // vr::IVRSystem::ComputeDistortion() to apply the correct distortion to the rendered images before calling Submit().
- Submit_LensDistortionAlreadyApplied = 0x01,
-
- // If the texture pointer passed in is actually a renderbuffer (e.g. for MSAA in OpenGL) then set this flag.
- Submit_GlRenderBuffer = 0x02,
-
- // Do not use
- Submit_Reserved = 0x04,
-
- // Set to indicate that pTexture is a pointer to a VRTextureWithPose_t.
- Submit_TextureWithPose = 0x08,
-};
-
-/** Data required for passing Vulkan textures to IVRCompositor::Submit.
-* Be sure to call OpenVR_Shutdown before destroying these resources. */
-struct VRVulkanTextureData_t
-{
- uint64_t m_nImage; // VkImage
- VkDevice_T *m_pDevice;
- VkPhysicalDevice_T *m_pPhysicalDevice;
- VkInstance_T *m_pInstance;
- VkQueue_T *m_pQueue;
- uint32_t m_nQueueFamilyIndex;
- uint32_t m_nWidth, m_nHeight, m_nFormat, m_nSampleCount;
-};
-
-/** Data required for passing D3D12 textures to IVRCompositor::Submit.
-* Be sure to call OpenVR_Shutdown before destroying these resources. */
-struct D3D12TextureData_t
-{
- ID3D12Resource *m_pResource;
- ID3D12CommandQueue *m_pCommandQueue;
- uint32_t m_nNodeMask;
-};
-
-/** Status of the overall system or tracked objects */
-enum EVRState
-{
- VRState_Undefined = -1,
- VRState_Off = 0,
- VRState_Searching = 1,
- VRState_Searching_Alert = 2,
- VRState_Ready = 3,
- VRState_Ready_Alert = 4,
- VRState_NotReady = 5,
- VRState_Standby = 6,
- VRState_Ready_Alert_Low = 7,
-};
-
-/** The types of events that could be posted (and what the parameters mean for each event type) */
-enum EVREventType
-{
- VREvent_None = 0,
-
- VREvent_TrackedDeviceActivated = 100,
- VREvent_TrackedDeviceDeactivated = 101,
- VREvent_TrackedDeviceUpdated = 102,
- VREvent_TrackedDeviceUserInteractionStarted = 103,
- VREvent_TrackedDeviceUserInteractionEnded = 104,
- VREvent_IpdChanged = 105,
- VREvent_EnterStandbyMode = 106,
- VREvent_LeaveStandbyMode = 107,
- VREvent_TrackedDeviceRoleChanged = 108,
- VREvent_WatchdogWakeUpRequested = 109,
- VREvent_LensDistortionChanged = 110,
- VREvent_PropertyChanged = 111,
- VREvent_WirelessDisconnect = 112,
- VREvent_WirelessReconnect = 113,
-
- VREvent_ButtonPress = 200, // data is controller
- VREvent_ButtonUnpress = 201, // data is controller
- VREvent_ButtonTouch = 202, // data is controller
- VREvent_ButtonUntouch = 203, // data is controller
-
- VREvent_MouseMove = 300, // data is mouse
- VREvent_MouseButtonDown = 301, // data is mouse
- VREvent_MouseButtonUp = 302, // data is mouse
- VREvent_FocusEnter = 303, // data is overlay
- VREvent_FocusLeave = 304, // data is overlay
- VREvent_Scroll = 305, // data is mouse
- VREvent_TouchPadMove = 306, // data is mouse
- VREvent_OverlayFocusChanged = 307, // data is overlay, global event
-
- VREvent_InputFocusCaptured = 400, // data is process DEPRECATED
- VREvent_InputFocusReleased = 401, // data is process DEPRECATED
- VREvent_SceneFocusLost = 402, // data is process
- VREvent_SceneFocusGained = 403, // data is process
- VREvent_SceneApplicationChanged = 404, // data is process - The App actually drawing the scene changed (usually to or from the compositor)
- VREvent_SceneFocusChanged = 405, // data is process - New app got access to draw the scene
- VREvent_InputFocusChanged = 406, // data is process
- VREvent_SceneApplicationSecondaryRenderingStarted = 407, // data is process
-
- VREvent_HideRenderModels = 410, // Sent to the scene application to request hiding render models temporarily
- VREvent_ShowRenderModels = 411, // Sent to the scene application to request restoring render model visibility
-
- VREvent_OverlayShown = 500,
- VREvent_OverlayHidden = 501,
- VREvent_DashboardActivated = 502,
- VREvent_DashboardDeactivated = 503,
- VREvent_DashboardThumbSelected = 504, // Sent to the overlay manager - data is overlay
- VREvent_DashboardRequested = 505, // Sent to the overlay manager - data is overlay
- VREvent_ResetDashboard = 506, // Send to the overlay manager
- VREvent_RenderToast = 507, // Send to the dashboard to render a toast - data is the notification ID
- VREvent_ImageLoaded = 508, // Sent to overlays when a SetOverlayRaw or SetOverlayFromFile call finishes loading
- VREvent_ShowKeyboard = 509, // Sent to keyboard renderer in the dashboard to invoke it
- VREvent_HideKeyboard = 510, // Sent to keyboard renderer in the dashboard to hide it
- VREvent_OverlayGamepadFocusGained = 511, // Sent to an overlay when IVROverlay::SetFocusOverlay is called on it
- VREvent_OverlayGamepadFocusLost = 512, // Send to an overlay when it previously had focus and IVROverlay::SetFocusOverlay is called on something else
- VREvent_OverlaySharedTextureChanged = 513,
- VREvent_DashboardGuideButtonDown = 514,
- VREvent_DashboardGuideButtonUp = 515,
- VREvent_ScreenshotTriggered = 516, // Screenshot button combo was pressed, Dashboard should request a screenshot
- VREvent_ImageFailed = 517, // Sent to overlays when a SetOverlayRaw or SetOverlayfromFail fails to load
- VREvent_DashboardOverlayCreated = 518,
-
- // Screenshot API
- VREvent_RequestScreenshot = 520, // Sent by vrclient application to compositor to take a screenshot
- VREvent_ScreenshotTaken = 521, // Sent by compositor to the application that the screenshot has been taken
- VREvent_ScreenshotFailed = 522, // Sent by compositor to the application that the screenshot failed to be taken
- VREvent_SubmitScreenshotToDashboard = 523, // Sent by compositor to the dashboard that a completed screenshot was submitted
- VREvent_ScreenshotProgressToDashboard = 524, // Sent by compositor to the dashboard that a completed screenshot was submitted
-
- VREvent_PrimaryDashboardDeviceChanged = 525,
-
- VREvent_Notification_Shown = 600,
- VREvent_Notification_Hidden = 601,
- VREvent_Notification_BeginInteraction = 602,
- VREvent_Notification_Destroyed = 603,
-
- VREvent_Quit = 700, // data is process
- VREvent_ProcessQuit = 701, // data is process
- VREvent_QuitAborted_UserPrompt = 702, // data is process
- VREvent_QuitAcknowledged = 703, // data is process
- VREvent_DriverRequestedQuit = 704, // The driver has requested that SteamVR shut down
-
- VREvent_ChaperoneDataHasChanged = 800,
- VREvent_ChaperoneUniverseHasChanged = 801,
- VREvent_ChaperoneTempDataHasChanged = 802,
- VREvent_ChaperoneSettingsHaveChanged = 803,
- VREvent_SeatedZeroPoseReset = 804,
-
- VREvent_AudioSettingsHaveChanged = 820,
-
- VREvent_BackgroundSettingHasChanged = 850,
- VREvent_CameraSettingsHaveChanged = 851,
- VREvent_ReprojectionSettingHasChanged = 852,
- VREvent_ModelSkinSettingsHaveChanged = 853,
- VREvent_EnvironmentSettingsHaveChanged = 854,
- VREvent_PowerSettingsHaveChanged = 855,
- VREvent_EnableHomeAppSettingsHaveChanged = 856,
-
- VREvent_StatusUpdate = 900,
-
- VREvent_MCImageUpdated = 1000,
-
- VREvent_FirmwareUpdateStarted = 1100,
- VREvent_FirmwareUpdateFinished = 1101,
-
- VREvent_KeyboardClosed = 1200,
- VREvent_KeyboardCharInput = 1201,
- VREvent_KeyboardDone = 1202, // Sent when DONE button clicked on keyboard
-
- VREvent_ApplicationTransitionStarted = 1300,
- VREvent_ApplicationTransitionAborted = 1301,
- VREvent_ApplicationTransitionNewAppStarted = 1302,
- VREvent_ApplicationListUpdated = 1303,
- VREvent_ApplicationMimeTypeLoad = 1304,
- VREvent_ApplicationTransitionNewAppLaunchComplete = 1305,
- VREvent_ProcessConnected = 1306,
- VREvent_ProcessDisconnected = 1307,
-
- VREvent_Compositor_MirrorWindowShown = 1400,
- VREvent_Compositor_MirrorWindowHidden = 1401,
- VREvent_Compositor_ChaperoneBoundsShown = 1410,
- VREvent_Compositor_ChaperoneBoundsHidden = 1411,
-
- VREvent_TrackedCamera_StartVideoStream = 1500,
- VREvent_TrackedCamera_StopVideoStream = 1501,
- VREvent_TrackedCamera_PauseVideoStream = 1502,
- VREvent_TrackedCamera_ResumeVideoStream = 1503,
- VREvent_TrackedCamera_EditingSurface = 1550,
-
- VREvent_PerformanceTest_EnableCapture = 1600,
- VREvent_PerformanceTest_DisableCapture = 1601,
- VREvent_PerformanceTest_FidelityLevel = 1602,
-
- VREvent_MessageOverlay_Closed = 1650,
- VREvent_MessageOverlayCloseRequested = 1651,
-
- // Vendors are free to expose private events in this reserved region
- VREvent_VendorSpecific_Reserved_Start = 10000,
- VREvent_VendorSpecific_Reserved_End = 19999,
-};
-
-
-/** Level of Hmd activity */
-// UserInteraction_Timeout means the device is in the process of timing out.
-// InUse = ( k_EDeviceActivityLevel_UserInteraction || k_EDeviceActivityLevel_UserInteraction_Timeout )
-// VREvent_TrackedDeviceUserInteractionStarted fires when the devices transitions from Standby -> UserInteraction or Idle -> UserInteraction.
-// VREvent_TrackedDeviceUserInteractionEnded fires when the devices transitions from UserInteraction_Timeout -> Idle
-enum EDeviceActivityLevel
-{
- k_EDeviceActivityLevel_Unknown = -1,
- k_EDeviceActivityLevel_Idle = 0, // No activity for the last 10 seconds
- k_EDeviceActivityLevel_UserInteraction = 1, // Activity (movement or prox sensor) is happening now
- k_EDeviceActivityLevel_UserInteraction_Timeout = 2, // No activity for the last 0.5 seconds
- k_EDeviceActivityLevel_Standby = 3, // Idle for at least 5 seconds (configurable in Settings -> Power Management)
-};
-
-
-/** VR controller button and axis IDs */
-enum EVRButtonId
-{
- k_EButton_System = 0,
- k_EButton_ApplicationMenu = 1,
- k_EButton_Grip = 2,
- k_EButton_DPad_Left = 3,
- k_EButton_DPad_Up = 4,
- k_EButton_DPad_Right = 5,
- k_EButton_DPad_Down = 6,
- k_EButton_A = 7,
-
- k_EButton_ProximitySensor = 31,
-
- k_EButton_Axis0 = 32,
- k_EButton_Axis1 = 33,
- k_EButton_Axis2 = 34,
- k_EButton_Axis3 = 35,
- k_EButton_Axis4 = 36,
-
- // aliases for well known controllers
- k_EButton_SteamVR_Touchpad = k_EButton_Axis0,
- k_EButton_SteamVR_Trigger = k_EButton_Axis1,
-
- k_EButton_Dashboard_Back = k_EButton_Grip,
-
- k_EButton_Max = 64
-};
-
-inline uint64_t ButtonMaskFromId( EVRButtonId id ) { return 1ull << id; }
-
-/** used for controller button events */
-struct VREvent_Controller_t
-{
- uint32_t button; // EVRButtonId enum
-};
-
-
-/** used for simulated mouse events in overlay space */
-enum EVRMouseButton
-{
- VRMouseButton_Left = 0x0001,
- VRMouseButton_Right = 0x0002,
- VRMouseButton_Middle = 0x0004,
-};
-
-
-/** used for simulated mouse events in overlay space */
-struct VREvent_Mouse_t
-{
- float x, y; // co-ords are in GL space, bottom left of the texture is 0,0
- uint32_t button; // EVRMouseButton enum
-};
-
-/** used for simulated mouse wheel scroll in overlay space */
-struct VREvent_Scroll_t
-{
- float xdelta, ydelta; // movement in fraction of the pad traversed since last delta, 1.0 for a full swipe
- uint32_t repeatCount;
-};
-
-/** when in mouse input mode you can receive data from the touchpad, these events are only sent if the users finger
- is on the touchpad (or just released from it)
-**/
-struct VREvent_TouchPadMove_t
-{
- // true if the users finger is detected on the touch pad
- bool bFingerDown;
-
- // How long the finger has been down in seconds
- float flSecondsFingerDown;
-
- // These values indicate the starting finger position (so you can do some basic swipe stuff)
- float fValueXFirst;
- float fValueYFirst;
-
- // This is the raw sampled coordinate without deadzoning
- float fValueXRaw;
- float fValueYRaw;
-};
-
-/** notification related events. Details will still change at this point */
-struct VREvent_Notification_t
-{
- uint64_t ulUserValue;
- uint32_t notificationId;
-};
-
-/** Used for events about processes */
-struct VREvent_Process_t
-{
- uint32_t pid;
- uint32_t oldPid;
- bool bForced;
-};
-
-
-/** Used for a few events about overlays */
-struct VREvent_Overlay_t
-{
- uint64_t overlayHandle;
-};
-
-
-/** Used for a few events about overlays */
-struct VREvent_Status_t
-{
- uint32_t statusState; // EVRState enum
-};
-
-/** Used for keyboard events **/
-struct VREvent_Keyboard_t
-{
- char cNewInput[8]; // Up to 11 bytes of new input
- uint64_t uUserValue; // Possible flags about the new input
-};
-
-struct VREvent_Ipd_t
-{
- float ipdMeters;
-};
-
-struct VREvent_Chaperone_t
-{
- uint64_t m_nPreviousUniverse;
- uint64_t m_nCurrentUniverse;
-};
-
-/** Not actually used for any events */
-struct VREvent_Reserved_t
-{
- uint64_t reserved0;
- uint64_t reserved1;
-};
-
-struct VREvent_PerformanceTest_t
-{
- uint32_t m_nFidelityLevel;
-};
-
-struct VREvent_SeatedZeroPoseReset_t
-{
- bool bResetBySystemMenu;
-};
-
-struct VREvent_Screenshot_t
-{
- uint32_t handle;
- uint32_t type;
-};
-
-struct VREvent_ScreenshotProgress_t
-{
- float progress;
-};
-
-struct VREvent_ApplicationLaunch_t
-{
- uint32_t pid;
- uint32_t unArgsHandle;
-};
-
-struct VREvent_EditingCameraSurface_t
-{
- uint64_t overlayHandle;
- uint32_t nVisualMode;
-};
-
-struct VREvent_MessageOverlay_t
-{
- uint32_t unVRMessageOverlayResponse; // vr::VRMessageOverlayResponse enum
-};
-
-struct VREvent_Property_t
-{
- PropertyContainerHandle_t container;
- ETrackedDeviceProperty prop;
-};
-
-/** NOTE!!! If you change this you MUST manually update openvr_interop.cs.py */
-typedef union
-{
- VREvent_Reserved_t reserved;
- VREvent_Controller_t controller;
- VREvent_Mouse_t mouse;
- VREvent_Scroll_t scroll;
- VREvent_Process_t process;
- VREvent_Notification_t notification;
- VREvent_Overlay_t overlay;
- VREvent_Status_t status;
- VREvent_Keyboard_t keyboard;
- VREvent_Ipd_t ipd;
- VREvent_Chaperone_t chaperone;
- VREvent_PerformanceTest_t performanceTest;
- VREvent_TouchPadMove_t touchPadMove;
- VREvent_SeatedZeroPoseReset_t seatedZeroPoseReset;
- VREvent_Screenshot_t screenshot;
- VREvent_ScreenshotProgress_t screenshotProgress;
- VREvent_ApplicationLaunch_t applicationLaunch;
- VREvent_EditingCameraSurface_t cameraSurface;
- VREvent_MessageOverlay_t messageOverlay;
- VREvent_Property_t property;
-} VREvent_Data_t;
-
-
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-/** An event posted by the server to all running applications */
-struct VREvent_t
-{
- uint32_t eventType; // EVREventType enum
- TrackedDeviceIndex_t trackedDeviceIndex;
- float eventAgeSeconds;
- // event data must be the end of the struct as its size is variable
- VREvent_Data_t data;
-};
-
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-/** The mesh to draw into the stencil (or depth) buffer to perform
-* early stencil (or depth) kills of pixels that will never appear on the HMD.
-* This mesh draws on all the pixels that will be hidden after distortion.
-*
-* If the HMD does not provide a visible area mesh pVertexData will be
-* NULL and unTriangleCount will be 0. */
-struct HiddenAreaMesh_t
-{
- const HmdVector2_t *pVertexData;
- uint32_t unTriangleCount;
-};
-
-
-enum EHiddenAreaMeshType
-{
- k_eHiddenAreaMesh_Standard = 0,
- k_eHiddenAreaMesh_Inverse = 1,
- k_eHiddenAreaMesh_LineLoop = 2,
-
- k_eHiddenAreaMesh_Max = 3,
-};
-
-
-/** Identifies what kind of axis is on the controller at index n. Read this type
-* with pVRSystem->Get( nControllerDeviceIndex, Prop_Axis0Type_Int32 + n );
-*/
-enum EVRControllerAxisType
-{
- k_eControllerAxis_None = 0,
- k_eControllerAxis_TrackPad = 1,
- k_eControllerAxis_Joystick = 2,
- k_eControllerAxis_Trigger = 3, // Analog trigger data is in the X axis
-};
-
-
-/** contains information about one axis on the controller */
-struct VRControllerAxis_t
-{
- float x; // Ranges from -1.0 to 1.0 for joysticks and track pads. Ranges from 0.0 to 1.0 for triggers were 0 is fully released.
- float y; // Ranges from -1.0 to 1.0 for joysticks and track pads. Is always 0.0 for triggers.
-};
-
-
-/** the number of axes in the controller state */
-static const uint32_t k_unControllerStateAxisCount = 5;
-
-
-#if defined(__linux__) || defined(__APPLE__)
-// This structure was originally defined mis-packed on Linux, preserved for
-// compatibility.
-#pragma pack( push, 4 )
-#endif
-
-/** Holds all the state of a controller at one moment in time. */
-struct VRControllerState001_t
-{
- // If packet num matches that on your prior call, then the controller state hasn't been changed since
- // your last call and there is no need to process it
- uint32_t unPacketNum;
-
- // bit flags for each of the buttons. Use ButtonMaskFromId to turn an ID into a mask
- uint64_t ulButtonPressed;
- uint64_t ulButtonTouched;
-
- // Axis data for the controller's analog inputs
- VRControllerAxis_t rAxis[ k_unControllerStateAxisCount ];
-};
-#if defined(__linux__) || defined(__APPLE__)
-#pragma pack( pop )
-#endif
-
-
-typedef VRControllerState001_t VRControllerState_t;
-
-
-/** determines how to provide output to the application of various event processing functions. */
-enum EVRControllerEventOutputType
-{
- ControllerEventOutput_OSEvents = 0,
- ControllerEventOutput_VREvents = 1,
-};
-
-
-
-/** Collision Bounds Style */
-enum ECollisionBoundsStyle
-{
- COLLISION_BOUNDS_STYLE_BEGINNER = 0,
- COLLISION_BOUNDS_STYLE_INTERMEDIATE,
- COLLISION_BOUNDS_STYLE_SQUARES,
- COLLISION_BOUNDS_STYLE_ADVANCED,
- COLLISION_BOUNDS_STYLE_NONE,
-
- COLLISION_BOUNDS_STYLE_COUNT
-};
-
-/** Allows the application to customize how the overlay appears in the compositor */
-struct Compositor_OverlaySettings
-{
- uint32_t size; // sizeof(Compositor_OverlaySettings)
- bool curved, antialias;
- float scale, distance, alpha;
- float uOffset, vOffset, uScale, vScale;
- float gridDivs, gridWidth, gridScale;
- HmdMatrix44_t transform;
-};
-
-/** used to refer to a single VR overlay */
-typedef uint64_t VROverlayHandle_t;
-
-static const VROverlayHandle_t k_ulOverlayHandleInvalid = 0;
-
-/** Errors that can occur around VR overlays */
-enum EVROverlayError
-{
- VROverlayError_None = 0,
-
- VROverlayError_UnknownOverlay = 10,
- VROverlayError_InvalidHandle = 11,
- VROverlayError_PermissionDenied = 12,
- VROverlayError_OverlayLimitExceeded = 13, // No more overlays could be created because the maximum number already exist
- VROverlayError_WrongVisibilityType = 14,
- VROverlayError_KeyTooLong = 15,
- VROverlayError_NameTooLong = 16,
- VROverlayError_KeyInUse = 17,
- VROverlayError_WrongTransformType = 18,
- VROverlayError_InvalidTrackedDevice = 19,
- VROverlayError_InvalidParameter = 20,
- VROverlayError_ThumbnailCantBeDestroyed = 21,
- VROverlayError_ArrayTooSmall = 22,
- VROverlayError_RequestFailed = 23,
- VROverlayError_InvalidTexture = 24,
- VROverlayError_UnableToLoadFile = 25,
- VROverlayError_KeyboardAlreadyInUse = 26,
- VROverlayError_NoNeighbor = 27,
- VROverlayError_TooManyMaskPrimitives = 29,
- VROverlayError_BadMaskPrimitive = 30,
-};
-
-/** enum values to pass in to VR_Init to identify whether the application will
-* draw a 3D scene. */
-enum EVRApplicationType
-{
- VRApplication_Other = 0, // Some other kind of application that isn't covered by the other entries
- VRApplication_Scene = 1, // Application will submit 3D frames
- VRApplication_Overlay = 2, // Application only interacts with overlays
- VRApplication_Background = 3, // Application should not start SteamVR if it's not already running, and should not
- // keep it running if everything else quits.
- VRApplication_Utility = 4, // Init should not try to load any drivers. The application needs access to utility
- // interfaces (like IVRSettings and IVRApplications) but not hardware.
- VRApplication_VRMonitor = 5, // Reserved for vrmonitor
- VRApplication_SteamWatchdog = 6,// Reserved for Steam
- VRApplication_Bootstrapper = 7, // Start up SteamVR
-
- VRApplication_Max
-};
-
-
-/** error codes for firmware */
-enum EVRFirmwareError
-{
- VRFirmwareError_None = 0,
- VRFirmwareError_Success = 1,
- VRFirmwareError_Fail = 2,
-};
-
-
-/** error codes for notifications */
-enum EVRNotificationError
-{
- VRNotificationError_OK = 0,
- VRNotificationError_InvalidNotificationId = 100,
- VRNotificationError_NotificationQueueFull = 101,
- VRNotificationError_InvalidOverlayHandle = 102,
- VRNotificationError_SystemWithUserValueAlreadyExists = 103,
-};
-
-
-/** error codes returned by Vr_Init */
-
-// Please add adequate error description to https://developer.valvesoftware.com/w/index.php?title=Category:SteamVRHelp
-enum EVRInitError
-{
- VRInitError_None = 0,
- VRInitError_Unknown = 1,
-
- VRInitError_Init_InstallationNotFound = 100,
- VRInitError_Init_InstallationCorrupt = 101,
- VRInitError_Init_VRClientDLLNotFound = 102,
- VRInitError_Init_FileNotFound = 103,
- VRInitError_Init_FactoryNotFound = 104,
- VRInitError_Init_InterfaceNotFound = 105,
- VRInitError_Init_InvalidInterface = 106,
- VRInitError_Init_UserConfigDirectoryInvalid = 107,
- VRInitError_Init_HmdNotFound = 108,
- VRInitError_Init_NotInitialized = 109,
- VRInitError_Init_PathRegistryNotFound = 110,
- VRInitError_Init_NoConfigPath = 111,
- VRInitError_Init_NoLogPath = 112,
- VRInitError_Init_PathRegistryNotWritable = 113,
- VRInitError_Init_AppInfoInitFailed = 114,
- VRInitError_Init_Retry = 115, // Used internally to cause retries to vrserver
- VRInitError_Init_InitCanceledByUser = 116, // The calling application should silently exit. The user canceled app startup
- VRInitError_Init_AnotherAppLaunching = 117,
- VRInitError_Init_SettingsInitFailed = 118,
- VRInitError_Init_ShuttingDown = 119,
- VRInitError_Init_TooManyObjects = 120,
- VRInitError_Init_NoServerForBackgroundApp = 121,
- VRInitError_Init_NotSupportedWithCompositor = 122,
- VRInitError_Init_NotAvailableToUtilityApps = 123,
- VRInitError_Init_Internal = 124,
- VRInitError_Init_HmdDriverIdIsNone = 125,
- VRInitError_Init_HmdNotFoundPresenceFailed = 126,
- VRInitError_Init_VRMonitorNotFound = 127,
- VRInitError_Init_VRMonitorStartupFailed = 128,
- VRInitError_Init_LowPowerWatchdogNotSupported = 129,
- VRInitError_Init_InvalidApplicationType = 130,
- VRInitError_Init_NotAvailableToWatchdogApps = 131,
- VRInitError_Init_WatchdogDisabledInSettings = 132,
- VRInitError_Init_VRDashboardNotFound = 133,
- VRInitError_Init_VRDashboardStartupFailed = 134,
- VRInitError_Init_VRHomeNotFound = 135,
- VRInitError_Init_VRHomeStartupFailed = 136,
- VRInitError_Init_RebootingBusy = 137,
- VRInitError_Init_FirmwareUpdateBusy = 138,
- VRInitError_Init_FirmwareRecoveryBusy = 139,
-
-
- VRInitError_Driver_Failed = 200,
- VRInitError_Driver_Unknown = 201,
- VRInitError_Driver_HmdUnknown = 202,
- VRInitError_Driver_NotLoaded = 203,
- VRInitError_Driver_RuntimeOutOfDate = 204,
- VRInitError_Driver_HmdInUse = 205,
- VRInitError_Driver_NotCalibrated = 206,
- VRInitError_Driver_CalibrationInvalid = 207,
- VRInitError_Driver_HmdDisplayNotFound = 208,
- VRInitError_Driver_TrackedDeviceInterfaceUnknown = 209,
- // VRInitError_Driver_HmdDisplayNotFoundAfterFix = 210, // not needed: here for historic reasons
- VRInitError_Driver_HmdDriverIdOutOfBounds = 211,
- VRInitError_Driver_HmdDisplayMirrored = 212,
-
- VRInitError_IPC_ServerInitFailed = 300,
- VRInitError_IPC_ConnectFailed = 301,
- VRInitError_IPC_SharedStateInitFailed = 302,
- VRInitError_IPC_CompositorInitFailed = 303,
- VRInitError_IPC_MutexInitFailed = 304,
- VRInitError_IPC_Failed = 305,
- VRInitError_IPC_CompositorConnectFailed = 306,
- VRInitError_IPC_CompositorInvalidConnectResponse = 307,
- VRInitError_IPC_ConnectFailedAfterMultipleAttempts = 308,
-
- VRInitError_Compositor_Failed = 400,
- VRInitError_Compositor_D3D11HardwareRequired = 401,
- VRInitError_Compositor_FirmwareRequiresUpdate = 402,
- VRInitError_Compositor_OverlayInitFailed = 403,
- VRInitError_Compositor_ScreenshotsInitFailed = 404,
- VRInitError_Compositor_UnableToCreateDevice = 405,
-
- VRInitError_VendorSpecific_UnableToConnectToOculusRuntime = 1000,
-
- VRInitError_VendorSpecific_HmdFound_CantOpenDevice = 1101,
- VRInitError_VendorSpecific_HmdFound_UnableToRequestConfigStart = 1102,
- VRInitError_VendorSpecific_HmdFound_NoStoredConfig = 1103,
- VRInitError_VendorSpecific_HmdFound_ConfigTooBig = 1104,
- VRInitError_VendorSpecific_HmdFound_ConfigTooSmall = 1105,
- VRInitError_VendorSpecific_HmdFound_UnableToInitZLib = 1106,
- VRInitError_VendorSpecific_HmdFound_CantReadFirmwareVersion = 1107,
- VRInitError_VendorSpecific_HmdFound_UnableToSendUserDataStart = 1108,
- VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataStart = 1109,
- VRInitError_VendorSpecific_HmdFound_UnableToGetUserDataNext = 1110,
- VRInitError_VendorSpecific_HmdFound_UserDataAddressRange = 1111,
- VRInitError_VendorSpecific_HmdFound_UserDataError = 1112,
- VRInitError_VendorSpecific_HmdFound_ConfigFailedSanityCheck = 1113,
-
- VRInitError_Steam_SteamInstallationNotFound = 2000,
-};
-
-enum EVRScreenshotType
-{
- VRScreenshotType_None = 0,
- VRScreenshotType_Mono = 1, // left eye only
- VRScreenshotType_Stereo = 2,
- VRScreenshotType_Cubemap = 3,
- VRScreenshotType_MonoPanorama = 4,
- VRScreenshotType_StereoPanorama = 5
-};
-
-enum EVRScreenshotPropertyFilenames
-{
- VRScreenshotPropertyFilenames_Preview = 0,
- VRScreenshotPropertyFilenames_VR = 1,
-};
-
-enum EVRTrackedCameraError
-{
- VRTrackedCameraError_None = 0,
- VRTrackedCameraError_OperationFailed = 100,
- VRTrackedCameraError_InvalidHandle = 101,
- VRTrackedCameraError_InvalidFrameHeaderVersion = 102,
- VRTrackedCameraError_OutOfHandles = 103,
- VRTrackedCameraError_IPCFailure = 104,
- VRTrackedCameraError_NotSupportedForThisDevice = 105,
- VRTrackedCameraError_SharedMemoryFailure = 106,
- VRTrackedCameraError_FrameBufferingFailure = 107,
- VRTrackedCameraError_StreamSetupFailure = 108,
- VRTrackedCameraError_InvalidGLTextureId = 109,
- VRTrackedCameraError_InvalidSharedTextureHandle = 110,
- VRTrackedCameraError_FailedToGetGLTextureId = 111,
- VRTrackedCameraError_SharedTextureFailure = 112,
- VRTrackedCameraError_NoFrameAvailable = 113,
- VRTrackedCameraError_InvalidArgument = 114,
- VRTrackedCameraError_InvalidFrameBufferSize = 115,
-};
-
-enum EVRTrackedCameraFrameType
-{
- VRTrackedCameraFrameType_Distorted = 0, // This is the camera video frame size in pixels, still distorted.
- VRTrackedCameraFrameType_Undistorted, // In pixels, an undistorted inscribed rectangle region without invalid regions. This size is subject to changes shortly.
- VRTrackedCameraFrameType_MaximumUndistorted, // In pixels, maximum undistorted with invalid regions. Non zero alpha component identifies valid regions.
- MAX_CAMERA_FRAME_TYPES
-};
-
-typedef uint64_t TrackedCameraHandle_t;
-#define INVALID_TRACKED_CAMERA_HANDLE ((vr::TrackedCameraHandle_t)0)
-
-struct CameraVideoStreamFrameHeader_t
-{
- EVRTrackedCameraFrameType eFrameType;
-
- uint32_t nWidth;
- uint32_t nHeight;
- uint32_t nBytesPerPixel;
-
- uint32_t nFrameSequence;
-
- TrackedDevicePose_t standingTrackedDevicePose;
-};
-
-// Screenshot types
-typedef uint32_t ScreenshotHandle_t;
-
-static const uint32_t k_unScreenshotHandleInvalid = 0;
-
-#pragma pack( pop )
-
-// figure out how to import from the VR API dll
-#if defined(_WIN32)
-
-#ifdef VR_API_EXPORT
-#define VR_INTERFACE extern "C" __declspec( dllexport )
-#else
-#define VR_INTERFACE extern "C" __declspec( dllimport )
-#endif
-
-#elif defined(__GNUC__) || defined(COMPILER_GCC) || defined(__APPLE__)
-
-#ifdef VR_API_EXPORT
-#define VR_INTERFACE extern "C" __attribute__((visibility("default")))
-#else
-#define VR_INTERFACE extern "C"
-#endif
-
-#else
-#error "Unsupported Platform."
-#endif
-
-
-#if defined( _WIN32 )
-#define VR_CALLTYPE __cdecl
-#else
-#define VR_CALLTYPE
-#endif
-
-} // namespace vr
-
-#endif // _INCLUDE_VRTYPES_H
-
-
-// vrannotation.h
-#ifdef API_GEN
-# define VR_CLANG_ATTR(ATTR) __attribute__((annotate( ATTR )))
-#else
-# define VR_CLANG_ATTR(ATTR)
-#endif
-
-#define VR_METHOD_DESC(DESC) VR_CLANG_ATTR( "desc:" #DESC ";" )
-#define VR_IGNOREATTR() VR_CLANG_ATTR( "ignore" )
-#define VR_OUT_STRUCT() VR_CLANG_ATTR( "out_struct: ;" )
-#define VR_OUT_STRING() VR_CLANG_ATTR( "out_string: ;" )
-#define VR_OUT_ARRAY_CALL(COUNTER,FUNCTION,PARAMS) VR_CLANG_ATTR( "out_array_call:" #COUNTER "," #FUNCTION "," #PARAMS ";" )
-#define VR_OUT_ARRAY_COUNT(COUNTER) VR_CLANG_ATTR( "out_array_count:" #COUNTER ";" )
-#define VR_ARRAY_COUNT(COUNTER) VR_CLANG_ATTR( "array_count:" #COUNTER ";" )
-#define VR_ARRAY_COUNT_D(COUNTER, DESC) VR_CLANG_ATTR( "array_count:" #COUNTER ";desc:" #DESC )
-#define VR_BUFFER_COUNT(COUNTER) VR_CLANG_ATTR( "buffer_count:" #COUNTER ";" )
-#define VR_OUT_BUFFER_COUNT(COUNTER) VR_CLANG_ATTR( "out_buffer_count:" #COUNTER ";" )
-#define VR_OUT_STRING_COUNT(COUNTER) VR_CLANG_ATTR( "out_string_count:" #COUNTER ";" )
-
-// vrtrackedcameratypes.h
-#ifndef _VRTRACKEDCAMERATYPES_H
-#define _VRTRACKEDCAMERATYPES_H
-
-namespace vr
-{
-
-#pragma pack( push, 8 )
-
-enum ECameraVideoStreamFormat
-{
- CVS_FORMAT_UNKNOWN = 0,
- CVS_FORMAT_RAW10 = 1, // 10 bits per pixel
- CVS_FORMAT_NV12 = 2, // 12 bits per pixel
- CVS_FORMAT_RGB24 = 3, // 24 bits per pixel
- CVS_MAX_FORMATS
-};
-
-enum ECameraCompatibilityMode
-{
- CAMERA_COMPAT_MODE_BULK_DEFAULT = 0,
- CAMERA_COMPAT_MODE_BULK_64K_DMA,
- CAMERA_COMPAT_MODE_BULK_16K_DMA,
- CAMERA_COMPAT_MODE_BULK_8K_DMA,
- CAMERA_COMPAT_MODE_ISO_52FPS,
- CAMERA_COMPAT_MODE_ISO_50FPS,
- CAMERA_COMPAT_MODE_ISO_48FPS,
- CAMERA_COMPAT_MODE_ISO_46FPS,
- CAMERA_COMPAT_MODE_ISO_44FPS,
- CAMERA_COMPAT_MODE_ISO_42FPS,
- CAMERA_COMPAT_MODE_ISO_40FPS,
- CAMERA_COMPAT_MODE_ISO_35FPS,
- CAMERA_COMPAT_MODE_ISO_30FPS,
- MAX_CAMERA_COMPAT_MODES
-};
-
-#ifdef _MSC_VER
-#define VR_CAMERA_DECL_ALIGN( x ) __declspec( align( x ) )
-#else
-#define VR_CAMERA_DECL_ALIGN( x ) //
-#endif
-
-#define MAX_CAMERA_FRAME_SHARED_HANDLES 4
-
-VR_CAMERA_DECL_ALIGN( 8 ) struct CameraVideoStreamFrame_t
-{
- ECameraVideoStreamFormat m_nStreamFormat;
-
- uint32_t m_nWidth;
- uint32_t m_nHeight;
-
- uint32_t m_nImageDataSize; // Based on stream format, width, height
-
- uint32_t m_nFrameSequence; // Starts from 0 when stream starts.
-
- uint32_t m_nBufferIndex; // Identifies which buffer the image data is hosted
- uint32_t m_nBufferCount; // Total number of configured buffers
-
- uint32_t m_nExposureTime;
-
- uint32_t m_nISPFrameTimeStamp; // Driver provided time stamp per driver centric time base
- uint32_t m_nISPReferenceTimeStamp;
- uint32_t m_nSyncCounter;
-
- uint32_t m_nCamSyncEvents;
- uint32_t m_nISPSyncEvents;
-
- double m_flReferenceCamSyncTime;
-
- double m_flFrameElapsedTime; // Starts from 0 when stream starts. In seconds.
- double m_flFrameDeliveryRate;
-
- double m_flFrameCaptureTime_DriverAbsolute; // In USB time, via AuxEvent
- double m_flFrameCaptureTime_ServerRelative; // In System time within the server
- uint64_t m_nFrameCaptureTicks_ServerAbsolute; // In system ticks within the server
- double m_flFrameCaptureTime_ClientRelative; // At the client, relative to when the frame was exposed/captured.
-
- double m_flSyncMarkerError;
-
- TrackedDevicePose_t m_StandingTrackedDevicePose; // Supplied by HMD layer when used as a tracked camera
-
- uint64_t m_pImageData;
-};
-
-#pragma pack( pop )
-
-}
-
-#endif // _VRTRACKEDCAMERATYPES_H
-// ivrsettings.h
-namespace vr
-{
- enum EVRSettingsError
- {
- VRSettingsError_None = 0,
- VRSettingsError_IPCFailed = 1,
- VRSettingsError_WriteFailed = 2,
- VRSettingsError_ReadFailed = 3,
- VRSettingsError_JsonParseFailed = 4,
- VRSettingsError_UnsetSettingHasNoDefault = 5, // This will be returned if the setting does not appear in the appropriate default file and has not been set
- };
-
- // The maximum length of a settings key
- static const uint32_t k_unMaxSettingsKeyLength = 128;
-
- class IVRSettings
- {
- public:
- virtual const char *GetSettingsErrorNameFromEnum( EVRSettingsError eError ) = 0;
-
- // Returns true if file sync occurred (force or settings dirty)
- virtual bool Sync( bool bForce = false, EVRSettingsError *peError = nullptr ) = 0;
-
- virtual void SetBool( const char *pchSection, const char *pchSettingsKey, bool bValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetInt32( const char *pchSection, const char *pchSettingsKey, int32_t nValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetFloat( const char *pchSection, const char *pchSettingsKey, float flValue, EVRSettingsError *peError = nullptr ) = 0;
- virtual void SetString( const char *pchSection, const char *pchSettingsKey, const char *pchValue, EVRSettingsError *peError = nullptr ) = 0;
-
- // Users of the system need to provide a proper default in default.vrsettings in the resources/settings/ directory
- // of either the runtime or the driver_xxx directory. Otherwise the default will be false, 0, 0.0 or ""
- virtual bool GetBool( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual int32_t GetInt32( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual float GetFloat( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- virtual void GetString( const char *pchSection, const char *pchSettingsKey, VR_OUT_STRING() char *pchValue, uint32_t unValueLen, EVRSettingsError *peError = nullptr ) = 0;
-
- virtual void RemoveSection( const char *pchSection, EVRSettingsError *peError = nullptr ) = 0;
- virtual void RemoveKeyInSection( const char *pchSection, const char *pchSettingsKey, EVRSettingsError *peError = nullptr ) = 0;
- };
-
- //-----------------------------------------------------------------------------
- static const char * const IVRSettings_Version = "IVRSettings_002";
-
- //-----------------------------------------------------------------------------
- // steamvr keys
- static const char * const k_pch_SteamVR_Section = "steamvr";
- static const char * const k_pch_SteamVR_RequireHmd_String = "requireHmd";
- static const char * const k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver";
- static const char * const k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd";
- static const char * const k_pch_SteamVR_DisplayDebug_Bool = "displayDebug";
- static const char * const k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe";
- static const char * const k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX";
- static const char * const k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY";
- static const char * const k_pch_SteamVR_SendSystemButtonToAllApps_Bool= "sendSystemButtonToAllApps";
- static const char * const k_pch_SteamVR_LogLevel_Int32 = "loglevel";
- static const char * const k_pch_SteamVR_IPD_Float = "ipd";
- static const char * const k_pch_SteamVR_Background_String = "background";
- static const char * const k_pch_SteamVR_BackgroundUseDomeProjection_Bool = "backgroundUseDomeProjection";
- static const char * const k_pch_SteamVR_BackgroundCameraHeight_Float = "backgroundCameraHeight";
- static const char * const k_pch_SteamVR_BackgroundDomeRadius_Float = "backgroundDomeRadius";
- static const char * const k_pch_SteamVR_GridColor_String = "gridColor";
- static const char * const k_pch_SteamVR_PlayAreaColor_String = "playAreaColor";
- static const char * const k_pch_SteamVR_ShowStage_Bool = "showStage";
- static const char * const k_pch_SteamVR_ActivateMultipleDrivers_Bool = "activateMultipleDrivers";
- static const char * const k_pch_SteamVR_DirectMode_Bool = "directMode";
- static const char * const k_pch_SteamVR_DirectModeEdidVid_Int32 = "directModeEdidVid";
- static const char * const k_pch_SteamVR_DirectModeEdidPid_Int32 = "directModeEdidPid";
- static const char * const k_pch_SteamVR_UsingSpeakers_Bool = "usingSpeakers";
- static const char * const k_pch_SteamVR_SpeakersForwardYawOffsetDegrees_Float = "speakersForwardYawOffsetDegrees";
- static const char * const k_pch_SteamVR_BaseStationPowerManagement_Bool = "basestationPowerManagement";
- static const char * const k_pch_SteamVR_NeverKillProcesses_Bool = "neverKillProcesses";
- static const char * const k_pch_SteamVR_SupersampleScale_Float = "supersampleScale";
- static const char * const k_pch_SteamVR_AllowAsyncReprojection_Bool = "allowAsyncReprojection";
- static const char * const k_pch_SteamVR_AllowReprojection_Bool = "allowInterleavedReprojection";
- static const char * const k_pch_SteamVR_ForceReprojection_Bool = "forceReprojection";
- static const char * const k_pch_SteamVR_ForceFadeOnBadTracking_Bool = "forceFadeOnBadTracking";
- static const char * const k_pch_SteamVR_DefaultMirrorView_Int32 = "defaultMirrorView";
- static const char * const k_pch_SteamVR_ShowMirrorView_Bool = "showMirrorView";
- static const char * const k_pch_SteamVR_MirrorViewGeometry_String = "mirrorViewGeometry";
- static const char * const k_pch_SteamVR_StartMonitorFromAppLaunch = "startMonitorFromAppLaunch";
- static const char * const k_pch_SteamVR_StartCompositorFromAppLaunch_Bool = "startCompositorFromAppLaunch";
- static const char * const k_pch_SteamVR_StartDashboardFromAppLaunch_Bool = "startDashboardFromAppLaunch";
- static const char * const k_pch_SteamVR_StartOverlayAppsFromDashboard_Bool = "startOverlayAppsFromDashboard";
- static const char * const k_pch_SteamVR_EnableHomeApp = "enableHomeApp";
- static const char * const k_pch_SteamVR_CycleBackgroundImageTimeSec_Int32 = "CycleBackgroundImageTimeSec";
- static const char * const k_pch_SteamVR_RetailDemo_Bool = "retailDemo";
- static const char * const k_pch_SteamVR_IpdOffset_Float = "ipdOffset";
- static const char * const k_pch_SteamVR_AllowSupersampleFiltering_Bool = "allowSupersampleFiltering";
- static const char * const k_pch_SteamVR_EnableLinuxVulkanAsync_Bool = "enableLinuxVulkanAsync";
-
- //-----------------------------------------------------------------------------
- // lighthouse keys
- static const char * const k_pch_Lighthouse_Section = "driver_lighthouse";
- static const char * const k_pch_Lighthouse_DisableIMU_Bool = "disableimu";
- static const char * const k_pch_Lighthouse_UseDisambiguation_String = "usedisambiguation";
- static const char * const k_pch_Lighthouse_DisambiguationDebug_Int32 = "disambiguationdebug";
- static const char * const k_pch_Lighthouse_PrimaryBasestation_Int32 = "primarybasestation";
- static const char * const k_pch_Lighthouse_DBHistory_Bool = "dbhistory";
-
- //-----------------------------------------------------------------------------
- // null keys
- static const char * const k_pch_Null_Section = "driver_null";
- static const char * const k_pch_Null_SerialNumber_String = "serialNumber";
- static const char * const k_pch_Null_ModelNumber_String = "modelNumber";
- static const char * const k_pch_Null_WindowX_Int32 = "windowX";
- static const char * const k_pch_Null_WindowY_Int32 = "windowY";
- static const char * const k_pch_Null_WindowWidth_Int32 = "windowWidth";
- static const char * const k_pch_Null_WindowHeight_Int32 = "windowHeight";
- static const char * const k_pch_Null_RenderWidth_Int32 = "renderWidth";
- static const char * const k_pch_Null_RenderHeight_Int32 = "renderHeight";
- static const char * const k_pch_Null_SecondsFromVsyncToPhotons_Float = "secondsFromVsyncToPhotons";
- static const char * const k_pch_Null_DisplayFrequency_Float = "displayFrequency";
-
- //-----------------------------------------------------------------------------
- // user interface keys
- static const char * const k_pch_UserInterface_Section = "userinterface";
- static const char * const k_pch_UserInterface_StatusAlwaysOnTop_Bool = "StatusAlwaysOnTop";
- static const char * const k_pch_UserInterface_MinimizeToTray_Bool = "MinimizeToTray";
- static const char * const k_pch_UserInterface_Screenshots_Bool = "screenshots";
- static const char * const k_pch_UserInterface_ScreenshotType_Int = "screenshotType";
-
- //-----------------------------------------------------------------------------
- // notification keys
- static const char * const k_pch_Notifications_Section = "notifications";
- static const char * const k_pch_Notifications_DoNotDisturb_Bool = "DoNotDisturb";
-
- //-----------------------------------------------------------------------------
- // keyboard keys
- static const char * const k_pch_Keyboard_Section = "keyboard";
- static const char * const k_pch_Keyboard_TutorialCompletions = "TutorialCompletions";
- static const char * const k_pch_Keyboard_ScaleX = "ScaleX";
- static const char * const k_pch_Keyboard_ScaleY = "ScaleY";
- static const char * const k_pch_Keyboard_OffsetLeftX = "OffsetLeftX";
- static const char * const k_pch_Keyboard_OffsetRightX = "OffsetRightX";
- static const char * const k_pch_Keyboard_OffsetY = "OffsetY";
- static const char * const k_pch_Keyboard_Smoothing = "Smoothing";
-
- //-----------------------------------------------------------------------------
- // perf keys
- static const char * const k_pch_Perf_Section = "perfcheck";
- static const char * const k_pch_Perf_HeuristicActive_Bool = "heuristicActive";
- static const char * const k_pch_Perf_NotifyInHMD_Bool = "warnInHMD";
- static const char * const k_pch_Perf_NotifyOnlyOnce_Bool = "warnOnlyOnce";
- static const char * const k_pch_Perf_AllowTimingStore_Bool = "allowTimingStore";
- static const char * const k_pch_Perf_SaveTimingsOnExit_Bool = "saveTimingsOnExit";
- static const char * const k_pch_Perf_TestData_Float = "perfTestData";
- static const char * const k_pch_Perf_LinuxGPUProfiling_Bool = "linuxGPUProfiling";
-
- //-----------------------------------------------------------------------------
- // collision bounds keys
- static const char * const k_pch_CollisionBounds_Section = "collisionBounds";
- static const char * const k_pch_CollisionBounds_Style_Int32 = "CollisionBoundsStyle";
- static const char * const k_pch_CollisionBounds_GroundPerimeterOn_Bool = "CollisionBoundsGroundPerimeterOn";
- static const char * const k_pch_CollisionBounds_CenterMarkerOn_Bool = "CollisionBoundsCenterMarkerOn";
- static const char * const k_pch_CollisionBounds_PlaySpaceOn_Bool = "CollisionBoundsPlaySpaceOn";
- static const char * const k_pch_CollisionBounds_FadeDistance_Float = "CollisionBoundsFadeDistance";
- static const char * const k_pch_CollisionBounds_ColorGammaR_Int32 = "CollisionBoundsColorGammaR";
- static const char * const k_pch_CollisionBounds_ColorGammaG_Int32 = "CollisionBoundsColorGammaG";
- static const char * const k_pch_CollisionBounds_ColorGammaB_Int32 = "CollisionBoundsColorGammaB";
- static const char * const k_pch_CollisionBounds_ColorGammaA_Int32 = "CollisionBoundsColorGammaA";
-
- //-----------------------------------------------------------------------------
- // camera keys
- static const char * const k_pch_Camera_Section = "camera";
- static const char * const k_pch_Camera_EnableCamera_Bool = "enableCamera";
- static const char * const k_pch_Camera_EnableCameraInDashboard_Bool = "enableCameraInDashboard";
- static const char * const k_pch_Camera_EnableCameraForCollisionBounds_Bool = "enableCameraForCollisionBounds";
- static const char * const k_pch_Camera_EnableCameraForRoomView_Bool = "enableCameraForRoomView";
- static const char * const k_pch_Camera_BoundsColorGammaR_Int32 = "cameraBoundsColorGammaR";
- static const char * const k_pch_Camera_BoundsColorGammaG_Int32 = "cameraBoundsColorGammaG";
- static const char * const k_pch_Camera_BoundsColorGammaB_Int32 = "cameraBoundsColorGammaB";
- static const char * const k_pch_Camera_BoundsColorGammaA_Int32 = "cameraBoundsColorGammaA";
- static const char * const k_pch_Camera_BoundsStrength_Int32 = "cameraBoundsStrength";
-
- //-----------------------------------------------------------------------------
- // audio keys
- static const char * const k_pch_audio_Section = "audio";
- static const char * const k_pch_audio_OnPlaybackDevice_String = "onPlaybackDevice";
- static const char * const k_pch_audio_OnRecordDevice_String = "onRecordDevice";
- static const char * const k_pch_audio_OnPlaybackMirrorDevice_String = "onPlaybackMirrorDevice";
- static const char * const k_pch_audio_OffPlaybackDevice_String = "offPlaybackDevice";
- static const char * const k_pch_audio_OffRecordDevice_String = "offRecordDevice";
- static const char * const k_pch_audio_VIVEHDMIGain = "viveHDMIGain";
-
- //-----------------------------------------------------------------------------
- // power management keys
- static const char * const k_pch_Power_Section = "power";
- static const char * const k_pch_Power_PowerOffOnExit_Bool = "powerOffOnExit";
- static const char * const k_pch_Power_TurnOffScreensTimeout_Float = "turnOffScreensTimeout";
- static const char * const k_pch_Power_TurnOffControllersTimeout_Float = "turnOffControllersTimeout";
- static const char * const k_pch_Power_ReturnToWatchdogTimeout_Float = "returnToWatchdogTimeout";
- static const char * const k_pch_Power_AutoLaunchSteamVROnButtonPress = "autoLaunchSteamVROnButtonPress";
- static const char * const k_pch_Power_PauseCompositorOnStandby_Bool = "pauseCompositorOnStandby";
-
- //-----------------------------------------------------------------------------
- // dashboard keys
- static const char * const k_pch_Dashboard_Section = "dashboard";
- static const char * const k_pch_Dashboard_EnableDashboard_Bool = "enableDashboard";
- static const char * const k_pch_Dashboard_ArcadeMode_Bool = "arcadeMode";
-
- //-----------------------------------------------------------------------------
- // model skin keys
- static const char * const k_pch_modelskin_Section = "modelskins";
-
- //-----------------------------------------------------------------------------
- // driver keys - These could be checked in any driver_<name> section
- static const char * const k_pch_Driver_Enable_Bool = "enable";
-
-} // namespace vr
-
-// iservertrackeddevicedriver.h
-namespace vr
-{
-
-
-struct DriverPoseQuaternion_t
-{
- double w, x, y, z;
-};
-
-struct DriverPose_t
-{
- /* Time offset of this pose, in seconds from the actual time of the pose,
- * relative to the time of the PoseUpdated() call made by the driver.
- */
- double poseTimeOffset;
-
- /* Generally, the pose maintained by a driver
- * is in an inertial coordinate system different
- * from the world system of x+ right, y+ up, z+ back.
- * Also, the driver is not usually tracking the "head" position,
- * but instead an internal IMU or another reference point in the HMD.
- * The following two transforms transform positions and orientations
- * to app world space from driver world space,
- * and to HMD head space from driver local body space.
- *
- * We maintain the driver pose state in its internal coordinate system,
- * so we can do the pose prediction math without having to
- * use angular acceleration. A driver's angular acceleration is generally not measured,
- * and is instead calculated from successive samples of angular velocity.
- * This leads to a noisy angular acceleration values, which are also
- * lagged due to the filtering required to reduce noise to an acceptable level.
- */
- vr::HmdQuaternion_t qWorldFromDriverRotation;
- double vecWorldFromDriverTranslation[ 3 ];
-
- vr::HmdQuaternion_t qDriverFromHeadRotation;
- double vecDriverFromHeadTranslation[ 3 ];
-
- /* State of driver pose, in meters and radians. */
- /* Position of the driver tracking reference in driver world space
- * +[0] (x) is right
- * +[1] (y) is up
- * -[2] (z) is forward
- */
- double vecPosition[ 3 ];
-
- /* Velocity of the pose in meters/second */
- double vecVelocity[ 3 ];
-
- /* Acceleration of the pose in meters/second */
- double vecAcceleration[ 3 ];
-
- /* Orientation of the tracker, represented as a quaternion */
- vr::HmdQuaternion_t qRotation;
-
- /* Angular velocity of the pose in axis-angle
- * representation. The direction is the angle of
- * rotation and the magnitude is the angle around
- * that axis in radians/second. */
- double vecAngularVelocity[ 3 ];
-
- /* Angular acceleration of the pose in axis-angle
- * representation. The direction is the angle of
- * rotation and the magnitude is the angle around
- * that axis in radians/second^2. */
- double vecAngularAcceleration[ 3 ];
-
- ETrackingResult result;
-
- bool poseIsValid;
- bool willDriftInYaw;
- bool shouldApplyHeadModel;
- bool deviceIsConnected;
-};
-
-
-// ----------------------------------------------------------------------------------------------
-// Purpose: Represents a single tracked device in a driver
-// ----------------------------------------------------------------------------------------------
-class ITrackedDeviceServerDriver
-{
-public:
-
- // ------------------------------------
- // Management Methods
- // ------------------------------------
- /** This is called before an HMD is returned to the application. It will always be
- * called before any display or tracking methods. Memory and processor use by the
- * ITrackedDeviceServerDriver object should be kept to a minimum until it is activated.
- * The pose listener is guaranteed to be valid until Deactivate is called, but
- * should not be used after that point. */
- virtual EVRInitError Activate( uint32_t unObjectId ) = 0;
-
- /** This is called when The VR system is switching from this Hmd being the active display
- * to another Hmd being the active display. The driver should clean whatever memory
- * and thread use it can when it is deactivated */
- virtual void Deactivate() = 0;
-
- /** Handles a request from the system to put this device into standby mode. What that means is defined per-device. */
- virtual void EnterStandby() = 0;
-
- /** Requests a component interface of the driver for device-specific functionality. The driver should return NULL
- * if the requested interface or version is not supported. */
- virtual void *GetComponent( const char *pchComponentNameAndVersion ) = 0;
-
- /** A VR Client has made this debug request of the driver. The set of valid requests is entirely
- * up to the driver and the client to figure out, as is the format of the response. Responses that
- * exceed the length of the supplied buffer should be truncated and null terminated */
- virtual void DebugRequest( const char *pchRequest, char *pchResponseBuffer, uint32_t unResponseBufferSize ) = 0;
-
- // ------------------------------------
- // Tracking Methods
- // ------------------------------------
- virtual DriverPose_t GetPose() = 0;
-};
-
-
-
-static const char *ITrackedDeviceServerDriver_Version = "ITrackedDeviceServerDriver_005";
-
-}
-// ivrdisplaycomponent.h
-namespace vr
-{
-
-
- // ----------------------------------------------------------------------------------------------
- // Purpose: The display component on a single tracked device
- // ----------------------------------------------------------------------------------------------
- class IVRDisplayComponent
- {
- public:
-
- // ------------------------------------
- // Display Methods
- // ------------------------------------
-
- /** Size and position that the window needs to be on the VR display. */
- virtual void GetWindowBounds( int32_t *pnX, int32_t *pnY, uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** Returns true if the display is extending the desktop. */
- virtual bool IsDisplayOnDesktop( ) = 0;
-
- /** Returns true if the display is real and not a fictional display. */
- virtual bool IsDisplayRealDisplay( ) = 0;
-
- /** Suggested size for the intermediate render target that the distortion pulls from. */
- virtual void GetRecommendedRenderTargetSize( uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** Gets the viewport in the frame buffer to draw the output of the distortion into */
- virtual void GetEyeOutputViewport( EVREye eEye, uint32_t *pnX, uint32_t *pnY, uint32_t *pnWidth, uint32_t *pnHeight ) = 0;
-
- /** The components necessary to build your own projection matrix in case your
- * application is doing something fancy like infinite Z */
- virtual void GetProjectionRaw( EVREye eEye, float *pfLeft, float *pfRight, float *pfTop, float *pfBottom ) = 0;
-
- /** Returns the result of the distortion function for the specified eye and input UVs. UVs go from 0,0 in
- * the upper left of that eye's viewport and 1,1 in the lower right of that eye's viewport. */
- virtual DistortionCoordinates_t ComputeDistortion( EVREye eEye, float fU, float fV ) = 0;
-
- };
-
- static const char *IVRDisplayComponent_Version = "IVRDisplayComponent_002";
-
-}
-
-// ivrdriverdirectmodecomponent.h
-namespace vr
-{
-
-
- // ----------------------------------------------------------------------------------------------
- // Purpose: This component is used for drivers that implement direct mode entirely on their own
- // without allowing the VR Compositor to own the window/device. Chances are you don't
- // need to implement this component in your driver.
- // ----------------------------------------------------------------------------------------------
- class IVRDriverDirectModeComponent
- {
- public:
-
- // -----------------------------------
- // Direct mode methods
- // -----------------------------------
-
- /** Specific to Oculus compositor support, textures supplied must be created using this method. */
- virtual void CreateSwapTextureSet( uint32_t unPid, uint32_t unFormat, uint32_t unWidth, uint32_t unHeight, vr::SharedTextureHandle_t( *pSharedTextureHandles )[ 3 ] ) {}
-
- /** Used to textures created using CreateSwapTextureSet. Only one of the set's handles needs to be used to destroy the entire set. */
- virtual void DestroySwapTextureSet( vr::SharedTextureHandle_t sharedTextureHandle ) {}
-
- /** Used to purge all texture sets for a given process. */
- virtual void DestroyAllSwapTextureSets( uint32_t unPid ) {}
-
- /** After Present returns, calls this to get the next index to use for rendering. */
- virtual void GetNextSwapTextureSetIndex( vr::SharedTextureHandle_t sharedTextureHandles[ 2 ], uint32_t( *pIndices )[ 2 ] ) {}
-
- /** Call once per layer to draw for this frame. One shared texture handle per eye. Textures must be created
- * using CreateSwapTextureSet and should be alternated per frame. Call Present once all layers have been submitted. */
- virtual void SubmitLayer( vr::SharedTextureHandle_t sharedTextureHandles[ 2 ], const vr::VRTextureBounds_t( &bounds )[ 2 ], const vr::HmdMatrix34_t *pPose ) {}
-
- /** Submits queued layers for display. */
- virtual void Present( vr::SharedTextureHandle_t syncTexture ) {}
-
- };
-
- static const char *IVRDriverDirectModeComponent_Version = "IVRDriverDirectModeComponent_002";
-
-}
-
-// ivrcontrollercomponent.h
-namespace vr
-{
-
-
- // ----------------------------------------------------------------------------------------------
- // Purpose: Controller access on a single tracked device.
- // ----------------------------------------------------------------------------------------------
- class IVRControllerComponent
- {
- public:
-
- // ------------------------------------
- // Controller Methods
- // ------------------------------------
-
- /** Gets the current state of a controller. */
- virtual VRControllerState_t GetControllerState( ) = 0;
-
- /** Returns a uint64 property. If the property is not available this function will return 0. */
- virtual bool TriggerHapticPulse( uint32_t unAxisId, uint16_t usPulseDurationMicroseconds ) = 0;
-
- };
-
-
-
- static const char *IVRControllerComponent_Version = "IVRControllerComponent_001";
-
-}
-// ivrcameracomponent.h
-namespace vr
-{
- //-----------------------------------------------------------------------------
- //-----------------------------------------------------------------------------
- class ICameraVideoSinkCallback
- {
- public:
- virtual void OnCameraVideoSinkCallback() = 0;
- };
-
- // ----------------------------------------------------------------------------------------------
- // Purpose: The camera on a single tracked device
- // ----------------------------------------------------------------------------------------------
- class IVRCameraComponent
- {
- public:
- // ------------------------------------
- // Camera Methods
- // ------------------------------------
- virtual bool GetCameraFrameDimensions( vr::ECameraVideoStreamFormat nVideoStreamFormat, uint32_t *pWidth, uint32_t *pHeight ) = 0;
- virtual bool GetCameraFrameBufferingRequirements( int *pDefaultFrameQueueSize, uint32_t *pFrameBufferDataSize ) = 0;
- virtual bool SetCameraFrameBuffering( int nFrameBufferCount, void **ppFrameBuffers, uint32_t nFrameBufferDataSize ) = 0;
- virtual bool SetCameraVideoStreamFormat( vr::ECameraVideoStreamFormat nVideoStreamFormat ) = 0;
- virtual vr::ECameraVideoStreamFormat GetCameraVideoStreamFormat() = 0;
- virtual bool StartVideoStream() = 0;
- virtual void StopVideoStream() = 0;
- virtual bool IsVideoStreamActive( bool *pbPaused, float *pflElapsedTime ) = 0;
- virtual const vr::CameraVideoStreamFrame_t *GetVideoStreamFrame() = 0;
- virtual void ReleaseVideoStreamFrame( const vr::CameraVideoStreamFrame_t *pFrameImage ) = 0;
- virtual bool SetAutoExposure( bool bEnable ) = 0;
- virtual bool PauseVideoStream() = 0;
- virtual bool ResumeVideoStream() = 0;
- virtual bool GetCameraDistortion( float flInputU, float flInputV, float *pflOutputU, float *pflOutputV ) = 0;
- virtual bool GetCameraProjection( vr::EVRTrackedCameraFrameType eFrameType, float flZNear, float flZFar, vr::HmdMatrix44_t *pProjection ) = 0;
- virtual bool SetFrameRate( int nISPFrameRate, int nSensorFrameRate ) = 0;
- virtual bool SetCameraVideoSinkCallback( vr::ICameraVideoSinkCallback *pCameraVideoSinkCallback ) = 0;
- virtual bool GetCameraCompatibilityMode( vr::ECameraCompatibilityMode *pCameraCompatibilityMode ) = 0;
- virtual bool SetCameraCompatibilityMode( vr::ECameraCompatibilityMode nCameraCompatibilityMode ) = 0;
- virtual bool GetCameraFrameBounds( vr::EVRTrackedCameraFrameType eFrameType, uint32_t *pLeft, uint32_t *pTop, uint32_t *pWidth, uint32_t *pHeight ) = 0;
- virtual bool GetCameraIntrinsics( vr::EVRTrackedCameraFrameType eFrameType, HmdVector2_t *pFocalLength, HmdVector2_t *pCenter ) = 0;
- };
-
- static const char *IVRCameraComponent_Version = "IVRCameraComponent_002";
-}
-// itrackeddevicedriverprovider.h
-namespace vr
-{
-
-class ITrackedDeviceServerDriver;
-struct TrackedDeviceDriverInfo_t;
-struct DriverPose_t;
-typedef PropertyContainerHandle_t DriverHandle_t;
-
-/** This interface is provided by vrserver to allow the driver to notify
-* the system when something changes about a device. These changes must
-* not change the serial number or class of the device because those values
-* are permanently associated with the device's index. */
-class IVRDriverContext
-{
-public:
- /** Returns the requested interface. If the interface was not available it will return NULL and fill
- * out the error. */
- virtual void *GetGenericInterface( const char *pchInterfaceVersion, EVRInitError *peError = nullptr ) = 0;
-
- /** Returns the property container handle for this driver */
- virtual DriverHandle_t GetDriverHandle() = 0;
-};
-
-
-/** This interface must be implemented in each driver. It will be loaded in vrserver.exe */
-class IServerTrackedDeviceProvider
-{
-public:
- /** initializes the driver. This will be called before any other methods are called.
- * If Init returns anything other than VRInitError_None the driver DLL will be unloaded.
- *
- * pDriverHost will never be NULL, and will always be a pointer to a IServerDriverHost interface
- *
- * pchUserDriverConfigDir - The absolute path of the directory where the driver should store user
- * config files.
- * pchDriverInstallDir - The absolute path of the root directory for the driver.
- */
- virtual EVRInitError Init( IVRDriverContext *pDriverContext ) = 0;
-
- /** cleans up the driver right before it is unloaded */
- virtual void Cleanup() = 0;
-
- /** Returns the version of the ITrackedDeviceServerDriver interface used by this driver */
- virtual const char * const *GetInterfaceVersions() = 0;
-
- /** Allows the driver do to some work in the main loop of the server. */
- virtual void RunFrame() = 0;
-
-
- // ------------ Power State Functions ----------------------- //
-
- /** Returns true if the driver wants to block Standby mode. */
- virtual bool ShouldBlockStandbyMode() = 0;
-
- /** Called when the system is entering Standby mode. The driver should switch itself into whatever sort of low-power
- * state it has. */
- virtual void EnterStandby() = 0;
-
- /** Called when the system is leaving Standby mode. The driver should switch itself back to
- full operation. */
- virtual void LeaveStandby() = 0;
-
-};
-
-
-static const char *IServerTrackedDeviceProvider_Version = "IServerTrackedDeviceProvider_004";
-
-
-
-
-/** This interface must be implemented in each driver. It will be loaded in vrclient.dll */
-class IVRWatchdogProvider
-{
-public:
- /** initializes the driver in watchdog mode. */
- virtual EVRInitError Init( IVRDriverContext *pDriverContext ) = 0;
-
- /** cleans up the driver right before it is unloaded */
- virtual void Cleanup() = 0;
-};
-
-static const char *IVRWatchdogProvider_Version = "IVRWatchdogProvider_001";
-
-}
-// ivrproperties.h
-#include <string>
-
-namespace vr
-{
-
- enum EPropertyWriteType
- {
- PropertyWrite_Set = 0,
- PropertyWrite_Erase = 1,
- PropertyWrite_SetError = 2
- };
-
- struct PropertyWrite_t
- {
- ETrackedDeviceProperty prop;
- EPropertyWriteType writeType;
- ETrackedPropertyError eSetError;
- void *pvBuffer;
- uint32_t unBufferSize;
- PropertyTypeTag_t unTag;
- ETrackedPropertyError eError;
- };
-
- struct PropertyRead_t
- {
- ETrackedDeviceProperty prop;
- void *pvBuffer;
- uint32_t unBufferSize;
- PropertyTypeTag_t unTag;
- uint32_t unRequiredBufferSize;
- ETrackedPropertyError eError;
- };
-
-
-class IVRProperties
-{
-public:
-
- /** Reads a set of properties atomically. See the PropertyReadBatch_t struct for more information. */
- virtual ETrackedPropertyError ReadPropertyBatch( PropertyContainerHandle_t ulContainerHandle, PropertyRead_t *pBatch, uint32_t unBatchEntryCount ) = 0;
-
- /** Writes a set of properties atomically. See the PropertyWriteBatch_t struct for more information. */
- virtual ETrackedPropertyError WritePropertyBatch( PropertyContainerHandle_t ulContainerHandle, PropertyWrite_t *pBatch, uint32_t unBatchEntryCount ) = 0;
-
- /** returns a string that corresponds with the specified property error. The string will be the name
- * of the error enum value for all valid error codes */
- virtual const char *GetPropErrorNameFromEnum( ETrackedPropertyError error ) = 0;
-
- /** Returns a container handle given a tracked device index */
- virtual PropertyContainerHandle_t TrackedDeviceToPropertyContainer( TrackedDeviceIndex_t nDevice ) = 0;
-
-};
-
-static const char * const IVRProperties_Version = "IVRProperties_001";
-
-class CVRPropertyHelpers
-{
-public:
- CVRPropertyHelpers( IVRProperties * pProperties ) : m_pProperties( pProperties ) {}
-
- /** Returns a scaler property. If the device index is not valid or the property value type does not match,
- * this function will return false. */
- bool GetBoolProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L );
- float GetFloatProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L );
- int32_t GetInt32Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L );
- uint64_t GetUint64Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError = 0L );
-
- /** Returns a single typed property. If the device index is not valid or the property is not a string type this function will
- * return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
- * null. Strings will always fit in buffers of k_unMaxPropertyStringSize characters. */
- uint32_t GetProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, VR_OUT_STRING() void *pvBuffer, uint32_t unBufferSize, PropertyTypeTag_t *punTag, ETrackedPropertyError *pError = 0L );
-
-
- /** Returns a string property. If the device index is not valid or the property is not a string type this function will
- * return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
- * null. Strings will always fit in buffers of k_unMaxPropertyStringSize characters. */
- uint32_t GetStringProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize, ETrackedPropertyError *pError = 0L );
-
- /** Returns a string property as a std::string. If the device index is not valid or the property is not a string type this function will
- * return an empty string. */
- std::string GetStringProperty( vr::PropertyContainerHandle_t ulContainer, vr::ETrackedDeviceProperty prop, vr::ETrackedPropertyError *peError = nullptr );
-
- /** Sets a scaler property. The new value will be returned on any subsequent call to get this property in any process. */
- ETrackedPropertyError SetBoolProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, bool bNewValue );
- ETrackedPropertyError SetFloatProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, float fNewValue );
- ETrackedPropertyError SetInt32Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, int32_t nNewValue );
- ETrackedPropertyError SetUint64Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, uint64_t ulNewValue );
-
- /** Sets a string property. The new value will be returned on any subsequent call to get this property in any process. */
- ETrackedPropertyError SetStringProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, const char *pchNewValue );
-
- /** Sets a single typed property. The new value will be returned on any subsequent call to get this property in any process. */
- ETrackedPropertyError SetProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, void *pvNewValue, uint32_t unNewValueSize, PropertyTypeTag_t unTag );
-
- /** Sets the error return value for a property. This value will be returned on all subsequent requests to get the property */
- ETrackedPropertyError SetPropertyError( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError eError );
-
- /** Clears any value or error set for the property. */
- ETrackedPropertyError EraseProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop );
-
- /* Turns a device index into a property container handle. */
- PropertyContainerHandle_t TrackedDeviceToPropertyContainer( TrackedDeviceIndex_t nDevice ) { return m_pProperties->TrackedDeviceToPropertyContainer( nDevice ); }
-
-private:
- template<typename T>
- T GetPropertyHelper( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError, T bDefault, PropertyTypeTag_t unTypeTag );
-
- IVRProperties *m_pProperties;
-};
-
-
-inline uint32_t CVRPropertyHelpers::GetProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, VR_OUT_STRING() void *pvBuffer, uint32_t unBufferSize, PropertyTypeTag_t *punTag, ETrackedPropertyError *pError )
-{
- PropertyRead_t batch;
- batch.prop = prop;
- batch.pvBuffer = pvBuffer;
- batch.unBufferSize = unBufferSize;
-
- m_pProperties->ReadPropertyBatch( ulContainerHandle, &batch, 1 );
-
- if ( pError )
- {
- *pError = batch.eError;
- }
-
- if ( punTag )
- {
- *punTag = batch.unTag;
- }
-
- return batch.unRequiredBufferSize;
-}
-
-
-/** Sets a single typed property. The new value will be returned on any subsequent call to get this property in any process. */
-inline ETrackedPropertyError CVRPropertyHelpers::SetProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, void *pvNewValue, uint32_t unNewValueSize, PropertyTypeTag_t unTag )
-{
- PropertyWrite_t batch;
- batch.writeType = PropertyWrite_Set;
- batch.prop = prop;
- batch.pvBuffer = pvNewValue;
- batch.unBufferSize = unNewValueSize;
- batch.unTag = unTag;
-
- m_pProperties->WritePropertyBatch( ulContainerHandle, &batch, 1 );
-
- return batch.eError;
-}
-
-
-/** Returns a string property. If the device index is not valid or the property is not a string type this function will
-* return 0. Otherwise it returns the length of the number of bytes necessary to hold this string including the trailing
-* null. Strings will always fit in buffers of k_unMaxPropertyStringSize characters. */
-inline uint32_t CVRPropertyHelpers::GetStringProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize, ETrackedPropertyError *pError )
-{
- PropertyTypeTag_t unTag;
- ETrackedPropertyError error;
- uint32_t unRequiredSize = GetProperty( ulContainerHandle, prop, pchValue, unBufferSize, &unTag, &error );
- if ( unTag != k_unStringPropertyTag && error == TrackedProp_Success )
- {
- error = TrackedProp_WrongDataType;
- }
-
- if ( pError )
- {
- *pError = error;
- }
-
- if ( error != TrackedProp_Success )
- {
- if ( pchValue && unBufferSize )
- {
- *pchValue = '\0';
- }
- }
-
- return unRequiredSize;
-}
-
-
-/** Returns a string property as a std::string. If the device index is not valid or the property is not a string type this function will
-* return an empty string. */
-inline std::string CVRPropertyHelpers::GetStringProperty( vr::PropertyContainerHandle_t ulContainer, vr::ETrackedDeviceProperty prop, vr::ETrackedPropertyError *peError )
-{
- char buf[1024];
- vr::ETrackedPropertyError err;
- uint32_t unRequiredBufferLen = GetStringProperty( ulContainer, prop, buf, sizeof(buf), &err );
-
- std::string sResult;
-
- if ( err == TrackedProp_Success )
- {
- sResult = buf;
- }
- else if ( err == TrackedProp_BufferTooSmall )
- {
- char *pchBuffer = new char[unRequiredBufferLen];
- unRequiredBufferLen = GetStringProperty( ulContainer, prop, pchBuffer, unRequiredBufferLen, &err );
- sResult = pchBuffer;
- delete[] pchBuffer;
- }
-
- if ( peError )
- {
- *peError = err;
- }
-
- return sResult;
-}
-
-
-/** Sets a string property. The new value will be returned on any subsequent call to get this property in any process. */
-inline ETrackedPropertyError CVRPropertyHelpers::SetStringProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, const char *pchNewValue )
-{
- if ( !pchNewValue )
- return TrackedProp_InvalidOperation;
-
- // this is strlen without the dependency on string.h
- const char *pchCurr = pchNewValue;
- while ( *pchCurr )
- {
- pchCurr++;
- }
-
- return SetProperty( ulContainerHandle, prop, (void *)pchNewValue, (uint32_t)(pchCurr - pchNewValue) + 1, k_unStringPropertyTag );
-}
-
-
-template<typename T>
-inline T CVRPropertyHelpers::GetPropertyHelper( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError, T bDefault, PropertyTypeTag_t unTypeTag )
-{
- T bValue;
- ETrackedPropertyError eError;
- PropertyTypeTag_t unReadTag;
- GetProperty( ulContainerHandle, prop, &bValue, sizeof( bValue ), &unReadTag, &eError );
- if ( unReadTag != unTypeTag && eError == TrackedProp_Success )
- {
- eError = TrackedProp_WrongDataType;
- };
-
- if ( pError )
- *pError = eError;
- if ( eError != TrackedProp_Success )
- {
- return bDefault;
- }
- else
- {
- return bValue;
- }
-}
-
-
-inline bool CVRPropertyHelpers::GetBoolProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError )
-{
- return GetPropertyHelper<bool>( ulContainerHandle, prop, pError, false, k_unBoolPropertyTag );
-}
-
-
-inline float CVRPropertyHelpers::GetFloatProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError )
-{
- return GetPropertyHelper<float>( ulContainerHandle, prop, pError, 0.f, k_unFloatPropertyTag );
-}
-
-inline int32_t CVRPropertyHelpers::GetInt32Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError )
-{
- return GetPropertyHelper<int32_t>( ulContainerHandle, prop, pError, 0, k_unInt32PropertyTag );
-}
-
-inline uint64_t CVRPropertyHelpers::GetUint64Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError *pError )
-{
- return GetPropertyHelper<uint64_t>( ulContainerHandle, prop, pError, 0, k_unUint64PropertyTag );
-}
-
-inline ETrackedPropertyError CVRPropertyHelpers::SetBoolProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, bool bNewValue )
-{
- return SetProperty( ulContainerHandle, prop, &bNewValue, sizeof( bNewValue ), k_unBoolPropertyTag );
-}
-
-inline ETrackedPropertyError CVRPropertyHelpers::SetFloatProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, float fNewValue )
-{
- return SetProperty( ulContainerHandle, prop, &fNewValue, sizeof( fNewValue ), k_unFloatPropertyTag );
-}
-
-inline ETrackedPropertyError CVRPropertyHelpers::SetInt32Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, int32_t nNewValue )
-{
- return SetProperty( ulContainerHandle, prop, &nNewValue, sizeof( nNewValue ), k_unInt32PropertyTag );
-}
-
-inline ETrackedPropertyError CVRPropertyHelpers::SetUint64Property( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, uint64_t ulNewValue )
-{
- return SetProperty( ulContainerHandle, prop, &ulNewValue, sizeof( ulNewValue ), k_unUint64PropertyTag );
-}
-
-/** Sets the error return value for a property. This value will be returned on all subsequent requests to get the property */
-inline ETrackedPropertyError CVRPropertyHelpers::SetPropertyError( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop, ETrackedPropertyError eError )
-{
- PropertyWrite_t batch;
- batch.writeType = PropertyWrite_SetError;
- batch.prop = prop;
- batch.eSetError = eError;
-
- m_pProperties->WritePropertyBatch( ulContainerHandle, &batch, 1 );
-
- return batch.eError;
-}
-
-/** Clears any value or error set for the property. */
-inline ETrackedPropertyError CVRPropertyHelpers::EraseProperty( PropertyContainerHandle_t ulContainerHandle, ETrackedDeviceProperty prop )
-{
- PropertyWrite_t batch;
- batch.writeType = PropertyWrite_Erase;
- batch.prop = prop;
-
- m_pProperties->WritePropertyBatch( ulContainerHandle, &batch, 1 );
-
- return batch.eError;
-
-}
-
-}
-
-
-// ivrdriverlog.h
-namespace vr
-{
-
-class IVRDriverLog
-{
-public:
- /** Writes a log message to the log file prefixed with the driver name */
- virtual void Log( const char *pchLogMessage ) = 0;
-};
-
-
-static const char *IVRDriverLog_Version = "IVRDriverLog_001";
-
-}
-// ivrserverdriverhost.h
-namespace vr
-{
-
-class ITrackedDeviceServerDriver;
-struct TrackedDeviceDriverInfo_t;
-struct DriverPose_t;
-
-/** This interface is provided by vrserver to allow the driver to notify
-* the system when something changes about a device. These changes must
-* not change the serial number or class of the device because those values
-* are permanently associated with the device's index. */
-class IVRServerDriverHost
-{
-public:
- /** Notifies the server that a tracked device has been added. If this function returns true
- * the server will call Activate on the device. If it returns false some kind of error
- * has occurred and the device will not be activated. */
- virtual bool TrackedDeviceAdded( const char *pchDeviceSerialNumber, ETrackedDeviceClass eDeviceClass, ITrackedDeviceServerDriver *pDriver ) = 0;
-
- /** Notifies the server that a tracked device's pose has been updated */
- virtual void TrackedDevicePoseUpdated( uint32_t unWhichDevice, const DriverPose_t & newPose, uint32_t unPoseStructSize ) = 0;
-
- /** Notifies the server that vsync has occurred on the the display attached to the device. This is
- * only permitted on devices of the HMD class. */
- virtual void VsyncEvent( double vsyncTimeOffsetSeconds ) = 0;
-
- /** notifies the server that the button was pressed */
- virtual void TrackedDeviceButtonPressed( uint32_t unWhichDevice, EVRButtonId eButtonId, double eventTimeOffset ) = 0;
-
- /** notifies the server that the button was unpressed */
- virtual void TrackedDeviceButtonUnpressed( uint32_t unWhichDevice, EVRButtonId eButtonId, double eventTimeOffset ) = 0;
-
- /** notifies the server that the button was pressed */
- virtual void TrackedDeviceButtonTouched( uint32_t unWhichDevice, EVRButtonId eButtonId, double eventTimeOffset ) = 0;
-
- /** notifies the server that the button was unpressed */
- virtual void TrackedDeviceButtonUntouched( uint32_t unWhichDevice, EVRButtonId eButtonId, double eventTimeOffset ) = 0;
-
- /** notifies the server than a controller axis changed */
- virtual void TrackedDeviceAxisUpdated( uint32_t unWhichDevice, uint32_t unWhichAxis, const VRControllerAxis_t & axisState ) = 0;
-
- /** Notifies the server that the proximity sensor on the specified device */
- virtual void ProximitySensorState( uint32_t unWhichDevice, bool bProximitySensorTriggered ) = 0;
-
- /** Sends a vendor specific event (VREvent_VendorSpecific_Reserved_Start..VREvent_VendorSpecific_Reserved_End */
- virtual void VendorSpecificEvent( uint32_t unWhichDevice, vr::EVREventType eventType, const VREvent_Data_t & eventData, double eventTimeOffset ) = 0;
-
- /** Returns true if SteamVR is exiting */
- virtual bool IsExiting() = 0;
-
- /** Returns true and fills the event with the next event on the queue if there is one. If there are no events
- * this method returns false. uncbVREvent should be the size in bytes of the VREvent_t struct */
- virtual bool PollNextEvent( VREvent_t *pEvent, uint32_t uncbVREvent ) = 0;
-
- /** Provides access to device poses for drivers. Poses are in their "raw" tracking space which is uniquely
- * defined by each driver providing poses for its devices. It is up to clients of this function to correlate
- * poses across different drivers. Poses are indexed by their device id, and their associated driver and
- * other properties can be looked up via IVRProperties. */
- virtual void GetRawTrackedDevicePoses( float fPredictedSecondsFromNow, TrackedDevicePose_t *pTrackedDevicePoseArray, uint32_t unTrackedDevicePoseArrayCount ) = 0;
-
- /** Notifies the server that a tracked device's display component transforms have been updated. */
- virtual void TrackedDeviceDisplayTransformUpdated( uint32_t unWhichDevice, HmdMatrix34_t eyeToHeadLeft, HmdMatrix34_t eyeToHeadRight ) = 0;
-};
-
-static const char *IVRServerDriverHost_Version = "IVRServerDriverHost_004";
-
-}
-
-// ivrhiddenarea.h
-namespace vr
-{
-
-class CVRHiddenAreaHelpers
-{
-public:
- CVRHiddenAreaHelpers( IVRProperties *pProperties ) : m_pProperties( pProperties ) {}
-
- /** Stores a hidden area mesh in a property */
- ETrackedPropertyError SetHiddenArea( EVREye eEye, EHiddenAreaMeshType type, HmdVector2_t *pVerts, uint32_t unVertCount );
-
- /** retrieves a hidden area mesh from a property. Returns the vert count read out of the property. */
- uint32_t GetHiddenArea( EVREye eEye, EHiddenAreaMeshType type, HmdVector2_t *pVerts, uint32_t unVertCount, ETrackedPropertyError *peError );
-
-private:
- ETrackedDeviceProperty GetPropertyEnum( EVREye eEye, EHiddenAreaMeshType type )
- {
- return (ETrackedDeviceProperty)(Prop_DisplayHiddenArea_Binary_Start + ((int)type * 2) + (int)eEye);
- }
-
- IVRProperties *m_pProperties;
-};
-
-
-inline ETrackedPropertyError CVRHiddenAreaHelpers::SetHiddenArea( EVREye eEye, EHiddenAreaMeshType type, HmdVector2_t *pVerts, uint32_t unVertCount )
-{
- ETrackedDeviceProperty prop = GetPropertyEnum( eEye, type );
- CVRPropertyHelpers propHelpers( m_pProperties );
- return propHelpers.SetProperty( propHelpers.TrackedDeviceToPropertyContainer( k_unTrackedDeviceIndex_Hmd ), prop, pVerts, sizeof( HmdVector2_t ) * unVertCount, k_unHiddenAreaPropertyTag );
-}
-
-
-inline uint32_t CVRHiddenAreaHelpers::GetHiddenArea( EVREye eEye, EHiddenAreaMeshType type, HmdVector2_t *pVerts, uint32_t unVertCount, ETrackedPropertyError *peError )
-{
- ETrackedDeviceProperty prop = GetPropertyEnum( eEye, type );
- CVRPropertyHelpers propHelpers( m_pProperties );
- ETrackedPropertyError propError;
- PropertyTypeTag_t unTag;
- uint32_t unBytesNeeded = propHelpers.GetProperty( propHelpers.TrackedDeviceToPropertyContainer( k_unTrackedDeviceIndex_Hmd ), prop, pVerts, sizeof( HmdVector2_t )*unVertCount, &unTag, &propError );
- if ( propError == TrackedProp_Success && unTag != k_unHiddenAreaPropertyTag )
- {
- propError = TrackedProp_WrongDataType;
- unBytesNeeded = 0;
- }
-
- if ( peError )
- {
- *peError = propError;
- }
-
- return unBytesNeeded / sizeof( HmdVector2_t );
-}
-
-}
-// ivrwatchdoghost.h
-namespace vr
-{
-
-/** This interface is provided by vrclient to allow the driver to make everything wake up */
-class IVRWatchdogHost
-{
-public:
- /** Client drivers in watchdog mode should call this when they have received a signal from hardware that should
- * cause SteamVR to start */
- virtual void WatchdogWakeUp() = 0;
-};
-
-static const char *IVRWatchdogHost_Version = "IVRWatchdogHost_001";
-
-};
-
-
-
-// ivrvirtualdisplay.h
-namespace vr
-{
- // ----------------------------------------------------------------------------------------------
- // Purpose: This component is used for drivers that implement a virtual display (e.g. wireless).
- // ----------------------------------------------------------------------------------------------
- class IVRVirtualDisplay
- {
- public:
-
- /** Submits final backbuffer for display. */
- virtual void Present( vr::SharedTextureHandle_t backbufferTextureHandle ) = 0;
-
- /** Block until the last presented buffer start scanning out. */
- virtual void WaitForPresent() = 0;
-
- /** Provides timing data for synchronizing with display. */
- virtual bool GetTimeSinceLastVsync( float *pfSecondsSinceLastVsync, uint64_t *pulFrameCounter ) = 0;
- };
-
- static const char *IVRVirtualDisplay_Version = "IVRVirtualDisplay_001";
-
- /** Returns the current IVRVirtualDisplay pointer or NULL the interface could not be found. */
- VR_INTERFACE vr::IVRVirtualDisplay *VR_CALLTYPE VRVirtualDisplay();
-}
-
-
-// ivrresources.h
-namespace vr
-{
-
-class IVRResources
-{
-public:
-
- // ------------------------------------
- // Shared Resource Methods
- // ------------------------------------
-
- /** Loads the specified resource into the provided buffer if large enough.
- * Returns the size in bytes of the buffer required to hold the specified resource. */
- virtual uint32_t LoadSharedResource( const char *pchResourceName, char *pchBuffer, uint32_t unBufferLen ) = 0;
-
- /** Provides the full path to the specified resource. Resource names can include named directories for
- * drivers and other things, and this resolves all of those and returns the actual physical path.
- * pchResourceTypeDirectory is the subdirectory of resources to look in. */
- virtual uint32_t GetResourceFullPath( const char *pchResourceName, const char *pchResourceTypeDirectory, char *pchPathBuffer, uint32_t unBufferLen ) = 0;
-};
-
-static const char * const IVRResources_Version = "IVRResources_001";
-
-
-}
-// ivrdrivermanager.h
-namespace vr
-{
-
-class IVRDriverManager
-{
-public:
- virtual uint32_t GetDriverCount() const = 0;
-
- /** Returns the length of the number of bytes necessary to hold this string including the trailing null. */
- virtual uint32_t GetDriverName( vr::DriverId_t nDriver, VR_OUT_STRING() char *pchValue, uint32_t unBufferSize ) = 0;
-};
-
-static const char * const IVRDriverManager_Version = "IVRDriverManager_001";
-
-} // namespace vr
-
-
-
-
-
-namespace vr
-{
- static const char * const k_InterfaceVersions[] =
- {
- IVRSettings_Version,
- ITrackedDeviceServerDriver_Version,
- IVRDisplayComponent_Version,
- IVRDriverDirectModeComponent_Version,
- IVRControllerComponent_Version,
- IVRCameraComponent_Version,
- IServerTrackedDeviceProvider_Version,
- IVRWatchdogProvider_Version,
- IVRVirtualDisplay_Version,
- IVRDriverManager_Version,
- IVRResources_Version,
- nullptr
- };
-
- inline IVRDriverContext *&VRDriverContext()
- {
- static IVRDriverContext *pHost;
- return pHost;
- }
-
- class COpenVRDriverContext
- {
- public:
- COpenVRDriverContext() : m_propertyHelpers(nullptr), m_hiddenAreaHelpers(nullptr) { Clear(); }
- void Clear();
-
- EVRInitError InitServer();
- EVRInitError InitWatchdog();
-
- IVRSettings *VRSettings()
- {
- if ( m_pVRSettings == nullptr )
- {
- EVRInitError eError;
- m_pVRSettings = (IVRSettings *)VRDriverContext()->GetGenericInterface( IVRSettings_Version, &eError );
- }
- return m_pVRSettings;
- }
-
- IVRProperties *VRPropertiesRaw()
- {
- if ( m_pVRProperties == nullptr )
- {
- EVRInitError eError;
- m_pVRProperties = (IVRProperties *)VRDriverContext()->GetGenericInterface( IVRProperties_Version, &eError );
- m_propertyHelpers = CVRPropertyHelpers( m_pVRProperties );
- m_hiddenAreaHelpers = CVRHiddenAreaHelpers( m_pVRProperties );
- }
- return m_pVRProperties;
- }
-
- CVRPropertyHelpers *VRProperties()
- {
- VRPropertiesRaw();
- return &m_propertyHelpers;
- }
-
- CVRHiddenAreaHelpers *VRHiddenArea()
- {
- VRPropertiesRaw();
- return &m_hiddenAreaHelpers;
- }
-
- IVRServerDriverHost *VRServerDriverHost()
- {
- if ( m_pVRServerDriverHost == nullptr )
- {
- EVRInitError eError;
- m_pVRServerDriverHost = (IVRServerDriverHost *)VRDriverContext()->GetGenericInterface( IVRServerDriverHost_Version, &eError );
- }
- return m_pVRServerDriverHost;
- }
-
- IVRWatchdogHost *VRWatchdogHost()
- {
- if ( m_pVRWatchdogHost == nullptr )
- {
- EVRInitError eError;
- m_pVRWatchdogHost = (IVRWatchdogHost *)VRDriverContext()->GetGenericInterface( IVRWatchdogHost_Version, &eError );
- }
- return m_pVRWatchdogHost;
- }
-
- IVRDriverLog *VRDriverLog()
- {
- if ( m_pVRDriverLog == nullptr )
- {
- EVRInitError eError;
- m_pVRDriverLog = (IVRDriverLog *)VRDriverContext()->GetGenericInterface( IVRDriverLog_Version, &eError );
- }
- return m_pVRDriverLog;
- }
-
- DriverHandle_t VR_CALLTYPE VRDriverHandle()
- {
- return VRDriverContext()->GetDriverHandle();
- }
-
- IVRDriverManager *VRDriverManager()
- {
- if ( !m_pVRDriverManager )
- {
- EVRInitError eError;
- m_pVRDriverManager = (IVRDriverManager *)VRDriverContext()->GetGenericInterface( IVRDriverManager_Version, &eError );
- }
- return m_pVRDriverManager;
- }
-
- IVRResources *VRResources()
- {
- if ( !m_pVRResources )
- {
- EVRInitError eError;
- m_pVRResources = (IVRResources *)VRDriverContext()->GetGenericInterface( IVRResources_Version, &eError );
- }
- return m_pVRResources;
- }
-
- private:
- CVRPropertyHelpers m_propertyHelpers;
- CVRHiddenAreaHelpers m_hiddenAreaHelpers;
-
- IVRSettings *m_pVRSettings;
- IVRProperties *m_pVRProperties;
- IVRServerDriverHost *m_pVRServerDriverHost;
- IVRWatchdogHost *m_pVRWatchdogHost;
- IVRDriverLog *m_pVRDriverLog;
- IVRDriverManager *m_pVRDriverManager;
- IVRResources *m_pVRResources;
- };
-
- inline COpenVRDriverContext &OpenVRInternal_ModuleServerDriverContext()
- {
- static void *ctx[sizeof( COpenVRDriverContext ) / sizeof( void * )];
- return *(COpenVRDriverContext *)ctx; // bypass zero-init constructor
- }
-
- inline IVRSettings *VR_CALLTYPE VRSettings() { return OpenVRInternal_ModuleServerDriverContext().VRSettings(); }
- inline IVRProperties *VR_CALLTYPE VRPropertiesRaw() { return OpenVRInternal_ModuleServerDriverContext().VRPropertiesRaw(); }
- inline CVRPropertyHelpers *VR_CALLTYPE VRProperties() { return OpenVRInternal_ModuleServerDriverContext().VRProperties(); }
- inline CVRHiddenAreaHelpers *VR_CALLTYPE VRHiddenArea() { return OpenVRInternal_ModuleServerDriverContext().VRHiddenArea(); }
- inline IVRDriverLog *VR_CALLTYPE VRDriverLog() { return OpenVRInternal_ModuleServerDriverContext().VRDriverLog(); }
- inline IVRServerDriverHost *VR_CALLTYPE VRServerDriverHost() { return OpenVRInternal_ModuleServerDriverContext().VRServerDriverHost(); }
- inline IVRWatchdogHost *VR_CALLTYPE VRWatchdogHost() { return OpenVRInternal_ModuleServerDriverContext().VRWatchdogHost(); }
- inline DriverHandle_t VR_CALLTYPE VRDriverHandle() { return OpenVRInternal_ModuleServerDriverContext().VRDriverHandle(); }
- inline IVRDriverManager *VR_CALLTYPE VRDriverManager() { return OpenVRInternal_ModuleServerDriverContext().VRDriverManager(); }
- inline IVRResources *VR_CALLTYPE VRResources() { return OpenVRInternal_ModuleServerDriverContext().VRResources(); }
-
- inline void COpenVRDriverContext::Clear()
- {
- m_pVRSettings = nullptr;
- m_pVRProperties = nullptr;
- m_pVRServerDriverHost = nullptr;
- m_pVRDriverLog = nullptr;
- m_pVRWatchdogHost = nullptr;
- m_pVRDriverManager = nullptr;
- m_pVRResources = nullptr;
- }
-
- inline EVRInitError COpenVRDriverContext::InitServer()
- {
- Clear();
- if ( !VRServerDriverHost()
- || !VRSettings()
- || !VRProperties()
- || !VRDriverLog()
- || !VRDriverManager()
- || !VRResources() )
- return VRInitError_Init_InterfaceNotFound;
- return VRInitError_None;
- }
-
- inline EVRInitError COpenVRDriverContext::InitWatchdog()
- {
- Clear();
- if ( !VRWatchdogHost()
- || !VRSettings()
- || !VRDriverLog() )
- return VRInitError_Init_InterfaceNotFound;
- return VRInitError_None;
- }
-
- inline EVRInitError InitServerDriverContext( IVRDriverContext *pContext )
- {
- VRDriverContext() = pContext;
- return OpenVRInternal_ModuleServerDriverContext().InitServer();
- }
-
- inline EVRInitError InitWatchdogDriverContext( IVRDriverContext *pContext )
- {
- VRDriverContext() = pContext;
- return OpenVRInternal_ModuleServerDriverContext().InitWatchdog();
- }
-
- inline void CleanupDriverContext()
- {
- VRDriverContext() = nullptr;
- OpenVRInternal_ModuleServerDriverContext().Clear();
- }
-
- #define VR_INIT_SERVER_DRIVER_CONTEXT( pContext ) \
- { \
- vr::EVRInitError eError = vr::InitServerDriverContext( pContext ); \
- if( eError != vr::VRInitError_None ) \
- return eError; \
- }
-
- #define VR_CLEANUP_SERVER_DRIVER_CONTEXT() \
- vr::CleanupDriverContext();
-
- #define VR_INIT_WATCHDOG_DRIVER_CONTEXT( pContext ) \
- { \
- vr::EVRInitError eError = vr::InitWatchdogDriverContext( pContext ); \
- if( eError != vr::VRInitError_None ) \
- return eError; \
- }
-
- #define VR_CLEANUP_WATCHDOG_DRIVER_CONTEXT() \
- vr::CleanupDriverContext();
-}
-// End
-
-#endif // _OPENVR_DRIVER_API
-
-
diff --git a/bin/osx64/OpenVR.framework/Versions/A/OpenVR b/bin/osx64/OpenVR.framework/Versions/A/OpenVR
deleted file mode 100755
index 3fb0184..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/OpenVR
+++ /dev/null
Binary files differ
diff --git a/bin/osx64/OpenVR.framework/Versions/A/Resources/Info.plist b/bin/osx64/OpenVR.framework/Versions/A/Resources/Info.plist
deleted file mode 100644
index 50ff90a..0000000
--- a/bin/osx64/OpenVR.framework/Versions/A/Resources/Info.plist
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-<dict>
- <key>CFBundleIdentifier</key>
- <string>com.valvesoftware.OpenVR.framework</string>
- <key>CFBundleInfoDictionaryVersion</key>
- <string>6.0</string>
- <key>CFBundleName</key>
- <string>OpenVR</string>
- <key>CFBundlePackageType</key>
- <string>FMWK</string>
- <key>CFBundleShortVersionString</key>
- <string>1.0</string>
- <key>CFBundleVersion</key>
- <string>1.0</string>
-</dict>
-</plist>
diff --git a/bin/osx64/OpenVR.framework/Versions/Current b/bin/osx64/OpenVR.framework/Versions/Current
deleted file mode 120000
index 8c7e5a6..0000000
--- a/bin/osx64/OpenVR.framework/Versions/Current
+++ /dev/null
@@ -1 +0,0 @@
-A \ No newline at end of file
diff --git a/samples/bin/osx32/libopenvr_api.dylib b/samples/bin/osx32/libopenvr_api.dylib
deleted file mode 100644
index 3cc3fd4..0000000
--- a/samples/bin/osx32/libopenvr_api.dylib
+++ /dev/null
Binary files differ