@@ -25,7 +25,7 @@ extern "C" {
2525 ((((major) & 0xffffULL) << 48) | (((minor) & 0xffffULL) << 32) | ((patch) & 0xffffffffULL))
2626
2727// OpenXR current version number.
28- #define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 12 )
28+ #define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 13 )
2929
3030#define XR_VERSION_MAJOR (version ) (uint16_t)(((uint64_t)(version) >> 48)& 0xffffULL)
3131#define XR_VERSION_MINOR (version ) (uint16_t)(((uint64_t)(version) >> 32) & 0xffffULL)
@@ -186,9 +186,8 @@ typedef enum XrResult {
186186 XR_ERROR_CREATE_SPATIAL_ANCHOR_FAILED_MSFT = -1000039001 ,
187187 XR_ERROR_SECONDARY_VIEW_CONFIGURATION_TYPE_NOT_ENABLED_MSFT = -1000053000 ,
188188 XR_ERROR_CONTROLLER_MODEL_KEY_INVALID_MSFT = -1000055000 ,
189- XR_SPATIAL_ANCHOR_EXPORT_DATA_UNAVAILABLE_MSFT = 1000062000 ,
190- XR_ERROR_SPATIAL_ANCHOR_EXPORT_FAILED_MSFT = -1000062000 ,
191- XR_ERROR_SPATIAL_ANCHOR_SUFFICIENCY_QUERY_FAILED_MSFT = -1000062001 ,
189+ XR_ERROR_DISPLAY_REFRESH_RATE_UNSUPPORTED_FB = -1000101000 ,
190+ XR_ERROR_COLOR_SPACE_UNSUPPORTED_FB = -1000108000 ,
192191 XR_ERROR_COMPUTE_NEW_SCENE_NOT_COMPLETED_MSFT = -1000097000 ,
193192 XR_ERROR_SCENE_OBJECT_KEY_INVALID_MSFT = -1000097001 ,
194193 XR_ERROR_SCENE_MESH_KEY_INVALID_MSFT = -1000097002 ,
@@ -318,8 +317,9 @@ typedef enum XrStructureType {
318317 XR_TYPE_VULKAN_DEVICE_CREATE_INFO_KHR = 1000090001 ,
319318 XR_TYPE_VULKAN_GRAPHICS_DEVICE_GET_INFO_KHR = 1000090003 ,
320319 XR_TYPE_COMPOSITION_LAYER_EQUIRECT2_KHR = 1000091000 ,
321- XR_TYPE_SPATIAL_ANCHOR_EXPORT_PURPOSE_INFO_MSFT = 1000062000 ,
322- XR_TYPE_SPATIAL_ANCHOR_EXPORT_SUFFICIENCY_MSFT = 1000062001 ,
320+ XR_TYPE_EVENT_DATA_DISPLAY_REFRESH_RATE_CHANGED_FB = 1000101000 ,
321+ XR_TYPE_SYSTEM_COLOR_SPACE_PROPERTIES_FB = 1000108000 ,
322+ XR_TYPE_BINDING_MODIFICATIONS_KHR = 1000120000 ,
323323 XR_TYPE_SCENE_OBSERVER_CREATE_INFO_MSFT = 1000097000 ,
324324 XR_TYPE_SCENE_CREATE_INFO_MSFT = 1000097001 ,
325325 XR_TYPE_NEW_SCENE_COMPUTE_INFO_MSFT = 1000097002 ,
@@ -412,7 +412,6 @@ typedef enum XrObjectType {
412412 XR_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT = 1000019000 ,
413413 XR_OBJECT_TYPE_SPATIAL_ANCHOR_MSFT = 1000039000 ,
414414 XR_OBJECT_TYPE_HAND_TRACKER_EXT = 1000051000 ,
415- XR_OBJECT_TYPE_SPATIAL_ANCHOR_NEIGHBORHOOD_DATA_STREAM_MSFT = 1000062000 ,
416415 XR_OBJECT_TYPE_SCENE_OBSERVER_MSFT = 1000097000 ,
417416 XR_OBJECT_TYPE_SCENE_MSFT = 1000097001 ,
418417 XR_OBJECT_TYPE_MAX_ENUM = 0x7FFFFFFF
@@ -1478,6 +1477,23 @@ typedef struct XrCompositionLayerEquirect2KHR {
14781477
14791478
14801479
1480+ #define XR_KHR_binding_modification 1
1481+ #define XR_KHR_binding_modification_SPEC_VERSION 1
1482+ #define XR_KHR_BINDING_MODIFICATION_EXTENSION_NAME "XR_KHR_binding_modification"
1483+ typedef struct XrBindingModificationBaseHeaderKHR {
1484+ XrStructureType type ;
1485+ const void * XR_MAY_ALIAS next ;
1486+ } XrBindingModificationBaseHeaderKHR ;
1487+
1488+ typedef struct XrBindingModificationsKHR {
1489+ XrStructureType type ;
1490+ const void * XR_MAY_ALIAS next ;
1491+ uint32_t bindingModificationCount ;
1492+ const XrBindingModificationBaseHeaderKHR * const * bindingModifications ;
1493+ } XrBindingModificationsKHR ;
1494+
1495+
1496+
14811497#define XR_EXT_performance_settings 1
14821498#define XR_EXT_performance_settings_SPEC_VERSION 1
14831499#define XR_EXT_PERFORMANCE_SETTINGS_EXTENSION_NAME "XR_EXT_performance_settings"
@@ -2179,59 +2195,6 @@ typedef struct XrViewConfigurationViewFovEPIC {
21792195
21802196
21812197
2182- #define XR_MSFT_spatial_anchor_export_preview 1
2183-
2184- XR_DEFINE_HANDLE (XrSpatialAnchorNeighborhoodDataStreamMSFT )
2185-
2186- #define XR_MSFT_spatial_anchor_export_preview_SPEC_VERSION 1
2187- #define XR_MSFT_SPATIAL_ANCHOR_EXPORT_PREVIEW_EXTENSION_NAME "XR_MSFT_spatial_anchor_export_preview"
2188-
2189- typedef enum XrSpatialAnchorExportPurposeMSFT {
2190- XR_SPATIAL_ANCHOR_EXPORT_PURPOSE_RELOCALIZATION_MSFT = 0 ,
2191- XR_SPATIAL_ANCHOR_EXPORT_PURPOSE_SHARING_MSFT = 1 ,
2192- XR_SPATIAL_ANCHOR_EXPORT_PURPOSE_MAX_ENUM_MSFT = 0x7FFFFFFF
2193- } XrSpatialAnchorExportPurposeMSFT ;
2194- typedef struct XrSpatialAnchorExportPurposeInfoMSFT {
2195- XrStructureType type ;
2196- const void * XR_MAY_ALIAS next ;
2197- XrSpatialAnchorExportPurposeMSFT exportPurpose ;
2198- } XrSpatialAnchorExportPurposeInfoMSFT ;
2199-
2200- typedef struct XrSpatialAnchorExportSufficiencyMSFT {
2201- XrStructureType type ;
2202- const void * XR_MAY_ALIAS next ;
2203- XrBool32 isMinimallySufficient ;
2204- float recommendedSufficiencyLevel ;
2205- float sufficiencyLevel ;
2206- } XrSpatialAnchorExportSufficiencyMSFT ;
2207-
2208- typedef XrResult (XRAPI_PTR * PFN_xrCreateSpatialAnchorNeighborhoodDataStreamMSFT )(XrSpatialAnchorMSFT spatialAnchor , const XrSpatialAnchorExportPurposeInfoMSFT * exportPurposeInfo , XrSpatialAnchorNeighborhoodDataStreamMSFT * neighborhoodDataStream );
2209- typedef XrResult (XRAPI_PTR * PFN_xrDestroySpatialAnchorNeighborhoodDataStreamMSFT )(XrSpatialAnchorNeighborhoodDataStreamMSFT neighborhoodDataStream );
2210- typedef XrResult (XRAPI_PTR * PFN_xrReadSpatialAnchorNeighborhoodDataMSFT )(XrSpatialAnchorNeighborhoodDataStreamMSFT neighborhoodDataStream , uint32_t bytesToRead , uint32_t * bytesRead , void * buffer );
2211- typedef XrResult (XRAPI_PTR * PFN_xrGetSpatialAnchorExportSufficiencyMSFT )(XrSpatialAnchorMSFT spatialAnchor , const XrSpatialAnchorExportPurposeInfoMSFT * exportPurposeInfo , XrSpatialAnchorExportSufficiencyMSFT * exportSufficiency );
2212-
2213- #ifndef XR_NO_PROTOTYPES
2214- XRAPI_ATTR XrResult XRAPI_CALL xrCreateSpatialAnchorNeighborhoodDataStreamMSFT (
2215- XrSpatialAnchorMSFT spatialAnchor ,
2216- const XrSpatialAnchorExportPurposeInfoMSFT * exportPurposeInfo ,
2217- XrSpatialAnchorNeighborhoodDataStreamMSFT * neighborhoodDataStream );
2218-
2219- XRAPI_ATTR XrResult XRAPI_CALL xrDestroySpatialAnchorNeighborhoodDataStreamMSFT (
2220- XrSpatialAnchorNeighborhoodDataStreamMSFT neighborhoodDataStream );
2221-
2222- XRAPI_ATTR XrResult XRAPI_CALL xrReadSpatialAnchorNeighborhoodDataMSFT (
2223- XrSpatialAnchorNeighborhoodDataStreamMSFT neighborhoodDataStream ,
2224- uint32_t bytesToRead ,
2225- uint32_t * bytesRead ,
2226- void * XR_MAY_ALIAS buffer );
2227-
2228- XRAPI_ATTR XrResult XRAPI_CALL xrGetSpatialAnchorExportSufficiencyMSFT (
2229- XrSpatialAnchorMSFT spatialAnchor ,
2230- const XrSpatialAnchorExportPurposeInfoMSFT * exportPurposeInfo ,
2231- XrSpatialAnchorExportSufficiencyMSFT * exportSufficiency );
2232- #endif
2233-
2234-
22352198#define XR_HUAWEI_controller_interaction 1
22362199#define XR_HUAWEI_controller_interaction_SPEC_VERSION 1
22372200#define XR_HUAWEI_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_HUAWEI_controller_interaction"
@@ -2545,6 +2508,79 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetSceneSerializedDataMSFT(
25452508 uint8_t * buffer );
25462509#endif
25472510
2511+
2512+ #define XR_FB_display_refresh_rate 1
2513+ #define XR_FB_display_refresh_rate_SPEC_VERSION 1
2514+ #define XR_FB_DISPLAY_REFRESH_RATE_EXTENSION_NAME "XR_FB_display_refresh_rate"
2515+ typedef struct XrEventDataDisplayRefreshRateChangedFB {
2516+ XrStructureType type ;
2517+ const void * XR_MAY_ALIAS next ;
2518+ float fromDisplayRefreshRate ;
2519+ float toDisplayRefreshRate ;
2520+ } XrEventDataDisplayRefreshRateChangedFB ;
2521+
2522+ typedef XrResult (XRAPI_PTR * PFN_xrEnumerateDisplayRefreshRatesFB )(XrSession session , uint32_t displayRefreshRateCapacityInput , uint32_t * displayRefreshRateCountOutput , float * displayRefreshRates );
2523+ typedef XrResult (XRAPI_PTR * PFN_xrGetDisplayRefreshRateFB )(XrSession session , float * displayRefreshRate );
2524+ typedef XrResult (XRAPI_PTR * PFN_xrRequestDisplayRefreshRateFB )(XrSession session , float displayRefreshRate );
2525+
2526+ #ifndef XR_NO_PROTOTYPES
2527+ XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateDisplayRefreshRatesFB (
2528+ XrSession session ,
2529+ uint32_t displayRefreshRateCapacityInput ,
2530+ uint32_t * displayRefreshRateCountOutput ,
2531+ float * displayRefreshRates );
2532+
2533+ XRAPI_ATTR XrResult XRAPI_CALL xrGetDisplayRefreshRateFB (
2534+ XrSession session ,
2535+ float * displayRefreshRate );
2536+
2537+ XRAPI_ATTR XrResult XRAPI_CALL xrRequestDisplayRefreshRateFB (
2538+ XrSession session ,
2539+ float displayRefreshRate );
2540+ #endif
2541+
2542+
2543+ #define XR_HTC_vive_cosmos_controller_interaction 1
2544+ #define XR_HTC_vive_cosmos_controller_interaction_SPEC_VERSION 1
2545+ #define XR_HTC_VIVE_COSMOS_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_HTC_vive_cosmos_controller_interaction"
2546+
2547+
2548+ #define XR_FB_color_space 1
2549+ #define XR_FB_color_space_SPEC_VERSION 1
2550+ #define XR_FB_COLOR_SPACE_EXTENSION_NAME "XR_FB_color_space"
2551+
2552+ typedef enum XrColorSpaceFB {
2553+ XR_COLOR_SPACE_UNMANAGED_FB = 0 ,
2554+ XR_COLOR_SPACE_REC2020_FB = 1 ,
2555+ XR_COLOR_SPACE_REC709_FB = 2 ,
2556+ XR_COLOR_SPACE_RIFT_CV1_FB = 3 ,
2557+ XR_COLOR_SPACE_RIFT_S_FB = 4 ,
2558+ XR_COLOR_SPACE_QUEST_FB = 5 ,
2559+ XR_COLOR_SPACE_P3_FB = 6 ,
2560+ XR_COLOR_SPACE_ADOBE_RGB_FB = 7 ,
2561+ XR_COLOR_SPACE_MAX_ENUM_FB = 0x7FFFFFFF
2562+ } XrColorSpaceFB ;
2563+ typedef struct XrSystemColorSpacePropertiesFB {
2564+ XrStructureType type ;
2565+ void * XR_MAY_ALIAS next ;
2566+ XrColorSpaceFB colorSpace ;
2567+ } XrSystemColorSpacePropertiesFB ;
2568+
2569+ typedef XrResult (XRAPI_PTR * PFN_xrEnumerateColorSpacesFB )(XrSession session , uint32_t colorSpaceCapacityInput , uint32_t * colorSpaceCountOutput , XrColorSpaceFB * colorSpaces );
2570+ typedef XrResult (XRAPI_PTR * PFN_xrSetColorSpaceFB )(XrSession session , const XrColorSpaceFB colorspace );
2571+
2572+ #ifndef XR_NO_PROTOTYPES
2573+ XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateColorSpacesFB (
2574+ XrSession session ,
2575+ uint32_t colorSpaceCapacityInput ,
2576+ uint32_t * colorSpaceCountOutput ,
2577+ XrColorSpaceFB * colorSpaces );
2578+
2579+ XRAPI_ATTR XrResult XRAPI_CALL xrSetColorSpaceFB (
2580+ XrSession session ,
2581+ const XrColorSpaceFB colorspace );
2582+ #endif
2583+
25482584#ifdef __cplusplus
25492585}
25502586#endif
0 commit comments