• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // *** THIS FILE IS GENERATED - DO NOT EDIT ***
2 // See loader_extension_generator.py for modifications
3 
4 /*
5  * Copyright (c) 2015-2022 The Khronos Group Inc.
6  * Copyright (c) 2015-2022 Valve Corporation
7  * Copyright (c) 2015-2022 LunarG, Inc.
8  *
9  * Licensed under the Apache License, Version 2.0 (the "License");
10  * you may not use this file except in compliance with the License.
11  * You may obtain a copy of the License at
12  *
13  *     http://www.apache.org/licenses/LICENSE-2.0
14  *
15  * Unless required by applicable law or agreed to in writing, software
16  * distributed under the License is distributed on an "AS IS" BASIS,
17  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18  * See the License for the specific language governing permissions and
19  * limitations under the License.
20  *
21  * Author: Mark Lobodzinski <mark@lunarg.com>
22  * Author: Mark Young <marky@lunarg.com>
23  */
24 
25 #pragma once
26 
27 typedef PFN_vkVoidFunction (VKAPI_PTR *PFN_GetPhysicalDeviceProcAddr)(VkInstance instance, const char* pName);
28 
29 // Instance function pointer dispatch table
30 typedef struct VkLayerInstanceDispatchTable_ {
31     // Manually add in GetPhysicalDeviceProcAddr entry
32     PFN_GetPhysicalDeviceProcAddr GetPhysicalDeviceProcAddr;
33 
34     // ---- Core 1_0 commands
35     PFN_vkCreateInstance CreateInstance;
36     PFN_vkDestroyInstance DestroyInstance;
37     PFN_vkEnumeratePhysicalDevices EnumeratePhysicalDevices;
38     PFN_vkGetPhysicalDeviceFeatures GetPhysicalDeviceFeatures;
39     PFN_vkGetPhysicalDeviceFormatProperties GetPhysicalDeviceFormatProperties;
40     PFN_vkGetPhysicalDeviceImageFormatProperties GetPhysicalDeviceImageFormatProperties;
41     PFN_vkGetPhysicalDeviceProperties GetPhysicalDeviceProperties;
42     PFN_vkGetPhysicalDeviceQueueFamilyProperties GetPhysicalDeviceQueueFamilyProperties;
43     PFN_vkGetPhysicalDeviceMemoryProperties GetPhysicalDeviceMemoryProperties;
44     PFN_vkGetInstanceProcAddr GetInstanceProcAddr;
45     PFN_vkCreateDevice CreateDevice;
46     PFN_vkEnumerateInstanceExtensionProperties EnumerateInstanceExtensionProperties;
47     PFN_vkEnumerateDeviceExtensionProperties EnumerateDeviceExtensionProperties;
48     PFN_vkEnumerateInstanceLayerProperties EnumerateInstanceLayerProperties;
49     PFN_vkEnumerateDeviceLayerProperties EnumerateDeviceLayerProperties;
50     PFN_vkGetPhysicalDeviceSparseImageFormatProperties GetPhysicalDeviceSparseImageFormatProperties;
51 
52     // ---- Core 1_1 commands
53     PFN_vkEnumerateInstanceVersion EnumerateInstanceVersion;
54     PFN_vkEnumeratePhysicalDeviceGroups EnumeratePhysicalDeviceGroups;
55     PFN_vkGetPhysicalDeviceFeatures2 GetPhysicalDeviceFeatures2;
56     PFN_vkGetPhysicalDeviceProperties2 GetPhysicalDeviceProperties2;
57     PFN_vkGetPhysicalDeviceFormatProperties2 GetPhysicalDeviceFormatProperties2;
58     PFN_vkGetPhysicalDeviceImageFormatProperties2 GetPhysicalDeviceImageFormatProperties2;
59     PFN_vkGetPhysicalDeviceQueueFamilyProperties2 GetPhysicalDeviceQueueFamilyProperties2;
60     PFN_vkGetPhysicalDeviceMemoryProperties2 GetPhysicalDeviceMemoryProperties2;
61     PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 GetPhysicalDeviceSparseImageFormatProperties2;
62     PFN_vkGetPhysicalDeviceExternalBufferProperties GetPhysicalDeviceExternalBufferProperties;
63     PFN_vkGetPhysicalDeviceExternalFenceProperties GetPhysicalDeviceExternalFenceProperties;
64     PFN_vkGetPhysicalDeviceExternalSemaphoreProperties GetPhysicalDeviceExternalSemaphoreProperties;
65 
66     // ---- Core 1_3 commands
67     PFN_vkGetPhysicalDeviceToolProperties GetPhysicalDeviceToolProperties;
68 
69     // ---- VK_KHR_surface extension commands
70     PFN_vkDestroySurfaceKHR DestroySurfaceKHR;
71     PFN_vkGetPhysicalDeviceSurfaceSupportKHR GetPhysicalDeviceSurfaceSupportKHR;
72     PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR GetPhysicalDeviceSurfaceCapabilitiesKHR;
73     PFN_vkGetPhysicalDeviceSurfaceFormatsKHR GetPhysicalDeviceSurfaceFormatsKHR;
74     PFN_vkGetPhysicalDeviceSurfacePresentModesKHR GetPhysicalDeviceSurfacePresentModesKHR;
75 
76     // ---- VK_KHR_swapchain extension commands
77     PFN_vkGetPhysicalDevicePresentRectanglesKHR GetPhysicalDevicePresentRectanglesKHR;
78 
79     // ---- VK_KHR_display extension commands
80     PFN_vkGetPhysicalDeviceDisplayPropertiesKHR GetPhysicalDeviceDisplayPropertiesKHR;
81     PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR GetPhysicalDeviceDisplayPlanePropertiesKHR;
82     PFN_vkGetDisplayPlaneSupportedDisplaysKHR GetDisplayPlaneSupportedDisplaysKHR;
83     PFN_vkGetDisplayModePropertiesKHR GetDisplayModePropertiesKHR;
84     PFN_vkCreateDisplayModeKHR CreateDisplayModeKHR;
85     PFN_vkGetDisplayPlaneCapabilitiesKHR GetDisplayPlaneCapabilitiesKHR;
86     PFN_vkCreateDisplayPlaneSurfaceKHR CreateDisplayPlaneSurfaceKHR;
87 
88     // ---- VK_KHR_xlib_surface extension commands
89 #ifdef VK_USE_PLATFORM_XLIB_KHR
90     PFN_vkCreateXlibSurfaceKHR CreateXlibSurfaceKHR;
91 #endif // VK_USE_PLATFORM_XLIB_KHR
92 #ifdef VK_USE_PLATFORM_XLIB_KHR
93     PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR GetPhysicalDeviceXlibPresentationSupportKHR;
94 #endif // VK_USE_PLATFORM_XLIB_KHR
95 
96     // ---- VK_KHR_xcb_surface extension commands
97 #ifdef VK_USE_PLATFORM_XCB_KHR
98     PFN_vkCreateXcbSurfaceKHR CreateXcbSurfaceKHR;
99 #endif // VK_USE_PLATFORM_XCB_KHR
100 #ifdef VK_USE_PLATFORM_XCB_KHR
101     PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR GetPhysicalDeviceXcbPresentationSupportKHR;
102 #endif // VK_USE_PLATFORM_XCB_KHR
103 
104     // ---- VK_KHR_wayland_surface extension commands
105 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
106     PFN_vkCreateWaylandSurfaceKHR CreateWaylandSurfaceKHR;
107 #endif // VK_USE_PLATFORM_WAYLAND_KHR
108 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
109     PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR GetPhysicalDeviceWaylandPresentationSupportKHR;
110 #endif // VK_USE_PLATFORM_WAYLAND_KHR
111 
112     // ---- VK_KHR_android_surface extension commands
113 #ifdef VK_USE_PLATFORM_ANDROID_KHR
114     PFN_vkCreateAndroidSurfaceKHR CreateAndroidSurfaceKHR;
115 #endif // VK_USE_PLATFORM_ANDROID_KHR
116 
117     // ---- VK_KHR_win32_surface extension commands
118 #ifdef VK_USE_PLATFORM_WIN32_KHR
119     PFN_vkCreateWin32SurfaceKHR CreateWin32SurfaceKHR;
120 #endif // VK_USE_PLATFORM_WIN32_KHR
121 #ifdef VK_USE_PLATFORM_WIN32_KHR
122     PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR GetPhysicalDeviceWin32PresentationSupportKHR;
123 #endif // VK_USE_PLATFORM_WIN32_KHR
124 
125     // ---- VK_KHR_video_queue extension commands
126 #ifdef VK_ENABLE_BETA_EXTENSIONS
127     PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR GetPhysicalDeviceVideoCapabilitiesKHR;
128 #endif // VK_ENABLE_BETA_EXTENSIONS
129 #ifdef VK_ENABLE_BETA_EXTENSIONS
130     PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR GetPhysicalDeviceVideoFormatPropertiesKHR;
131 #endif // VK_ENABLE_BETA_EXTENSIONS
132 
133     // ---- VK_KHR_get_physical_device_properties2 extension commands
134     PFN_vkGetPhysicalDeviceFeatures2KHR GetPhysicalDeviceFeatures2KHR;
135     PFN_vkGetPhysicalDeviceProperties2KHR GetPhysicalDeviceProperties2KHR;
136     PFN_vkGetPhysicalDeviceFormatProperties2KHR GetPhysicalDeviceFormatProperties2KHR;
137     PFN_vkGetPhysicalDeviceImageFormatProperties2KHR GetPhysicalDeviceImageFormatProperties2KHR;
138     PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR GetPhysicalDeviceQueueFamilyProperties2KHR;
139     PFN_vkGetPhysicalDeviceMemoryProperties2KHR GetPhysicalDeviceMemoryProperties2KHR;
140     PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR GetPhysicalDeviceSparseImageFormatProperties2KHR;
141 
142     // ---- VK_KHR_device_group_creation extension commands
143     PFN_vkEnumeratePhysicalDeviceGroupsKHR EnumeratePhysicalDeviceGroupsKHR;
144 
145     // ---- VK_KHR_external_memory_capabilities extension commands
146     PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR GetPhysicalDeviceExternalBufferPropertiesKHR;
147 
148     // ---- VK_KHR_external_semaphore_capabilities extension commands
149     PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR GetPhysicalDeviceExternalSemaphorePropertiesKHR;
150 
151     // ---- VK_KHR_external_fence_capabilities extension commands
152     PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR GetPhysicalDeviceExternalFencePropertiesKHR;
153 
154     // ---- VK_KHR_performance_query extension commands
155     PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
156     PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
157 
158     // ---- VK_KHR_get_surface_capabilities2 extension commands
159     PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR GetPhysicalDeviceSurfaceCapabilities2KHR;
160     PFN_vkGetPhysicalDeviceSurfaceFormats2KHR GetPhysicalDeviceSurfaceFormats2KHR;
161 
162     // ---- VK_KHR_get_display_properties2 extension commands
163     PFN_vkGetPhysicalDeviceDisplayProperties2KHR GetPhysicalDeviceDisplayProperties2KHR;
164     PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR GetPhysicalDeviceDisplayPlaneProperties2KHR;
165     PFN_vkGetDisplayModeProperties2KHR GetDisplayModeProperties2KHR;
166     PFN_vkGetDisplayPlaneCapabilities2KHR GetDisplayPlaneCapabilities2KHR;
167 
168     // ---- VK_KHR_fragment_shading_rate extension commands
169     PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR GetPhysicalDeviceFragmentShadingRatesKHR;
170 
171     // ---- VK_EXT_debug_report extension commands
172     PFN_vkCreateDebugReportCallbackEXT CreateDebugReportCallbackEXT;
173     PFN_vkDestroyDebugReportCallbackEXT DestroyDebugReportCallbackEXT;
174     PFN_vkDebugReportMessageEXT DebugReportMessageEXT;
175 
176     // ---- VK_GGP_stream_descriptor_surface extension commands
177 #ifdef VK_USE_PLATFORM_GGP
178     PFN_vkCreateStreamDescriptorSurfaceGGP CreateStreamDescriptorSurfaceGGP;
179 #endif // VK_USE_PLATFORM_GGP
180 
181     // ---- VK_NV_external_memory_capabilities extension commands
182     PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV GetPhysicalDeviceExternalImageFormatPropertiesNV;
183 
184     // ---- VK_NN_vi_surface extension commands
185 #ifdef VK_USE_PLATFORM_VI_NN
186     PFN_vkCreateViSurfaceNN CreateViSurfaceNN;
187 #endif // VK_USE_PLATFORM_VI_NN
188 
189     // ---- VK_EXT_direct_mode_display extension commands
190     PFN_vkReleaseDisplayEXT ReleaseDisplayEXT;
191 
192     // ---- VK_EXT_acquire_xlib_display extension commands
193 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
194     PFN_vkAcquireXlibDisplayEXT AcquireXlibDisplayEXT;
195 #endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
196 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
197     PFN_vkGetRandROutputDisplayEXT GetRandROutputDisplayEXT;
198 #endif // VK_USE_PLATFORM_XLIB_XRANDR_EXT
199 
200     // ---- VK_EXT_display_surface_counter extension commands
201     PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT GetPhysicalDeviceSurfaceCapabilities2EXT;
202 
203     // ---- VK_MVK_ios_surface extension commands
204 #ifdef VK_USE_PLATFORM_IOS_MVK
205     PFN_vkCreateIOSSurfaceMVK CreateIOSSurfaceMVK;
206 #endif // VK_USE_PLATFORM_IOS_MVK
207 
208     // ---- VK_MVK_macos_surface extension commands
209 #ifdef VK_USE_PLATFORM_MACOS_MVK
210     PFN_vkCreateMacOSSurfaceMVK CreateMacOSSurfaceMVK;
211 #endif // VK_USE_PLATFORM_MACOS_MVK
212 
213     // ---- VK_EXT_debug_utils extension commands
214     PFN_vkCreateDebugUtilsMessengerEXT CreateDebugUtilsMessengerEXT;
215     PFN_vkDestroyDebugUtilsMessengerEXT DestroyDebugUtilsMessengerEXT;
216     PFN_vkSubmitDebugUtilsMessageEXT SubmitDebugUtilsMessageEXT;
217 
218     // ---- VK_EXT_sample_locations extension commands
219     PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT GetPhysicalDeviceMultisamplePropertiesEXT;
220 
221     // ---- VK_EXT_calibrated_timestamps extension commands
222     PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT GetPhysicalDeviceCalibrateableTimeDomainsEXT;
223 
224     // ---- VK_FUCHSIA_imagepipe_surface extension commands
225 #ifdef VK_USE_PLATFORM_FUCHSIA
226     PFN_vkCreateImagePipeSurfaceFUCHSIA CreateImagePipeSurfaceFUCHSIA;
227 #endif // VK_USE_PLATFORM_FUCHSIA
228 
229     // ---- VK_EXT_metal_surface extension commands
230 #ifdef VK_USE_PLATFORM_METAL_EXT
231     PFN_vkCreateMetalSurfaceEXT CreateMetalSurfaceEXT;
232 #endif // VK_USE_PLATFORM_METAL_EXT
233 
234     // ---- VK_EXT_tooling_info extension commands
235     PFN_vkGetPhysicalDeviceToolPropertiesEXT GetPhysicalDeviceToolPropertiesEXT;
236 
237     // ---- VK_NV_cooperative_matrix extension commands
238     PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV GetPhysicalDeviceCooperativeMatrixPropertiesNV;
239 
240     // ---- VK_NV_coverage_reduction_mode extension commands
241     PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
242 
243     // ---- VK_EXT_full_screen_exclusive extension commands
244 #ifdef VK_USE_PLATFORM_WIN32_KHR
245     PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT GetPhysicalDeviceSurfacePresentModes2EXT;
246 #endif // VK_USE_PLATFORM_WIN32_KHR
247 
248     // ---- VK_EXT_headless_surface extension commands
249     PFN_vkCreateHeadlessSurfaceEXT CreateHeadlessSurfaceEXT;
250 
251     // ---- VK_EXT_acquire_drm_display extension commands
252     PFN_vkAcquireDrmDisplayEXT AcquireDrmDisplayEXT;
253     PFN_vkGetDrmDisplayEXT GetDrmDisplayEXT;
254 
255     // ---- VK_NV_acquire_winrt_display extension commands
256 #ifdef VK_USE_PLATFORM_WIN32_KHR
257     PFN_vkAcquireWinrtDisplayNV AcquireWinrtDisplayNV;
258 #endif // VK_USE_PLATFORM_WIN32_KHR
259 #ifdef VK_USE_PLATFORM_WIN32_KHR
260     PFN_vkGetWinrtDisplayNV GetWinrtDisplayNV;
261 #endif // VK_USE_PLATFORM_WIN32_KHR
262 
263     // ---- VK_EXT_directfb_surface extension commands
264 #ifdef VK_USE_PLATFORM_DIRECTFB_EXT
265     PFN_vkCreateDirectFBSurfaceEXT CreateDirectFBSurfaceEXT;
266 #endif // VK_USE_PLATFORM_DIRECTFB_EXT
267 #ifdef VK_USE_PLATFORM_DIRECTFB_EXT
268     PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT GetPhysicalDeviceDirectFBPresentationSupportEXT;
269 #endif // VK_USE_PLATFORM_DIRECTFB_EXT
270 
271     // ---- VK_QNX_screen_surface extension commands
272 #ifdef VK_USE_PLATFORM_SCREEN_QNX
273     PFN_vkCreateScreenSurfaceQNX CreateScreenSurfaceQNX;
274 #endif // VK_USE_PLATFORM_SCREEN_QNX
275 #ifdef VK_USE_PLATFORM_SCREEN_QNX
276     PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX GetPhysicalDeviceScreenPresentationSupportQNX;
277 #endif // VK_USE_PLATFORM_SCREEN_QNX
278 
279     // ---- VK_NV_optical_flow extension commands
280     PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV GetPhysicalDeviceOpticalFlowImageFormatsNV;
281 
282     // ---- VK_OHOS_surface extension commands
283 #ifdef VK_USE_PLATFORM_OHOS
284     PFN_vkCreateSurfaceOHOS CreateSurfaceOHOS;
285 #endif // VK_USE_PLATFORM_OHOS
286 } VkLayerInstanceDispatchTable;
287 
288 // Device function pointer dispatch table
289 #define DEVICE_DISP_TABLE_MAGIC_NUMBER 0x10ADED040410ADEDUL
290 typedef struct VkLayerDispatchTable_ {
291     uint64_t magic; // Should be DEVICE_DISP_TABLE_MAGIC_NUMBER
292 
293     // ---- Core 1_0 commands
294     PFN_vkGetDeviceProcAddr GetDeviceProcAddr;
295     PFN_vkDestroyDevice DestroyDevice;
296     PFN_vkGetDeviceQueue GetDeviceQueue;
297     PFN_vkQueueSubmit QueueSubmit;
298     PFN_vkQueueWaitIdle QueueWaitIdle;
299     PFN_vkDeviceWaitIdle DeviceWaitIdle;
300     PFN_vkAllocateMemory AllocateMemory;
301     PFN_vkFreeMemory FreeMemory;
302     PFN_vkMapMemory MapMemory;
303     PFN_vkUnmapMemory UnmapMemory;
304     PFN_vkFlushMappedMemoryRanges FlushMappedMemoryRanges;
305     PFN_vkInvalidateMappedMemoryRanges InvalidateMappedMemoryRanges;
306     PFN_vkGetDeviceMemoryCommitment GetDeviceMemoryCommitment;
307     PFN_vkBindBufferMemory BindBufferMemory;
308     PFN_vkBindImageMemory BindImageMemory;
309     PFN_vkGetBufferMemoryRequirements GetBufferMemoryRequirements;
310     PFN_vkGetImageMemoryRequirements GetImageMemoryRequirements;
311     PFN_vkGetImageSparseMemoryRequirements GetImageSparseMemoryRequirements;
312     PFN_vkQueueBindSparse QueueBindSparse;
313     PFN_vkCreateFence CreateFence;
314     PFN_vkDestroyFence DestroyFence;
315     PFN_vkResetFences ResetFences;
316     PFN_vkGetFenceStatus GetFenceStatus;
317     PFN_vkWaitForFences WaitForFences;
318     PFN_vkCreateSemaphore CreateSemaphore;
319     PFN_vkDestroySemaphore DestroySemaphore;
320     PFN_vkCreateEvent CreateEvent;
321     PFN_vkDestroyEvent DestroyEvent;
322     PFN_vkGetEventStatus GetEventStatus;
323     PFN_vkSetEvent SetEvent;
324     PFN_vkResetEvent ResetEvent;
325     PFN_vkCreateQueryPool CreateQueryPool;
326     PFN_vkDestroyQueryPool DestroyQueryPool;
327     PFN_vkGetQueryPoolResults GetQueryPoolResults;
328     PFN_vkCreateBuffer CreateBuffer;
329     PFN_vkDestroyBuffer DestroyBuffer;
330     PFN_vkCreateBufferView CreateBufferView;
331     PFN_vkDestroyBufferView DestroyBufferView;
332     PFN_vkCreateImage CreateImage;
333     PFN_vkDestroyImage DestroyImage;
334     PFN_vkGetImageSubresourceLayout GetImageSubresourceLayout;
335     PFN_vkCreateImageView CreateImageView;
336     PFN_vkDestroyImageView DestroyImageView;
337     PFN_vkCreateShaderModule CreateShaderModule;
338     PFN_vkDestroyShaderModule DestroyShaderModule;
339     PFN_vkCreatePipelineCache CreatePipelineCache;
340     PFN_vkDestroyPipelineCache DestroyPipelineCache;
341     PFN_vkGetPipelineCacheData GetPipelineCacheData;
342     PFN_vkMergePipelineCaches MergePipelineCaches;
343     PFN_vkCreateGraphicsPipelines CreateGraphicsPipelines;
344     PFN_vkCreateComputePipelines CreateComputePipelines;
345     PFN_vkDestroyPipeline DestroyPipeline;
346     PFN_vkCreatePipelineLayout CreatePipelineLayout;
347     PFN_vkDestroyPipelineLayout DestroyPipelineLayout;
348     PFN_vkCreateSampler CreateSampler;
349     PFN_vkDestroySampler DestroySampler;
350     PFN_vkCreateDescriptorSetLayout CreateDescriptorSetLayout;
351     PFN_vkDestroyDescriptorSetLayout DestroyDescriptorSetLayout;
352     PFN_vkCreateDescriptorPool CreateDescriptorPool;
353     PFN_vkDestroyDescriptorPool DestroyDescriptorPool;
354     PFN_vkResetDescriptorPool ResetDescriptorPool;
355     PFN_vkAllocateDescriptorSets AllocateDescriptorSets;
356     PFN_vkFreeDescriptorSets FreeDescriptorSets;
357     PFN_vkUpdateDescriptorSets UpdateDescriptorSets;
358     PFN_vkCreateFramebuffer CreateFramebuffer;
359     PFN_vkDestroyFramebuffer DestroyFramebuffer;
360     PFN_vkCreateRenderPass CreateRenderPass;
361     PFN_vkDestroyRenderPass DestroyRenderPass;
362     PFN_vkGetRenderAreaGranularity GetRenderAreaGranularity;
363     PFN_vkCreateCommandPool CreateCommandPool;
364     PFN_vkDestroyCommandPool DestroyCommandPool;
365     PFN_vkResetCommandPool ResetCommandPool;
366     PFN_vkAllocateCommandBuffers AllocateCommandBuffers;
367     PFN_vkFreeCommandBuffers FreeCommandBuffers;
368     PFN_vkBeginCommandBuffer BeginCommandBuffer;
369     PFN_vkEndCommandBuffer EndCommandBuffer;
370     PFN_vkResetCommandBuffer ResetCommandBuffer;
371     PFN_vkCmdBindPipeline CmdBindPipeline;
372     PFN_vkCmdSetViewport CmdSetViewport;
373     PFN_vkCmdSetScissor CmdSetScissor;
374     PFN_vkCmdSetLineWidth CmdSetLineWidth;
375     PFN_vkCmdSetDepthBias CmdSetDepthBias;
376     PFN_vkCmdSetBlendConstants CmdSetBlendConstants;
377     PFN_vkCmdSetDepthBounds CmdSetDepthBounds;
378     PFN_vkCmdSetStencilCompareMask CmdSetStencilCompareMask;
379     PFN_vkCmdSetStencilWriteMask CmdSetStencilWriteMask;
380     PFN_vkCmdSetStencilReference CmdSetStencilReference;
381     PFN_vkCmdBindDescriptorSets CmdBindDescriptorSets;
382     PFN_vkCmdBindIndexBuffer CmdBindIndexBuffer;
383     PFN_vkCmdBindVertexBuffers CmdBindVertexBuffers;
384     PFN_vkCmdDraw CmdDraw;
385     PFN_vkCmdDrawIndexed CmdDrawIndexed;
386     PFN_vkCmdDrawIndirect CmdDrawIndirect;
387     PFN_vkCmdDrawIndexedIndirect CmdDrawIndexedIndirect;
388     PFN_vkCmdDispatch CmdDispatch;
389     PFN_vkCmdDispatchIndirect CmdDispatchIndirect;
390     PFN_vkCmdCopyBuffer CmdCopyBuffer;
391     PFN_vkCmdCopyImage CmdCopyImage;
392     PFN_vkCmdBlitImage CmdBlitImage;
393     PFN_vkCmdCopyBufferToImage CmdCopyBufferToImage;
394     PFN_vkCmdCopyImageToBuffer CmdCopyImageToBuffer;
395     PFN_vkCmdUpdateBuffer CmdUpdateBuffer;
396     PFN_vkCmdFillBuffer CmdFillBuffer;
397     PFN_vkCmdClearColorImage CmdClearColorImage;
398     PFN_vkCmdClearDepthStencilImage CmdClearDepthStencilImage;
399     PFN_vkCmdClearAttachments CmdClearAttachments;
400     PFN_vkCmdResolveImage CmdResolveImage;
401     PFN_vkCmdSetEvent CmdSetEvent;
402     PFN_vkCmdResetEvent CmdResetEvent;
403     PFN_vkCmdWaitEvents CmdWaitEvents;
404     PFN_vkCmdPipelineBarrier CmdPipelineBarrier;
405     PFN_vkCmdBeginQuery CmdBeginQuery;
406     PFN_vkCmdEndQuery CmdEndQuery;
407     PFN_vkCmdResetQueryPool CmdResetQueryPool;
408     PFN_vkCmdWriteTimestamp CmdWriteTimestamp;
409     PFN_vkCmdCopyQueryPoolResults CmdCopyQueryPoolResults;
410     PFN_vkCmdPushConstants CmdPushConstants;
411     PFN_vkCmdBeginRenderPass CmdBeginRenderPass;
412     PFN_vkCmdNextSubpass CmdNextSubpass;
413     PFN_vkCmdEndRenderPass CmdEndRenderPass;
414     PFN_vkCmdExecuteCommands CmdExecuteCommands;
415 
416     // ---- Core 1_1 commands
417     PFN_vkBindBufferMemory2 BindBufferMemory2;
418     PFN_vkBindImageMemory2 BindImageMemory2;
419     PFN_vkGetDeviceGroupPeerMemoryFeatures GetDeviceGroupPeerMemoryFeatures;
420     PFN_vkCmdSetDeviceMask CmdSetDeviceMask;
421     PFN_vkCmdDispatchBase CmdDispatchBase;
422     PFN_vkGetImageMemoryRequirements2 GetImageMemoryRequirements2;
423     PFN_vkGetBufferMemoryRequirements2 GetBufferMemoryRequirements2;
424     PFN_vkGetImageSparseMemoryRequirements2 GetImageSparseMemoryRequirements2;
425     PFN_vkTrimCommandPool TrimCommandPool;
426     PFN_vkGetDeviceQueue2 GetDeviceQueue2;
427     PFN_vkCreateSamplerYcbcrConversion CreateSamplerYcbcrConversion;
428     PFN_vkDestroySamplerYcbcrConversion DestroySamplerYcbcrConversion;
429     PFN_vkCreateDescriptorUpdateTemplate CreateDescriptorUpdateTemplate;
430     PFN_vkDestroyDescriptorUpdateTemplate DestroyDescriptorUpdateTemplate;
431     PFN_vkUpdateDescriptorSetWithTemplate UpdateDescriptorSetWithTemplate;
432     PFN_vkGetDescriptorSetLayoutSupport GetDescriptorSetLayoutSupport;
433 
434     // ---- Core 1_2 commands
435     PFN_vkCmdDrawIndirectCount CmdDrawIndirectCount;
436     PFN_vkCmdDrawIndexedIndirectCount CmdDrawIndexedIndirectCount;
437     PFN_vkCreateRenderPass2 CreateRenderPass2;
438     PFN_vkCmdBeginRenderPass2 CmdBeginRenderPass2;
439     PFN_vkCmdNextSubpass2 CmdNextSubpass2;
440     PFN_vkCmdEndRenderPass2 CmdEndRenderPass2;
441     PFN_vkResetQueryPool ResetQueryPool;
442     PFN_vkGetSemaphoreCounterValue GetSemaphoreCounterValue;
443     PFN_vkWaitSemaphores WaitSemaphores;
444     PFN_vkSignalSemaphore SignalSemaphore;
445     PFN_vkGetBufferDeviceAddress GetBufferDeviceAddress;
446     PFN_vkGetBufferOpaqueCaptureAddress GetBufferOpaqueCaptureAddress;
447     PFN_vkGetDeviceMemoryOpaqueCaptureAddress GetDeviceMemoryOpaqueCaptureAddress;
448 
449     // ---- Core 1_3 commands
450     PFN_vkCreatePrivateDataSlot CreatePrivateDataSlot;
451     PFN_vkDestroyPrivateDataSlot DestroyPrivateDataSlot;
452     PFN_vkSetPrivateData SetPrivateData;
453     PFN_vkGetPrivateData GetPrivateData;
454     PFN_vkCmdSetEvent2 CmdSetEvent2;
455     PFN_vkCmdResetEvent2 CmdResetEvent2;
456     PFN_vkCmdWaitEvents2 CmdWaitEvents2;
457     PFN_vkCmdPipelineBarrier2 CmdPipelineBarrier2;
458     PFN_vkCmdWriteTimestamp2 CmdWriteTimestamp2;
459     PFN_vkQueueSubmit2 QueueSubmit2;
460     PFN_vkCmdCopyBuffer2 CmdCopyBuffer2;
461     PFN_vkCmdCopyImage2 CmdCopyImage2;
462     PFN_vkCmdCopyBufferToImage2 CmdCopyBufferToImage2;
463     PFN_vkCmdCopyImageToBuffer2 CmdCopyImageToBuffer2;
464     PFN_vkCmdBlitImage2 CmdBlitImage2;
465     PFN_vkCmdResolveImage2 CmdResolveImage2;
466     PFN_vkCmdBeginRendering CmdBeginRendering;
467     PFN_vkCmdEndRendering CmdEndRendering;
468     PFN_vkCmdSetCullMode CmdSetCullMode;
469     PFN_vkCmdSetFrontFace CmdSetFrontFace;
470     PFN_vkCmdSetPrimitiveTopology CmdSetPrimitiveTopology;
471     PFN_vkCmdSetViewportWithCount CmdSetViewportWithCount;
472     PFN_vkCmdSetScissorWithCount CmdSetScissorWithCount;
473     PFN_vkCmdBindVertexBuffers2 CmdBindVertexBuffers2;
474     PFN_vkCmdSetDepthTestEnable CmdSetDepthTestEnable;
475     PFN_vkCmdSetDepthWriteEnable CmdSetDepthWriteEnable;
476     PFN_vkCmdSetDepthCompareOp CmdSetDepthCompareOp;
477     PFN_vkCmdSetDepthBoundsTestEnable CmdSetDepthBoundsTestEnable;
478     PFN_vkCmdSetStencilTestEnable CmdSetStencilTestEnable;
479     PFN_vkCmdSetStencilOp CmdSetStencilOp;
480     PFN_vkCmdSetRasterizerDiscardEnable CmdSetRasterizerDiscardEnable;
481     PFN_vkCmdSetDepthBiasEnable CmdSetDepthBiasEnable;
482     PFN_vkCmdSetPrimitiveRestartEnable CmdSetPrimitiveRestartEnable;
483     PFN_vkGetDeviceBufferMemoryRequirements GetDeviceBufferMemoryRequirements;
484     PFN_vkGetDeviceImageMemoryRequirements GetDeviceImageMemoryRequirements;
485     PFN_vkGetDeviceImageSparseMemoryRequirements GetDeviceImageSparseMemoryRequirements;
486 
487     // ---- VK_KHR_swapchain extension commands
488     PFN_vkCreateSwapchainKHR CreateSwapchainKHR;
489     PFN_vkDestroySwapchainKHR DestroySwapchainKHR;
490     PFN_vkGetSwapchainImagesKHR GetSwapchainImagesKHR;
491     PFN_vkAcquireNextImageKHR AcquireNextImageKHR;
492     PFN_vkQueuePresentKHR QueuePresentKHR;
493     PFN_vkGetDeviceGroupPresentCapabilitiesKHR GetDeviceGroupPresentCapabilitiesKHR;
494     PFN_vkGetDeviceGroupSurfacePresentModesKHR GetDeviceGroupSurfacePresentModesKHR;
495     PFN_vkAcquireNextImage2KHR AcquireNextImage2KHR;
496 
497     // ---- VK_KHR_display_swapchain extension commands
498     PFN_vkCreateSharedSwapchainsKHR CreateSharedSwapchainsKHR;
499 
500     // ---- VK_KHR_video_queue extension commands
501 #ifdef VK_ENABLE_BETA_EXTENSIONS
502     PFN_vkCreateVideoSessionKHR CreateVideoSessionKHR;
503 #endif // VK_ENABLE_BETA_EXTENSIONS
504 #ifdef VK_ENABLE_BETA_EXTENSIONS
505     PFN_vkDestroyVideoSessionKHR DestroyVideoSessionKHR;
506 #endif // VK_ENABLE_BETA_EXTENSIONS
507 #ifdef VK_ENABLE_BETA_EXTENSIONS
508     PFN_vkGetVideoSessionMemoryRequirementsKHR GetVideoSessionMemoryRequirementsKHR;
509 #endif // VK_ENABLE_BETA_EXTENSIONS
510 #ifdef VK_ENABLE_BETA_EXTENSIONS
511     PFN_vkBindVideoSessionMemoryKHR BindVideoSessionMemoryKHR;
512 #endif // VK_ENABLE_BETA_EXTENSIONS
513 #ifdef VK_ENABLE_BETA_EXTENSIONS
514     PFN_vkCreateVideoSessionParametersKHR CreateVideoSessionParametersKHR;
515 #endif // VK_ENABLE_BETA_EXTENSIONS
516 #ifdef VK_ENABLE_BETA_EXTENSIONS
517     PFN_vkUpdateVideoSessionParametersKHR UpdateVideoSessionParametersKHR;
518 #endif // VK_ENABLE_BETA_EXTENSIONS
519 #ifdef VK_ENABLE_BETA_EXTENSIONS
520     PFN_vkDestroyVideoSessionParametersKHR DestroyVideoSessionParametersKHR;
521 #endif // VK_ENABLE_BETA_EXTENSIONS
522 #ifdef VK_ENABLE_BETA_EXTENSIONS
523     PFN_vkCmdBeginVideoCodingKHR CmdBeginVideoCodingKHR;
524 #endif // VK_ENABLE_BETA_EXTENSIONS
525 #ifdef VK_ENABLE_BETA_EXTENSIONS
526     PFN_vkCmdEndVideoCodingKHR CmdEndVideoCodingKHR;
527 #endif // VK_ENABLE_BETA_EXTENSIONS
528 #ifdef VK_ENABLE_BETA_EXTENSIONS
529     PFN_vkCmdControlVideoCodingKHR CmdControlVideoCodingKHR;
530 #endif // VK_ENABLE_BETA_EXTENSIONS
531 
532     // ---- VK_KHR_video_decode_queue extension commands
533 #ifdef VK_ENABLE_BETA_EXTENSIONS
534     PFN_vkCmdDecodeVideoKHR CmdDecodeVideoKHR;
535 #endif // VK_ENABLE_BETA_EXTENSIONS
536 
537     // ---- VK_KHR_dynamic_rendering extension commands
538     PFN_vkCmdBeginRenderingKHR CmdBeginRenderingKHR;
539     PFN_vkCmdEndRenderingKHR CmdEndRenderingKHR;
540 
541     // ---- VK_KHR_device_group extension commands
542     PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR GetDeviceGroupPeerMemoryFeaturesKHR;
543     PFN_vkCmdSetDeviceMaskKHR CmdSetDeviceMaskKHR;
544     PFN_vkCmdDispatchBaseKHR CmdDispatchBaseKHR;
545 
546     // ---- VK_KHR_maintenance1 extension commands
547     PFN_vkTrimCommandPoolKHR TrimCommandPoolKHR;
548 
549     // ---- VK_KHR_external_memory_win32 extension commands
550 #ifdef VK_USE_PLATFORM_WIN32_KHR
551     PFN_vkGetMemoryWin32HandleKHR GetMemoryWin32HandleKHR;
552 #endif // VK_USE_PLATFORM_WIN32_KHR
553 #ifdef VK_USE_PLATFORM_WIN32_KHR
554     PFN_vkGetMemoryWin32HandlePropertiesKHR GetMemoryWin32HandlePropertiesKHR;
555 #endif // VK_USE_PLATFORM_WIN32_KHR
556 
557     // ---- VK_KHR_external_memory_fd extension commands
558     PFN_vkGetMemoryFdKHR GetMemoryFdKHR;
559     PFN_vkGetMemoryFdPropertiesKHR GetMemoryFdPropertiesKHR;
560 
561     // ---- VK_KHR_external_semaphore_win32 extension commands
562 #ifdef VK_USE_PLATFORM_WIN32_KHR
563     PFN_vkImportSemaphoreWin32HandleKHR ImportSemaphoreWin32HandleKHR;
564 #endif // VK_USE_PLATFORM_WIN32_KHR
565 #ifdef VK_USE_PLATFORM_WIN32_KHR
566     PFN_vkGetSemaphoreWin32HandleKHR GetSemaphoreWin32HandleKHR;
567 #endif // VK_USE_PLATFORM_WIN32_KHR
568 
569     // ---- VK_KHR_external_semaphore_fd extension commands
570     PFN_vkImportSemaphoreFdKHR ImportSemaphoreFdKHR;
571     PFN_vkGetSemaphoreFdKHR GetSemaphoreFdKHR;
572 
573     // ---- VK_KHR_push_descriptor extension commands
574     PFN_vkCmdPushDescriptorSetKHR CmdPushDescriptorSetKHR;
575     PFN_vkCmdPushDescriptorSetWithTemplateKHR CmdPushDescriptorSetWithTemplateKHR;
576 
577     // ---- VK_KHR_descriptor_update_template extension commands
578     PFN_vkCreateDescriptorUpdateTemplateKHR CreateDescriptorUpdateTemplateKHR;
579     PFN_vkDestroyDescriptorUpdateTemplateKHR DestroyDescriptorUpdateTemplateKHR;
580     PFN_vkUpdateDescriptorSetWithTemplateKHR UpdateDescriptorSetWithTemplateKHR;
581 
582     // ---- VK_KHR_create_renderpass2 extension commands
583     PFN_vkCreateRenderPass2KHR CreateRenderPass2KHR;
584     PFN_vkCmdBeginRenderPass2KHR CmdBeginRenderPass2KHR;
585     PFN_vkCmdNextSubpass2KHR CmdNextSubpass2KHR;
586     PFN_vkCmdEndRenderPass2KHR CmdEndRenderPass2KHR;
587 
588     // ---- VK_KHR_shared_presentable_image extension commands
589     PFN_vkGetSwapchainStatusKHR GetSwapchainStatusKHR;
590 
591     // ---- VK_KHR_external_fence_win32 extension commands
592 #ifdef VK_USE_PLATFORM_WIN32_KHR
593     PFN_vkImportFenceWin32HandleKHR ImportFenceWin32HandleKHR;
594 #endif // VK_USE_PLATFORM_WIN32_KHR
595 #ifdef VK_USE_PLATFORM_WIN32_KHR
596     PFN_vkGetFenceWin32HandleKHR GetFenceWin32HandleKHR;
597 #endif // VK_USE_PLATFORM_WIN32_KHR
598 
599     // ---- VK_KHR_external_fence_fd extension commands
600     PFN_vkImportFenceFdKHR ImportFenceFdKHR;
601     PFN_vkGetFenceFdKHR GetFenceFdKHR;
602 
603     // ---- VK_KHR_performance_query extension commands
604     PFN_vkAcquireProfilingLockKHR AcquireProfilingLockKHR;
605     PFN_vkReleaseProfilingLockKHR ReleaseProfilingLockKHR;
606 
607     // ---- VK_KHR_get_memory_requirements2 extension commands
608     PFN_vkGetImageMemoryRequirements2KHR GetImageMemoryRequirements2KHR;
609     PFN_vkGetBufferMemoryRequirements2KHR GetBufferMemoryRequirements2KHR;
610     PFN_vkGetImageSparseMemoryRequirements2KHR GetImageSparseMemoryRequirements2KHR;
611 
612     // ---- VK_KHR_sampler_ycbcr_conversion extension commands
613     PFN_vkCreateSamplerYcbcrConversionKHR CreateSamplerYcbcrConversionKHR;
614     PFN_vkDestroySamplerYcbcrConversionKHR DestroySamplerYcbcrConversionKHR;
615 
616     // ---- VK_KHR_bind_memory2 extension commands
617     PFN_vkBindBufferMemory2KHR BindBufferMemory2KHR;
618     PFN_vkBindImageMemory2KHR BindImageMemory2KHR;
619 
620     // ---- VK_KHR_maintenance3 extension commands
621     PFN_vkGetDescriptorSetLayoutSupportKHR GetDescriptorSetLayoutSupportKHR;
622 
623     // ---- VK_KHR_draw_indirect_count extension commands
624     PFN_vkCmdDrawIndirectCountKHR CmdDrawIndirectCountKHR;
625     PFN_vkCmdDrawIndexedIndirectCountKHR CmdDrawIndexedIndirectCountKHR;
626 
627     // ---- VK_KHR_timeline_semaphore extension commands
628     PFN_vkGetSemaphoreCounterValueKHR GetSemaphoreCounterValueKHR;
629     PFN_vkWaitSemaphoresKHR WaitSemaphoresKHR;
630     PFN_vkSignalSemaphoreKHR SignalSemaphoreKHR;
631 
632     // ---- VK_KHR_fragment_shading_rate extension commands
633     PFN_vkCmdSetFragmentShadingRateKHR CmdSetFragmentShadingRateKHR;
634 
635     // ---- VK_KHR_present_wait extension commands
636     PFN_vkWaitForPresentKHR WaitForPresentKHR;
637 
638     // ---- VK_KHR_buffer_device_address extension commands
639     PFN_vkGetBufferDeviceAddressKHR GetBufferDeviceAddressKHR;
640     PFN_vkGetBufferOpaqueCaptureAddressKHR GetBufferOpaqueCaptureAddressKHR;
641     PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR GetDeviceMemoryOpaqueCaptureAddressKHR;
642 
643     // ---- VK_KHR_deferred_host_operations extension commands
644     PFN_vkCreateDeferredOperationKHR CreateDeferredOperationKHR;
645     PFN_vkDestroyDeferredOperationKHR DestroyDeferredOperationKHR;
646     PFN_vkGetDeferredOperationMaxConcurrencyKHR GetDeferredOperationMaxConcurrencyKHR;
647     PFN_vkGetDeferredOperationResultKHR GetDeferredOperationResultKHR;
648     PFN_vkDeferredOperationJoinKHR DeferredOperationJoinKHR;
649 
650     // ---- VK_KHR_pipeline_executable_properties extension commands
651     PFN_vkGetPipelineExecutablePropertiesKHR GetPipelineExecutablePropertiesKHR;
652     PFN_vkGetPipelineExecutableStatisticsKHR GetPipelineExecutableStatisticsKHR;
653     PFN_vkGetPipelineExecutableInternalRepresentationsKHR GetPipelineExecutableInternalRepresentationsKHR;
654 
655     // ---- VK_KHR_video_encode_queue extension commands
656 #ifdef VK_ENABLE_BETA_EXTENSIONS
657     PFN_vkCmdEncodeVideoKHR CmdEncodeVideoKHR;
658 #endif // VK_ENABLE_BETA_EXTENSIONS
659 
660     // ---- VK_KHR_synchronization2 extension commands
661     PFN_vkCmdSetEvent2KHR CmdSetEvent2KHR;
662     PFN_vkCmdResetEvent2KHR CmdResetEvent2KHR;
663     PFN_vkCmdWaitEvents2KHR CmdWaitEvents2KHR;
664     PFN_vkCmdPipelineBarrier2KHR CmdPipelineBarrier2KHR;
665     PFN_vkCmdWriteTimestamp2KHR CmdWriteTimestamp2KHR;
666     PFN_vkQueueSubmit2KHR QueueSubmit2KHR;
667     PFN_vkCmdWriteBufferMarker2AMD CmdWriteBufferMarker2AMD;
668     PFN_vkGetQueueCheckpointData2NV GetQueueCheckpointData2NV;
669 
670     // ---- VK_KHR_copy_commands2 extension commands
671     PFN_vkCmdCopyBuffer2KHR CmdCopyBuffer2KHR;
672     PFN_vkCmdCopyImage2KHR CmdCopyImage2KHR;
673     PFN_vkCmdCopyBufferToImage2KHR CmdCopyBufferToImage2KHR;
674     PFN_vkCmdCopyImageToBuffer2KHR CmdCopyImageToBuffer2KHR;
675     PFN_vkCmdBlitImage2KHR CmdBlitImage2KHR;
676     PFN_vkCmdResolveImage2KHR CmdResolveImage2KHR;
677 
678     // ---- VK_KHR_ray_tracing_maintenance1 extension commands
679     PFN_vkCmdTraceRaysIndirect2KHR CmdTraceRaysIndirect2KHR;
680 
681     // ---- VK_KHR_maintenance4 extension commands
682     PFN_vkGetDeviceBufferMemoryRequirementsKHR GetDeviceBufferMemoryRequirementsKHR;
683     PFN_vkGetDeviceImageMemoryRequirementsKHR GetDeviceImageMemoryRequirementsKHR;
684     PFN_vkGetDeviceImageSparseMemoryRequirementsKHR GetDeviceImageSparseMemoryRequirementsKHR;
685 
686     // ---- VK_EXT_debug_marker extension commands
687     PFN_vkDebugMarkerSetObjectTagEXT DebugMarkerSetObjectTagEXT;
688     PFN_vkDebugMarkerSetObjectNameEXT DebugMarkerSetObjectNameEXT;
689     PFN_vkCmdDebugMarkerBeginEXT CmdDebugMarkerBeginEXT;
690     PFN_vkCmdDebugMarkerEndEXT CmdDebugMarkerEndEXT;
691     PFN_vkCmdDebugMarkerInsertEXT CmdDebugMarkerInsertEXT;
692 
693     // ---- VK_EXT_transform_feedback extension commands
694     PFN_vkCmdBindTransformFeedbackBuffersEXT CmdBindTransformFeedbackBuffersEXT;
695     PFN_vkCmdBeginTransformFeedbackEXT CmdBeginTransformFeedbackEXT;
696     PFN_vkCmdEndTransformFeedbackEXT CmdEndTransformFeedbackEXT;
697     PFN_vkCmdBeginQueryIndexedEXT CmdBeginQueryIndexedEXT;
698     PFN_vkCmdEndQueryIndexedEXT CmdEndQueryIndexedEXT;
699     PFN_vkCmdDrawIndirectByteCountEXT CmdDrawIndirectByteCountEXT;
700 
701     // ---- VK_NVX_binary_import extension commands
702     PFN_vkCreateCuModuleNVX CreateCuModuleNVX;
703     PFN_vkCreateCuFunctionNVX CreateCuFunctionNVX;
704     PFN_vkDestroyCuModuleNVX DestroyCuModuleNVX;
705     PFN_vkDestroyCuFunctionNVX DestroyCuFunctionNVX;
706     PFN_vkCmdCuLaunchKernelNVX CmdCuLaunchKernelNVX;
707 
708     // ---- VK_NVX_image_view_handle extension commands
709     PFN_vkGetImageViewHandleNVX GetImageViewHandleNVX;
710     PFN_vkGetImageViewAddressNVX GetImageViewAddressNVX;
711 
712     // ---- VK_AMD_draw_indirect_count extension commands
713     PFN_vkCmdDrawIndirectCountAMD CmdDrawIndirectCountAMD;
714     PFN_vkCmdDrawIndexedIndirectCountAMD CmdDrawIndexedIndirectCountAMD;
715 
716     // ---- VK_AMD_shader_info extension commands
717     PFN_vkGetShaderInfoAMD GetShaderInfoAMD;
718 
719     // ---- VK_NV_external_memory_win32 extension commands
720 #ifdef VK_USE_PLATFORM_WIN32_KHR
721     PFN_vkGetMemoryWin32HandleNV GetMemoryWin32HandleNV;
722 #endif // VK_USE_PLATFORM_WIN32_KHR
723 
724     // ---- VK_EXT_conditional_rendering extension commands
725     PFN_vkCmdBeginConditionalRenderingEXT CmdBeginConditionalRenderingEXT;
726     PFN_vkCmdEndConditionalRenderingEXT CmdEndConditionalRenderingEXT;
727 
728     // ---- VK_NV_clip_space_w_scaling extension commands
729     PFN_vkCmdSetViewportWScalingNV CmdSetViewportWScalingNV;
730 
731     // ---- VK_EXT_display_control extension commands
732     PFN_vkDisplayPowerControlEXT DisplayPowerControlEXT;
733     PFN_vkRegisterDeviceEventEXT RegisterDeviceEventEXT;
734     PFN_vkRegisterDisplayEventEXT RegisterDisplayEventEXT;
735     PFN_vkGetSwapchainCounterEXT GetSwapchainCounterEXT;
736 
737     // ---- VK_GOOGLE_display_timing extension commands
738     PFN_vkGetRefreshCycleDurationGOOGLE GetRefreshCycleDurationGOOGLE;
739     PFN_vkGetPastPresentationTimingGOOGLE GetPastPresentationTimingGOOGLE;
740 
741     // ---- VK_EXT_discard_rectangles extension commands
742     PFN_vkCmdSetDiscardRectangleEXT CmdSetDiscardRectangleEXT;
743 
744     // ---- VK_EXT_hdr_metadata extension commands
745     PFN_vkSetHdrMetadataEXT SetHdrMetadataEXT;
746 
747     // ---- VK_EXT_debug_utils extension commands
748     PFN_vkSetDebugUtilsObjectNameEXT SetDebugUtilsObjectNameEXT;
749     PFN_vkSetDebugUtilsObjectTagEXT SetDebugUtilsObjectTagEXT;
750     PFN_vkQueueBeginDebugUtilsLabelEXT QueueBeginDebugUtilsLabelEXT;
751     PFN_vkQueueEndDebugUtilsLabelEXT QueueEndDebugUtilsLabelEXT;
752     PFN_vkQueueInsertDebugUtilsLabelEXT QueueInsertDebugUtilsLabelEXT;
753     PFN_vkCmdBeginDebugUtilsLabelEXT CmdBeginDebugUtilsLabelEXT;
754     PFN_vkCmdEndDebugUtilsLabelEXT CmdEndDebugUtilsLabelEXT;
755     PFN_vkCmdInsertDebugUtilsLabelEXT CmdInsertDebugUtilsLabelEXT;
756 
757     // ---- VK_ANDROID_external_memory_android_hardware_buffer extension commands
758 #ifdef VK_USE_PLATFORM_ANDROID_KHR
759     PFN_vkGetAndroidHardwareBufferPropertiesANDROID GetAndroidHardwareBufferPropertiesANDROID;
760 #endif // VK_USE_PLATFORM_ANDROID_KHR
761 #ifdef VK_USE_PLATFORM_ANDROID_KHR
762     PFN_vkGetMemoryAndroidHardwareBufferANDROID GetMemoryAndroidHardwareBufferANDROID;
763 #endif // VK_USE_PLATFORM_ANDROID_KHR
764 
765     // ---- VK_EXT_sample_locations extension commands
766     PFN_vkCmdSetSampleLocationsEXT CmdSetSampleLocationsEXT;
767 
768     // ---- VK_EXT_image_drm_format_modifier extension commands
769     PFN_vkGetImageDrmFormatModifierPropertiesEXT GetImageDrmFormatModifierPropertiesEXT;
770 
771     // ---- VK_EXT_validation_cache extension commands
772     PFN_vkCreateValidationCacheEXT CreateValidationCacheEXT;
773     PFN_vkDestroyValidationCacheEXT DestroyValidationCacheEXT;
774     PFN_vkMergeValidationCachesEXT MergeValidationCachesEXT;
775     PFN_vkGetValidationCacheDataEXT GetValidationCacheDataEXT;
776 
777     // ---- VK_NV_shading_rate_image extension commands
778     PFN_vkCmdBindShadingRateImageNV CmdBindShadingRateImageNV;
779     PFN_vkCmdSetViewportShadingRatePaletteNV CmdSetViewportShadingRatePaletteNV;
780     PFN_vkCmdSetCoarseSampleOrderNV CmdSetCoarseSampleOrderNV;
781 
782     // ---- VK_NV_ray_tracing extension commands
783     PFN_vkCreateAccelerationStructureNV CreateAccelerationStructureNV;
784     PFN_vkDestroyAccelerationStructureNV DestroyAccelerationStructureNV;
785     PFN_vkGetAccelerationStructureMemoryRequirementsNV GetAccelerationStructureMemoryRequirementsNV;
786     PFN_vkBindAccelerationStructureMemoryNV BindAccelerationStructureMemoryNV;
787     PFN_vkCmdBuildAccelerationStructureNV CmdBuildAccelerationStructureNV;
788     PFN_vkCmdCopyAccelerationStructureNV CmdCopyAccelerationStructureNV;
789     PFN_vkCmdTraceRaysNV CmdTraceRaysNV;
790     PFN_vkCreateRayTracingPipelinesNV CreateRayTracingPipelinesNV;
791     PFN_vkGetRayTracingShaderGroupHandlesKHR GetRayTracingShaderGroupHandlesKHR;
792     PFN_vkGetRayTracingShaderGroupHandlesNV GetRayTracingShaderGroupHandlesNV;
793     PFN_vkGetAccelerationStructureHandleNV GetAccelerationStructureHandleNV;
794     PFN_vkCmdWriteAccelerationStructuresPropertiesNV CmdWriteAccelerationStructuresPropertiesNV;
795     PFN_vkCompileDeferredNV CompileDeferredNV;
796 
797     // ---- VK_EXT_external_memory_host extension commands
798     PFN_vkGetMemoryHostPointerPropertiesEXT GetMemoryHostPointerPropertiesEXT;
799 
800     // ---- VK_AMD_buffer_marker extension commands
801     PFN_vkCmdWriteBufferMarkerAMD CmdWriteBufferMarkerAMD;
802 
803     // ---- VK_EXT_calibrated_timestamps extension commands
804     PFN_vkGetCalibratedTimestampsEXT GetCalibratedTimestampsEXT;
805 
806     // ---- VK_NV_mesh_shader extension commands
807     PFN_vkCmdDrawMeshTasksNV CmdDrawMeshTasksNV;
808     PFN_vkCmdDrawMeshTasksIndirectNV CmdDrawMeshTasksIndirectNV;
809     PFN_vkCmdDrawMeshTasksIndirectCountNV CmdDrawMeshTasksIndirectCountNV;
810 
811     // ---- VK_NV_scissor_exclusive extension commands
812     PFN_vkCmdSetExclusiveScissorNV CmdSetExclusiveScissorNV;
813 
814     // ---- VK_NV_device_diagnostic_checkpoints extension commands
815     PFN_vkCmdSetCheckpointNV CmdSetCheckpointNV;
816     PFN_vkGetQueueCheckpointDataNV GetQueueCheckpointDataNV;
817 
818     // ---- VK_INTEL_performance_query extension commands
819     PFN_vkInitializePerformanceApiINTEL InitializePerformanceApiINTEL;
820     PFN_vkUninitializePerformanceApiINTEL UninitializePerformanceApiINTEL;
821     PFN_vkCmdSetPerformanceMarkerINTEL CmdSetPerformanceMarkerINTEL;
822     PFN_vkCmdSetPerformanceStreamMarkerINTEL CmdSetPerformanceStreamMarkerINTEL;
823     PFN_vkCmdSetPerformanceOverrideINTEL CmdSetPerformanceOverrideINTEL;
824     PFN_vkAcquirePerformanceConfigurationINTEL AcquirePerformanceConfigurationINTEL;
825     PFN_vkReleasePerformanceConfigurationINTEL ReleasePerformanceConfigurationINTEL;
826     PFN_vkQueueSetPerformanceConfigurationINTEL QueueSetPerformanceConfigurationINTEL;
827     PFN_vkGetPerformanceParameterINTEL GetPerformanceParameterINTEL;
828 
829     // ---- VK_AMD_display_native_hdr extension commands
830     PFN_vkSetLocalDimmingAMD SetLocalDimmingAMD;
831 
832     // ---- VK_EXT_buffer_device_address extension commands
833     PFN_vkGetBufferDeviceAddressEXT GetBufferDeviceAddressEXT;
834 
835     // ---- VK_EXT_full_screen_exclusive extension commands
836 #ifdef VK_USE_PLATFORM_WIN32_KHR
837     PFN_vkAcquireFullScreenExclusiveModeEXT AcquireFullScreenExclusiveModeEXT;
838 #endif // VK_USE_PLATFORM_WIN32_KHR
839 #ifdef VK_USE_PLATFORM_WIN32_KHR
840     PFN_vkReleaseFullScreenExclusiveModeEXT ReleaseFullScreenExclusiveModeEXT;
841 #endif // VK_USE_PLATFORM_WIN32_KHR
842 #ifdef VK_USE_PLATFORM_WIN32_KHR
843     PFN_vkGetDeviceGroupSurfacePresentModes2EXT GetDeviceGroupSurfacePresentModes2EXT;
844 #endif // VK_USE_PLATFORM_WIN32_KHR
845 
846     // ---- VK_EXT_line_rasterization extension commands
847     PFN_vkCmdSetLineStippleEXT CmdSetLineStippleEXT;
848 
849     // ---- VK_EXT_host_query_reset extension commands
850     PFN_vkResetQueryPoolEXT ResetQueryPoolEXT;
851 
852     // ---- VK_EXT_extended_dynamic_state extension commands
853     PFN_vkCmdSetCullModeEXT CmdSetCullModeEXT;
854     PFN_vkCmdSetFrontFaceEXT CmdSetFrontFaceEXT;
855     PFN_vkCmdSetPrimitiveTopologyEXT CmdSetPrimitiveTopologyEXT;
856     PFN_vkCmdSetViewportWithCountEXT CmdSetViewportWithCountEXT;
857     PFN_vkCmdSetScissorWithCountEXT CmdSetScissorWithCountEXT;
858     PFN_vkCmdBindVertexBuffers2EXT CmdBindVertexBuffers2EXT;
859     PFN_vkCmdSetDepthTestEnableEXT CmdSetDepthTestEnableEXT;
860     PFN_vkCmdSetDepthWriteEnableEXT CmdSetDepthWriteEnableEXT;
861     PFN_vkCmdSetDepthCompareOpEXT CmdSetDepthCompareOpEXT;
862     PFN_vkCmdSetDepthBoundsTestEnableEXT CmdSetDepthBoundsTestEnableEXT;
863     PFN_vkCmdSetStencilTestEnableEXT CmdSetStencilTestEnableEXT;
864     PFN_vkCmdSetStencilOpEXT CmdSetStencilOpEXT;
865 
866     // ---- VK_NV_device_generated_commands extension commands
867     PFN_vkGetGeneratedCommandsMemoryRequirementsNV GetGeneratedCommandsMemoryRequirementsNV;
868     PFN_vkCmdPreprocessGeneratedCommandsNV CmdPreprocessGeneratedCommandsNV;
869     PFN_vkCmdExecuteGeneratedCommandsNV CmdExecuteGeneratedCommandsNV;
870     PFN_vkCmdBindPipelineShaderGroupNV CmdBindPipelineShaderGroupNV;
871     PFN_vkCreateIndirectCommandsLayoutNV CreateIndirectCommandsLayoutNV;
872     PFN_vkDestroyIndirectCommandsLayoutNV DestroyIndirectCommandsLayoutNV;
873 
874     // ---- VK_EXT_private_data extension commands
875     PFN_vkCreatePrivateDataSlotEXT CreatePrivateDataSlotEXT;
876     PFN_vkDestroyPrivateDataSlotEXT DestroyPrivateDataSlotEXT;
877     PFN_vkSetPrivateDataEXT SetPrivateDataEXT;
878     PFN_vkGetPrivateDataEXT GetPrivateDataEXT;
879 
880     // ---- VK_EXT_metal_objects extension commands
881 #ifdef VK_USE_PLATFORM_METAL_EXT
882     PFN_vkExportMetalObjectsEXT ExportMetalObjectsEXT;
883 #endif // VK_USE_PLATFORM_METAL_EXT
884 
885     // ---- VK_NV_fragment_shading_rate_enums extension commands
886     PFN_vkCmdSetFragmentShadingRateEnumNV CmdSetFragmentShadingRateEnumNV;
887 
888     // ---- VK_EXT_image_compression_control extension commands
889     PFN_vkGetImageSubresourceLayout2EXT GetImageSubresourceLayout2EXT;
890 
891     // ---- VK_EXT_device_fault extension commands
892     PFN_vkGetDeviceFaultInfoEXT GetDeviceFaultInfoEXT;
893 
894     // ---- VK_EXT_vertex_input_dynamic_state extension commands
895     PFN_vkCmdSetVertexInputEXT CmdSetVertexInputEXT;
896 
897     // ---- VK_FUCHSIA_external_memory extension commands
898 #ifdef VK_USE_PLATFORM_FUCHSIA
899     PFN_vkGetMemoryZirconHandleFUCHSIA GetMemoryZirconHandleFUCHSIA;
900 #endif // VK_USE_PLATFORM_FUCHSIA
901 #ifdef VK_USE_PLATFORM_FUCHSIA
902     PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA GetMemoryZirconHandlePropertiesFUCHSIA;
903 #endif // VK_USE_PLATFORM_FUCHSIA
904 
905     // ---- VK_FUCHSIA_external_semaphore extension commands
906 #ifdef VK_USE_PLATFORM_FUCHSIA
907     PFN_vkImportSemaphoreZirconHandleFUCHSIA ImportSemaphoreZirconHandleFUCHSIA;
908 #endif // VK_USE_PLATFORM_FUCHSIA
909 #ifdef VK_USE_PLATFORM_FUCHSIA
910     PFN_vkGetSemaphoreZirconHandleFUCHSIA GetSemaphoreZirconHandleFUCHSIA;
911 #endif // VK_USE_PLATFORM_FUCHSIA
912 
913     // ---- VK_FUCHSIA_buffer_collection extension commands
914 #ifdef VK_USE_PLATFORM_FUCHSIA
915     PFN_vkCreateBufferCollectionFUCHSIA CreateBufferCollectionFUCHSIA;
916 #endif // VK_USE_PLATFORM_FUCHSIA
917 #ifdef VK_USE_PLATFORM_FUCHSIA
918     PFN_vkSetBufferCollectionImageConstraintsFUCHSIA SetBufferCollectionImageConstraintsFUCHSIA;
919 #endif // VK_USE_PLATFORM_FUCHSIA
920 #ifdef VK_USE_PLATFORM_FUCHSIA
921     PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA SetBufferCollectionBufferConstraintsFUCHSIA;
922 #endif // VK_USE_PLATFORM_FUCHSIA
923 #ifdef VK_USE_PLATFORM_FUCHSIA
924     PFN_vkDestroyBufferCollectionFUCHSIA DestroyBufferCollectionFUCHSIA;
925 #endif // VK_USE_PLATFORM_FUCHSIA
926 #ifdef VK_USE_PLATFORM_FUCHSIA
927     PFN_vkGetBufferCollectionPropertiesFUCHSIA GetBufferCollectionPropertiesFUCHSIA;
928 #endif // VK_USE_PLATFORM_FUCHSIA
929 
930     // ---- VK_HUAWEI_subpass_shading extension commands
931     PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI GetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI;
932     PFN_vkCmdSubpassShadingHUAWEI CmdSubpassShadingHUAWEI;
933 
934     // ---- VK_HUAWEI_invocation_mask extension commands
935     PFN_vkCmdBindInvocationMaskHUAWEI CmdBindInvocationMaskHUAWEI;
936 
937     // ---- VK_NV_external_memory_rdma extension commands
938     PFN_vkGetMemoryRemoteAddressNV GetMemoryRemoteAddressNV;
939 
940     // ---- VK_EXT_pipeline_properties extension commands
941     PFN_vkGetPipelinePropertiesEXT GetPipelinePropertiesEXT;
942 
943     // ---- VK_EXT_extended_dynamic_state2 extension commands
944     PFN_vkCmdSetPatchControlPointsEXT CmdSetPatchControlPointsEXT;
945     PFN_vkCmdSetRasterizerDiscardEnableEXT CmdSetRasterizerDiscardEnableEXT;
946     PFN_vkCmdSetDepthBiasEnableEXT CmdSetDepthBiasEnableEXT;
947     PFN_vkCmdSetLogicOpEXT CmdSetLogicOpEXT;
948     PFN_vkCmdSetPrimitiveRestartEnableEXT CmdSetPrimitiveRestartEnableEXT;
949 
950     // ---- VK_EXT_color_write_enable extension commands
951     PFN_vkCmdSetColorWriteEnableEXT CmdSetColorWriteEnableEXT;
952 
953     // ---- VK_EXT_multi_draw extension commands
954     PFN_vkCmdDrawMultiEXT CmdDrawMultiEXT;
955     PFN_vkCmdDrawMultiIndexedEXT CmdDrawMultiIndexedEXT;
956 
957     // ---- VK_EXT_opacity_micromap extension commands
958     PFN_vkCreateMicromapEXT CreateMicromapEXT;
959     PFN_vkDestroyMicromapEXT DestroyMicromapEXT;
960     PFN_vkCmdBuildMicromapsEXT CmdBuildMicromapsEXT;
961     PFN_vkBuildMicromapsEXT BuildMicromapsEXT;
962     PFN_vkCopyMicromapEXT CopyMicromapEXT;
963     PFN_vkCopyMicromapToMemoryEXT CopyMicromapToMemoryEXT;
964     PFN_vkCopyMemoryToMicromapEXT CopyMemoryToMicromapEXT;
965     PFN_vkWriteMicromapsPropertiesEXT WriteMicromapsPropertiesEXT;
966     PFN_vkCmdCopyMicromapEXT CmdCopyMicromapEXT;
967     PFN_vkCmdCopyMicromapToMemoryEXT CmdCopyMicromapToMemoryEXT;
968     PFN_vkCmdCopyMemoryToMicromapEXT CmdCopyMemoryToMicromapEXT;
969     PFN_vkCmdWriteMicromapsPropertiesEXT CmdWriteMicromapsPropertiesEXT;
970     PFN_vkGetDeviceMicromapCompatibilityEXT GetDeviceMicromapCompatibilityEXT;
971     PFN_vkGetMicromapBuildSizesEXT GetMicromapBuildSizesEXT;
972 
973     // ---- VK_EXT_pageable_device_local_memory extension commands
974     PFN_vkSetDeviceMemoryPriorityEXT SetDeviceMemoryPriorityEXT;
975 
976     // ---- VK_VALVE_descriptor_set_host_mapping extension commands
977     PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE GetDescriptorSetLayoutHostMappingInfoVALVE;
978     PFN_vkGetDescriptorSetHostMappingVALVE GetDescriptorSetHostMappingVALVE;
979 
980     // ---- VK_EXT_extended_dynamic_state3 extension commands
981     PFN_vkCmdSetTessellationDomainOriginEXT CmdSetTessellationDomainOriginEXT;
982     PFN_vkCmdSetDepthClampEnableEXT CmdSetDepthClampEnableEXT;
983     PFN_vkCmdSetPolygonModeEXT CmdSetPolygonModeEXT;
984     PFN_vkCmdSetRasterizationSamplesEXT CmdSetRasterizationSamplesEXT;
985     PFN_vkCmdSetSampleMaskEXT CmdSetSampleMaskEXT;
986     PFN_vkCmdSetAlphaToCoverageEnableEXT CmdSetAlphaToCoverageEnableEXT;
987     PFN_vkCmdSetAlphaToOneEnableEXT CmdSetAlphaToOneEnableEXT;
988     PFN_vkCmdSetLogicOpEnableEXT CmdSetLogicOpEnableEXT;
989     PFN_vkCmdSetColorBlendEnableEXT CmdSetColorBlendEnableEXT;
990     PFN_vkCmdSetColorBlendEquationEXT CmdSetColorBlendEquationEXT;
991     PFN_vkCmdSetColorWriteMaskEXT CmdSetColorWriteMaskEXT;
992     PFN_vkCmdSetRasterizationStreamEXT CmdSetRasterizationStreamEXT;
993     PFN_vkCmdSetConservativeRasterizationModeEXT CmdSetConservativeRasterizationModeEXT;
994     PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT CmdSetExtraPrimitiveOverestimationSizeEXT;
995     PFN_vkCmdSetDepthClipEnableEXT CmdSetDepthClipEnableEXT;
996     PFN_vkCmdSetSampleLocationsEnableEXT CmdSetSampleLocationsEnableEXT;
997     PFN_vkCmdSetColorBlendAdvancedEXT CmdSetColorBlendAdvancedEXT;
998     PFN_vkCmdSetProvokingVertexModeEXT CmdSetProvokingVertexModeEXT;
999     PFN_vkCmdSetLineRasterizationModeEXT CmdSetLineRasterizationModeEXT;
1000     PFN_vkCmdSetLineStippleEnableEXT CmdSetLineStippleEnableEXT;
1001     PFN_vkCmdSetDepthClipNegativeOneToOneEXT CmdSetDepthClipNegativeOneToOneEXT;
1002     PFN_vkCmdSetViewportWScalingEnableNV CmdSetViewportWScalingEnableNV;
1003     PFN_vkCmdSetViewportSwizzleNV CmdSetViewportSwizzleNV;
1004     PFN_vkCmdSetCoverageToColorEnableNV CmdSetCoverageToColorEnableNV;
1005     PFN_vkCmdSetCoverageToColorLocationNV CmdSetCoverageToColorLocationNV;
1006     PFN_vkCmdSetCoverageModulationModeNV CmdSetCoverageModulationModeNV;
1007     PFN_vkCmdSetCoverageModulationTableEnableNV CmdSetCoverageModulationTableEnableNV;
1008     PFN_vkCmdSetCoverageModulationTableNV CmdSetCoverageModulationTableNV;
1009     PFN_vkCmdSetShadingRateImageEnableNV CmdSetShadingRateImageEnableNV;
1010     PFN_vkCmdSetRepresentativeFragmentTestEnableNV CmdSetRepresentativeFragmentTestEnableNV;
1011     PFN_vkCmdSetCoverageReductionModeNV CmdSetCoverageReductionModeNV;
1012 
1013     // ---- VK_EXT_shader_module_identifier extension commands
1014     PFN_vkGetShaderModuleIdentifierEXT GetShaderModuleIdentifierEXT;
1015     PFN_vkGetShaderModuleCreateInfoIdentifierEXT GetShaderModuleCreateInfoIdentifierEXT;
1016 
1017     // ---- VK_NV_optical_flow extension commands
1018     PFN_vkCreateOpticalFlowSessionNV CreateOpticalFlowSessionNV;
1019     PFN_vkDestroyOpticalFlowSessionNV DestroyOpticalFlowSessionNV;
1020     PFN_vkBindOpticalFlowSessionImageNV BindOpticalFlowSessionImageNV;
1021     PFN_vkCmdOpticalFlowExecuteNV CmdOpticalFlowExecuteNV;
1022 
1023     // ---- VK_QCOM_tile_properties extension commands
1024     PFN_vkGetFramebufferTilePropertiesQCOM GetFramebufferTilePropertiesQCOM;
1025     PFN_vkGetDynamicRenderingTilePropertiesQCOM GetDynamicRenderingTilePropertiesQCOM;
1026 
1027     // ---- VK_OHOS_native_buffer extension commands
1028 #ifdef VK_USE_PLATFORM_OHOS
1029     PFN_vkGetSwapchainGrallocUsageOHOS GetSwapchainGrallocUsageOHOS;
1030 #endif // VK_USE_PLATFORM_OHOS
1031 #ifdef VK_USE_PLATFORM_OHOS
1032     PFN_vkAcquireImageOHOS AcquireImageOHOS;
1033 #endif // VK_USE_PLATFORM_OHOS
1034 #ifdef VK_USE_PLATFORM_OHOS
1035     PFN_vkQueueSignalReleaseImageOHOS QueueSignalReleaseImageOHOS;
1036 #endif // VK_USE_PLATFORM_OHOS
1037 
1038     // ---- VK_OHOS_external_memory extension commands
1039 #ifdef VK_USE_PLATFORM_OHOS
1040     PFN_vkGetNativeBufferPropertiesOHOS GetNativeBufferPropertiesOHOS;
1041 #endif // VK_USE_PLATFORM_OHOS
1042 #ifdef VK_USE_PLATFORM_OHOS
1043     PFN_vkGetMemoryNativeBufferOHOS GetMemoryNativeBufferOHOS;
1044 #endif // VK_USE_PLATFORM_OHOS
1045 
1046     // ---- VK_KHR_acceleration_structure extension commands
1047     PFN_vkCreateAccelerationStructureKHR CreateAccelerationStructureKHR;
1048     PFN_vkDestroyAccelerationStructureKHR DestroyAccelerationStructureKHR;
1049     PFN_vkCmdBuildAccelerationStructuresKHR CmdBuildAccelerationStructuresKHR;
1050     PFN_vkCmdBuildAccelerationStructuresIndirectKHR CmdBuildAccelerationStructuresIndirectKHR;
1051     PFN_vkBuildAccelerationStructuresKHR BuildAccelerationStructuresKHR;
1052     PFN_vkCopyAccelerationStructureKHR CopyAccelerationStructureKHR;
1053     PFN_vkCopyAccelerationStructureToMemoryKHR CopyAccelerationStructureToMemoryKHR;
1054     PFN_vkCopyMemoryToAccelerationStructureKHR CopyMemoryToAccelerationStructureKHR;
1055     PFN_vkWriteAccelerationStructuresPropertiesKHR WriteAccelerationStructuresPropertiesKHR;
1056     PFN_vkCmdCopyAccelerationStructureKHR CmdCopyAccelerationStructureKHR;
1057     PFN_vkCmdCopyAccelerationStructureToMemoryKHR CmdCopyAccelerationStructureToMemoryKHR;
1058     PFN_vkCmdCopyMemoryToAccelerationStructureKHR CmdCopyMemoryToAccelerationStructureKHR;
1059     PFN_vkGetAccelerationStructureDeviceAddressKHR GetAccelerationStructureDeviceAddressKHR;
1060     PFN_vkCmdWriteAccelerationStructuresPropertiesKHR CmdWriteAccelerationStructuresPropertiesKHR;
1061     PFN_vkGetDeviceAccelerationStructureCompatibilityKHR GetDeviceAccelerationStructureCompatibilityKHR;
1062     PFN_vkGetAccelerationStructureBuildSizesKHR GetAccelerationStructureBuildSizesKHR;
1063 
1064     // ---- VK_KHR_ray_tracing_pipeline extension commands
1065     PFN_vkCmdTraceRaysKHR CmdTraceRaysKHR;
1066     PFN_vkCreateRayTracingPipelinesKHR CreateRayTracingPipelinesKHR;
1067     PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR GetRayTracingCaptureReplayShaderGroupHandlesKHR;
1068     PFN_vkCmdTraceRaysIndirectKHR CmdTraceRaysIndirectKHR;
1069     PFN_vkGetRayTracingShaderGroupStackSizeKHR GetRayTracingShaderGroupStackSizeKHR;
1070     PFN_vkCmdSetRayTracingPipelineStackSizeKHR CmdSetRayTracingPipelineStackSizeKHR;
1071 
1072     // ---- VK_EXT_mesh_shader extension commands
1073     PFN_vkCmdDrawMeshTasksEXT CmdDrawMeshTasksEXT;
1074     PFN_vkCmdDrawMeshTasksIndirectEXT CmdDrawMeshTasksIndirectEXT;
1075     PFN_vkCmdDrawMeshTasksIndirectCountEXT CmdDrawMeshTasksIndirectCountEXT;
1076 } VkLayerDispatchTable;
1077 
1078 
1079