17
17
#define EXTERN_C
18
18
#endif
19
19
20
+ #if defined( _WIN32 )
20
21
#define OPENVR_FNTABLE_CALLTYPE __stdcall
22
+ #else
23
+ #define OPENVR_FNTABLE_CALLTYPE
24
+ #endif
21
25
22
26
// OPENVR API export macro
23
27
#if defined( _WIN32 ) && !defined( _X360 )
@@ -93,7 +97,7 @@ static const unsigned int k_unVROverlayMaxKeyLength = 128;
93
97
static const unsigned int k_unVROverlayMaxNameLength = 128 ;
94
98
static const unsigned int k_unMaxOverlayCount = 64 ;
95
99
static const unsigned int k_unMaxOverlayIntersectionMaskPrimitivesCount = 32 ;
96
- static const char * IVROverlay_Version = "IVROverlay_014 " ;
100
+ static const char * IVROverlay_Version = "IVROverlay_016 " ;
97
101
static const char * k_pch_Controller_Component_GDC2015 = "gdc2015" ;
98
102
static const char * k_pch_Controller_Component_Base = "base" ;
99
103
static const char * k_pch_Controller_Component_Tip = "tip" ;
@@ -110,7 +114,6 @@ static const char * k_pch_SteamVR_ForcedDriverKey_String = "forcedDriver";
110
114
static const char * k_pch_SteamVR_ForcedHmdKey_String = "forcedHmd" ;
111
115
static const char * k_pch_SteamVR_DisplayDebug_Bool = "displayDebug" ;
112
116
static const char * k_pch_SteamVR_DebugProcessPipe_String = "debugProcessPipe" ;
113
- static const char * k_pch_SteamVR_EnableDistortion_Bool = "enableDistortion" ;
114
117
static const char * k_pch_SteamVR_DisplayDebugX_Int32 = "displayDebugX" ;
115
118
static const char * k_pch_SteamVR_DisplayDebugY_Int32 = "displayDebugY" ;
116
119
static const char * k_pch_SteamVR_SendSystemButtonToAllApps_Bool = "sendSystemButtonToAllApps" ;
@@ -268,6 +271,7 @@ typedef enum ETrackedDeviceClass
268
271
ETrackedDeviceClass_TrackedDeviceClass_Controller = 2 ,
269
272
ETrackedDeviceClass_TrackedDeviceClass_GenericTracker = 3 ,
270
273
ETrackedDeviceClass_TrackedDeviceClass_TrackingReference = 4 ,
274
+ ETrackedDeviceClass_TrackedDeviceClass_DisplayRedirect = 5 ,
271
275
} ETrackedDeviceClass ;
272
276
273
277
typedef enum ETrackedControllerRole
@@ -322,6 +326,7 @@ typedef enum ETrackedDeviceProperty
322
326
ETrackedDeviceProperty_Prop_Firmware_ForceUpdateRequired_Bool = 1032 ,
323
327
ETrackedDeviceProperty_Prop_ViveSystemButtonFixRequired_Bool = 1033 ,
324
328
ETrackedDeviceProperty_Prop_ParentDriver_Uint64 = 1034 ,
329
+ ETrackedDeviceProperty_Prop_ResourceRoot_String = 1035 ,
325
330
ETrackedDeviceProperty_Prop_ReportsTimeSinceVSync_Bool = 2000 ,
326
331
ETrackedDeviceProperty_Prop_SecondsFromVsyncToPhotons_Float = 2001 ,
327
332
ETrackedDeviceProperty_Prop_DisplayFrequency_Float = 2002 ,
@@ -364,7 +369,7 @@ typedef enum ETrackedDeviceProperty
364
369
ETrackedDeviceProperty_Prop_DisplayMCImageHeight_Int32 = 2039 ,
365
370
ETrackedDeviceProperty_Prop_DisplayMCImageNumChannels_Int32 = 2040 ,
366
371
ETrackedDeviceProperty_Prop_DisplayMCImageData_Binary = 2041 ,
367
- ETrackedDeviceProperty_Prop_UsesDriverDirectMode_Bool = 2042 ,
372
+ ETrackedDeviceProperty_Prop_SecondsFromPhotonsToVblank_Float = 2042 ,
368
373
ETrackedDeviceProperty_Prop_AttachedDeviceId_String = 3000 ,
369
374
ETrackedDeviceProperty_Prop_SupportedButtons_Uint64 = 3001 ,
370
375
ETrackedDeviceProperty_Prop_Axis0Type_Int32 = 3002 ,
@@ -393,6 +398,11 @@ typedef enum ETrackedDeviceProperty
393
398
ETrackedDeviceProperty_Prop_DisplayHiddenArea_Binary_End = 5150 ,
394
399
ETrackedDeviceProperty_Prop_UserConfigPath_String = 6000 ,
395
400
ETrackedDeviceProperty_Prop_InstallPath_String = 6001 ,
401
+ ETrackedDeviceProperty_Prop_HasDisplayComponent_Bool = 6002 ,
402
+ ETrackedDeviceProperty_Prop_HasControllerComponent_Bool = 6003 ,
403
+ ETrackedDeviceProperty_Prop_HasCameraComponent_Bool = 6004 ,
404
+ ETrackedDeviceProperty_Prop_HasDriverDirectModeComponent_Bool = 6005 ,
405
+ ETrackedDeviceProperty_Prop_HasVirtualDisplayComponent_Bool = 6006 ,
396
406
ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_Start = 10000 ,
397
407
ETrackedDeviceProperty_Prop_VendorSpecific_Reserved_End = 10999 ,
398
408
} ETrackedDeviceProperty ;
@@ -530,6 +540,8 @@ typedef enum EVREventType
530
540
EVREventType_VREvent_ApplicationListUpdated = 1303 ,
531
541
EVREventType_VREvent_ApplicationMimeTypeLoad = 1304 ,
532
542
EVREventType_VREvent_ApplicationTransitionNewAppLaunchComplete = 1305 ,
543
+ EVREventType_VREvent_ProcessConnected = 1306 ,
544
+ EVREventType_VREvent_ProcessDisconnected = 1307 ,
533
545
EVREventType_VREvent_Compositor_MirrorWindowShown = 1400 ,
534
546
EVREventType_VREvent_Compositor_MirrorWindowHidden = 1401 ,
535
547
EVREventType_VREvent_Compositor_ChaperoneBoundsShown = 1410 ,
@@ -651,7 +663,8 @@ typedef enum EVRApplicationType
651
663
EVRApplicationType_VRApplication_Utility = 4 ,
652
664
EVRApplicationType_VRApplication_VRMonitor = 5 ,
653
665
EVRApplicationType_VRApplication_SteamWatchdog = 6 ,
654
- EVRApplicationType_VRApplication_Max = 7 ,
666
+ EVRApplicationType_VRApplication_Bootstrapper = 7 ,
667
+ EVRApplicationType_VRApplication_Max = 8 ,
655
668
} EVRApplicationType ;
656
669
657
670
typedef enum EVRFirmwareError
@@ -1435,13 +1448,22 @@ typedef struct RenderModel_Vertex_t
1435
1448
float rfTextureCoord [2 ]; //float[2]
1436
1449
} RenderModel_Vertex_t ;
1437
1450
1451
+ #if defined(__linux__ ) || defined(__APPLE__ )
1452
+ #pragma pack( push, 4 )
1453
+ #endif
1438
1454
typedef struct RenderModel_TextureMap_t
1439
1455
{
1440
1456
uint16_t unWidth ;
1441
1457
uint16_t unHeight ;
1442
1458
uint8_t * rubTextureMapData ; // const uint8_t *
1443
1459
} RenderModel_TextureMap_t ;
1444
1460
1461
+ #if defined(__linux__ ) || defined(__APPLE__ )
1462
+ #pragma pack( pop )
1463
+ #endif
1464
+ #if defined(__linux__ ) || defined(__APPLE__ )
1465
+ #pragma pack( push, 4 )
1466
+ #endif
1445
1467
typedef struct RenderModel_t
1446
1468
{
1447
1469
struct RenderModel_Vertex_t * rVertexData ; // const struct vr::RenderModel_Vertex_t *
@@ -1451,6 +1473,9 @@ typedef struct RenderModel_t
1451
1473
TextureID_t diffuseTextureId ;
1452
1474
} RenderModel_t ;
1453
1475
1476
+ #if defined(__linux__ ) || defined(__APPLE__ )
1477
+ #pragma pack( pop )
1478
+ #endif
1454
1479
typedef struct RenderModel_ControllerMode_State_t
1455
1480
{
1456
1481
bool bScrollWheelVisible ;
@@ -1715,12 +1740,13 @@ struct VR_IVRCompositor_FnTable
1715
1740
struct VR_IVROverlay_FnTable
1716
1741
{
1717
1742
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * FindOverlay )(char * pchOverlayKey , VROverlayHandle_t * pOverlayHandle );
1718
- EVROverlayError (OPENVR_FNTABLE_CALLTYPE * CreateOverlay )(char * pchOverlayKey , char * pchOverlayFriendlyName , VROverlayHandle_t * pOverlayHandle );
1743
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE * CreateOverlay )(char * pchOverlayKey , char * pchOverlayName , VROverlayHandle_t * pOverlayHandle );
1719
1744
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * DestroyOverlay )(VROverlayHandle_t ulOverlayHandle );
1720
1745
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetHighQualityOverlay )(VROverlayHandle_t ulOverlayHandle );
1721
1746
VROverlayHandle_t (OPENVR_FNTABLE_CALLTYPE * GetHighQualityOverlay )( );
1722
1747
uint32_t (OPENVR_FNTABLE_CALLTYPE * GetOverlayKey )(VROverlayHandle_t ulOverlayHandle , char * pchValue , uint32_t unBufferSize , EVROverlayError * pError );
1723
1748
uint32_t (OPENVR_FNTABLE_CALLTYPE * GetOverlayName )(VROverlayHandle_t ulOverlayHandle , char * pchValue , uint32_t unBufferSize , EVROverlayError * pError );
1749
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayName )(VROverlayHandle_t ulOverlayHandle , char * pchName );
1724
1750
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayImageData )(VROverlayHandle_t ulOverlayHandle , void * pvBuffer , uint32_t unBufferSize , uint32_t * punWidth , uint32_t * punHeight );
1725
1751
char * (OPENVR_FNTABLE_CALLTYPE * GetOverlayErrorNameFromEnum )(EVROverlayError error );
1726
1752
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayRenderingPid )(VROverlayHandle_t ulOverlayHandle , uint32_t unPID );
@@ -1743,13 +1769,17 @@ struct VR_IVROverlay_FnTable
1743
1769
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTextureColorSpace )(VROverlayHandle_t ulOverlayHandle , EColorSpace * peTextureColorSpace );
1744
1770
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayTextureBounds )(VROverlayHandle_t ulOverlayHandle , struct VRTextureBounds_t * pOverlayTextureBounds );
1745
1771
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTextureBounds )(VROverlayHandle_t ulOverlayHandle , struct VRTextureBounds_t * pOverlayTextureBounds );
1772
+ uint32_t (OPENVR_FNTABLE_CALLTYPE * GetOverlayRenderModel )(VROverlayHandle_t ulOverlayHandle , char * pchValue , uint32_t unBufferSize , struct HmdColor_t * pColor , EVROverlayError * pError );
1773
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayRenderModel )(VROverlayHandle_t ulOverlayHandle , char * pchRenderModel , struct HmdColor_t * pColor );
1746
1774
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTransformType )(VROverlayHandle_t ulOverlayHandle , VROverlayTransformType * peTransformType );
1747
1775
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayTransformAbsolute )(VROverlayHandle_t ulOverlayHandle , ETrackingUniverseOrigin eTrackingOrigin , struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform );
1748
1776
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTransformAbsolute )(VROverlayHandle_t ulOverlayHandle , ETrackingUniverseOrigin * peTrackingOrigin , struct HmdMatrix34_t * pmatTrackingOriginToOverlayTransform );
1749
1777
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayTransformTrackedDeviceRelative )(VROverlayHandle_t ulOverlayHandle , TrackedDeviceIndex_t unTrackedDevice , struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform );
1750
1778
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTransformTrackedDeviceRelative )(VROverlayHandle_t ulOverlayHandle , TrackedDeviceIndex_t * punTrackedDevice , struct HmdMatrix34_t * pmatTrackedDeviceToOverlayTransform );
1751
1779
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayTransformTrackedDeviceComponent )(VROverlayHandle_t ulOverlayHandle , TrackedDeviceIndex_t unDeviceIndex , char * pchComponentName );
1752
1780
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTransformTrackedDeviceComponent )(VROverlayHandle_t ulOverlayHandle , TrackedDeviceIndex_t * punDeviceIndex , char * pchComponentName , uint32_t unComponentNameSize );
1781
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE * GetOverlayTransformOverlayRelative )(VROverlayHandle_t ulOverlayHandle , VROverlayHandle_t * ulOverlayHandleParent , struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform );
1782
+ EVROverlayError (OPENVR_FNTABLE_CALLTYPE * SetOverlayTransformOverlayRelative )(VROverlayHandle_t ulOverlayHandle , VROverlayHandle_t ulOverlayHandleParent , struct HmdMatrix34_t * pmatParentOverlayToOverlayTransform );
1753
1783
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * ShowOverlay )(VROverlayHandle_t ulOverlayHandle );
1754
1784
EVROverlayError (OPENVR_FNTABLE_CALLTYPE * HideOverlay )(VROverlayHandle_t ulOverlayHandle );
1755
1785
bool (OPENVR_FNTABLE_CALLTYPE * IsOverlayVisible )(VROverlayHandle_t ulOverlayHandle );
0 commit comments