1 | // Copyright (c) 2017-2023, The Khronos Group Inc. |
2 | // Copyright (c) 2017-2019 Valve Corporation |
3 | // Copyright (c) 2017-2019 LunarG, Inc. |
4 | // SPDX-License-Identifier: Apache-2.0 OR MIT |
5 | // *********** THIS FILE IS GENERATED - DO NOT EDIT *********** |
6 | // See utility_source_generator.py for modifications |
7 | // ************************************************************ |
8 | |
9 | // Copyright (c) 2017-2023, The Khronos Group Inc. |
10 | // Copyright (c) 2017-2019 Valve Corporation |
11 | // Copyright (c) 2017-2019 LunarG, Inc. |
12 | // |
13 | // SPDX-License-Identifier: Apache-2.0 |
14 | // |
15 | // Licensed under the Apache License, Version 2.0 (the "License"); |
16 | // you may not use this file except in compliance with the License. |
17 | // You may obtain a copy of the License at |
18 | // |
19 | // http://www.apache.org/licenses/LICENSE-2.0 |
20 | // |
21 | // Unless required by applicable law or agreed to in writing, software |
22 | // distributed under the License is distributed on an "AS IS" BASIS, |
23 | // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
24 | // See the License for the specific language governing permissions and |
25 | // limitations under the License. |
26 | // |
27 | // Author: Mark Young <marky@lunarg.com> |
28 | // |
29 | |
30 | #include <time.h> |
31 | #include "xr_generated_dispatch_table.h" |
32 | #include "xr_dependencies.h" |
33 | #include <openxr/openxr.h> |
34 | #include <openxr/openxr_platform.h> |
35 | |
36 | |
37 | #ifdef __cplusplus |
38 | extern "C" { |
39 | #endif |
40 | // Helper function to populate an instance dispatch table |
41 | void GeneratedXrPopulateDispatchTable(struct XrGeneratedDispatchTable *table, |
42 | XrInstance instance, |
43 | PFN_xrGetInstanceProcAddr get_inst_proc_addr) { |
44 | |
45 | // ---- Core 1.0 commands |
46 | table->GetInstanceProcAddr = get_inst_proc_addr; |
47 | (get_inst_proc_addr(instance, "xrCreateInstance" , (PFN_xrVoidFunction*)&table->CreateInstance)); |
48 | (get_inst_proc_addr(instance, "xrDestroyInstance" , (PFN_xrVoidFunction*)&table->DestroyInstance)); |
49 | (get_inst_proc_addr(instance, "xrGetInstanceProperties" , (PFN_xrVoidFunction*)&table->GetInstanceProperties)); |
50 | (get_inst_proc_addr(instance, "xrPollEvent" , (PFN_xrVoidFunction*)&table->PollEvent)); |
51 | (get_inst_proc_addr(instance, "xrResultToString" , (PFN_xrVoidFunction*)&table->ResultToString)); |
52 | (get_inst_proc_addr(instance, "xrStructureTypeToString" , (PFN_xrVoidFunction*)&table->StructureTypeToString)); |
53 | (get_inst_proc_addr(instance, "xrGetSystem" , (PFN_xrVoidFunction*)&table->GetSystem)); |
54 | (get_inst_proc_addr(instance, "xrGetSystemProperties" , (PFN_xrVoidFunction*)&table->GetSystemProperties)); |
55 | (get_inst_proc_addr(instance, "xrEnumerateEnvironmentBlendModes" , (PFN_xrVoidFunction*)&table->EnumerateEnvironmentBlendModes)); |
56 | (get_inst_proc_addr(instance, "xrCreateSession" , (PFN_xrVoidFunction*)&table->CreateSession)); |
57 | (get_inst_proc_addr(instance, "xrDestroySession" , (PFN_xrVoidFunction*)&table->DestroySession)); |
58 | (get_inst_proc_addr(instance, "xrEnumerateReferenceSpaces" , (PFN_xrVoidFunction*)&table->EnumerateReferenceSpaces)); |
59 | (get_inst_proc_addr(instance, "xrCreateReferenceSpace" , (PFN_xrVoidFunction*)&table->CreateReferenceSpace)); |
60 | (get_inst_proc_addr(instance, "xrGetReferenceSpaceBoundsRect" , (PFN_xrVoidFunction*)&table->GetReferenceSpaceBoundsRect)); |
61 | (get_inst_proc_addr(instance, "xrCreateActionSpace" , (PFN_xrVoidFunction*)&table->CreateActionSpace)); |
62 | (get_inst_proc_addr(instance, "xrLocateSpace" , (PFN_xrVoidFunction*)&table->LocateSpace)); |
63 | (get_inst_proc_addr(instance, "xrDestroySpace" , (PFN_xrVoidFunction*)&table->DestroySpace)); |
64 | (get_inst_proc_addr(instance, "xrEnumerateViewConfigurations" , (PFN_xrVoidFunction*)&table->EnumerateViewConfigurations)); |
65 | (get_inst_proc_addr(instance, "xrGetViewConfigurationProperties" , (PFN_xrVoidFunction*)&table->GetViewConfigurationProperties)); |
66 | (get_inst_proc_addr(instance, "xrEnumerateViewConfigurationViews" , (PFN_xrVoidFunction*)&table->EnumerateViewConfigurationViews)); |
67 | (get_inst_proc_addr(instance, "xrEnumerateSwapchainFormats" , (PFN_xrVoidFunction*)&table->EnumerateSwapchainFormats)); |
68 | (get_inst_proc_addr(instance, "xrCreateSwapchain" , (PFN_xrVoidFunction*)&table->CreateSwapchain)); |
69 | (get_inst_proc_addr(instance, "xrDestroySwapchain" , (PFN_xrVoidFunction*)&table->DestroySwapchain)); |
70 | (get_inst_proc_addr(instance, "xrEnumerateSwapchainImages" , (PFN_xrVoidFunction*)&table->EnumerateSwapchainImages)); |
71 | (get_inst_proc_addr(instance, "xrAcquireSwapchainImage" , (PFN_xrVoidFunction*)&table->AcquireSwapchainImage)); |
72 | (get_inst_proc_addr(instance, "xrWaitSwapchainImage" , (PFN_xrVoidFunction*)&table->WaitSwapchainImage)); |
73 | (get_inst_proc_addr(instance, "xrReleaseSwapchainImage" , (PFN_xrVoidFunction*)&table->ReleaseSwapchainImage)); |
74 | (get_inst_proc_addr(instance, "xrBeginSession" , (PFN_xrVoidFunction*)&table->BeginSession)); |
75 | (get_inst_proc_addr(instance, "xrEndSession" , (PFN_xrVoidFunction*)&table->EndSession)); |
76 | (get_inst_proc_addr(instance, "xrRequestExitSession" , (PFN_xrVoidFunction*)&table->RequestExitSession)); |
77 | (get_inst_proc_addr(instance, "xrWaitFrame" , (PFN_xrVoidFunction*)&table->WaitFrame)); |
78 | (get_inst_proc_addr(instance, "xrBeginFrame" , (PFN_xrVoidFunction*)&table->BeginFrame)); |
79 | (get_inst_proc_addr(instance, "xrEndFrame" , (PFN_xrVoidFunction*)&table->EndFrame)); |
80 | (get_inst_proc_addr(instance, "xrLocateViews" , (PFN_xrVoidFunction*)&table->LocateViews)); |
81 | (get_inst_proc_addr(instance, "xrStringToPath" , (PFN_xrVoidFunction*)&table->StringToPath)); |
82 | (get_inst_proc_addr(instance, "xrPathToString" , (PFN_xrVoidFunction*)&table->PathToString)); |
83 | (get_inst_proc_addr(instance, "xrCreateActionSet" , (PFN_xrVoidFunction*)&table->CreateActionSet)); |
84 | (get_inst_proc_addr(instance, "xrDestroyActionSet" , (PFN_xrVoidFunction*)&table->DestroyActionSet)); |
85 | (get_inst_proc_addr(instance, "xrCreateAction" , (PFN_xrVoidFunction*)&table->CreateAction)); |
86 | (get_inst_proc_addr(instance, "xrDestroyAction" , (PFN_xrVoidFunction*)&table->DestroyAction)); |
87 | (get_inst_proc_addr(instance, "xrSuggestInteractionProfileBindings" , (PFN_xrVoidFunction*)&table->SuggestInteractionProfileBindings)); |
88 | (get_inst_proc_addr(instance, "xrAttachSessionActionSets" , (PFN_xrVoidFunction*)&table->AttachSessionActionSets)); |
89 | (get_inst_proc_addr(instance, "xrGetCurrentInteractionProfile" , (PFN_xrVoidFunction*)&table->GetCurrentInteractionProfile)); |
90 | (get_inst_proc_addr(instance, "xrGetActionStateBoolean" , (PFN_xrVoidFunction*)&table->GetActionStateBoolean)); |
91 | (get_inst_proc_addr(instance, "xrGetActionStateFloat" , (PFN_xrVoidFunction*)&table->GetActionStateFloat)); |
92 | (get_inst_proc_addr(instance, "xrGetActionStateVector2f" , (PFN_xrVoidFunction*)&table->GetActionStateVector2f)); |
93 | (get_inst_proc_addr(instance, "xrGetActionStatePose" , (PFN_xrVoidFunction*)&table->GetActionStatePose)); |
94 | (get_inst_proc_addr(instance, "xrSyncActions" , (PFN_xrVoidFunction*)&table->SyncActions)); |
95 | (get_inst_proc_addr(instance, "xrEnumerateBoundSourcesForAction" , (PFN_xrVoidFunction*)&table->EnumerateBoundSourcesForAction)); |
96 | (get_inst_proc_addr(instance, "xrGetInputSourceLocalizedName" , (PFN_xrVoidFunction*)&table->GetInputSourceLocalizedName)); |
97 | (get_inst_proc_addr(instance, "xrApplyHapticFeedback" , (PFN_xrVoidFunction*)&table->ApplyHapticFeedback)); |
98 | (get_inst_proc_addr(instance, "xrStopHapticFeedback" , (PFN_xrVoidFunction*)&table->StopHapticFeedback)); |
99 | |
100 | // ---- XR_KHR_android_thread_settings extension commands |
101 | #if defined(XR_USE_PLATFORM_ANDROID) |
102 | (get_inst_proc_addr(instance, "xrSetAndroidApplicationThreadKHR" , (PFN_xrVoidFunction*)&table->SetAndroidApplicationThreadKHR)); |
103 | #endif // defined(XR_USE_PLATFORM_ANDROID) |
104 | |
105 | // ---- XR_KHR_android_surface_swapchain extension commands |
106 | #if defined(XR_USE_PLATFORM_ANDROID) |
107 | (get_inst_proc_addr(instance, "xrCreateSwapchainAndroidSurfaceKHR" , (PFN_xrVoidFunction*)&table->CreateSwapchainAndroidSurfaceKHR)); |
108 | #endif // defined(XR_USE_PLATFORM_ANDROID) |
109 | |
110 | // ---- XR_KHR_opengl_enable extension commands |
111 | #if defined(XR_USE_GRAPHICS_API_OPENGL) |
112 | (get_inst_proc_addr(instance, "xrGetOpenGLGraphicsRequirementsKHR" , (PFN_xrVoidFunction*)&table->GetOpenGLGraphicsRequirementsKHR)); |
113 | #endif // defined(XR_USE_GRAPHICS_API_OPENGL) |
114 | |
115 | // ---- XR_KHR_opengl_es_enable extension commands |
116 | #if defined(XR_USE_GRAPHICS_API_OPENGL_ES) |
117 | (get_inst_proc_addr(instance, "xrGetOpenGLESGraphicsRequirementsKHR" , (PFN_xrVoidFunction*)&table->GetOpenGLESGraphicsRequirementsKHR)); |
118 | #endif // defined(XR_USE_GRAPHICS_API_OPENGL_ES) |
119 | |
120 | // ---- XR_KHR_vulkan_enable extension commands |
121 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
122 | (get_inst_proc_addr(instance, "xrGetVulkanInstanceExtensionsKHR" , (PFN_xrVoidFunction*)&table->GetVulkanInstanceExtensionsKHR)); |
123 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
124 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
125 | (get_inst_proc_addr(instance, "xrGetVulkanDeviceExtensionsKHR" , (PFN_xrVoidFunction*)&table->GetVulkanDeviceExtensionsKHR)); |
126 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
127 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
128 | (get_inst_proc_addr(instance, "xrGetVulkanGraphicsDeviceKHR" , (PFN_xrVoidFunction*)&table->GetVulkanGraphicsDeviceKHR)); |
129 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
130 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
131 | (get_inst_proc_addr(instance, "xrGetVulkanGraphicsRequirementsKHR" , (PFN_xrVoidFunction*)&table->GetVulkanGraphicsRequirementsKHR)); |
132 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
133 | |
134 | // ---- XR_KHR_D3D11_enable extension commands |
135 | #if defined(XR_USE_GRAPHICS_API_D3D11) |
136 | (get_inst_proc_addr(instance, "xrGetD3D11GraphicsRequirementsKHR" , (PFN_xrVoidFunction*)&table->GetD3D11GraphicsRequirementsKHR)); |
137 | #endif // defined(XR_USE_GRAPHICS_API_D3D11) |
138 | |
139 | // ---- XR_KHR_D3D12_enable extension commands |
140 | #if defined(XR_USE_GRAPHICS_API_D3D12) |
141 | (get_inst_proc_addr(instance, "xrGetD3D12GraphicsRequirementsKHR" , (PFN_xrVoidFunction*)&table->GetD3D12GraphicsRequirementsKHR)); |
142 | #endif // defined(XR_USE_GRAPHICS_API_D3D12) |
143 | |
144 | // ---- XR_KHR_visibility_mask extension commands |
145 | (get_inst_proc_addr(instance, "xrGetVisibilityMaskKHR" , (PFN_xrVoidFunction*)&table->GetVisibilityMaskKHR)); |
146 | |
147 | // ---- XR_KHR_win32_convert_performance_counter_time extension commands |
148 | #if defined(XR_USE_PLATFORM_WIN32) |
149 | (get_inst_proc_addr(instance, "xrConvertWin32PerformanceCounterToTimeKHR" , (PFN_xrVoidFunction*)&table->ConvertWin32PerformanceCounterToTimeKHR)); |
150 | #endif // defined(XR_USE_PLATFORM_WIN32) |
151 | #if defined(XR_USE_PLATFORM_WIN32) |
152 | (get_inst_proc_addr(instance, "xrConvertTimeToWin32PerformanceCounterKHR" , (PFN_xrVoidFunction*)&table->ConvertTimeToWin32PerformanceCounterKHR)); |
153 | #endif // defined(XR_USE_PLATFORM_WIN32) |
154 | |
155 | // ---- XR_KHR_convert_timespec_time extension commands |
156 | #if defined(XR_USE_TIMESPEC) |
157 | (get_inst_proc_addr(instance, "xrConvertTimespecTimeToTimeKHR" , (PFN_xrVoidFunction*)&table->ConvertTimespecTimeToTimeKHR)); |
158 | #endif // defined(XR_USE_TIMESPEC) |
159 | #if defined(XR_USE_TIMESPEC) |
160 | (get_inst_proc_addr(instance, "xrConvertTimeToTimespecTimeKHR" , (PFN_xrVoidFunction*)&table->ConvertTimeToTimespecTimeKHR)); |
161 | #endif // defined(XR_USE_TIMESPEC) |
162 | |
163 | // ---- XR_KHR_vulkan_enable2 extension commands |
164 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
165 | (get_inst_proc_addr(instance, "xrCreateVulkanInstanceKHR" , (PFN_xrVoidFunction*)&table->CreateVulkanInstanceKHR)); |
166 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
167 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
168 | (get_inst_proc_addr(instance, "xrCreateVulkanDeviceKHR" , (PFN_xrVoidFunction*)&table->CreateVulkanDeviceKHR)); |
169 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
170 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
171 | (get_inst_proc_addr(instance, "xrGetVulkanGraphicsDevice2KHR" , (PFN_xrVoidFunction*)&table->GetVulkanGraphicsDevice2KHR)); |
172 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
173 | #if defined(XR_USE_GRAPHICS_API_VULKAN) |
174 | (get_inst_proc_addr(instance, "xrGetVulkanGraphicsRequirements2KHR" , (PFN_xrVoidFunction*)&table->GetVulkanGraphicsRequirements2KHR)); |
175 | #endif // defined(XR_USE_GRAPHICS_API_VULKAN) |
176 | |
177 | // ---- XR_EXT_performance_settings extension commands |
178 | (get_inst_proc_addr(instance, "xrPerfSettingsSetPerformanceLevelEXT" , (PFN_xrVoidFunction*)&table->PerfSettingsSetPerformanceLevelEXT)); |
179 | |
180 | // ---- XR_EXT_thermal_query extension commands |
181 | (get_inst_proc_addr(instance, "xrThermalGetTemperatureTrendEXT" , (PFN_xrVoidFunction*)&table->ThermalGetTemperatureTrendEXT)); |
182 | |
183 | // ---- XR_EXT_debug_utils extension commands |
184 | (get_inst_proc_addr(instance, "xrSetDebugUtilsObjectNameEXT" , (PFN_xrVoidFunction*)&table->SetDebugUtilsObjectNameEXT)); |
185 | (get_inst_proc_addr(instance, "xrCreateDebugUtilsMessengerEXT" , (PFN_xrVoidFunction*)&table->CreateDebugUtilsMessengerEXT)); |
186 | (get_inst_proc_addr(instance, "xrDestroyDebugUtilsMessengerEXT" , (PFN_xrVoidFunction*)&table->DestroyDebugUtilsMessengerEXT)); |
187 | (get_inst_proc_addr(instance, "xrSubmitDebugUtilsMessageEXT" , (PFN_xrVoidFunction*)&table->SubmitDebugUtilsMessageEXT)); |
188 | (get_inst_proc_addr(instance, "xrSessionBeginDebugUtilsLabelRegionEXT" , (PFN_xrVoidFunction*)&table->SessionBeginDebugUtilsLabelRegionEXT)); |
189 | (get_inst_proc_addr(instance, "xrSessionEndDebugUtilsLabelRegionEXT" , (PFN_xrVoidFunction*)&table->SessionEndDebugUtilsLabelRegionEXT)); |
190 | (get_inst_proc_addr(instance, "xrSessionInsertDebugUtilsLabelEXT" , (PFN_xrVoidFunction*)&table->SessionInsertDebugUtilsLabelEXT)); |
191 | |
192 | // ---- XR_MSFT_spatial_anchor extension commands |
193 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorMSFT)); |
194 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorSpaceMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorSpaceMSFT)); |
195 | (get_inst_proc_addr(instance, "xrDestroySpatialAnchorMSFT" , (PFN_xrVoidFunction*)&table->DestroySpatialAnchorMSFT)); |
196 | |
197 | // ---- XR_EXT_conformance_automation extension commands |
198 | (get_inst_proc_addr(instance, "xrSetInputDeviceActiveEXT" , (PFN_xrVoidFunction*)&table->SetInputDeviceActiveEXT)); |
199 | (get_inst_proc_addr(instance, "xrSetInputDeviceStateBoolEXT" , (PFN_xrVoidFunction*)&table->SetInputDeviceStateBoolEXT)); |
200 | (get_inst_proc_addr(instance, "xrSetInputDeviceStateFloatEXT" , (PFN_xrVoidFunction*)&table->SetInputDeviceStateFloatEXT)); |
201 | (get_inst_proc_addr(instance, "xrSetInputDeviceStateVector2fEXT" , (PFN_xrVoidFunction*)&table->SetInputDeviceStateVector2fEXT)); |
202 | (get_inst_proc_addr(instance, "xrSetInputDeviceLocationEXT" , (PFN_xrVoidFunction*)&table->SetInputDeviceLocationEXT)); |
203 | |
204 | // ---- XR_MSFT_spatial_graph_bridge extension commands |
205 | (get_inst_proc_addr(instance, "xrCreateSpatialGraphNodeSpaceMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialGraphNodeSpaceMSFT)); |
206 | (get_inst_proc_addr(instance, "xrTryCreateSpatialGraphStaticNodeBindingMSFT" , (PFN_xrVoidFunction*)&table->TryCreateSpatialGraphStaticNodeBindingMSFT)); |
207 | (get_inst_proc_addr(instance, "xrDestroySpatialGraphNodeBindingMSFT" , (PFN_xrVoidFunction*)&table->DestroySpatialGraphNodeBindingMSFT)); |
208 | (get_inst_proc_addr(instance, "xrGetSpatialGraphNodeBindingPropertiesMSFT" , (PFN_xrVoidFunction*)&table->GetSpatialGraphNodeBindingPropertiesMSFT)); |
209 | |
210 | // ---- XR_EXT_hand_tracking extension commands |
211 | (get_inst_proc_addr(instance, "xrCreateHandTrackerEXT" , (PFN_xrVoidFunction*)&table->CreateHandTrackerEXT)); |
212 | (get_inst_proc_addr(instance, "xrDestroyHandTrackerEXT" , (PFN_xrVoidFunction*)&table->DestroyHandTrackerEXT)); |
213 | (get_inst_proc_addr(instance, "xrLocateHandJointsEXT" , (PFN_xrVoidFunction*)&table->LocateHandJointsEXT)); |
214 | |
215 | // ---- XR_MSFT_hand_tracking_mesh extension commands |
216 | (get_inst_proc_addr(instance, "xrCreateHandMeshSpaceMSFT" , (PFN_xrVoidFunction*)&table->CreateHandMeshSpaceMSFT)); |
217 | (get_inst_proc_addr(instance, "xrUpdateHandMeshMSFT" , (PFN_xrVoidFunction*)&table->UpdateHandMeshMSFT)); |
218 | |
219 | // ---- XR_MSFT_controller_model extension commands |
220 | (get_inst_proc_addr(instance, "xrGetControllerModelKeyMSFT" , (PFN_xrVoidFunction*)&table->GetControllerModelKeyMSFT)); |
221 | (get_inst_proc_addr(instance, "xrLoadControllerModelMSFT" , (PFN_xrVoidFunction*)&table->LoadControllerModelMSFT)); |
222 | (get_inst_proc_addr(instance, "xrGetControllerModelPropertiesMSFT" , (PFN_xrVoidFunction*)&table->GetControllerModelPropertiesMSFT)); |
223 | (get_inst_proc_addr(instance, "xrGetControllerModelStateMSFT" , (PFN_xrVoidFunction*)&table->GetControllerModelStateMSFT)); |
224 | |
225 | // ---- XR_MSFT_perception_anchor_interop extension commands |
226 | #if defined(XR_USE_PLATFORM_WIN32) |
227 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorFromPerceptionAnchorMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorFromPerceptionAnchorMSFT)); |
228 | #endif // defined(XR_USE_PLATFORM_WIN32) |
229 | #if defined(XR_USE_PLATFORM_WIN32) |
230 | (get_inst_proc_addr(instance, "xrTryGetPerceptionAnchorFromSpatialAnchorMSFT" , (PFN_xrVoidFunction*)&table->TryGetPerceptionAnchorFromSpatialAnchorMSFT)); |
231 | #endif // defined(XR_USE_PLATFORM_WIN32) |
232 | |
233 | // ---- XR_MSFT_composition_layer_reprojection extension commands |
234 | (get_inst_proc_addr(instance, "xrEnumerateReprojectionModesMSFT" , (PFN_xrVoidFunction*)&table->EnumerateReprojectionModesMSFT)); |
235 | |
236 | // ---- XR_FB_swapchain_update_state extension commands |
237 | (get_inst_proc_addr(instance, "xrUpdateSwapchainFB" , (PFN_xrVoidFunction*)&table->UpdateSwapchainFB)); |
238 | (get_inst_proc_addr(instance, "xrGetSwapchainStateFB" , (PFN_xrVoidFunction*)&table->GetSwapchainStateFB)); |
239 | |
240 | // ---- XR_FB_body_tracking extension commands |
241 | (get_inst_proc_addr(instance, "xrCreateBodyTrackerFB" , (PFN_xrVoidFunction*)&table->CreateBodyTrackerFB)); |
242 | (get_inst_proc_addr(instance, "xrDestroyBodyTrackerFB" , (PFN_xrVoidFunction*)&table->DestroyBodyTrackerFB)); |
243 | (get_inst_proc_addr(instance, "xrLocateBodyJointsFB" , (PFN_xrVoidFunction*)&table->LocateBodyJointsFB)); |
244 | (get_inst_proc_addr(instance, "xrGetBodySkeletonFB" , (PFN_xrVoidFunction*)&table->GetBodySkeletonFB)); |
245 | |
246 | // ---- XR_MSFT_scene_understanding extension commands |
247 | (get_inst_proc_addr(instance, "xrEnumerateSceneComputeFeaturesMSFT" , (PFN_xrVoidFunction*)&table->EnumerateSceneComputeFeaturesMSFT)); |
248 | (get_inst_proc_addr(instance, "xrCreateSceneObserverMSFT" , (PFN_xrVoidFunction*)&table->CreateSceneObserverMSFT)); |
249 | (get_inst_proc_addr(instance, "xrDestroySceneObserverMSFT" , (PFN_xrVoidFunction*)&table->DestroySceneObserverMSFT)); |
250 | (get_inst_proc_addr(instance, "xrCreateSceneMSFT" , (PFN_xrVoidFunction*)&table->CreateSceneMSFT)); |
251 | (get_inst_proc_addr(instance, "xrDestroySceneMSFT" , (PFN_xrVoidFunction*)&table->DestroySceneMSFT)); |
252 | (get_inst_proc_addr(instance, "xrComputeNewSceneMSFT" , (PFN_xrVoidFunction*)&table->ComputeNewSceneMSFT)); |
253 | (get_inst_proc_addr(instance, "xrGetSceneComputeStateMSFT" , (PFN_xrVoidFunction*)&table->GetSceneComputeStateMSFT)); |
254 | (get_inst_proc_addr(instance, "xrGetSceneComponentsMSFT" , (PFN_xrVoidFunction*)&table->GetSceneComponentsMSFT)); |
255 | (get_inst_proc_addr(instance, "xrLocateSceneComponentsMSFT" , (PFN_xrVoidFunction*)&table->LocateSceneComponentsMSFT)); |
256 | (get_inst_proc_addr(instance, "xrGetSceneMeshBuffersMSFT" , (PFN_xrVoidFunction*)&table->GetSceneMeshBuffersMSFT)); |
257 | |
258 | // ---- XR_MSFT_scene_understanding_serialization extension commands |
259 | (get_inst_proc_addr(instance, "xrDeserializeSceneMSFT" , (PFN_xrVoidFunction*)&table->DeserializeSceneMSFT)); |
260 | (get_inst_proc_addr(instance, "xrGetSerializedSceneFragmentDataMSFT" , (PFN_xrVoidFunction*)&table->GetSerializedSceneFragmentDataMSFT)); |
261 | |
262 | // ---- XR_FB_display_refresh_rate extension commands |
263 | (get_inst_proc_addr(instance, "xrEnumerateDisplayRefreshRatesFB" , (PFN_xrVoidFunction*)&table->EnumerateDisplayRefreshRatesFB)); |
264 | (get_inst_proc_addr(instance, "xrGetDisplayRefreshRateFB" , (PFN_xrVoidFunction*)&table->GetDisplayRefreshRateFB)); |
265 | (get_inst_proc_addr(instance, "xrRequestDisplayRefreshRateFB" , (PFN_xrVoidFunction*)&table->RequestDisplayRefreshRateFB)); |
266 | |
267 | // ---- XR_HTCX_vive_tracker_interaction extension commands |
268 | (get_inst_proc_addr(instance, "xrEnumerateViveTrackerPathsHTCX" , (PFN_xrVoidFunction*)&table->EnumerateViveTrackerPathsHTCX)); |
269 | |
270 | // ---- XR_HTC_facial_tracking extension commands |
271 | (get_inst_proc_addr(instance, "xrCreateFacialTrackerHTC" , (PFN_xrVoidFunction*)&table->CreateFacialTrackerHTC)); |
272 | (get_inst_proc_addr(instance, "xrDestroyFacialTrackerHTC" , (PFN_xrVoidFunction*)&table->DestroyFacialTrackerHTC)); |
273 | (get_inst_proc_addr(instance, "xrGetFacialExpressionsHTC" , (PFN_xrVoidFunction*)&table->GetFacialExpressionsHTC)); |
274 | |
275 | // ---- XR_FB_color_space extension commands |
276 | (get_inst_proc_addr(instance, "xrEnumerateColorSpacesFB" , (PFN_xrVoidFunction*)&table->EnumerateColorSpacesFB)); |
277 | (get_inst_proc_addr(instance, "xrSetColorSpaceFB" , (PFN_xrVoidFunction*)&table->SetColorSpaceFB)); |
278 | |
279 | // ---- XR_FB_hand_tracking_mesh extension commands |
280 | (get_inst_proc_addr(instance, "xrGetHandMeshFB" , (PFN_xrVoidFunction*)&table->GetHandMeshFB)); |
281 | |
282 | // ---- XR_FB_spatial_entity extension commands |
283 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorFB" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorFB)); |
284 | (get_inst_proc_addr(instance, "xrGetSpaceUuidFB" , (PFN_xrVoidFunction*)&table->GetSpaceUuidFB)); |
285 | (get_inst_proc_addr(instance, "xrEnumerateSpaceSupportedComponentsFB" , (PFN_xrVoidFunction*)&table->EnumerateSpaceSupportedComponentsFB)); |
286 | (get_inst_proc_addr(instance, "xrSetSpaceComponentStatusFB" , (PFN_xrVoidFunction*)&table->SetSpaceComponentStatusFB)); |
287 | (get_inst_proc_addr(instance, "xrGetSpaceComponentStatusFB" , (PFN_xrVoidFunction*)&table->GetSpaceComponentStatusFB)); |
288 | |
289 | // ---- XR_FB_foveation extension commands |
290 | (get_inst_proc_addr(instance, "xrCreateFoveationProfileFB" , (PFN_xrVoidFunction*)&table->CreateFoveationProfileFB)); |
291 | (get_inst_proc_addr(instance, "xrDestroyFoveationProfileFB" , (PFN_xrVoidFunction*)&table->DestroyFoveationProfileFB)); |
292 | |
293 | // ---- XR_FB_keyboard_tracking extension commands |
294 | (get_inst_proc_addr(instance, "xrQuerySystemTrackedKeyboardFB" , (PFN_xrVoidFunction*)&table->QuerySystemTrackedKeyboardFB)); |
295 | (get_inst_proc_addr(instance, "xrCreateKeyboardSpaceFB" , (PFN_xrVoidFunction*)&table->CreateKeyboardSpaceFB)); |
296 | |
297 | // ---- XR_FB_triangle_mesh extension commands |
298 | (get_inst_proc_addr(instance, "xrCreateTriangleMeshFB" , (PFN_xrVoidFunction*)&table->CreateTriangleMeshFB)); |
299 | (get_inst_proc_addr(instance, "xrDestroyTriangleMeshFB" , (PFN_xrVoidFunction*)&table->DestroyTriangleMeshFB)); |
300 | (get_inst_proc_addr(instance, "xrTriangleMeshGetVertexBufferFB" , (PFN_xrVoidFunction*)&table->TriangleMeshGetVertexBufferFB)); |
301 | (get_inst_proc_addr(instance, "xrTriangleMeshGetIndexBufferFB" , (PFN_xrVoidFunction*)&table->TriangleMeshGetIndexBufferFB)); |
302 | (get_inst_proc_addr(instance, "xrTriangleMeshBeginUpdateFB" , (PFN_xrVoidFunction*)&table->TriangleMeshBeginUpdateFB)); |
303 | (get_inst_proc_addr(instance, "xrTriangleMeshEndUpdateFB" , (PFN_xrVoidFunction*)&table->TriangleMeshEndUpdateFB)); |
304 | (get_inst_proc_addr(instance, "xrTriangleMeshBeginVertexBufferUpdateFB" , (PFN_xrVoidFunction*)&table->TriangleMeshBeginVertexBufferUpdateFB)); |
305 | (get_inst_proc_addr(instance, "xrTriangleMeshEndVertexBufferUpdateFB" , (PFN_xrVoidFunction*)&table->TriangleMeshEndVertexBufferUpdateFB)); |
306 | |
307 | // ---- XR_FB_passthrough extension commands |
308 | (get_inst_proc_addr(instance, "xrCreatePassthroughFB" , (PFN_xrVoidFunction*)&table->CreatePassthroughFB)); |
309 | (get_inst_proc_addr(instance, "xrDestroyPassthroughFB" , (PFN_xrVoidFunction*)&table->DestroyPassthroughFB)); |
310 | (get_inst_proc_addr(instance, "xrPassthroughStartFB" , (PFN_xrVoidFunction*)&table->PassthroughStartFB)); |
311 | (get_inst_proc_addr(instance, "xrPassthroughPauseFB" , (PFN_xrVoidFunction*)&table->PassthroughPauseFB)); |
312 | (get_inst_proc_addr(instance, "xrCreatePassthroughLayerFB" , (PFN_xrVoidFunction*)&table->CreatePassthroughLayerFB)); |
313 | (get_inst_proc_addr(instance, "xrDestroyPassthroughLayerFB" , (PFN_xrVoidFunction*)&table->DestroyPassthroughLayerFB)); |
314 | (get_inst_proc_addr(instance, "xrPassthroughLayerPauseFB" , (PFN_xrVoidFunction*)&table->PassthroughLayerPauseFB)); |
315 | (get_inst_proc_addr(instance, "xrPassthroughLayerResumeFB" , (PFN_xrVoidFunction*)&table->PassthroughLayerResumeFB)); |
316 | (get_inst_proc_addr(instance, "xrPassthroughLayerSetStyleFB" , (PFN_xrVoidFunction*)&table->PassthroughLayerSetStyleFB)); |
317 | (get_inst_proc_addr(instance, "xrCreateGeometryInstanceFB" , (PFN_xrVoidFunction*)&table->CreateGeometryInstanceFB)); |
318 | (get_inst_proc_addr(instance, "xrDestroyGeometryInstanceFB" , (PFN_xrVoidFunction*)&table->DestroyGeometryInstanceFB)); |
319 | (get_inst_proc_addr(instance, "xrGeometryInstanceSetTransformFB" , (PFN_xrVoidFunction*)&table->GeometryInstanceSetTransformFB)); |
320 | |
321 | // ---- XR_FB_render_model extension commands |
322 | (get_inst_proc_addr(instance, "xrEnumerateRenderModelPathsFB" , (PFN_xrVoidFunction*)&table->EnumerateRenderModelPathsFB)); |
323 | (get_inst_proc_addr(instance, "xrGetRenderModelPropertiesFB" , (PFN_xrVoidFunction*)&table->GetRenderModelPropertiesFB)); |
324 | (get_inst_proc_addr(instance, "xrLoadRenderModelFB" , (PFN_xrVoidFunction*)&table->LoadRenderModelFB)); |
325 | |
326 | // ---- XR_VARJO_environment_depth_estimation extension commands |
327 | (get_inst_proc_addr(instance, "xrSetEnvironmentDepthEstimationVARJO" , (PFN_xrVoidFunction*)&table->SetEnvironmentDepthEstimationVARJO)); |
328 | |
329 | // ---- XR_VARJO_marker_tracking extension commands |
330 | (get_inst_proc_addr(instance, "xrSetMarkerTrackingVARJO" , (PFN_xrVoidFunction*)&table->SetMarkerTrackingVARJO)); |
331 | (get_inst_proc_addr(instance, "xrSetMarkerTrackingTimeoutVARJO" , (PFN_xrVoidFunction*)&table->SetMarkerTrackingTimeoutVARJO)); |
332 | (get_inst_proc_addr(instance, "xrSetMarkerTrackingPredictionVARJO" , (PFN_xrVoidFunction*)&table->SetMarkerTrackingPredictionVARJO)); |
333 | (get_inst_proc_addr(instance, "xrGetMarkerSizeVARJO" , (PFN_xrVoidFunction*)&table->GetMarkerSizeVARJO)); |
334 | (get_inst_proc_addr(instance, "xrCreateMarkerSpaceVARJO" , (PFN_xrVoidFunction*)&table->CreateMarkerSpaceVARJO)); |
335 | |
336 | // ---- XR_VARJO_view_offset extension commands |
337 | (get_inst_proc_addr(instance, "xrSetViewOffsetVARJO" , (PFN_xrVoidFunction*)&table->SetViewOffsetVARJO)); |
338 | |
339 | // ---- XR_ML_compat extension commands |
340 | #if defined(XR_USE_PLATFORM_ML) |
341 | (get_inst_proc_addr(instance, "xrCreateSpaceFromCoordinateFrameUIDML" , (PFN_xrVoidFunction*)&table->CreateSpaceFromCoordinateFrameUIDML)); |
342 | #endif // defined(XR_USE_PLATFORM_ML) |
343 | |
344 | // ---- XR_MSFT_spatial_anchor_persistence extension commands |
345 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorStoreConnectionMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorStoreConnectionMSFT)); |
346 | (get_inst_proc_addr(instance, "xrDestroySpatialAnchorStoreConnectionMSFT" , (PFN_xrVoidFunction*)&table->DestroySpatialAnchorStoreConnectionMSFT)); |
347 | (get_inst_proc_addr(instance, "xrPersistSpatialAnchorMSFT" , (PFN_xrVoidFunction*)&table->PersistSpatialAnchorMSFT)); |
348 | (get_inst_proc_addr(instance, "xrEnumeratePersistedSpatialAnchorNamesMSFT" , (PFN_xrVoidFunction*)&table->EnumeratePersistedSpatialAnchorNamesMSFT)); |
349 | (get_inst_proc_addr(instance, "xrCreateSpatialAnchorFromPersistedNameMSFT" , (PFN_xrVoidFunction*)&table->CreateSpatialAnchorFromPersistedNameMSFT)); |
350 | (get_inst_proc_addr(instance, "xrUnpersistSpatialAnchorMSFT" , (PFN_xrVoidFunction*)&table->UnpersistSpatialAnchorMSFT)); |
351 | (get_inst_proc_addr(instance, "xrClearSpatialAnchorStoreMSFT" , (PFN_xrVoidFunction*)&table->ClearSpatialAnchorStoreMSFT)); |
352 | |
353 | // ---- XR_FB_spatial_entity_query extension commands |
354 | (get_inst_proc_addr(instance, "xrQuerySpacesFB" , (PFN_xrVoidFunction*)&table->QuerySpacesFB)); |
355 | (get_inst_proc_addr(instance, "xrRetrieveSpaceQueryResultsFB" , (PFN_xrVoidFunction*)&table->RetrieveSpaceQueryResultsFB)); |
356 | |
357 | // ---- XR_FB_spatial_entity_storage extension commands |
358 | (get_inst_proc_addr(instance, "xrSaveSpaceFB" , (PFN_xrVoidFunction*)&table->SaveSpaceFB)); |
359 | (get_inst_proc_addr(instance, "xrEraseSpaceFB" , (PFN_xrVoidFunction*)&table->EraseSpaceFB)); |
360 | |
361 | // ---- XR_OCULUS_audio_device_guid extension commands |
362 | #if defined(XR_USE_PLATFORM_WIN32) |
363 | (get_inst_proc_addr(instance, "xrGetAudioOutputDeviceGuidOculus" , (PFN_xrVoidFunction*)&table->GetAudioOutputDeviceGuidOculus)); |
364 | #endif // defined(XR_USE_PLATFORM_WIN32) |
365 | #if defined(XR_USE_PLATFORM_WIN32) |
366 | (get_inst_proc_addr(instance, "xrGetAudioInputDeviceGuidOculus" , (PFN_xrVoidFunction*)&table->GetAudioInputDeviceGuidOculus)); |
367 | #endif // defined(XR_USE_PLATFORM_WIN32) |
368 | |
369 | // ---- XR_FB_spatial_entity_sharing extension commands |
370 | (get_inst_proc_addr(instance, "xrShareSpacesFB" , (PFN_xrVoidFunction*)&table->ShareSpacesFB)); |
371 | |
372 | // ---- XR_FB_scene extension commands |
373 | (get_inst_proc_addr(instance, "xrGetSpaceBoundingBox2DFB" , (PFN_xrVoidFunction*)&table->GetSpaceBoundingBox2DFB)); |
374 | (get_inst_proc_addr(instance, "xrGetSpaceBoundingBox3DFB" , (PFN_xrVoidFunction*)&table->GetSpaceBoundingBox3DFB)); |
375 | (get_inst_proc_addr(instance, "xrGetSpaceSemanticLabelsFB" , (PFN_xrVoidFunction*)&table->GetSpaceSemanticLabelsFB)); |
376 | (get_inst_proc_addr(instance, "xrGetSpaceBoundary2DFB" , (PFN_xrVoidFunction*)&table->GetSpaceBoundary2DFB)); |
377 | (get_inst_proc_addr(instance, "xrGetSpaceRoomLayoutFB" , (PFN_xrVoidFunction*)&table->GetSpaceRoomLayoutFB)); |
378 | |
379 | // ---- XR_ALMALENCE_digital_lens_control extension commands |
380 | (get_inst_proc_addr(instance, "xrSetDigitalLensControlALMALENCE" , (PFN_xrVoidFunction*)&table->SetDigitalLensControlALMALENCE)); |
381 | |
382 | // ---- XR_FB_scene_capture extension commands |
383 | (get_inst_proc_addr(instance, "xrRequestSceneCaptureFB" , (PFN_xrVoidFunction*)&table->RequestSceneCaptureFB)); |
384 | |
385 | // ---- XR_FB_spatial_entity_container extension commands |
386 | (get_inst_proc_addr(instance, "xrGetSpaceContainerFB" , (PFN_xrVoidFunction*)&table->GetSpaceContainerFB)); |
387 | |
388 | // ---- XR_META_foveation_eye_tracked extension commands |
389 | (get_inst_proc_addr(instance, "xrGetFoveationEyeTrackedStateMETA" , (PFN_xrVoidFunction*)&table->GetFoveationEyeTrackedStateMETA)); |
390 | |
391 | // ---- XR_FB_face_tracking extension commands |
392 | (get_inst_proc_addr(instance, "xrCreateFaceTrackerFB" , (PFN_xrVoidFunction*)&table->CreateFaceTrackerFB)); |
393 | (get_inst_proc_addr(instance, "xrDestroyFaceTrackerFB" , (PFN_xrVoidFunction*)&table->DestroyFaceTrackerFB)); |
394 | (get_inst_proc_addr(instance, "xrGetFaceExpressionWeightsFB" , (PFN_xrVoidFunction*)&table->GetFaceExpressionWeightsFB)); |
395 | |
396 | // ---- XR_FB_eye_tracking_social extension commands |
397 | (get_inst_proc_addr(instance, "xrCreateEyeTrackerFB" , (PFN_xrVoidFunction*)&table->CreateEyeTrackerFB)); |
398 | (get_inst_proc_addr(instance, "xrDestroyEyeTrackerFB" , (PFN_xrVoidFunction*)&table->DestroyEyeTrackerFB)); |
399 | (get_inst_proc_addr(instance, "xrGetEyeGazesFB" , (PFN_xrVoidFunction*)&table->GetEyeGazesFB)); |
400 | |
401 | // ---- XR_FB_passthrough_keyboard_hands extension commands |
402 | (get_inst_proc_addr(instance, "xrPassthroughLayerSetKeyboardHandsIntensityFB" , (PFN_xrVoidFunction*)&table->PassthroughLayerSetKeyboardHandsIntensityFB)); |
403 | |
404 | // ---- XR_FB_haptic_pcm extension commands |
405 | (get_inst_proc_addr(instance, "xrGetDeviceSampleRateFB" , (PFN_xrVoidFunction*)&table->GetDeviceSampleRateFB)); |
406 | |
407 | // ---- XR_META_virtual_keyboard extension commands |
408 | (get_inst_proc_addr(instance, "xrCreateVirtualKeyboardMETA" , (PFN_xrVoidFunction*)&table->CreateVirtualKeyboardMETA)); |
409 | (get_inst_proc_addr(instance, "xrDestroyVirtualKeyboardMETA" , (PFN_xrVoidFunction*)&table->DestroyVirtualKeyboardMETA)); |
410 | (get_inst_proc_addr(instance, "xrCreateVirtualKeyboardSpaceMETA" , (PFN_xrVoidFunction*)&table->CreateVirtualKeyboardSpaceMETA)); |
411 | (get_inst_proc_addr(instance, "xrSuggestVirtualKeyboardLocationMETA" , (PFN_xrVoidFunction*)&table->SuggestVirtualKeyboardLocationMETA)); |
412 | (get_inst_proc_addr(instance, "xrGetVirtualKeyboardScaleMETA" , (PFN_xrVoidFunction*)&table->GetVirtualKeyboardScaleMETA)); |
413 | (get_inst_proc_addr(instance, "xrSetVirtualKeyboardModelVisibilityMETA" , (PFN_xrVoidFunction*)&table->SetVirtualKeyboardModelVisibilityMETA)); |
414 | (get_inst_proc_addr(instance, "xrGetVirtualKeyboardModelAnimationStatesMETA" , (PFN_xrVoidFunction*)&table->GetVirtualKeyboardModelAnimationStatesMETA)); |
415 | (get_inst_proc_addr(instance, "xrGetVirtualKeyboardDirtyTexturesMETA" , (PFN_xrVoidFunction*)&table->GetVirtualKeyboardDirtyTexturesMETA)); |
416 | (get_inst_proc_addr(instance, "xrGetVirtualKeyboardTextureDataMETA" , (PFN_xrVoidFunction*)&table->GetVirtualKeyboardTextureDataMETA)); |
417 | (get_inst_proc_addr(instance, "xrSendVirtualKeyboardInputMETA" , (PFN_xrVoidFunction*)&table->SendVirtualKeyboardInputMETA)); |
418 | (get_inst_proc_addr(instance, "xrChangeVirtualKeyboardTextContextMETA" , (PFN_xrVoidFunction*)&table->ChangeVirtualKeyboardTextContextMETA)); |
419 | |
420 | // ---- XR_OCULUS_external_camera extension commands |
421 | (get_inst_proc_addr(instance, "xrEnumerateExternalCamerasOCULUS" , (PFN_xrVoidFunction*)&table->EnumerateExternalCamerasOCULUS)); |
422 | |
423 | // ---- XR_META_performance_metrics extension commands |
424 | (get_inst_proc_addr(instance, "xrEnumeratePerformanceMetricsCounterPathsMETA" , (PFN_xrVoidFunction*)&table->EnumeratePerformanceMetricsCounterPathsMETA)); |
425 | (get_inst_proc_addr(instance, "xrSetPerformanceMetricsStateMETA" , (PFN_xrVoidFunction*)&table->SetPerformanceMetricsStateMETA)); |
426 | (get_inst_proc_addr(instance, "xrGetPerformanceMetricsStateMETA" , (PFN_xrVoidFunction*)&table->GetPerformanceMetricsStateMETA)); |
427 | (get_inst_proc_addr(instance, "xrQueryPerformanceMetricsCounterMETA" , (PFN_xrVoidFunction*)&table->QueryPerformanceMetricsCounterMETA)); |
428 | |
429 | // ---- XR_FB_spatial_entity_storage_batch extension commands |
430 | (get_inst_proc_addr(instance, "xrSaveSpaceListFB" , (PFN_xrVoidFunction*)&table->SaveSpaceListFB)); |
431 | |
432 | // ---- XR_FB_spatial_entity_user extension commands |
433 | (get_inst_proc_addr(instance, "xrCreateSpaceUserFB" , (PFN_xrVoidFunction*)&table->CreateSpaceUserFB)); |
434 | (get_inst_proc_addr(instance, "xrGetSpaceUserIdFB" , (PFN_xrVoidFunction*)&table->GetSpaceUserIdFB)); |
435 | (get_inst_proc_addr(instance, "xrDestroySpaceUserFB" , (PFN_xrVoidFunction*)&table->DestroySpaceUserFB)); |
436 | |
437 | // ---- XR_META_passthrough_color_lut extension commands |
438 | (get_inst_proc_addr(instance, "xrCreatePassthroughColorLutMETA" , (PFN_xrVoidFunction*)&table->CreatePassthroughColorLutMETA)); |
439 | (get_inst_proc_addr(instance, "xrDestroyPassthroughColorLutMETA" , (PFN_xrVoidFunction*)&table->DestroyPassthroughColorLutMETA)); |
440 | (get_inst_proc_addr(instance, "xrUpdatePassthroughColorLutMETA" , (PFN_xrVoidFunction*)&table->UpdatePassthroughColorLutMETA)); |
441 | |
442 | // ---- XR_QCOM_tracking_optimization_settings extension commands |
443 | (get_inst_proc_addr(instance, "xrSetTrackingOptimizationSettingsHintQCOM" , (PFN_xrVoidFunction*)&table->SetTrackingOptimizationSettingsHintQCOM)); |
444 | |
445 | // ---- XR_HTC_passthrough extension commands |
446 | (get_inst_proc_addr(instance, "xrCreatePassthroughHTC" , (PFN_xrVoidFunction*)&table->CreatePassthroughHTC)); |
447 | (get_inst_proc_addr(instance, "xrDestroyPassthroughHTC" , (PFN_xrVoidFunction*)&table->DestroyPassthroughHTC)); |
448 | |
449 | // ---- XR_HTC_foveation extension commands |
450 | (get_inst_proc_addr(instance, "xrApplyFoveationHTC" , (PFN_xrVoidFunction*)&table->ApplyFoveationHTC)); |
451 | |
452 | // ---- XR_MNDX_force_feedback_curl extension commands |
453 | (get_inst_proc_addr(instance, "xrApplyForceFeedbackCurlMNDX" , (PFN_xrVoidFunction*)&table->ApplyForceFeedbackCurlMNDX)); |
454 | |
455 | // ---- XR_EXT_plane_detection extension commands |
456 | (get_inst_proc_addr(instance, "xrCreatePlaneDetectorEXT" , (PFN_xrVoidFunction*)&table->CreatePlaneDetectorEXT)); |
457 | (get_inst_proc_addr(instance, "xrDestroyPlaneDetectorEXT" , (PFN_xrVoidFunction*)&table->DestroyPlaneDetectorEXT)); |
458 | (get_inst_proc_addr(instance, "xrBeginPlaneDetectionEXT" , (PFN_xrVoidFunction*)&table->BeginPlaneDetectionEXT)); |
459 | (get_inst_proc_addr(instance, "xrGetPlaneDetectionStateEXT" , (PFN_xrVoidFunction*)&table->GetPlaneDetectionStateEXT)); |
460 | (get_inst_proc_addr(instance, "xrGetPlaneDetectionsEXT" , (PFN_xrVoidFunction*)&table->GetPlaneDetectionsEXT)); |
461 | (get_inst_proc_addr(instance, "xrGetPlanePolygonBufferEXT" , (PFN_xrVoidFunction*)&table->GetPlanePolygonBufferEXT)); |
462 | } |
463 | |
464 | |
465 | #ifdef __cplusplus |
466 | } // extern "C" |
467 | #endif |
468 | |
469 | |