diff --git a/src/external/openxr_includes/openxr/openxr.h b/src/external/openxr_includes/openxr/openxr.h index 5d953fb9b..d5a3d7c89 100644 --- a/src/external/openxr_includes/openxr/openxr.h +++ b/src/external/openxr_includes/openxr/openxr.h @@ -25,7 +25,7 @@ extern "C" { ((((major) & 0xffffULL) << 48) | (((minor) & 0xffffULL) << 32) | ((patch) & 0xffffffffULL)) // OpenXR current version number. -#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 28) +#define XR_CURRENT_API_VERSION XR_MAKE_VERSION(1, 0, 32) #define XR_VERSION_MAJOR(version) (uint16_t)(((uint64_t)(version) >> 48)& 0xffffULL) #define XR_VERSION_MINOR(version) (uint16_t)(((uint64_t)(version) >> 32) & 0xffffULL) @@ -218,8 +218,21 @@ typedef enum XrResult { XR_RENDER_MODEL_UNAVAILABLE_FB = 1000119020, XR_ERROR_MARKER_NOT_TRACKED_VARJO = -1000124000, XR_ERROR_MARKER_ID_INVALID_VARJO = -1000124001, + XR_ERROR_MARKER_DETECTOR_PERMISSION_DENIED_ML = -1000138000, + XR_ERROR_MARKER_DETECTOR_LOCATE_FAILED_ML = -1000138001, + XR_ERROR_MARKER_DETECTOR_INVALID_DATA_QUERY_ML = -1000138002, + XR_ERROR_MARKER_DETECTOR_INVALID_CREATE_INFO_ML = -1000138003, + XR_ERROR_MARKER_INVALID_ML = -1000138004, + XR_ERROR_LOCALIZATION_MAP_INCOMPATIBLE_ML = -1000139000, + XR_ERROR_LOCALIZATION_MAP_UNAVAILABLE_ML = -1000139001, + XR_ERROR_LOCALIZATION_MAP_FAIL_ML = -1000139002, + XR_ERROR_LOCALIZATION_MAP_IMPORT_EXPORT_PERMISSION_DENIED_ML = -1000139003, + XR_ERROR_LOCALIZATION_MAP_PERMISSION_DENIED_ML = -1000139004, + XR_ERROR_LOCALIZATION_MAP_ALREADY_EXISTS_ML = -1000139005, + XR_ERROR_LOCALIZATION_MAP_CANNOT_EXPORT_CLOUD_MAP_ML = -1000139006, XR_ERROR_SPATIAL_ANCHOR_NAME_NOT_FOUND_MSFT = -1000142001, XR_ERROR_SPATIAL_ANCHOR_NAME_INVALID_MSFT = -1000142002, + XR_SCENE_MARKER_DATA_NOT_STRING_MSFT = 1000147000, XR_ERROR_SPACE_MAPPING_INSUFFICIENT_FB = -1000169000, XR_ERROR_SPACE_LOCALIZATION_FAILED_FB = -1000169001, XR_ERROR_SPACE_NETWORK_TIMEOUT_FB = -1000169002, @@ -227,6 +240,7 @@ typedef enum XrResult { XR_ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB = -1000169004, XR_ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META = -1000266000, XR_ERROR_HINT_ALREADY_SET_QCOM = -1000306000, + XR_ERROR_NOT_AN_ANCHOR_HTC = -1000319000, XR_ERROR_SPACE_NOT_LOCATABLE_EXT = -1000429000, XR_ERROR_PLANE_DETECTION_PERMISSION_DENIED_EXT = -1000429001, XR_RESULT_MAX_ENUM = 0x7FFFFFFF @@ -444,8 +458,28 @@ typedef enum XrStructureType { XR_TYPE_FRAME_END_INFO_ML = 1000135000, XR_TYPE_GLOBAL_DIMMER_FRAME_END_INFO_ML = 1000136000, XR_TYPE_COORDINATE_SPACE_CREATE_INFO_ML = 1000137000, + XR_TYPE_SYSTEM_MARKER_UNDERSTANDING_PROPERTIES_ML = 1000138000, + XR_TYPE_MARKER_DETECTOR_CREATE_INFO_ML = 1000138001, + XR_TYPE_MARKER_DETECTOR_ARUCO_INFO_ML = 1000138002, + XR_TYPE_MARKER_DETECTOR_SIZE_INFO_ML = 1000138003, + XR_TYPE_MARKER_DETECTOR_APRIL_TAG_INFO_ML = 1000138004, + XR_TYPE_MARKER_DETECTOR_CUSTOM_PROFILE_INFO_ML = 1000138005, + XR_TYPE_MARKER_DETECTOR_SNAPSHOT_INFO_ML = 1000138006, + XR_TYPE_MARKER_DETECTOR_STATE_ML = 1000138007, + XR_TYPE_MARKER_SPACE_CREATE_INFO_ML = 1000138008, + XR_TYPE_LOCALIZATION_MAP_ML = 1000139000, + XR_TYPE_EVENT_DATA_LOCALIZATION_CHANGED_ML = 1000139001, + XR_TYPE_MAP_LOCALIZATION_REQUEST_INFO_ML = 1000139002, + XR_TYPE_LOCALIZATION_MAP_IMPORT_INFO_ML = 1000139003, + XR_TYPE_LOCALIZATION_ENABLE_EVENTS_INFO_ML = 1000139004, + XR_TYPE_EVENT_DATA_HEADSET_FIT_CHANGED_ML = 1000472000, + XR_TYPE_EVENT_DATA_EYE_CALIBRATION_CHANGED_ML = 1000472001, + XR_TYPE_USER_CALIBRATION_ENABLE_EVENTS_INFO_ML = 1000472002, XR_TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT = 1000142000, XR_TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT = 1000142001, + XR_TYPE_SCENE_MARKERS_MSFT = 1000147000, + XR_TYPE_SCENE_MARKER_TYPE_FILTER_MSFT = 1000147001, + XR_TYPE_SCENE_MARKER_QR_CODES_MSFT = 1000147002, XR_TYPE_SPACE_QUERY_INFO_FB = 1000156001, XR_TYPE_SPACE_QUERY_RESULTS_FB = 1000156002, XR_TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB = 1000156003, @@ -491,6 +525,7 @@ typedef enum XrStructureType { XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB = 1000209002, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB = 1000212000, XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META = 1000216000, + XR_TYPE_PASSTHROUGH_PREFERENCES_META = 1000217000, XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META = 1000219001, XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META = 1000219002, XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META = 1000219003, @@ -526,6 +561,8 @@ typedef enum XrStructureType { XR_TYPE_FOVEATION_APPLY_INFO_HTC = 1000318000, XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC = 1000318001, XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC = 1000318002, + XR_TYPE_SYSTEM_ANCHOR_PROPERTIES_HTC = 1000319000, + XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_HTC = 1000319001, XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT = 1000373000, XR_TYPE_SYSTEM_FORCE_FEEDBACK_CURL_PROPERTIES_MNDX = 1000375000, XR_TYPE_FORCE_FEEDBACK_CURL_APPLY_LOCATIONS_MNDX = 1000375001, @@ -572,6 +609,7 @@ typedef enum XrReferenceSpaceType { XR_REFERENCE_SPACE_TYPE_STAGE = 3, XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT = 1000038000, XR_REFERENCE_SPACE_TYPE_COMBINED_EYE_VARJO = 1000121000, + XR_REFERENCE_SPACE_TYPE_LOCALIZATION_MAP_ML = 1000139000, XR_REFERENCE_SPACE_TYPE_LOCAL_FLOOR_EXT = 1000426000, XR_REFERENCE_SPACE_TYPE_MAX_ENUM = 0x7FFFFFFF } XrReferenceSpaceType; @@ -626,6 +664,8 @@ typedef enum XrObjectType { XR_OBJECT_TYPE_PASSTHROUGH_FB = 1000118000, XR_OBJECT_TYPE_PASSTHROUGH_LAYER_FB = 1000118002, XR_OBJECT_TYPE_GEOMETRY_INSTANCE_FB = 1000118004, + XR_OBJECT_TYPE_MARKER_DETECTOR_ML = 1000138000, + XR_OBJECT_TYPE_EXPORTED_LOCALIZATION_MAP_ML = 1000139000, XR_OBJECT_TYPE_SPATIAL_ANCHOR_STORE_CONNECTION_MSFT = 1000142000, XR_OBJECT_TYPE_FACE_TRACKER_FB = 1000201000, XR_OBJECT_TYPE_EYE_TRACKER_FB = 1000202000, @@ -1669,7 +1709,7 @@ typedef struct XrCompositionLayerColorScaleBiasKHR { #define XR_KHR_loader_init 1 -#define XR_KHR_loader_init_SPEC_VERSION 1 +#define XR_KHR_loader_init_SPEC_VERSION 2 #define XR_KHR_LOADER_INIT_EXTENSION_NAME "XR_KHR_loader_init" typedef struct XR_MAY_ALIAS XrLoaderInitInfoBaseHeaderKHR { XrStructureType type; @@ -1799,7 +1839,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrThermalGetTemperatureTrendEXT( #define XR_EXT_debug_utils 1 XR_DEFINE_HANDLE(XrDebugUtilsMessengerEXT) -#define XR_EXT_debug_utils_SPEC_VERSION 4 +#define XR_EXT_debug_utils_SPEC_VERSION 5 #define XR_EXT_DEBUG_UTILS_EXTENSION_NAME "XR_EXT_debug_utils" typedef XrFlags64 XrDebugUtilsMessageSeverityFlagsEXT; @@ -2115,9 +2155,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrSetInputDeviceLocationEXT( #define XR_MSFT_spatial_graph_bridge 1 XR_DEFINE_HANDLE(XrSpatialGraphNodeBindingMSFT) +#define XR_GUID_SIZE_MSFT 16 #define XR_MSFT_spatial_graph_bridge_SPEC_VERSION 2 #define XR_MSFT_SPATIAL_GRAPH_BRIDGE_EXTENSION_NAME "XR_MSFT_spatial_graph_bridge" -#define XR_GUID_SIZE_MSFT 16 typedef enum XrSpatialGraphNodeTypeMSFT { XR_SPATIAL_GRAPH_NODE_TYPE_STATIC_MSFT = 1, @@ -2453,9 +2493,9 @@ typedef struct XrSecondaryViewConfigurationSwapchainCreateInfoMSFT { #define XR_NULL_CONTROLLER_MODEL_KEY_MSFT 0 XR_DEFINE_ATOM(XrControllerModelKeyMSFT) +#define XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT 64 #define XR_MSFT_controller_model_SPEC_VERSION 2 #define XR_MSFT_CONTROLLER_MODEL_EXTENSION_NAME "XR_MSFT_controller_model" -#define XR_MAX_CONTROLLER_MODEL_NODE_NAME_SIZE_MSFT 64 typedef struct XrControllerModelKeyStateMSFT { XrStructureType type; void* XR_MAY_ALIAS next; @@ -2875,6 +2915,7 @@ typedef enum XrSceneComputeFeatureMSFT { XR_SCENE_COMPUTE_FEATURE_VISUAL_MESH_MSFT = 3, XR_SCENE_COMPUTE_FEATURE_COLLIDER_MESH_MSFT = 4, XR_SCENE_COMPUTE_FEATURE_SERIALIZE_SCENE_MSFT = 1000098000, + XR_SCENE_COMPUTE_FEATURE_MARKER_MSFT = 1000147000, XR_SCENE_COMPUTE_FEATURE_MAX_ENUM_MSFT = 0x7FFFFFFF } XrSceneComputeFeatureMSFT; @@ -2900,6 +2941,7 @@ typedef enum XrSceneComponentTypeMSFT { XR_SCENE_COMPONENT_TYPE_VISUAL_MESH_MSFT = 3, XR_SCENE_COMPONENT_TYPE_COLLIDER_MESH_MSFT = 4, XR_SCENE_COMPONENT_TYPE_SERIALIZED_SCENE_FRAGMENT_MSFT = 1000098000, + XR_SCENE_COMPONENT_TYPE_MARKER_MSFT = 1000147000, XR_SCENE_COMPONENT_TYPE_MAX_ENUM_MSFT = 0x7FFFFFFF } XrSceneComponentTypeMSFT; @@ -3266,7 +3308,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrRequestDisplayRefreshRateFB( #define XR_HTCX_vive_tracker_interaction 1 -#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 2 +#define XR_HTCX_vive_tracker_interaction_SPEC_VERSION 3 #define XR_HTCX_VIVE_TRACKER_INTERACTION_EXTENSION_NAME "XR_HTCX_vive_tracker_interaction" typedef struct XrViveTrackerPathsHTCX { XrStructureType type; @@ -3451,7 +3493,7 @@ typedef struct XrSystemColorSpacePropertiesFB { } XrSystemColorSpacePropertiesFB; typedef XrResult (XRAPI_PTR *PFN_xrEnumerateColorSpacesFB)(XrSession session, uint32_t colorSpaceCapacityInput, uint32_t* colorSpaceCountOutput, XrColorSpaceFB* colorSpaces); -typedef XrResult (XRAPI_PTR *PFN_xrSetColorSpaceFB)(XrSession session, const XrColorSpaceFB colorspace); +typedef XrResult (XRAPI_PTR *PFN_xrSetColorSpaceFB)(XrSession session, const XrColorSpaceFB colorSpace); #ifndef XR_NO_PROTOTYPES #ifdef XR_EXTENSION_PROTOTYPES @@ -3463,7 +3505,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrEnumerateColorSpacesFB( XRAPI_ATTR XrResult XRAPI_CALL xrSetColorSpaceFB( XrSession session, - const XrColorSpaceFB colorspace); + const XrColorSpaceFB colorSpace); #endif /* XR_EXTENSION_PROTOTYPES */ #endif /* !XR_NO_PROTOTYPES */ @@ -3756,9 +3798,9 @@ typedef struct XrFoveationLevelProfileCreateInfoFB { #define XR_FB_keyboard_tracking 1 +#define XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB 128 #define XR_FB_keyboard_tracking_SPEC_VERSION 1 #define XR_FB_KEYBOARD_TRACKING_EXTENSION_NAME "XR_FB_keyboard_tracking" -#define XR_MAX_KEYBOARD_TRACKING_NAME_SIZE_FB 128 typedef XrFlags64 XrKeyboardTrackingFlagsFB; // Flag bits for XrKeyboardTrackingFlagsFB @@ -3893,9 +3935,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrTriangleMeshEndVertexBufferUpdateFB( XR_DEFINE_HANDLE(XrPassthroughFB) XR_DEFINE_HANDLE(XrPassthroughLayerFB) XR_DEFINE_HANDLE(XrGeometryInstanceFB) +#define XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB 256 #define XR_FB_passthrough_SPEC_VERSION 3 #define XR_FB_PASSTHROUGH_EXTENSION_NAME "XR_FB_passthrough" -#define XR_PASSTHROUGH_COLOR_MAP_MONO_SIZE_FB 256 typedef enum XrPassthroughLayerPurposeFB { XR_PASSTHROUGH_LAYER_PURPOSE_RECONSTRUCTION_FB = 0, @@ -4084,9 +4126,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGeometryInstanceSetTransformFB( #define XR_NULL_RENDER_MODEL_KEY_FB 0 XR_DEFINE_ATOM(XrRenderModelKeyFB) +#define XR_MAX_RENDER_MODEL_NAME_SIZE_FB 64 #define XR_FB_render_model_SPEC_VERSION 4 #define XR_FB_RENDER_MODEL_EXTENSION_NAME "XR_FB_render_model" -#define XR_MAX_RENDER_MODEL_NAME_SIZE_FB 64 typedef XrFlags64 XrRenderModelFlagsFB; // Flag bits for XrRenderModelFlagsFB @@ -4130,7 +4172,7 @@ typedef struct XrSystemRenderModelPropertiesFB { XrBool32 supportsRenderModelLoading; } XrSystemRenderModelPropertiesFB; -// XrRenderModelCapabilitiesRequestFB extends XrSystemProperties +// XrRenderModelCapabilitiesRequestFB extends XrRenderModelPropertiesFB typedef struct XrRenderModelCapabilitiesRequestFB { XrStructureType type; void* XR_MAY_ALIAS next; @@ -4243,7 +4285,7 @@ typedef struct XrMarkerSpaceCreateInfoVARJO { typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingVARJO)(XrSession session, XrBool32 enabled); typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingTimeoutVARJO)(XrSession session, uint64_t markerId, XrDuration timeout); -typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingPredictionVARJO)(XrSession session, uint64_t markerId, XrBool32 enabled); +typedef XrResult (XRAPI_PTR *PFN_xrSetMarkerTrackingPredictionVARJO)(XrSession session, uint64_t markerId, XrBool32 enable); typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerSizeVARJO)(XrSession session, uint64_t markerId, XrExtent2Df* size); typedef XrResult (XRAPI_PTR *PFN_xrCreateMarkerSpaceVARJO)(XrSession session, const XrMarkerSpaceCreateInfoVARJO* createInfo, XrSpace* space); @@ -4261,7 +4303,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrSetMarkerTrackingTimeoutVARJO( XRAPI_ATTR XrResult XRAPI_CALL xrSetMarkerTrackingPredictionVARJO( XrSession session, uint64_t markerId, - XrBool32 enabled); + XrBool32 enable); XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerSizeVARJO( XrSession session, @@ -4332,6 +4374,360 @@ typedef struct XrGlobalDimmerFrameEndInfoML { +#define XR_ML_marker_understanding 1 +XR_DEFINE_ATOM(XrMarkerML) +XR_DEFINE_HANDLE(XrMarkerDetectorML) +#define XR_ML_marker_understanding_SPEC_VERSION 1 +#define XR_ML_MARKER_UNDERSTANDING_EXTENSION_NAME "XR_ML_marker_understanding" + +typedef enum XrMarkerDetectorProfileML { + XR_MARKER_DETECTOR_PROFILE_DEFAULT_ML = 0, + XR_MARKER_DETECTOR_PROFILE_SPEED_ML = 1, + XR_MARKER_DETECTOR_PROFILE_ACCURACY_ML = 2, + XR_MARKER_DETECTOR_PROFILE_SMALL_TARGETS_ML = 3, + XR_MARKER_DETECTOR_PROFILE_LARGE_FOV_ML = 4, + XR_MARKER_DETECTOR_PROFILE_CUSTOM_ML = 5, + XR_MARKER_DETECTOR_PROFILE_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorProfileML; + +typedef enum XrMarkerTypeML { + XR_MARKER_TYPE_ARUCO_ML = 0, + XR_MARKER_TYPE_APRIL_TAG_ML = 1, + XR_MARKER_TYPE_QR_ML = 2, + XR_MARKER_TYPE_EAN_13_ML = 3, + XR_MARKER_TYPE_UPC_A_ML = 4, + XR_MARKER_TYPE_CODE_128_ML = 5, + XR_MARKER_TYPE_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerTypeML; + +typedef enum XrMarkerArucoDictML { + XR_MARKER_ARUCO_DICT_4X4_50_ML = 0, + XR_MARKER_ARUCO_DICT_4X4_100_ML = 1, + XR_MARKER_ARUCO_DICT_4X4_250_ML = 2, + XR_MARKER_ARUCO_DICT_4X4_1000_ML = 3, + XR_MARKER_ARUCO_DICT_5X5_50_ML = 4, + XR_MARKER_ARUCO_DICT_5X5_100_ML = 5, + XR_MARKER_ARUCO_DICT_5X5_250_ML = 6, + XR_MARKER_ARUCO_DICT_5X5_1000_ML = 7, + XR_MARKER_ARUCO_DICT_6X6_50_ML = 8, + XR_MARKER_ARUCO_DICT_6X6_100_ML = 9, + XR_MARKER_ARUCO_DICT_6X6_250_ML = 10, + XR_MARKER_ARUCO_DICT_6X6_1000_ML = 11, + XR_MARKER_ARUCO_DICT_7X7_50_ML = 12, + XR_MARKER_ARUCO_DICT_7X7_100_ML = 13, + XR_MARKER_ARUCO_DICT_7X7_250_ML = 14, + XR_MARKER_ARUCO_DICT_7X7_1000_ML = 15, + XR_MARKER_ARUCO_DICT_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerArucoDictML; + +typedef enum XrMarkerAprilTagDictML { + XR_MARKER_APRIL_TAG_DICT_16H5_ML = 0, + XR_MARKER_APRIL_TAG_DICT_25H9_ML = 1, + XR_MARKER_APRIL_TAG_DICT_36H10_ML = 2, + XR_MARKER_APRIL_TAG_DICT_36H11_ML = 3, + XR_MARKER_APRIL_TAG_DICT_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerAprilTagDictML; + +typedef enum XrMarkerDetectorFpsML { + XR_MARKER_DETECTOR_FPS_LOW_ML = 0, + XR_MARKER_DETECTOR_FPS_MEDIUM_ML = 1, + XR_MARKER_DETECTOR_FPS_HIGH_ML = 2, + XR_MARKER_DETECTOR_FPS_MAX_ML = 3, + XR_MARKER_DETECTOR_FPS_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorFpsML; + +typedef enum XrMarkerDetectorResolutionML { + XR_MARKER_DETECTOR_RESOLUTION_LOW_ML = 0, + XR_MARKER_DETECTOR_RESOLUTION_MEDIUM_ML = 1, + XR_MARKER_DETECTOR_RESOLUTION_HIGH_ML = 2, + XR_MARKER_DETECTOR_RESOLUTION_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorResolutionML; + +typedef enum XrMarkerDetectorCameraML { + XR_MARKER_DETECTOR_CAMERA_RGB_CAMERA_ML = 0, + XR_MARKER_DETECTOR_CAMERA_WORLD_CAMERAS_ML = 1, + XR_MARKER_DETECTOR_CAMERA_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorCameraML; + +typedef enum XrMarkerDetectorCornerRefineMethodML { + XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_NONE_ML = 0, + XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_SUBPIX_ML = 1, + XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_CONTOUR_ML = 2, + XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_APRIL_TAG_ML = 3, + XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorCornerRefineMethodML; + +typedef enum XrMarkerDetectorFullAnalysisIntervalML { + XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MAX_ML = 0, + XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_FAST_ML = 1, + XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MEDIUM_ML = 2, + XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_SLOW_ML = 3, + XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorFullAnalysisIntervalML; + +typedef enum XrMarkerDetectorStatusML { + XR_MARKER_DETECTOR_STATUS_PENDING_ML = 0, + XR_MARKER_DETECTOR_STATUS_READY_ML = 1, + XR_MARKER_DETECTOR_STATUS_ERROR_ML = 2, + XR_MARKER_DETECTOR_STATUS_MAX_ENUM_ML = 0x7FFFFFFF +} XrMarkerDetectorStatusML; +// XrSystemMarkerUnderstandingPropertiesML extends XrSystemProperties +typedef struct XrSystemMarkerUnderstandingPropertiesML { + XrStructureType type; + void* XR_MAY_ALIAS next; + XrBool32 supportsMarkerUnderstanding; +} XrSystemMarkerUnderstandingPropertiesML; + +typedef struct XrMarkerDetectorCreateInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrMarkerDetectorProfileML profile; + XrMarkerTypeML markerType; +} XrMarkerDetectorCreateInfoML; + +// XrMarkerDetectorArucoInfoML extends XrMarkerDetectorCreateInfoML +typedef struct XrMarkerDetectorArucoInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrMarkerArucoDictML arucoDict; +} XrMarkerDetectorArucoInfoML; + +// XrMarkerDetectorSizeInfoML extends XrMarkerDetectorCreateInfoML +typedef struct XrMarkerDetectorSizeInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + float markerLength; +} XrMarkerDetectorSizeInfoML; + +// XrMarkerDetectorAprilTagInfoML extends XrMarkerDetectorCreateInfoML +typedef struct XrMarkerDetectorAprilTagInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrMarkerAprilTagDictML aprilTagDict; +} XrMarkerDetectorAprilTagInfoML; + +// XrMarkerDetectorCustomProfileInfoML extends XrMarkerDetectorCreateInfoML +typedef struct XrMarkerDetectorCustomProfileInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrMarkerDetectorFpsML fpsHint; + XrMarkerDetectorResolutionML resolutionHint; + XrMarkerDetectorCameraML cameraHint; + XrMarkerDetectorCornerRefineMethodML cornerRefineMethod; + XrBool32 useEdgeRefinement; + XrMarkerDetectorFullAnalysisIntervalML fullAnalysisIntervalHint; +} XrMarkerDetectorCustomProfileInfoML; + +typedef struct XrMarkerDetectorSnapshotInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; +} XrMarkerDetectorSnapshotInfoML; + +typedef struct XrMarkerDetectorStateML { + XrStructureType type; + void* XR_MAY_ALIAS next; + XrMarkerDetectorStatusML state; +} XrMarkerDetectorStateML; + +typedef struct XrMarkerSpaceCreateInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrMarkerDetectorML markerDetector; + XrMarkerML marker; + XrPosef poseInMarkerSpace; +} XrMarkerSpaceCreateInfoML; + +typedef XrResult (XRAPI_PTR *PFN_xrCreateMarkerDetectorML)(XrSession session, const XrMarkerDetectorCreateInfoML* createInfo, XrMarkerDetectorML* markerDetector); +typedef XrResult (XRAPI_PTR *PFN_xrDestroyMarkerDetectorML)(XrMarkerDetectorML markerDetector); +typedef XrResult (XRAPI_PTR *PFN_xrSnapshotMarkerDetectorML)(XrMarkerDetectorML markerDetector, XrMarkerDetectorSnapshotInfoML* snapshotInfo); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerDetectorStateML)(XrMarkerDetectorML markerDetector, XrMarkerDetectorStateML* state); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkersML)(XrMarkerDetectorML markerDetector, uint32_t markerCapacityInput, uint32_t* markerCountOutput, XrMarkerML* markers); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerReprojectionErrorML)(XrMarkerDetectorML markerDetector, XrMarkerML marker, float* reprojectionErrorMeters); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerLengthML)(XrMarkerDetectorML markerDetector, XrMarkerML marker, float* meters); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerNumberML)(XrMarkerDetectorML markerDetector, XrMarkerML marker, uint64_t* number); +typedef XrResult (XRAPI_PTR *PFN_xrGetMarkerStringML)(XrMarkerDetectorML markerDetector, XrMarkerML marker, uint32_t bufferCapacityInput, uint32_t* bufferCountOutput, char* buffer); +typedef XrResult (XRAPI_PTR *PFN_xrCreateMarkerSpaceML)(XrSession session, const XrMarkerSpaceCreateInfoML* createInfo, XrSpace* space); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrCreateMarkerDetectorML( + XrSession session, + const XrMarkerDetectorCreateInfoML* createInfo, + XrMarkerDetectorML* markerDetector); + +XRAPI_ATTR XrResult XRAPI_CALL xrDestroyMarkerDetectorML( + XrMarkerDetectorML markerDetector); + +XRAPI_ATTR XrResult XRAPI_CALL xrSnapshotMarkerDetectorML( + XrMarkerDetectorML markerDetector, + XrMarkerDetectorSnapshotInfoML* snapshotInfo); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerDetectorStateML( + XrMarkerDetectorML markerDetector, + XrMarkerDetectorStateML* state); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkersML( + XrMarkerDetectorML markerDetector, + uint32_t markerCapacityInput, + uint32_t* markerCountOutput, + XrMarkerML* markers); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerReprojectionErrorML( + XrMarkerDetectorML markerDetector, + XrMarkerML marker, + float* reprojectionErrorMeters); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerLengthML( + XrMarkerDetectorML markerDetector, + XrMarkerML marker, + float* meters); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerNumberML( + XrMarkerDetectorML markerDetector, + XrMarkerML marker, + uint64_t* number); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetMarkerStringML( + XrMarkerDetectorML markerDetector, + XrMarkerML marker, + uint32_t bufferCapacityInput, + uint32_t* bufferCountOutput, + char* buffer); + +XRAPI_ATTR XrResult XRAPI_CALL xrCreateMarkerSpaceML( + XrSession session, + const XrMarkerSpaceCreateInfoML* createInfo, + XrSpace* space); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + +#define XR_ML_localization_map 1 +XR_DEFINE_HANDLE(XrExportedLocalizationMapML) +#define XR_MAX_LOCALIZATION_MAP_NAME_LENGTH_ML 64 +#define XR_ML_localization_map_SPEC_VERSION 1 +#define XR_ML_LOCALIZATION_MAP_EXTENSION_NAME "XR_ML_localization_map" + +typedef enum XrLocalizationMapStateML { + XR_LOCALIZATION_MAP_STATE_NOT_LOCALIZED_ML = 0, + XR_LOCALIZATION_MAP_STATE_LOCALIZED_ML = 1, + XR_LOCALIZATION_MAP_STATE_LOCALIZATION_PENDING_ML = 2, + XR_LOCALIZATION_MAP_STATE_LOCALIZATION_SLEEPING_BEFORE_RETRY_ML = 3, + XR_LOCALIZATION_MAP_STATE_MAX_ENUM_ML = 0x7FFFFFFF +} XrLocalizationMapStateML; + +typedef enum XrLocalizationMapTypeML { + XR_LOCALIZATION_MAP_TYPE_ON_DEVICE_ML = 0, + XR_LOCALIZATION_MAP_TYPE_CLOUD_ML = 1, + XR_LOCALIZATION_MAP_TYPE_MAX_ENUM_ML = 0x7FFFFFFF +} XrLocalizationMapTypeML; + +typedef enum XrLocalizationMapConfidenceML { + XR_LOCALIZATION_MAP_CONFIDENCE_POOR_ML = 0, + XR_LOCALIZATION_MAP_CONFIDENCE_FAIR_ML = 1, + XR_LOCALIZATION_MAP_CONFIDENCE_GOOD_ML = 2, + XR_LOCALIZATION_MAP_CONFIDENCE_EXCELLENT_ML = 3, + XR_LOCALIZATION_MAP_CONFIDENCE_MAX_ENUM_ML = 0x7FFFFFFF +} XrLocalizationMapConfidenceML; +typedef XrFlags64 XrLocalizationMapErrorFlagsML; + +// Flag bits for XrLocalizationMapErrorFlagsML +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_UNKNOWN_BIT_ML = 0x00000001; +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_OUT_OF_MAPPED_AREA_BIT_ML = 0x00000002; +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_LOW_FEATURE_COUNT_BIT_ML = 0x00000004; +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_EXCESSIVE_MOTION_BIT_ML = 0x00000008; +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_LOW_LIGHT_BIT_ML = 0x00000010; +static const XrLocalizationMapErrorFlagsML XR_LOCALIZATION_MAP_ERROR_HEADPOSE_BIT_ML = 0x00000020; + +typedef struct XrLocalizationMapML { + XrStructureType type; + void* XR_MAY_ALIAS next; + char name[XR_MAX_LOCALIZATION_MAP_NAME_LENGTH_ML]; + XrUuidEXT mapUuid; + XrLocalizationMapTypeML mapType; +} XrLocalizationMapML; + +typedef struct XrEventDataLocalizationChangedML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrSession session; + XrLocalizationMapStateML state; + XrLocalizationMapML map; + XrLocalizationMapConfidenceML confidence; + XrLocalizationMapErrorFlagsML errorFlags; +} XrEventDataLocalizationChangedML; + +typedef struct XrLocalizationMapQueryInfoBaseHeaderML { + XrStructureType type; + const void* XR_MAY_ALIAS next; +} XrLocalizationMapQueryInfoBaseHeaderML; + +typedef struct XrMapLocalizationRequestInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrUuidEXT mapUuid; +} XrMapLocalizationRequestInfoML; + +typedef struct XrLocalizationMapImportInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t size; + char* data; +} XrLocalizationMapImportInfoML; + +typedef struct XrLocalizationEnableEventsInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrBool32 enabled; +} XrLocalizationEnableEventsInfoML; + +typedef XrResult (XRAPI_PTR *PFN_xrEnableLocalizationEventsML)(XrSession session, const XrLocalizationEnableEventsInfoML * info); +typedef XrResult (XRAPI_PTR *PFN_xrQueryLocalizationMapsML)(XrSession session, const XrLocalizationMapQueryInfoBaseHeaderML* queryInfo, uint32_t mapCapacityInput, uint32_t * mapCountOutput, XrLocalizationMapML* maps); +typedef XrResult (XRAPI_PTR *PFN_xrRequestMapLocalizationML)(XrSession session, const XrMapLocalizationRequestInfoML* requestInfo); +typedef XrResult (XRAPI_PTR *PFN_xrImportLocalizationMapML)(XrSession session, const XrLocalizationMapImportInfoML* importInfo, XrUuidEXT* mapUuid); +typedef XrResult (XRAPI_PTR *PFN_xrCreateExportedLocalizationMapML)(XrSession session, const XrUuidEXT* mapUuid, XrExportedLocalizationMapML* map); +typedef XrResult (XRAPI_PTR *PFN_xrDestroyExportedLocalizationMapML)(XrExportedLocalizationMapML map); +typedef XrResult (XRAPI_PTR *PFN_xrGetExportedLocalizationMapDataML)(XrExportedLocalizationMapML map, uint32_t bufferCapacityInput, uint32_t* bufferCountOutput, char* buffer); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrEnableLocalizationEventsML( + XrSession session, + const XrLocalizationEnableEventsInfoML * info); + +XRAPI_ATTR XrResult XRAPI_CALL xrQueryLocalizationMapsML( + XrSession session, + const XrLocalizationMapQueryInfoBaseHeaderML* queryInfo, + uint32_t mapCapacityInput, + uint32_t * mapCountOutput, + XrLocalizationMapML* maps); + +XRAPI_ATTR XrResult XRAPI_CALL xrRequestMapLocalizationML( + XrSession session, + const XrMapLocalizationRequestInfoML* requestInfo); + +XRAPI_ATTR XrResult XRAPI_CALL xrImportLocalizationMapML( + XrSession session, + const XrLocalizationMapImportInfoML* importInfo, + XrUuidEXT* mapUuid); + +XRAPI_ATTR XrResult XRAPI_CALL xrCreateExportedLocalizationMapML( + XrSession session, + const XrUuidEXT* mapUuid, + XrExportedLocalizationMapML* map); + +XRAPI_ATTR XrResult XRAPI_CALL xrDestroyExportedLocalizationMapML( + XrExportedLocalizationMapML map); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetExportedLocalizationMapDataML( + XrExportedLocalizationMapML map, + uint32_t bufferCapacityInput, + uint32_t* bufferCountOutput, + char* buffer); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + #define XR_MSFT_spatial_anchor_persistence 1 XR_DEFINE_HANDLE(XrSpatialAnchorStoreConnectionMSFT) #define XR_MAX_SPATIAL_ANCHOR_NAME_SIZE_MSFT 256 @@ -4358,7 +4754,7 @@ typedef struct XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT { typedef XrResult (XRAPI_PTR *PFN_xrCreateSpatialAnchorStoreConnectionMSFT)(XrSession session, XrSpatialAnchorStoreConnectionMSFT* spatialAnchorStore); typedef XrResult (XRAPI_PTR *PFN_xrDestroySpatialAnchorStoreConnectionMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore); typedef XrResult (XRAPI_PTR *PFN_xrPersistSpatialAnchorMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore, const XrSpatialAnchorPersistenceInfoMSFT* spatialAnchorPersistenceInfo); -typedef XrResult (XRAPI_PTR *PFN_xrEnumeratePersistedSpatialAnchorNamesMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore, uint32_t spatialAnchorNamesCapacityInput, uint32_t* spatialAnchorNamesCountOutput, XrSpatialAnchorPersistenceNameMSFT* persistedAnchorNames); +typedef XrResult (XRAPI_PTR *PFN_xrEnumeratePersistedSpatialAnchorNamesMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore, uint32_t spatialAnchorNameCapacityInput, uint32_t* spatialAnchorNameCountOutput, XrSpatialAnchorPersistenceNameMSFT* spatialAnchorNames); typedef XrResult (XRAPI_PTR *PFN_xrCreateSpatialAnchorFromPersistedNameMSFT)(XrSession session, const XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT* spatialAnchorCreateInfo, XrSpatialAnchorMSFT* spatialAnchor); typedef XrResult (XRAPI_PTR *PFN_xrUnpersistSpatialAnchorMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore, const XrSpatialAnchorPersistenceNameMSFT* spatialAnchorPersistenceName); typedef XrResult (XRAPI_PTR *PFN_xrClearSpatialAnchorStoreMSFT)(XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore); @@ -4378,9 +4774,9 @@ XRAPI_ATTR XrResult XRAPI_CALL xrPersistSpatialAnchorMSFT( XRAPI_ATTR XrResult XRAPI_CALL xrEnumeratePersistedSpatialAnchorNamesMSFT( XrSpatialAnchorStoreConnectionMSFT spatialAnchorStore, - uint32_t spatialAnchorNamesCapacityInput, - uint32_t* spatialAnchorNamesCountOutput, - XrSpatialAnchorPersistenceNameMSFT* persistedAnchorNames); + uint32_t spatialAnchorNameCapacityInput, + uint32_t* spatialAnchorNameCountOutput, + XrSpatialAnchorPersistenceNameMSFT* spatialAnchorNames); XRAPI_ATTR XrResult XRAPI_CALL xrCreateSpatialAnchorFromPersistedNameMSFT( XrSession session, @@ -4397,6 +4793,78 @@ XRAPI_ATTR XrResult XRAPI_CALL xrClearSpatialAnchorStoreMSFT( #endif /* !XR_NO_PROTOTYPES */ +#define XR_MSFT_scene_marker 1 +#define XR_MSFT_scene_marker_SPEC_VERSION 1 +#define XR_MSFT_SCENE_MARKER_EXTENSION_NAME "XR_MSFT_scene_marker" + +typedef enum XrSceneMarkerTypeMSFT { + XR_SCENE_MARKER_TYPE_QR_CODE_MSFT = 1, + XR_SCENE_MARKER_TYPE_MAX_ENUM_MSFT = 0x7FFFFFFF +} XrSceneMarkerTypeMSFT; + +typedef enum XrSceneMarkerQRCodeSymbolTypeMSFT { + XR_SCENE_MARKER_QR_CODE_SYMBOL_TYPE_QR_CODE_MSFT = 1, + XR_SCENE_MARKER_QR_CODE_SYMBOL_TYPE_MICRO_QR_CODE_MSFT = 2, + XR_SCENE_MARKER_QRCODE_SYMBOL_TYPE_MAX_ENUM_MSFT = 0x7FFFFFFF +} XrSceneMarkerQRCodeSymbolTypeMSFT; +typedef struct XrSceneMarkerMSFT { + XrSceneMarkerTypeMSFT markerType; + XrTime lastSeenTime; + XrOffset2Df center; + XrExtent2Df size; +} XrSceneMarkerMSFT; + +// XrSceneMarkersMSFT extends XrSceneComponentsMSFT +typedef struct XrSceneMarkersMSFT { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t sceneMarkerCapacityInput; + XrSceneMarkerMSFT* sceneMarkers; +} XrSceneMarkersMSFT; + +// XrSceneMarkerTypeFilterMSFT extends XrSceneComponentsGetInfoMSFT +typedef struct XrSceneMarkerTypeFilterMSFT { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t markerTypeCount; + XrSceneMarkerTypeMSFT* markerTypes; +} XrSceneMarkerTypeFilterMSFT; + +typedef struct XrSceneMarkerQRCodeMSFT { + XrSceneMarkerQRCodeSymbolTypeMSFT symbolType; + uint8_t version; +} XrSceneMarkerQRCodeMSFT; + +// XrSceneMarkerQRCodesMSFT extends XrSceneComponentsMSFT +typedef struct XrSceneMarkerQRCodesMSFT { + XrStructureType type; + const void* XR_MAY_ALIAS next; + uint32_t qrCodeCapacityInput; + XrSceneMarkerQRCodeMSFT* qrCodes; +} XrSceneMarkerQRCodesMSFT; + +typedef XrResult (XRAPI_PTR *PFN_xrGetSceneMarkerRawDataMSFT)(XrSceneMSFT scene, const XrUuidMSFT* markerId, uint32_t bufferCapacityInput, uint32_t* bufferCountOutput, uint8_t* buffer); +typedef XrResult (XRAPI_PTR *PFN_xrGetSceneMarkerDecodedStringMSFT)(XrSceneMSFT scene, const XrUuidMSFT* markerId, uint32_t bufferCapacityInput, uint32_t* bufferCountOutput, char* buffer); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrGetSceneMarkerRawDataMSFT( + XrSceneMSFT scene, + const XrUuidMSFT* markerId, + uint32_t bufferCapacityInput, + uint32_t* bufferCountOutput, + uint8_t* buffer); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetSceneMarkerDecodedStringMSFT( + XrSceneMSFT scene, + const XrUuidMSFT* markerId, + uint32_t bufferCapacityInput, + uint32_t* bufferCountOutput, + char* buffer); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + #define XR_ULTRALEAP_hand_tracking_forearm 1 #define XR_HAND_FOREARM_JOINT_COUNT_ULTRALEAP 27 @@ -5238,6 +5706,31 @@ typedef struct XrLocalDimmingFrameEndInfoMETA { +#define XR_META_passthrough_preferences 1 +#define XR_META_passthrough_preferences_SPEC_VERSION 1 +#define XR_META_PASSTHROUGH_PREFERENCES_EXTENSION_NAME "XR_META_passthrough_preferences" +typedef XrFlags64 XrPassthroughPreferenceFlagsMETA; + +// Flag bits for XrPassthroughPreferenceFlagsMETA +static const XrPassthroughPreferenceFlagsMETA XR_PASSTHROUGH_PREFERENCE_DEFAULT_TO_ACTIVE_BIT_META = 0x00000001; + +typedef struct XrPassthroughPreferencesMETA { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrPassthroughPreferenceFlagsMETA flags; +} XrPassthroughPreferencesMETA; + +typedef XrResult (XRAPI_PTR *PFN_xrGetPassthroughPreferencesMETA)(XrSession session, XrPassthroughPreferencesMETA* preferences); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrGetPassthroughPreferencesMETA( + XrSession session, + XrPassthroughPreferencesMETA* preferences); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + #define XR_META_virtual_keyboard 1 XR_DEFINE_HANDLE(XrVirtualKeyboardMETA) #define XR_MAX_VIRTUAL_KEYBOARD_COMMIT_TEXT_SIZE_META 3992 @@ -5707,6 +6200,11 @@ XRAPI_ATTR XrResult XRAPI_CALL xrUpdatePassthroughColorLutMETA( #endif /* !XR_NO_PROTOTYPES */ +#define XR_META_touch_controller_plus 1 +#define XR_META_touch_controller_plus_SPEC_VERSION 1 +#define XR_META_TOUCH_CONTROLLER_PLUS_EXTENSION_NAME "XR_META_touch_controller_plus" + + #define XR_EXT_uuid 1 #define XR_EXT_uuid_SPEC_VERSION 1 #define XR_EXT_UUID_EXTENSION_NAME "XR_EXT_uuid" @@ -5873,6 +6371,46 @@ XRAPI_ATTR XrResult XRAPI_CALL xrApplyFoveationHTC( #endif /* !XR_NO_PROTOTYPES */ +#define XR_HTC_anchor 1 +#define XR_MAX_SPATIAL_ANCHOR_NAME_SIZE_HTC 256 +#define XR_HTC_anchor_SPEC_VERSION 1 +#define XR_HTC_ANCHOR_EXTENSION_NAME "XR_HTC_anchor" +// XrSystemAnchorPropertiesHTC extends XrSystemProperties +typedef struct XrSystemAnchorPropertiesHTC { + XrStructureType type; + void* XR_MAY_ALIAS next; + XrBool32 supportsAnchor; +} XrSystemAnchorPropertiesHTC; + +typedef struct XrSpatialAnchorNameHTC { + char name[XR_MAX_SPATIAL_ANCHOR_NAME_SIZE_HTC]; +} XrSpatialAnchorNameHTC; + +typedef struct XrSpatialAnchorCreateInfoHTC { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrSpace space; + XrPosef poseInSpace; + XrSpatialAnchorNameHTC name; +} XrSpatialAnchorCreateInfoHTC; + +typedef XrResult (XRAPI_PTR *PFN_xrCreateSpatialAnchorHTC)(XrSession session, const XrSpatialAnchorCreateInfoHTC* createInfo, XrSpace* anchor); +typedef XrResult (XRAPI_PTR *PFN_xrGetSpatialAnchorNameHTC)(XrSpace anchor, XrSpatialAnchorNameHTC* name); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrCreateSpatialAnchorHTC( + XrSession session, + const XrSpatialAnchorCreateInfoHTC* createInfo, + XrSpace* anchor); + +XRAPI_ATTR XrResult XRAPI_CALL xrGetSpatialAnchorNameHTC( + XrSpace anchor, + XrSpatialAnchorNameHTC* name); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + #define XR_EXT_active_action_set_priority 1 #define XR_EXT_active_action_set_priority_SPEC_VERSION 1 #define XR_EXT_ACTIVE_ACTION_SET_PRIORITY_EXTENSION_NAME "XR_EXT_active_action_set_priority" @@ -5934,7 +6472,7 @@ XRAPI_ATTR XrResult XRAPI_CALL xrApplyForceFeedbackCurlMNDX( #define XR_BD_controller_interaction 1 -#define XR_BD_controller_interaction_SPEC_VERSION 1 +#define XR_BD_controller_interaction_SPEC_VERSION 2 #define XR_BD_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_BD_controller_interaction" @@ -6128,6 +6666,60 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetPlanePolygonBufferEXT( #define XR_OPPO_controller_interaction_SPEC_VERSION 1 #define XR_OPPO_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_OPPO_controller_interaction" + +#define XR_ML_user_calibration 1 +#define XR_ML_user_calibration_SPEC_VERSION 1 +#define XR_ML_USER_CALIBRATION_EXTENSION_NAME "XR_ML_user_calibration" + +typedef enum XrHeadsetFitStatusML { + XR_HEADSET_FIT_STATUS_UNKNOWN_ML = 0, + XR_HEADSET_FIT_STATUS_NOT_WORN_ML = 1, + XR_HEADSET_FIT_STATUS_GOOD_FIT_ML = 2, + XR_HEADSET_FIT_STATUS_BAD_FIT_ML = 3, + XR_HEADSET_FIT_STATUS_MAX_ENUM_ML = 0x7FFFFFFF +} XrHeadsetFitStatusML; + +typedef enum XrEyeCalibrationStatusML { + XR_EYE_CALIBRATION_STATUS_UNKNOWN_ML = 0, + XR_EYE_CALIBRATION_STATUS_NONE_ML = 1, + XR_EYE_CALIBRATION_STATUS_COARSE_ML = 2, + XR_EYE_CALIBRATION_STATUS_FINE_ML = 3, + XR_EYE_CALIBRATION_STATUS_MAX_ENUM_ML = 0x7FFFFFFF +} XrEyeCalibrationStatusML; +typedef struct XrEventDataHeadsetFitChangedML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrHeadsetFitStatusML status; + XrTime time; +} XrEventDataHeadsetFitChangedML; + +typedef struct XrEventDataEyeCalibrationChangedML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrEyeCalibrationStatusML status; +} XrEventDataEyeCalibrationChangedML; + +typedef struct XrUserCalibrationEnableEventsInfoML { + XrStructureType type; + const void* XR_MAY_ALIAS next; + XrBool32 enabled; +} XrUserCalibrationEnableEventsInfoML; + +typedef XrResult (XRAPI_PTR *PFN_xrEnableUserCalibrationEventsML)(XrInstance instance, const XrUserCalibrationEnableEventsInfoML* enableInfo); + +#ifndef XR_NO_PROTOTYPES +#ifdef XR_EXTENSION_PROTOTYPES +XRAPI_ATTR XrResult XRAPI_CALL xrEnableUserCalibrationEventsML( + XrInstance instance, + const XrUserCalibrationEnableEventsInfoML* enableInfo); +#endif /* XR_EXTENSION_PROTOTYPES */ +#endif /* !XR_NO_PROTOTYPES */ + + +#define XR_YVR_controller_interaction 1 +#define XR_YVR_controller_interaction_SPEC_VERSION 1 +#define XR_YVR_CONTROLLER_INTERACTION_EXTENSION_NAME "XR_YVR_controller_interaction" + #ifdef __cplusplus } #endif diff --git a/src/external/openxr_includes/openxr/openxr_platform.h b/src/external/openxr_includes/openxr/openxr_platform.h index b0a5328f3..e4ddfcbb7 100644 --- a/src/external/openxr_includes/openxr/openxr_platform.h +++ b/src/external/openxr_includes/openxr/openxr_platform.h @@ -491,14 +491,15 @@ XRAPI_ATTR XrResult XRAPI_CALL xrGetVulkanGraphicsRequirements2KHR( #define XR_MNDX_egl_enable 1 #define XR_MNDX_egl_enable_SPEC_VERSION 1 #define XR_MNDX_EGL_ENABLE_EXTENSION_NAME "XR_MNDX_egl_enable" +typedef PFN_xrVoidFunction (*PFN_xrEglGetProcAddressMNDX)(const char *name); // XrGraphicsBindingEGLMNDX extends XrSessionCreateInfo typedef struct XrGraphicsBindingEGLMNDX { - XrStructureType type; - const void* XR_MAY_ALIAS next; - PFNEGLGETPROCADDRESSPROC getProcAddress; - EGLDisplay display; - EGLConfig config; - EGLContext context; + XrStructureType type; + const void* XR_MAY_ALIAS next; + PFN_xrEglGetProcAddressMNDX getProcAddress; + EGLDisplay display; + EGLConfig config; + EGLContext context; } XrGraphicsBindingEGLMNDX; #endif /* XR_USE_PLATFORM_EGL */ diff --git a/src/external/openxr_includes/openxr/openxr_reflection.h b/src/external/openxr_includes/openxr/openxr_reflection.h index c53d41236..ce17cbf14 100644 --- a/src/external/openxr_includes/openxr/openxr_reflection.h +++ b/src/external/openxr_includes/openxr/openxr_reflection.h @@ -114,8 +114,21 @@ XR_ENUM_STR(XrResult); _(XR_RENDER_MODEL_UNAVAILABLE_FB, 1000119020) \ _(XR_ERROR_MARKER_NOT_TRACKED_VARJO, -1000124000) \ _(XR_ERROR_MARKER_ID_INVALID_VARJO, -1000124001) \ + _(XR_ERROR_MARKER_DETECTOR_PERMISSION_DENIED_ML, -1000138000) \ + _(XR_ERROR_MARKER_DETECTOR_LOCATE_FAILED_ML, -1000138001) \ + _(XR_ERROR_MARKER_DETECTOR_INVALID_DATA_QUERY_ML, -1000138002) \ + _(XR_ERROR_MARKER_DETECTOR_INVALID_CREATE_INFO_ML, -1000138003) \ + _(XR_ERROR_MARKER_INVALID_ML, -1000138004) \ + _(XR_ERROR_LOCALIZATION_MAP_INCOMPATIBLE_ML, -1000139000) \ + _(XR_ERROR_LOCALIZATION_MAP_UNAVAILABLE_ML, -1000139001) \ + _(XR_ERROR_LOCALIZATION_MAP_FAIL_ML, -1000139002) \ + _(XR_ERROR_LOCALIZATION_MAP_IMPORT_EXPORT_PERMISSION_DENIED_ML, -1000139003) \ + _(XR_ERROR_LOCALIZATION_MAP_PERMISSION_DENIED_ML, -1000139004) \ + _(XR_ERROR_LOCALIZATION_MAP_ALREADY_EXISTS_ML, -1000139005) \ + _(XR_ERROR_LOCALIZATION_MAP_CANNOT_EXPORT_CLOUD_MAP_ML, -1000139006) \ _(XR_ERROR_SPATIAL_ANCHOR_NAME_NOT_FOUND_MSFT, -1000142001) \ _(XR_ERROR_SPATIAL_ANCHOR_NAME_INVALID_MSFT, -1000142002) \ + _(XR_SCENE_MARKER_DATA_NOT_STRING_MSFT, 1000147000) \ _(XR_ERROR_SPACE_MAPPING_INSUFFICIENT_FB, -1000169000) \ _(XR_ERROR_SPACE_LOCALIZATION_FAILED_FB, -1000169001) \ _(XR_ERROR_SPACE_NETWORK_TIMEOUT_FB, -1000169002) \ @@ -123,6 +136,7 @@ XR_ENUM_STR(XrResult); _(XR_ERROR_SPACE_CLOUD_STORAGE_DISABLED_FB, -1000169004) \ _(XR_ERROR_PASSTHROUGH_COLOR_LUT_BUFFER_SIZE_MISMATCH_META, -1000266000) \ _(XR_ERROR_HINT_ALREADY_SET_QCOM, -1000306000) \ + _(XR_ERROR_NOT_AN_ANCHOR_HTC, -1000319000) \ _(XR_ERROR_SPACE_NOT_LOCATABLE_EXT, -1000429000) \ _(XR_ERROR_PLANE_DETECTION_PERMISSION_DENIED_EXT, -1000429001) \ _(XR_RESULT_MAX_ENUM, 0x7FFFFFFF) @@ -339,8 +353,28 @@ XR_ENUM_STR(XrResult); _(XR_TYPE_FRAME_END_INFO_ML, 1000135000) \ _(XR_TYPE_GLOBAL_DIMMER_FRAME_END_INFO_ML, 1000136000) \ _(XR_TYPE_COORDINATE_SPACE_CREATE_INFO_ML, 1000137000) \ + _(XR_TYPE_SYSTEM_MARKER_UNDERSTANDING_PROPERTIES_ML, 1000138000) \ + _(XR_TYPE_MARKER_DETECTOR_CREATE_INFO_ML, 1000138001) \ + _(XR_TYPE_MARKER_DETECTOR_ARUCO_INFO_ML, 1000138002) \ + _(XR_TYPE_MARKER_DETECTOR_SIZE_INFO_ML, 1000138003) \ + _(XR_TYPE_MARKER_DETECTOR_APRIL_TAG_INFO_ML, 1000138004) \ + _(XR_TYPE_MARKER_DETECTOR_CUSTOM_PROFILE_INFO_ML, 1000138005) \ + _(XR_TYPE_MARKER_DETECTOR_SNAPSHOT_INFO_ML, 1000138006) \ + _(XR_TYPE_MARKER_DETECTOR_STATE_ML, 1000138007) \ + _(XR_TYPE_MARKER_SPACE_CREATE_INFO_ML, 1000138008) \ + _(XR_TYPE_LOCALIZATION_MAP_ML, 1000139000) \ + _(XR_TYPE_EVENT_DATA_LOCALIZATION_CHANGED_ML, 1000139001) \ + _(XR_TYPE_MAP_LOCALIZATION_REQUEST_INFO_ML, 1000139002) \ + _(XR_TYPE_LOCALIZATION_MAP_IMPORT_INFO_ML, 1000139003) \ + _(XR_TYPE_LOCALIZATION_ENABLE_EVENTS_INFO_ML, 1000139004) \ + _(XR_TYPE_EVENT_DATA_HEADSET_FIT_CHANGED_ML, 1000472000) \ + _(XR_TYPE_EVENT_DATA_EYE_CALIBRATION_CHANGED_ML, 1000472001) \ + _(XR_TYPE_USER_CALIBRATION_ENABLE_EVENTS_INFO_ML, 1000472002) \ _(XR_TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT, 1000142000) \ _(XR_TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT, 1000142001) \ + _(XR_TYPE_SCENE_MARKERS_MSFT, 1000147000) \ + _(XR_TYPE_SCENE_MARKER_TYPE_FILTER_MSFT, 1000147001) \ + _(XR_TYPE_SCENE_MARKER_QR_CODES_MSFT, 1000147002) \ _(XR_TYPE_SPACE_QUERY_INFO_FB, 1000156001) \ _(XR_TYPE_SPACE_QUERY_RESULTS_FB, 1000156002) \ _(XR_TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB, 1000156003) \ @@ -386,6 +420,7 @@ XR_ENUM_STR(XrResult); _(XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB, 1000209002) \ _(XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB, 1000212000) \ _(XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META, 1000216000) \ + _(XR_TYPE_PASSTHROUGH_PREFERENCES_META, 1000217000) \ _(XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META, 1000219001) \ _(XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META, 1000219002) \ _(XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META, 1000219003) \ @@ -421,6 +456,8 @@ XR_ENUM_STR(XrResult); _(XR_TYPE_FOVEATION_APPLY_INFO_HTC, 1000318000) \ _(XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC, 1000318001) \ _(XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC, 1000318002) \ + _(XR_TYPE_SYSTEM_ANCHOR_PROPERTIES_HTC, 1000319000) \ + _(XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_HTC, 1000319001) \ _(XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT, 1000373000) \ _(XR_TYPE_SYSTEM_FORCE_FEEDBACK_CURL_PROPERTIES_MNDX, 1000375000) \ _(XR_TYPE_FORCE_FEEDBACK_CURL_APPLY_LOCATIONS_MNDX, 1000375001) \ @@ -459,6 +496,7 @@ XR_ENUM_STR(XrResult); _(XR_REFERENCE_SPACE_TYPE_STAGE, 3) \ _(XR_REFERENCE_SPACE_TYPE_UNBOUNDED_MSFT, 1000038000) \ _(XR_REFERENCE_SPACE_TYPE_COMBINED_EYE_VARJO, 1000121000) \ + _(XR_REFERENCE_SPACE_TYPE_LOCALIZATION_MAP_ML, 1000139000) \ _(XR_REFERENCE_SPACE_TYPE_LOCAL_FLOOR_EXT, 1000426000) \ _(XR_REFERENCE_SPACE_TYPE_MAX_ENUM, 0x7FFFFFFF) @@ -509,6 +547,8 @@ XR_ENUM_STR(XrResult); _(XR_OBJECT_TYPE_PASSTHROUGH_FB, 1000118000) \ _(XR_OBJECT_TYPE_PASSTHROUGH_LAYER_FB, 1000118002) \ _(XR_OBJECT_TYPE_GEOMETRY_INSTANCE_FB, 1000118004) \ + _(XR_OBJECT_TYPE_MARKER_DETECTOR_ML, 1000138000) \ + _(XR_OBJECT_TYPE_EXPORTED_LOCALIZATION_MAP_ML, 1000139000) \ _(XR_OBJECT_TYPE_SPATIAL_ANCHOR_STORE_CONNECTION_MSFT, 1000142000) \ _(XR_OBJECT_TYPE_FACE_TRACKER_FB, 1000201000) \ _(XR_OBJECT_TYPE_EYE_TRACKER_FB, 1000202000) \ @@ -711,6 +751,7 @@ XR_ENUM_STR(XrResult); _(XR_SCENE_COMPUTE_FEATURE_VISUAL_MESH_MSFT, 3) \ _(XR_SCENE_COMPUTE_FEATURE_COLLIDER_MESH_MSFT, 4) \ _(XR_SCENE_COMPUTE_FEATURE_SERIALIZE_SCENE_MSFT, 1000098000) \ + _(XR_SCENE_COMPUTE_FEATURE_MARKER_MSFT, 1000147000) \ _(XR_SCENE_COMPUTE_FEATURE_MAX_ENUM_MSFT, 0x7FFFFFFF) #define XR_LIST_ENUM_XrSceneComputeConsistencyMSFT(_) \ @@ -733,6 +774,7 @@ XR_ENUM_STR(XrResult); _(XR_SCENE_COMPONENT_TYPE_VISUAL_MESH_MSFT, 3) \ _(XR_SCENE_COMPONENT_TYPE_COLLIDER_MESH_MSFT, 4) \ _(XR_SCENE_COMPONENT_TYPE_SERIALIZED_SCENE_FRAGMENT_MSFT, 1000098000) \ + _(XR_SCENE_COMPONENT_TYPE_MARKER_MSFT, 1000147000) \ _(XR_SCENE_COMPONENT_TYPE_MAX_ENUM_MSFT, 0x7FFFFFFF) #define XR_LIST_ENUM_XrSceneObjectTypeMSFT(_) \ @@ -867,6 +909,116 @@ XR_ENUM_STR(XrResult); _(XR_PASSTHROUGH_LAYER_PURPOSE_TRACKED_KEYBOARD_MASKED_HANDS_FB, 1000203002) \ _(XR_PASSTHROUGH_LAYER_PURPOSE_MAX_ENUM_FB, 0x7FFFFFFF) +#define XR_LIST_ENUM_XrMarkerDetectorProfileML(_) \ + _(XR_MARKER_DETECTOR_PROFILE_DEFAULT_ML, 0) \ + _(XR_MARKER_DETECTOR_PROFILE_SPEED_ML, 1) \ + _(XR_MARKER_DETECTOR_PROFILE_ACCURACY_ML, 2) \ + _(XR_MARKER_DETECTOR_PROFILE_SMALL_TARGETS_ML, 3) \ + _(XR_MARKER_DETECTOR_PROFILE_LARGE_FOV_ML, 4) \ + _(XR_MARKER_DETECTOR_PROFILE_CUSTOM_ML, 5) \ + _(XR_MARKER_DETECTOR_PROFILE_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerTypeML(_) \ + _(XR_MARKER_TYPE_ARUCO_ML, 0) \ + _(XR_MARKER_TYPE_APRIL_TAG_ML, 1) \ + _(XR_MARKER_TYPE_QR_ML, 2) \ + _(XR_MARKER_TYPE_EAN_13_ML, 3) \ + _(XR_MARKER_TYPE_UPC_A_ML, 4) \ + _(XR_MARKER_TYPE_CODE_128_ML, 5) \ + _(XR_MARKER_TYPE_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerArucoDictML(_) \ + _(XR_MARKER_ARUCO_DICT_4X4_50_ML, 0) \ + _(XR_MARKER_ARUCO_DICT_4X4_100_ML, 1) \ + _(XR_MARKER_ARUCO_DICT_4X4_250_ML, 2) \ + _(XR_MARKER_ARUCO_DICT_4X4_1000_ML, 3) \ + _(XR_MARKER_ARUCO_DICT_5X5_50_ML, 4) \ + _(XR_MARKER_ARUCO_DICT_5X5_100_ML, 5) \ + _(XR_MARKER_ARUCO_DICT_5X5_250_ML, 6) \ + _(XR_MARKER_ARUCO_DICT_5X5_1000_ML, 7) \ + _(XR_MARKER_ARUCO_DICT_6X6_50_ML, 8) \ + _(XR_MARKER_ARUCO_DICT_6X6_100_ML, 9) \ + _(XR_MARKER_ARUCO_DICT_6X6_250_ML, 10) \ + _(XR_MARKER_ARUCO_DICT_6X6_1000_ML, 11) \ + _(XR_MARKER_ARUCO_DICT_7X7_50_ML, 12) \ + _(XR_MARKER_ARUCO_DICT_7X7_100_ML, 13) \ + _(XR_MARKER_ARUCO_DICT_7X7_250_ML, 14) \ + _(XR_MARKER_ARUCO_DICT_7X7_1000_ML, 15) \ + _(XR_MARKER_ARUCO_DICT_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerAprilTagDictML(_) \ + _(XR_MARKER_APRIL_TAG_DICT_16H5_ML, 0) \ + _(XR_MARKER_APRIL_TAG_DICT_25H9_ML, 1) \ + _(XR_MARKER_APRIL_TAG_DICT_36H10_ML, 2) \ + _(XR_MARKER_APRIL_TAG_DICT_36H11_ML, 3) \ + _(XR_MARKER_APRIL_TAG_DICT_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorFpsML(_) \ + _(XR_MARKER_DETECTOR_FPS_LOW_ML, 0) \ + _(XR_MARKER_DETECTOR_FPS_MEDIUM_ML, 1) \ + _(XR_MARKER_DETECTOR_FPS_HIGH_ML, 2) \ + _(XR_MARKER_DETECTOR_FPS_MAX_ML, 3) \ + _(XR_MARKER_DETECTOR_FPS_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorResolutionML(_) \ + _(XR_MARKER_DETECTOR_RESOLUTION_LOW_ML, 0) \ + _(XR_MARKER_DETECTOR_RESOLUTION_MEDIUM_ML, 1) \ + _(XR_MARKER_DETECTOR_RESOLUTION_HIGH_ML, 2) \ + _(XR_MARKER_DETECTOR_RESOLUTION_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorCameraML(_) \ + _(XR_MARKER_DETECTOR_CAMERA_RGB_CAMERA_ML, 0) \ + _(XR_MARKER_DETECTOR_CAMERA_WORLD_CAMERAS_ML, 1) \ + _(XR_MARKER_DETECTOR_CAMERA_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorCornerRefineMethodML(_) \ + _(XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_NONE_ML, 0) \ + _(XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_SUBPIX_ML, 1) \ + _(XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_CONTOUR_ML, 2) \ + _(XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_APRIL_TAG_ML, 3) \ + _(XR_MARKER_DETECTOR_CORNER_REFINE_METHOD_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorFullAnalysisIntervalML(_) \ + _(XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MAX_ML, 0) \ + _(XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_FAST_ML, 1) \ + _(XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MEDIUM_ML, 2) \ + _(XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_SLOW_ML, 3) \ + _(XR_MARKER_DETECTOR_FULL_ANALYSIS_INTERVAL_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrMarkerDetectorStatusML(_) \ + _(XR_MARKER_DETECTOR_STATUS_PENDING_ML, 0) \ + _(XR_MARKER_DETECTOR_STATUS_READY_ML, 1) \ + _(XR_MARKER_DETECTOR_STATUS_ERROR_ML, 2) \ + _(XR_MARKER_DETECTOR_STATUS_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrLocalizationMapStateML(_) \ + _(XR_LOCALIZATION_MAP_STATE_NOT_LOCALIZED_ML, 0) \ + _(XR_LOCALIZATION_MAP_STATE_LOCALIZED_ML, 1) \ + _(XR_LOCALIZATION_MAP_STATE_LOCALIZATION_PENDING_ML, 2) \ + _(XR_LOCALIZATION_MAP_STATE_LOCALIZATION_SLEEPING_BEFORE_RETRY_ML, 3) \ + _(XR_LOCALIZATION_MAP_STATE_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrLocalizationMapTypeML(_) \ + _(XR_LOCALIZATION_MAP_TYPE_ON_DEVICE_ML, 0) \ + _(XR_LOCALIZATION_MAP_TYPE_CLOUD_ML, 1) \ + _(XR_LOCALIZATION_MAP_TYPE_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrLocalizationMapConfidenceML(_) \ + _(XR_LOCALIZATION_MAP_CONFIDENCE_POOR_ML, 0) \ + _(XR_LOCALIZATION_MAP_CONFIDENCE_FAIR_ML, 1) \ + _(XR_LOCALIZATION_MAP_CONFIDENCE_GOOD_ML, 2) \ + _(XR_LOCALIZATION_MAP_CONFIDENCE_EXCELLENT_ML, 3) \ + _(XR_LOCALIZATION_MAP_CONFIDENCE_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrSceneMarkerTypeMSFT(_) \ + _(XR_SCENE_MARKER_TYPE_QR_CODE_MSFT, 1) \ + _(XR_SCENE_MARKER_TYPE_MAX_ENUM_MSFT, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrSceneMarkerQRCodeSymbolTypeMSFT(_) \ + _(XR_SCENE_MARKER_QR_CODE_SYMBOL_TYPE_QR_CODE_MSFT, 1) \ + _(XR_SCENE_MARKER_QR_CODE_SYMBOL_TYPE_MICRO_QR_CODE_MSFT, 2) \ + _(XR_SCENE_MARKER_QRCODE_SYMBOL_TYPE_MAX_ENUM_MSFT, 0x7FFFFFFF) + #define XR_LIST_ENUM_XrHandForearmJointULTRALEAP(_) \ _(XR_HAND_FOREARM_JOINT_PALM_ULTRALEAP, 0) \ _(XR_HAND_FOREARM_JOINT_WRIST_ULTRALEAP, 1) \ @@ -1115,6 +1267,20 @@ XR_ENUM_STR(XrResult); _(XR_PLANE_DETECTION_STATE_FATAL_EXT, 4) \ _(XR_PLANE_DETECTION_STATE_MAX_ENUM_EXT, 0x7FFFFFFF) +#define XR_LIST_ENUM_XrHeadsetFitStatusML(_) \ + _(XR_HEADSET_FIT_STATUS_UNKNOWN_ML, 0) \ + _(XR_HEADSET_FIT_STATUS_NOT_WORN_ML, 1) \ + _(XR_HEADSET_FIT_STATUS_GOOD_FIT_ML, 2) \ + _(XR_HEADSET_FIT_STATUS_BAD_FIT_ML, 3) \ + _(XR_HEADSET_FIT_STATUS_MAX_ENUM_ML, 0x7FFFFFFF) + +#define XR_LIST_ENUM_XrEyeCalibrationStatusML(_) \ + _(XR_EYE_CALIBRATION_STATUS_UNKNOWN_ML, 0) \ + _(XR_EYE_CALIBRATION_STATUS_NONE_ML, 1) \ + _(XR_EYE_CALIBRATION_STATUS_COARSE_ML, 2) \ + _(XR_EYE_CALIBRATION_STATUS_FINE_ML, 3) \ + _(XR_EYE_CALIBRATION_STATUS_MAX_ENUM_ML, 0x7FFFFFFF) + #define XR_LIST_BITS_XrInstanceCreateFlags(_) #define XR_LIST_BITS_XrSessionCreateFlags(_) @@ -1248,6 +1414,14 @@ XR_ENUM_STR(XrResult); #define XR_LIST_BITS_XrGlobalDimmerFrameEndInfoFlagsML(_) \ _(XR_GLOBAL_DIMMER_FRAME_END_INFO_ENABLED_BIT_ML, 0x00000001) \ +#define XR_LIST_BITS_XrLocalizationMapErrorFlagsML(_) \ + _(XR_LOCALIZATION_MAP_ERROR_UNKNOWN_BIT_ML, 0x00000001) \ + _(XR_LOCALIZATION_MAP_ERROR_OUT_OF_MAPPED_AREA_BIT_ML, 0x00000002) \ + _(XR_LOCALIZATION_MAP_ERROR_LOW_FEATURE_COUNT_BIT_ML, 0x00000004) \ + _(XR_LOCALIZATION_MAP_ERROR_EXCESSIVE_MOTION_BIT_ML, 0x00000008) \ + _(XR_LOCALIZATION_MAP_ERROR_LOW_LIGHT_BIT_ML, 0x00000010) \ + _(XR_LOCALIZATION_MAP_ERROR_HEADPOSE_BIT_ML, 0x00000020) \ + #define XR_LIST_BITS_XrCompositionLayerSpaceWarpInfoFlagsFB(_) \ _(XR_COMPOSITION_LAYER_SPACE_WARP_INFO_FRAME_SKIP_BIT_FB, 0x00000001) \ @@ -1269,6 +1443,9 @@ XR_ENUM_STR(XrResult); _(XR_COMPOSITION_LAYER_SETTINGS_NORMAL_SHARPENING_BIT_FB, 0x00000004) \ _(XR_COMPOSITION_LAYER_SETTINGS_QUALITY_SHARPENING_BIT_FB, 0x00000008) \ +#define XR_LIST_BITS_XrPassthroughPreferenceFlagsMETA(_) \ + _(XR_PASSTHROUGH_PREFERENCE_DEFAULT_TO_ACTIVE_BIT_META, 0x00000001) \ + #define XR_LIST_BITS_XrVirtualKeyboardInputStateFlagsMETA(_) \ _(XR_VIRTUAL_KEYBOARD_INPUT_STATE_PRESSED_BIT_META, 0x00000001) \ @@ -3176,6 +3353,109 @@ XR_ENUM_STR(XrResult); _(cfuid) \ _(poseInCoordinateSpace) \ +/// Calls your macro with the name of each member of XrSystemMarkerUnderstandingPropertiesML, in order. +#define XR_LIST_STRUCT_XrSystemMarkerUnderstandingPropertiesML(_) \ + _(type) \ + _(next) \ + _(supportsMarkerUnderstanding) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorCreateInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorCreateInfoML(_) \ + _(type) \ + _(next) \ + _(profile) \ + _(markerType) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorArucoInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorArucoInfoML(_) \ + _(type) \ + _(next) \ + _(arucoDict) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorSizeInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorSizeInfoML(_) \ + _(type) \ + _(next) \ + _(markerLength) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorAprilTagInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorAprilTagInfoML(_) \ + _(type) \ + _(next) \ + _(aprilTagDict) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorCustomProfileInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorCustomProfileInfoML(_) \ + _(type) \ + _(next) \ + _(fpsHint) \ + _(resolutionHint) \ + _(cameraHint) \ + _(cornerRefineMethod) \ + _(useEdgeRefinement) \ + _(fullAnalysisIntervalHint) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorSnapshotInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorSnapshotInfoML(_) \ + _(type) \ + _(next) \ + +/// Calls your macro with the name of each member of XrMarkerDetectorStateML, in order. +#define XR_LIST_STRUCT_XrMarkerDetectorStateML(_) \ + _(type) \ + _(next) \ + _(state) \ + +/// Calls your macro with the name of each member of XrMarkerSpaceCreateInfoML, in order. +#define XR_LIST_STRUCT_XrMarkerSpaceCreateInfoML(_) \ + _(type) \ + _(next) \ + _(markerDetector) \ + _(marker) \ + _(poseInMarkerSpace) \ + +/// Calls your macro with the name of each member of XrLocalizationMapML, in order. +#define XR_LIST_STRUCT_XrLocalizationMapML(_) \ + _(type) \ + _(next) \ + _(name) \ + _(mapUuid) \ + _(mapType) \ + +/// Calls your macro with the name of each member of XrEventDataLocalizationChangedML, in order. +#define XR_LIST_STRUCT_XrEventDataLocalizationChangedML(_) \ + _(type) \ + _(next) \ + _(session) \ + _(state) \ + _(map) \ + _(confidence) \ + _(errorFlags) \ + +/// Calls your macro with the name of each member of XrLocalizationMapQueryInfoBaseHeaderML, in order. +#define XR_LIST_STRUCT_XrLocalizationMapQueryInfoBaseHeaderML(_) \ + _(type) \ + _(next) \ + +/// Calls your macro with the name of each member of XrMapLocalizationRequestInfoML, in order. +#define XR_LIST_STRUCT_XrMapLocalizationRequestInfoML(_) \ + _(type) \ + _(next) \ + _(mapUuid) \ + +/// Calls your macro with the name of each member of XrLocalizationMapImportInfoML, in order. +#define XR_LIST_STRUCT_XrLocalizationMapImportInfoML(_) \ + _(type) \ + _(next) \ + _(size) \ + _(data) \ + +/// Calls your macro with the name of each member of XrLocalizationEnableEventsInfoML, in order. +#define XR_LIST_STRUCT_XrLocalizationEnableEventsInfoML(_) \ + _(type) \ + _(next) \ + _(enabled) \ + /// Calls your macro with the name of each member of XrSpatialAnchorPersistenceNameMSFT, in order. #define XR_LIST_STRUCT_XrSpatialAnchorPersistenceNameMSFT(_) \ _(name) \ @@ -3194,6 +3474,39 @@ XR_ENUM_STR(XrResult); _(spatialAnchorStore) \ _(spatialAnchorPersistenceName) \ +/// Calls your macro with the name of each member of XrSceneMarkerMSFT, in order. +#define XR_LIST_STRUCT_XrSceneMarkerMSFT(_) \ + _(markerType) \ + _(lastSeenTime) \ + _(center) \ + _(size) \ + +/// Calls your macro with the name of each member of XrSceneMarkersMSFT, in order. +#define XR_LIST_STRUCT_XrSceneMarkersMSFT(_) \ + _(type) \ + _(next) \ + _(sceneMarkerCapacityInput) \ + _(sceneMarkers) \ + +/// Calls your macro with the name of each member of XrSceneMarkerTypeFilterMSFT, in order. +#define XR_LIST_STRUCT_XrSceneMarkerTypeFilterMSFT(_) \ + _(type) \ + _(next) \ + _(markerTypeCount) \ + _(markerTypes) \ + +/// Calls your macro with the name of each member of XrSceneMarkerQRCodeMSFT, in order. +#define XR_LIST_STRUCT_XrSceneMarkerQRCodeMSFT(_) \ + _(symbolType) \ + _(version) \ + +/// Calls your macro with the name of each member of XrSceneMarkerQRCodesMSFT, in order. +#define XR_LIST_STRUCT_XrSceneMarkerQRCodesMSFT(_) \ + _(type) \ + _(next) \ + _(qrCodeCapacityInput) \ + _(qrCodes) \ + /// Calls your macro with the name of each member of XrSpaceQueryInfoBaseHeaderFB, in order. #define XR_LIST_STRUCT_XrSpaceQueryInfoBaseHeaderFB(_) \ _(type) \ @@ -3588,6 +3901,12 @@ XR_ENUM_STR(XrResult); _(next) \ _(localDimmingMode) \ +/// Calls your macro with the name of each member of XrPassthroughPreferencesMETA, in order. +#define XR_LIST_STRUCT_XrPassthroughPreferencesMETA(_) \ + _(type) \ + _(next) \ + _(flags) \ + /// Calls your macro with the name of each member of XrSystemVirtualKeyboardPropertiesMETA, in order. #define XR_LIST_STRUCT_XrSystemVirtualKeyboardPropertiesMETA(_) \ _(type) \ @@ -3866,6 +4185,24 @@ XR_ENUM_STR(XrResult); _(configCount) \ _(configs) \ +/// Calls your macro with the name of each member of XrSystemAnchorPropertiesHTC, in order. +#define XR_LIST_STRUCT_XrSystemAnchorPropertiesHTC(_) \ + _(type) \ + _(next) \ + _(supportsAnchor) \ + +/// Calls your macro with the name of each member of XrSpatialAnchorNameHTC, in order. +#define XR_LIST_STRUCT_XrSpatialAnchorNameHTC(_) \ + _(name) \ + +/// Calls your macro with the name of each member of XrSpatialAnchorCreateInfoHTC, in order. +#define XR_LIST_STRUCT_XrSpatialAnchorCreateInfoHTC(_) \ + _(type) \ + _(next) \ + _(space) \ + _(poseInSpace) \ + _(name) \ + /// Calls your macro with the name of each member of XrActiveActionSetPriorityEXT, in order. #define XR_LIST_STRUCT_XrActiveActionSetPriorityEXT(_) \ _(actionSet) \ @@ -3978,6 +4315,25 @@ XR_ENUM_STR(XrResult); _(vertexCountOutput) \ _(vertices) \ +/// Calls your macro with the name of each member of XrEventDataHeadsetFitChangedML, in order. +#define XR_LIST_STRUCT_XrEventDataHeadsetFitChangedML(_) \ + _(type) \ + _(next) \ + _(status) \ + _(time) \ + +/// Calls your macro with the name of each member of XrEventDataEyeCalibrationChangedML, in order. +#define XR_LIST_STRUCT_XrEventDataEyeCalibrationChangedML(_) \ + _(type) \ + _(next) \ + _(status) \ + +/// Calls your macro with the name of each member of XrUserCalibrationEnableEventsInfoML, in order. +#define XR_LIST_STRUCT_XrUserCalibrationEnableEventsInfoML(_) \ + _(type) \ + _(next) \ + _(enabled) \ + /// Calls your macro with the structure type name and the XrStructureType constant for @@ -4184,8 +4540,25 @@ XR_ENUM_STR(XrResult); _(XrMarkerSpaceCreateInfoVARJO, XR_TYPE_MARKER_SPACE_CREATE_INFO_VARJO) \ _(XrFrameEndInfoML, XR_TYPE_FRAME_END_INFO_ML) \ _(XrGlobalDimmerFrameEndInfoML, XR_TYPE_GLOBAL_DIMMER_FRAME_END_INFO_ML) \ + _(XrSystemMarkerUnderstandingPropertiesML, XR_TYPE_SYSTEM_MARKER_UNDERSTANDING_PROPERTIES_ML) \ + _(XrMarkerDetectorCreateInfoML, XR_TYPE_MARKER_DETECTOR_CREATE_INFO_ML) \ + _(XrMarkerDetectorArucoInfoML, XR_TYPE_MARKER_DETECTOR_ARUCO_INFO_ML) \ + _(XrMarkerDetectorSizeInfoML, XR_TYPE_MARKER_DETECTOR_SIZE_INFO_ML) \ + _(XrMarkerDetectorAprilTagInfoML, XR_TYPE_MARKER_DETECTOR_APRIL_TAG_INFO_ML) \ + _(XrMarkerDetectorCustomProfileInfoML, XR_TYPE_MARKER_DETECTOR_CUSTOM_PROFILE_INFO_ML) \ + _(XrMarkerDetectorSnapshotInfoML, XR_TYPE_MARKER_DETECTOR_SNAPSHOT_INFO_ML) \ + _(XrMarkerDetectorStateML, XR_TYPE_MARKER_DETECTOR_STATE_ML) \ + _(XrMarkerSpaceCreateInfoML, XR_TYPE_MARKER_SPACE_CREATE_INFO_ML) \ + _(XrLocalizationMapML, XR_TYPE_LOCALIZATION_MAP_ML) \ + _(XrEventDataLocalizationChangedML, XR_TYPE_EVENT_DATA_LOCALIZATION_CHANGED_ML) \ + _(XrMapLocalizationRequestInfoML, XR_TYPE_MAP_LOCALIZATION_REQUEST_INFO_ML) \ + _(XrLocalizationMapImportInfoML, XR_TYPE_LOCALIZATION_MAP_IMPORT_INFO_ML) \ + _(XrLocalizationEnableEventsInfoML, XR_TYPE_LOCALIZATION_ENABLE_EVENTS_INFO_ML) \ _(XrSpatialAnchorPersistenceInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT) \ _(XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT) \ + _(XrSceneMarkersMSFT, XR_TYPE_SCENE_MARKERS_MSFT) \ + _(XrSceneMarkerTypeFilterMSFT, XR_TYPE_SCENE_MARKER_TYPE_FILTER_MSFT) \ + _(XrSceneMarkerQRCodesMSFT, XR_TYPE_SCENE_MARKER_QR_CODES_MSFT) \ _(XrSpaceQueryInfoFB, XR_TYPE_SPACE_QUERY_INFO_FB) \ _(XrSpaceStorageLocationFilterInfoFB, XR_TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB) \ _(XrSpaceUuidFilterInfoFB, XR_TYPE_SPACE_UUID_FILTER_INFO_FB) \ @@ -4227,6 +4600,7 @@ XR_ENUM_STR(XrResult); _(XrDevicePcmSampleRateStateFB, XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB) \ _(XrCompositionLayerDepthTestFB, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB) \ _(XrLocalDimmingFrameEndInfoMETA, XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META) \ + _(XrPassthroughPreferencesMETA, XR_TYPE_PASSTHROUGH_PREFERENCES_META) \ _(XrSystemVirtualKeyboardPropertiesMETA, XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META) \ _(XrVirtualKeyboardCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META) \ _(XrVirtualKeyboardSpaceCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META) \ @@ -4261,6 +4635,8 @@ XR_ENUM_STR(XrResult); _(XrFoveationApplyInfoHTC, XR_TYPE_FOVEATION_APPLY_INFO_HTC) \ _(XrFoveationDynamicModeInfoHTC, XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC) \ _(XrFoveationCustomModeInfoHTC, XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC) \ + _(XrSystemAnchorPropertiesHTC, XR_TYPE_SYSTEM_ANCHOR_PROPERTIES_HTC) \ + _(XrSpatialAnchorCreateInfoHTC, XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_HTC) \ _(XrActiveActionSetPrioritiesEXT, XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT) \ _(XrSystemForceFeedbackCurlPropertiesMNDX, XR_TYPE_SYSTEM_FORCE_FEEDBACK_CURL_PROPERTIES_MNDX) \ _(XrForceFeedbackCurlApplyLocationsMNDX, XR_TYPE_FORCE_FEEDBACK_CURL_APPLY_LOCATIONS_MNDX) \ @@ -4273,6 +4649,9 @@ XR_ENUM_STR(XrResult); _(XrPlaneDetectorLocationEXT, XR_TYPE_PLANE_DETECTOR_LOCATION_EXT) \ _(XrPlaneDetectorLocationsEXT, XR_TYPE_PLANE_DETECTOR_LOCATIONS_EXT) \ _(XrPlaneDetectorPolygonBufferEXT, XR_TYPE_PLANE_DETECTOR_POLYGON_BUFFER_EXT) \ + _(XrEventDataHeadsetFitChangedML, XR_TYPE_EVENT_DATA_HEADSET_FIT_CHANGED_ML) \ + _(XrEventDataEyeCalibrationChangedML, XR_TYPE_EVENT_DATA_EYE_CALIBRATION_CHANGED_ML) \ + _(XrUserCalibrationEnableEventsInfoML, XR_TYPE_USER_CALIBRATION_ENABLE_EVENTS_INFO_ML) \ #if defined(XR_USE_GRAPHICS_API_D3D11) @@ -4528,7 +4907,10 @@ XR_ENUM_STR(XrResult); _(XR_ML_frame_end_info, 136) \ _(XR_ML_global_dimmer, 137) \ _(XR_ML_compat, 138) \ + _(XR_ML_marker_understanding, 139) \ + _(XR_ML_localization_map, 140) \ _(XR_MSFT_spatial_anchor_persistence, 143) \ + _(XR_MSFT_scene_marker, 148) \ _(XR_ULTRALEAP_hand_tracking_forearm, 150) \ _(XR_FB_spatial_entity_query, 157) \ _(XR_FB_spatial_entity_storage, 159) \ @@ -4556,6 +4938,7 @@ XR_ENUM_STR(XrResult); _(XR_FB_haptic_pcm, 210) \ _(XR_FB_composition_layer_depth_test, 213) \ _(XR_META_local_dimming, 217) \ + _(XR_META_passthrough_preferences, 218) \ _(XR_META_virtual_keyboard, 220) \ _(XR_OCULUS_external_camera, 227) \ _(XR_META_vulkan_swapchain_create_info, 228) \ @@ -4564,11 +4947,13 @@ XR_ENUM_STR(XrResult); _(XR_FB_spatial_entity_user, 242) \ _(XR_META_headset_id, 246) \ _(XR_META_passthrough_color_lut, 267) \ + _(XR_META_touch_controller_plus, 280) \ _(XR_EXT_uuid, 300) \ _(XR_EXT_hand_interaction, 303) \ _(XR_QCOM_tracking_optimization_settings, 307) \ _(XR_HTC_passthrough, 318) \ _(XR_HTC_foveation, 319) \ + _(XR_HTC_anchor, 320) \ _(XR_EXT_active_action_set_priority, 374) \ _(XR_MNDX_force_feedback_curl, 376) \ _(XR_BD_controller_interaction, 385) \ @@ -4576,6 +4961,8 @@ XR_ENUM_STR(XrResult); _(XR_EXT_hand_tracking_data_source, 429) \ _(XR_EXT_plane_detection, 430) \ _(XR_OPPO_controller_interaction, 454) \ + _(XR_ML_user_calibration, 473) \ + _(XR_YVR_controller_interaction, 498) \ #endif diff --git a/src/external/openxr_includes/openxr/openxr_reflection_parent_structs.h b/src/external/openxr_includes/openxr/openxr_reflection_parent_structs.h index d0d05e97d..97fa2283a 100644 --- a/src/external/openxr_includes/openxr/openxr_reflection_parent_structs.h +++ b/src/external/openxr_includes/openxr/openxr_reflection_parent_structs.h @@ -58,12 +58,15 @@ This file contains expansion macros (X Macros) for OpenXR structures that have a _avail(XrEventDataSpatialAnchorCreateCompleteFB, XR_TYPE_EVENT_DATA_SPATIAL_ANCHOR_CREATE_COMPLETE_FB) \ _avail(XrEventDataSpaceSetStatusCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SET_STATUS_COMPLETE_FB) \ _avail(XrEventDataMarkerTrackingUpdateVARJO, XR_TYPE_EVENT_DATA_MARKER_TRACKING_UPDATE_VARJO) \ + _avail(XrEventDataLocalizationChangedML, XR_TYPE_EVENT_DATA_LOCALIZATION_CHANGED_ML) \ _avail(XrEventDataSpaceQueryResultsAvailableFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_RESULTS_AVAILABLE_FB) \ _avail(XrEventDataSpaceQueryCompleteFB, XR_TYPE_EVENT_DATA_SPACE_QUERY_COMPLETE_FB) \ _avail(XrEventDataSpaceSaveCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SAVE_COMPLETE_FB) \ _avail(XrEventDataSpaceEraseCompleteFB, XR_TYPE_EVENT_DATA_SPACE_ERASE_COMPLETE_FB) \ _avail(XrEventDataSpaceShareCompleteFB, XR_TYPE_EVENT_DATA_SPACE_SHARE_COMPLETE_FB) \ _avail(XrEventDataSpaceListSaveCompleteFB, XR_TYPE_EVENT_DATA_SPACE_LIST_SAVE_COMPLETE_FB) \ + _avail(XrEventDataHeadsetFitChangedML, XR_TYPE_EVENT_DATA_HEADSET_FIT_CHANGED_ML) \ + _avail(XrEventDataEyeCalibrationChangedML, XR_TYPE_EVENT_DATA_EYE_CALIBRATION_CHANGED_ML) \ diff --git a/src/external/openxr_includes/openxr/openxr_reflection_structs.h b/src/external/openxr_includes/openxr/openxr_reflection_structs.h index ec186390a..d6c5aa6b1 100644 --- a/src/external/openxr_includes/openxr/openxr_reflection_structs.h +++ b/src/external/openxr_includes/openxr/openxr_reflection_structs.h @@ -225,8 +225,25 @@ This file contains expansion macros (X Macros) for OpenXR structures. _avail(XrMarkerSpaceCreateInfoVARJO, XR_TYPE_MARKER_SPACE_CREATE_INFO_VARJO) \ _avail(XrFrameEndInfoML, XR_TYPE_FRAME_END_INFO_ML) \ _avail(XrGlobalDimmerFrameEndInfoML, XR_TYPE_GLOBAL_DIMMER_FRAME_END_INFO_ML) \ + _avail(XrSystemMarkerUnderstandingPropertiesML, XR_TYPE_SYSTEM_MARKER_UNDERSTANDING_PROPERTIES_ML) \ + _avail(XrMarkerDetectorCreateInfoML, XR_TYPE_MARKER_DETECTOR_CREATE_INFO_ML) \ + _avail(XrMarkerDetectorArucoInfoML, XR_TYPE_MARKER_DETECTOR_ARUCO_INFO_ML) \ + _avail(XrMarkerDetectorSizeInfoML, XR_TYPE_MARKER_DETECTOR_SIZE_INFO_ML) \ + _avail(XrMarkerDetectorAprilTagInfoML, XR_TYPE_MARKER_DETECTOR_APRIL_TAG_INFO_ML) \ + _avail(XrMarkerDetectorCustomProfileInfoML, XR_TYPE_MARKER_DETECTOR_CUSTOM_PROFILE_INFO_ML) \ + _avail(XrMarkerDetectorSnapshotInfoML, XR_TYPE_MARKER_DETECTOR_SNAPSHOT_INFO_ML) \ + _avail(XrMarkerDetectorStateML, XR_TYPE_MARKER_DETECTOR_STATE_ML) \ + _avail(XrMarkerSpaceCreateInfoML, XR_TYPE_MARKER_SPACE_CREATE_INFO_ML) \ + _avail(XrLocalizationMapML, XR_TYPE_LOCALIZATION_MAP_ML) \ + _avail(XrEventDataLocalizationChangedML, XR_TYPE_EVENT_DATA_LOCALIZATION_CHANGED_ML) \ + _avail(XrMapLocalizationRequestInfoML, XR_TYPE_MAP_LOCALIZATION_REQUEST_INFO_ML) \ + _avail(XrLocalizationMapImportInfoML, XR_TYPE_LOCALIZATION_MAP_IMPORT_INFO_ML) \ + _avail(XrLocalizationEnableEventsInfoML, XR_TYPE_LOCALIZATION_ENABLE_EVENTS_INFO_ML) \ _avail(XrSpatialAnchorPersistenceInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_PERSISTENCE_INFO_MSFT) \ _avail(XrSpatialAnchorFromPersistedAnchorCreateInfoMSFT, XR_TYPE_SPATIAL_ANCHOR_FROM_PERSISTED_ANCHOR_CREATE_INFO_MSFT) \ + _avail(XrSceneMarkersMSFT, XR_TYPE_SCENE_MARKERS_MSFT) \ + _avail(XrSceneMarkerTypeFilterMSFT, XR_TYPE_SCENE_MARKER_TYPE_FILTER_MSFT) \ + _avail(XrSceneMarkerQRCodesMSFT, XR_TYPE_SCENE_MARKER_QR_CODES_MSFT) \ _avail(XrSpaceQueryInfoFB, XR_TYPE_SPACE_QUERY_INFO_FB) \ _avail(XrSpaceStorageLocationFilterInfoFB, XR_TYPE_SPACE_STORAGE_LOCATION_FILTER_INFO_FB) \ _avail(XrSpaceUuidFilterInfoFB, XR_TYPE_SPACE_UUID_FILTER_INFO_FB) \ @@ -268,6 +285,7 @@ This file contains expansion macros (X Macros) for OpenXR structures. _avail(XrDevicePcmSampleRateStateFB, XR_TYPE_DEVICE_PCM_SAMPLE_RATE_STATE_FB) \ _avail(XrCompositionLayerDepthTestFB, XR_TYPE_COMPOSITION_LAYER_DEPTH_TEST_FB) \ _avail(XrLocalDimmingFrameEndInfoMETA, XR_TYPE_LOCAL_DIMMING_FRAME_END_INFO_META) \ + _avail(XrPassthroughPreferencesMETA, XR_TYPE_PASSTHROUGH_PREFERENCES_META) \ _avail(XrSystemVirtualKeyboardPropertiesMETA, XR_TYPE_SYSTEM_VIRTUAL_KEYBOARD_PROPERTIES_META) \ _avail(XrVirtualKeyboardCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_CREATE_INFO_META) \ _avail(XrVirtualKeyboardSpaceCreateInfoMETA, XR_TYPE_VIRTUAL_KEYBOARD_SPACE_CREATE_INFO_META) \ @@ -302,6 +320,8 @@ This file contains expansion macros (X Macros) for OpenXR structures. _avail(XrFoveationApplyInfoHTC, XR_TYPE_FOVEATION_APPLY_INFO_HTC) \ _avail(XrFoveationDynamicModeInfoHTC, XR_TYPE_FOVEATION_DYNAMIC_MODE_INFO_HTC) \ _avail(XrFoveationCustomModeInfoHTC, XR_TYPE_FOVEATION_CUSTOM_MODE_INFO_HTC) \ + _avail(XrSystemAnchorPropertiesHTC, XR_TYPE_SYSTEM_ANCHOR_PROPERTIES_HTC) \ + _avail(XrSpatialAnchorCreateInfoHTC, XR_TYPE_SPATIAL_ANCHOR_CREATE_INFO_HTC) \ _avail(XrActiveActionSetPrioritiesEXT, XR_TYPE_ACTIVE_ACTION_SET_PRIORITIES_EXT) \ _avail(XrSystemForceFeedbackCurlPropertiesMNDX, XR_TYPE_SYSTEM_FORCE_FEEDBACK_CURL_PROPERTIES_MNDX) \ _avail(XrForceFeedbackCurlApplyLocationsMNDX, XR_TYPE_FORCE_FEEDBACK_CURL_APPLY_LOCATIONS_MNDX) \ @@ -314,6 +334,9 @@ This file contains expansion macros (X Macros) for OpenXR structures. _avail(XrPlaneDetectorLocationEXT, XR_TYPE_PLANE_DETECTOR_LOCATION_EXT) \ _avail(XrPlaneDetectorLocationsEXT, XR_TYPE_PLANE_DETECTOR_LOCATIONS_EXT) \ _avail(XrPlaneDetectorPolygonBufferEXT, XR_TYPE_PLANE_DETECTOR_POLYGON_BUFFER_EXT) \ + _avail(XrEventDataHeadsetFitChangedML, XR_TYPE_EVENT_DATA_HEADSET_FIT_CHANGED_ML) \ + _avail(XrEventDataEyeCalibrationChangedML, XR_TYPE_EVENT_DATA_EYE_CALIBRATION_CHANGED_ML) \ + _avail(XrUserCalibrationEnableEventsInfoML, XR_TYPE_USER_CALIBRATION_ENABLE_EVENTS_INFO_ML) \ #if defined(XR_USE_GRAPHICS_API_D3D11)