2 #define __mock_icd_h_ 1
5 ** Copyright (c) 2015-2018 The Khronos Group Inc.
7 ** Licensed under the Apache License, Version 2.0 (the "License");
8 ** you may not use this file except in compliance with the License.
9 ** You may obtain a copy of the License at
11 ** http://www.apache.org/licenses/LICENSE-2.0
13 ** Unless required by applicable law or agreed to in writing, software
14 ** distributed under the License is distributed on an "AS IS" BASIS,
15 ** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 ** See the License for the specific language governing permissions and
17 ** limitations under the License.
21 ** This header is generated from the Khronos Vulkan XML API Registry.
25 #include <unordered_map>
29 #include "vulkan/vk_icd.h"
33 using mutex_t = std::mutex;
34 using lock_guard_t = std::lock_guard<mutex_t>;
35 using unique_lock_t = std::unique_lock<mutex_t>;
37 static mutex_t global_lock;
38 static uint64_t global_unique_handle = 1;
39 static const uint32_t SUPPORTED_LOADER_ICD_INTERFACE_VERSION = 5;
40 static uint32_t loader_interface_version = 0;
41 static bool negotiate_loader_icd_interface_called = false;
42 static void* CreateDispObjHandle() {
43 auto handle = new VK_LOADER_DATA;
44 set_loader_magic_value(handle);
47 static void DestroyDispObjHandle(void* handle) {
48 delete reinterpret_cast<VK_LOADER_DATA*>(handle);
51 // Map of instance extension name to version
52 static const std::unordered_map<std::string, uint32_t> instance_extension_map = {
53 {"VK_KHR_surface", 25},
54 {"VK_KHR_display", 23},
55 {"VK_KHR_xlib_surface", 6},
56 {"VK_KHR_xcb_surface", 6},
57 {"VK_KHR_wayland_surface", 6},
58 {"VK_KHR_android_surface", 6},
59 {"VK_KHR_win32_surface", 6},
60 {"VK_EXT_debug_report", 9},
61 {"VK_GGP_stream_descriptor_surface", 1},
62 {"VK_NV_external_memory_capabilities", 1},
63 {"VK_KHR_get_physical_device_properties2", 2},
64 {"VK_EXT_validation_flags", 2},
65 {"VK_NN_vi_surface", 1},
66 {"VK_KHR_device_group_creation", 1},
67 {"VK_KHR_external_memory_capabilities", 1},
68 {"VK_KHR_external_semaphore_capabilities", 1},
69 {"VK_EXT_direct_mode_display", 1},
70 {"VK_EXT_acquire_xlib_display", 1},
71 {"VK_EXT_display_surface_counter", 1},
72 {"VK_EXT_swapchain_colorspace", 4},
73 {"VK_KHR_external_fence_capabilities", 1},
74 {"VK_KHR_get_surface_capabilities2", 1},
75 {"VK_KHR_get_display_properties2", 1},
76 {"VK_MVK_ios_surface", 3},
77 {"VK_MVK_macos_surface", 3},
78 {"VK_EXT_debug_utils", 2},
79 {"VK_FUCHSIA_imagepipe_surface", 1},
80 {"VK_EXT_metal_surface", 1},
81 {"VK_KHR_surface_protected_capabilities", 1},
82 {"VK_EXT_validation_features", 4},
83 {"VK_EXT_headless_surface", 1},
84 {"VK_EXT_directfb_surface", 1},
86 // Map of device extension name to version
87 static const std::unordered_map<std::string, uint32_t> device_extension_map = {
88 {"VK_KHR_swapchain", 70},
89 {"VK_KHR_display_swapchain", 10},
90 {"VK_NV_glsl_shader", 1},
91 {"VK_EXT_depth_range_unrestricted", 1},
92 {"VK_KHR_sampler_mirror_clamp_to_edge", 3},
93 {"VK_IMG_filter_cubic", 1},
94 {"VK_AMD_rasterization_order", 1},
95 {"VK_AMD_shader_trinary_minmax", 1},
96 {"VK_AMD_shader_explicit_vertex_parameter", 1},
97 {"VK_EXT_debug_marker", 4},
98 {"VK_AMD_gcn_shader", 1},
99 {"VK_NV_dedicated_allocation", 1},
100 {"VK_EXT_transform_feedback", 1},
101 {"VK_NVX_image_view_handle", 2},
102 {"VK_AMD_draw_indirect_count", 2},
103 {"VK_AMD_negative_viewport_height", 1},
104 {"VK_AMD_gpu_shader_half_float", 2},
105 {"VK_AMD_shader_ballot", 1},
106 {"VK_AMD_texture_gather_bias_lod", 1},
107 {"VK_AMD_shader_info", 1},
108 {"VK_AMD_shader_image_load_store_lod", 1},
109 {"VK_NV_corner_sampled_image", 2},
110 {"VK_KHR_multiview", 1},
111 {"VK_IMG_format_pvrtc", 1},
112 {"VK_NV_external_memory", 1},
113 {"VK_NV_external_memory_win32", 1},
114 {"VK_NV_win32_keyed_mutex", 2},
115 {"VK_KHR_device_group", 4},
116 {"VK_KHR_shader_draw_parameters", 1},
117 {"VK_EXT_shader_subgroup_ballot", 1},
118 {"VK_EXT_shader_subgroup_vote", 1},
119 {"VK_EXT_texture_compression_astc_hdr", 1},
120 {"VK_EXT_astc_decode_mode", 1},
121 {"VK_KHR_maintenance1", 2},
122 {"VK_KHR_external_memory", 1},
123 {"VK_KHR_external_memory_win32", 1},
124 {"VK_KHR_external_memory_fd", 1},
125 {"VK_KHR_win32_keyed_mutex", 1},
126 {"VK_KHR_external_semaphore", 1},
127 {"VK_KHR_external_semaphore_win32", 1},
128 {"VK_KHR_external_semaphore_fd", 1},
129 {"VK_KHR_push_descriptor", 2},
130 {"VK_EXT_conditional_rendering", 2},
131 {"VK_KHR_shader_float16_int8", 1},
132 {"VK_KHR_16bit_storage", 1},
133 {"VK_KHR_incremental_present", 1},
134 {"VK_KHR_descriptor_update_template", 1},
135 {"VK_NV_clip_space_w_scaling", 1},
136 {"VK_EXT_display_control", 1},
137 {"VK_GOOGLE_display_timing", 1},
138 {"VK_NV_sample_mask_override_coverage", 1},
139 {"VK_NV_geometry_shader_passthrough", 1},
140 {"VK_NV_viewport_array2", 1},
141 {"VK_NVX_multiview_per_view_attributes", 1},
142 {"VK_NV_viewport_swizzle", 1},
143 {"VK_EXT_discard_rectangles", 1},
144 {"VK_EXT_conservative_rasterization", 1},
145 {"VK_EXT_depth_clip_enable", 1},
146 {"VK_EXT_hdr_metadata", 2},
147 {"VK_KHR_imageless_framebuffer", 1},
148 {"VK_KHR_create_renderpass2", 1},
149 {"VK_KHR_shared_presentable_image", 1},
150 {"VK_KHR_external_fence", 1},
151 {"VK_KHR_external_fence_win32", 1},
152 {"VK_KHR_external_fence_fd", 1},
153 {"VK_KHR_performance_query", 1},
154 {"VK_KHR_maintenance2", 1},
155 {"VK_KHR_variable_pointers", 1},
156 {"VK_EXT_external_memory_dma_buf", 1},
157 {"VK_EXT_queue_family_foreign", 1},
158 {"VK_KHR_dedicated_allocation", 3},
159 {"VK_ANDROID_external_memory_android_hardware_buffer", 3},
160 {"VK_EXT_sampler_filter_minmax", 2},
161 {"VK_KHR_storage_buffer_storage_class", 1},
162 {"VK_AMD_gpu_shader_int16", 2},
163 {"VK_AMD_mixed_attachment_samples", 1},
164 {"VK_AMD_shader_fragment_mask", 1},
165 {"VK_EXT_inline_uniform_block", 1},
166 {"VK_EXT_shader_stencil_export", 1},
167 {"VK_EXT_sample_locations", 1},
168 {"VK_KHR_relaxed_block_layout", 1},
169 {"VK_KHR_get_memory_requirements2", 1},
170 {"VK_KHR_image_format_list", 1},
171 {"VK_EXT_blend_operation_advanced", 2},
172 {"VK_NV_fragment_coverage_to_color", 1},
173 {"VK_KHR_ray_tracing", 8},
174 {"VK_NV_framebuffer_mixed_samples", 1},
175 {"VK_NV_fill_rectangle", 1},
176 {"VK_NV_shader_sm_builtins", 1},
177 {"VK_EXT_post_depth_coverage", 1},
178 {"VK_KHR_sampler_ycbcr_conversion", 14},
179 {"VK_KHR_bind_memory2", 1},
180 {"VK_EXT_image_drm_format_modifier", 1},
181 {"VK_EXT_descriptor_indexing", 2},
182 {"VK_EXT_shader_viewport_index_layer", 1},
183 {"VK_KHR_portability_subset", 1},
184 {"VK_NV_shading_rate_image", 3},
185 {"VK_NV_ray_tracing", 3},
186 {"VK_NV_representative_fragment_test", 2},
187 {"VK_KHR_maintenance3", 1},
188 {"VK_KHR_draw_indirect_count", 1},
189 {"VK_EXT_filter_cubic", 3},
190 {"VK_QCOM_render_pass_shader_resolve", 4},
191 {"VK_EXT_global_priority", 2},
192 {"VK_KHR_shader_subgroup_extended_types", 1},
193 {"VK_KHR_8bit_storage", 1},
194 {"VK_EXT_external_memory_host", 1},
195 {"VK_AMD_buffer_marker", 1},
196 {"VK_KHR_shader_atomic_int64", 1},
197 {"VK_KHR_shader_clock", 1},
198 {"VK_AMD_pipeline_compiler_control", 1},
199 {"VK_EXT_calibrated_timestamps", 1},
200 {"VK_AMD_shader_core_properties", 2},
201 {"VK_AMD_memory_overallocation_behavior", 1},
202 {"VK_EXT_vertex_attribute_divisor", 3},
203 {"VK_GGP_frame_token", 1},
204 {"VK_EXT_pipeline_creation_feedback", 1},
205 {"VK_KHR_driver_properties", 1},
206 {"VK_KHR_shader_float_controls", 4},
207 {"VK_NV_shader_subgroup_partitioned", 1},
208 {"VK_KHR_depth_stencil_resolve", 1},
209 {"VK_KHR_swapchain_mutable_format", 1},
210 {"VK_NV_compute_shader_derivatives", 1},
211 {"VK_NV_mesh_shader", 1},
212 {"VK_NV_fragment_shader_barycentric", 1},
213 {"VK_NV_shader_image_footprint", 2},
214 {"VK_NV_scissor_exclusive", 1},
215 {"VK_NV_device_diagnostic_checkpoints", 2},
216 {"VK_KHR_timeline_semaphore", 2},
217 {"VK_INTEL_shader_integer_functions2", 1},
218 {"VK_INTEL_performance_query", 2},
219 {"VK_KHR_vulkan_memory_model", 3},
220 {"VK_EXT_pci_bus_info", 2},
221 {"VK_AMD_display_native_hdr", 1},
222 {"VK_KHR_shader_terminate_invocation", 1},
223 {"VK_EXT_fragment_density_map", 1},
224 {"VK_EXT_scalar_block_layout", 1},
225 {"VK_GOOGLE_hlsl_functionality1", 1},
226 {"VK_GOOGLE_decorate_string", 1},
227 {"VK_EXT_subgroup_size_control", 2},
228 {"VK_KHR_fragment_shading_rate", 1},
229 {"VK_AMD_shader_core_properties2", 1},
230 {"VK_AMD_device_coherent_memory", 1},
231 {"VK_EXT_shader_image_atomic_int64", 1},
232 {"VK_KHR_spirv_1_4", 1},
233 {"VK_EXT_memory_budget", 1},
234 {"VK_EXT_memory_priority", 1},
235 {"VK_NV_dedicated_allocation_image_aliasing", 1},
236 {"VK_KHR_separate_depth_stencil_layouts", 1},
237 {"VK_EXT_buffer_device_address", 2},
238 {"VK_EXT_tooling_info", 1},
239 {"VK_EXT_separate_stencil_usage", 1},
240 {"VK_NV_cooperative_matrix", 1},
241 {"VK_NV_coverage_reduction_mode", 1},
242 {"VK_EXT_fragment_shader_interlock", 1},
243 {"VK_EXT_ycbcr_image_arrays", 1},
244 {"VK_KHR_uniform_buffer_standard_layout", 1},
245 {"VK_EXT_full_screen_exclusive", 4},
246 {"VK_KHR_buffer_device_address", 1},
247 {"VK_EXT_line_rasterization", 1},
248 {"VK_EXT_shader_atomic_float", 1},
249 {"VK_EXT_host_query_reset", 1},
250 {"VK_EXT_index_type_uint8", 1},
251 {"VK_EXT_extended_dynamic_state", 1},
252 {"VK_KHR_deferred_host_operations", 3},
253 {"VK_KHR_pipeline_executable_properties", 1},
254 {"VK_EXT_shader_demote_to_helper_invocation", 1},
255 {"VK_NV_device_generated_commands", 3},
256 {"VK_EXT_texel_buffer_alignment", 1},
257 {"VK_QCOM_render_pass_transform", 1},
258 {"VK_EXT_device_memory_report", 1},
259 {"VK_EXT_robustness2", 1},
260 {"VK_EXT_custom_border_color", 12},
261 {"VK_GOOGLE_user_type", 1},
262 {"VK_KHR_pipeline_library", 1},
263 {"VK_KHR_shader_non_semantic_info", 1},
264 {"VK_EXT_private_data", 1},
265 {"VK_EXT_pipeline_creation_cache_control", 3},
266 {"VK_NV_device_diagnostics_config", 1},
267 {"VK_QCOM_render_pass_store_ops", 2},
268 {"VK_EXT_fragment_density_map2", 1},
269 {"VK_EXT_image_robustness", 1},
270 {"VK_KHR_copy_commands2", 1},
271 {"VK_EXT_4444_formats", 1},
275 static VKAPI_ATTR VkResult VKAPI_CALL CreateInstance(
276 const VkInstanceCreateInfo* pCreateInfo,
277 const VkAllocationCallbacks* pAllocator,
278 VkInstance* pInstance);
280 static VKAPI_ATTR void VKAPI_CALL DestroyInstance(
282 const VkAllocationCallbacks* pAllocator);
284 static VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDevices(
286 uint32_t* pPhysicalDeviceCount,
287 VkPhysicalDevice* pPhysicalDevices);
289 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFeatures(
290 VkPhysicalDevice physicalDevice,
291 VkPhysicalDeviceFeatures* pFeatures);
293 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFormatProperties(
294 VkPhysicalDevice physicalDevice,
296 VkFormatProperties* pFormatProperties);
298 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceImageFormatProperties(
299 VkPhysicalDevice physicalDevice,
302 VkImageTiling tiling,
303 VkImageUsageFlags usage,
304 VkImageCreateFlags flags,
305 VkImageFormatProperties* pImageFormatProperties);
307 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceProperties(
308 VkPhysicalDevice physicalDevice,
309 VkPhysicalDeviceProperties* pProperties);
311 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceQueueFamilyProperties(
312 VkPhysicalDevice physicalDevice,
313 uint32_t* pQueueFamilyPropertyCount,
314 VkQueueFamilyProperties* pQueueFamilyProperties);
316 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceMemoryProperties(
317 VkPhysicalDevice physicalDevice,
318 VkPhysicalDeviceMemoryProperties* pMemoryProperties);
320 static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetInstanceProcAddr(
324 static VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL GetDeviceProcAddr(
328 static VKAPI_ATTR VkResult VKAPI_CALL CreateDevice(
329 VkPhysicalDevice physicalDevice,
330 const VkDeviceCreateInfo* pCreateInfo,
331 const VkAllocationCallbacks* pAllocator,
334 static VKAPI_ATTR void VKAPI_CALL DestroyDevice(
336 const VkAllocationCallbacks* pAllocator);
338 static VKAPI_ATTR VkResult VKAPI_CALL EnumerateInstanceExtensionProperties(
339 const char* pLayerName,
340 uint32_t* pPropertyCount,
341 VkExtensionProperties* pProperties);
343 static VKAPI_ATTR VkResult VKAPI_CALL EnumerateDeviceExtensionProperties(
344 VkPhysicalDevice physicalDevice,
345 const char* pLayerName,
346 uint32_t* pPropertyCount,
347 VkExtensionProperties* pProperties);
349 static VKAPI_ATTR VkResult VKAPI_CALL EnumerateInstanceLayerProperties(
350 uint32_t* pPropertyCount,
351 VkLayerProperties* pProperties);
353 static VKAPI_ATTR VkResult VKAPI_CALL EnumerateDeviceLayerProperties(
354 VkPhysicalDevice physicalDevice,
355 uint32_t* pPropertyCount,
356 VkLayerProperties* pProperties);
358 static VKAPI_ATTR void VKAPI_CALL GetDeviceQueue(
360 uint32_t queueFamilyIndex,
364 static VKAPI_ATTR VkResult VKAPI_CALL QueueSubmit(
366 uint32_t submitCount,
367 const VkSubmitInfo* pSubmits,
370 static VKAPI_ATTR VkResult VKAPI_CALL QueueWaitIdle(
373 static VKAPI_ATTR VkResult VKAPI_CALL DeviceWaitIdle(
376 static VKAPI_ATTR VkResult VKAPI_CALL AllocateMemory(
378 const VkMemoryAllocateInfo* pAllocateInfo,
379 const VkAllocationCallbacks* pAllocator,
380 VkDeviceMemory* pMemory);
382 static VKAPI_ATTR void VKAPI_CALL FreeMemory(
384 VkDeviceMemory memory,
385 const VkAllocationCallbacks* pAllocator);
387 static VKAPI_ATTR VkResult VKAPI_CALL MapMemory(
389 VkDeviceMemory memory,
392 VkMemoryMapFlags flags,
395 static VKAPI_ATTR void VKAPI_CALL UnmapMemory(
397 VkDeviceMemory memory);
399 static VKAPI_ATTR VkResult VKAPI_CALL FlushMappedMemoryRanges(
401 uint32_t memoryRangeCount,
402 const VkMappedMemoryRange* pMemoryRanges);
404 static VKAPI_ATTR VkResult VKAPI_CALL InvalidateMappedMemoryRanges(
406 uint32_t memoryRangeCount,
407 const VkMappedMemoryRange* pMemoryRanges);
409 static VKAPI_ATTR void VKAPI_CALL GetDeviceMemoryCommitment(
411 VkDeviceMemory memory,
412 VkDeviceSize* pCommittedMemoryInBytes);
414 static VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory(
417 VkDeviceMemory memory,
418 VkDeviceSize memoryOffset);
420 static VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory(
423 VkDeviceMemory memory,
424 VkDeviceSize memoryOffset);
426 static VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements(
429 VkMemoryRequirements* pMemoryRequirements);
431 static VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements(
434 VkMemoryRequirements* pMemoryRequirements);
436 static VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements(
439 uint32_t* pSparseMemoryRequirementCount,
440 VkSparseImageMemoryRequirements* pSparseMemoryRequirements);
442 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceSparseImageFormatProperties(
443 VkPhysicalDevice physicalDevice,
446 VkSampleCountFlagBits samples,
447 VkImageUsageFlags usage,
448 VkImageTiling tiling,
449 uint32_t* pPropertyCount,
450 VkSparseImageFormatProperties* pProperties);
452 static VKAPI_ATTR VkResult VKAPI_CALL QueueBindSparse(
454 uint32_t bindInfoCount,
455 const VkBindSparseInfo* pBindInfo,
458 static VKAPI_ATTR VkResult VKAPI_CALL CreateFence(
460 const VkFenceCreateInfo* pCreateInfo,
461 const VkAllocationCallbacks* pAllocator,
464 static VKAPI_ATTR void VKAPI_CALL DestroyFence(
467 const VkAllocationCallbacks* pAllocator);
469 static VKAPI_ATTR VkResult VKAPI_CALL ResetFences(
472 const VkFence* pFences);
474 static VKAPI_ATTR VkResult VKAPI_CALL GetFenceStatus(
478 static VKAPI_ATTR VkResult VKAPI_CALL WaitForFences(
481 const VkFence* pFences,
485 static VKAPI_ATTR VkResult VKAPI_CALL CreateSemaphore(
487 const VkSemaphoreCreateInfo* pCreateInfo,
488 const VkAllocationCallbacks* pAllocator,
489 VkSemaphore* pSemaphore);
491 static VKAPI_ATTR void VKAPI_CALL DestroySemaphore(
493 VkSemaphore semaphore,
494 const VkAllocationCallbacks* pAllocator);
496 static VKAPI_ATTR VkResult VKAPI_CALL CreateEvent(
498 const VkEventCreateInfo* pCreateInfo,
499 const VkAllocationCallbacks* pAllocator,
502 static VKAPI_ATTR void VKAPI_CALL DestroyEvent(
505 const VkAllocationCallbacks* pAllocator);
507 static VKAPI_ATTR VkResult VKAPI_CALL GetEventStatus(
511 static VKAPI_ATTR VkResult VKAPI_CALL SetEvent(
515 static VKAPI_ATTR VkResult VKAPI_CALL ResetEvent(
519 static VKAPI_ATTR VkResult VKAPI_CALL CreateQueryPool(
521 const VkQueryPoolCreateInfo* pCreateInfo,
522 const VkAllocationCallbacks* pAllocator,
523 VkQueryPool* pQueryPool);
525 static VKAPI_ATTR void VKAPI_CALL DestroyQueryPool(
527 VkQueryPool queryPool,
528 const VkAllocationCallbacks* pAllocator);
530 static VKAPI_ATTR VkResult VKAPI_CALL GetQueryPoolResults(
532 VkQueryPool queryPool,
538 VkQueryResultFlags flags);
540 static VKAPI_ATTR VkResult VKAPI_CALL CreateBuffer(
542 const VkBufferCreateInfo* pCreateInfo,
543 const VkAllocationCallbacks* pAllocator,
546 static VKAPI_ATTR void VKAPI_CALL DestroyBuffer(
549 const VkAllocationCallbacks* pAllocator);
551 static VKAPI_ATTR VkResult VKAPI_CALL CreateBufferView(
553 const VkBufferViewCreateInfo* pCreateInfo,
554 const VkAllocationCallbacks* pAllocator,
555 VkBufferView* pView);
557 static VKAPI_ATTR void VKAPI_CALL DestroyBufferView(
559 VkBufferView bufferView,
560 const VkAllocationCallbacks* pAllocator);
562 static VKAPI_ATTR VkResult VKAPI_CALL CreateImage(
564 const VkImageCreateInfo* pCreateInfo,
565 const VkAllocationCallbacks* pAllocator,
568 static VKAPI_ATTR void VKAPI_CALL DestroyImage(
571 const VkAllocationCallbacks* pAllocator);
573 static VKAPI_ATTR void VKAPI_CALL GetImageSubresourceLayout(
576 const VkImageSubresource* pSubresource,
577 VkSubresourceLayout* pLayout);
579 static VKAPI_ATTR VkResult VKAPI_CALL CreateImageView(
581 const VkImageViewCreateInfo* pCreateInfo,
582 const VkAllocationCallbacks* pAllocator,
585 static VKAPI_ATTR void VKAPI_CALL DestroyImageView(
587 VkImageView imageView,
588 const VkAllocationCallbacks* pAllocator);
590 static VKAPI_ATTR VkResult VKAPI_CALL CreateShaderModule(
592 const VkShaderModuleCreateInfo* pCreateInfo,
593 const VkAllocationCallbacks* pAllocator,
594 VkShaderModule* pShaderModule);
596 static VKAPI_ATTR void VKAPI_CALL DestroyShaderModule(
598 VkShaderModule shaderModule,
599 const VkAllocationCallbacks* pAllocator);
601 static VKAPI_ATTR VkResult VKAPI_CALL CreatePipelineCache(
603 const VkPipelineCacheCreateInfo* pCreateInfo,
604 const VkAllocationCallbacks* pAllocator,
605 VkPipelineCache* pPipelineCache);
607 static VKAPI_ATTR void VKAPI_CALL DestroyPipelineCache(
609 VkPipelineCache pipelineCache,
610 const VkAllocationCallbacks* pAllocator);
612 static VKAPI_ATTR VkResult VKAPI_CALL GetPipelineCacheData(
614 VkPipelineCache pipelineCache,
618 static VKAPI_ATTR VkResult VKAPI_CALL MergePipelineCaches(
620 VkPipelineCache dstCache,
621 uint32_t srcCacheCount,
622 const VkPipelineCache* pSrcCaches);
624 static VKAPI_ATTR VkResult VKAPI_CALL CreateGraphicsPipelines(
626 VkPipelineCache pipelineCache,
627 uint32_t createInfoCount,
628 const VkGraphicsPipelineCreateInfo* pCreateInfos,
629 const VkAllocationCallbacks* pAllocator,
630 VkPipeline* pPipelines);
632 static VKAPI_ATTR VkResult VKAPI_CALL CreateComputePipelines(
634 VkPipelineCache pipelineCache,
635 uint32_t createInfoCount,
636 const VkComputePipelineCreateInfo* pCreateInfos,
637 const VkAllocationCallbacks* pAllocator,
638 VkPipeline* pPipelines);
640 static VKAPI_ATTR void VKAPI_CALL DestroyPipeline(
643 const VkAllocationCallbacks* pAllocator);
645 static VKAPI_ATTR VkResult VKAPI_CALL CreatePipelineLayout(
647 const VkPipelineLayoutCreateInfo* pCreateInfo,
648 const VkAllocationCallbacks* pAllocator,
649 VkPipelineLayout* pPipelineLayout);
651 static VKAPI_ATTR void VKAPI_CALL DestroyPipelineLayout(
653 VkPipelineLayout pipelineLayout,
654 const VkAllocationCallbacks* pAllocator);
656 static VKAPI_ATTR VkResult VKAPI_CALL CreateSampler(
658 const VkSamplerCreateInfo* pCreateInfo,
659 const VkAllocationCallbacks* pAllocator,
660 VkSampler* pSampler);
662 static VKAPI_ATTR void VKAPI_CALL DestroySampler(
665 const VkAllocationCallbacks* pAllocator);
667 static VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorSetLayout(
669 const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
670 const VkAllocationCallbacks* pAllocator,
671 VkDescriptorSetLayout* pSetLayout);
673 static VKAPI_ATTR void VKAPI_CALL DestroyDescriptorSetLayout(
675 VkDescriptorSetLayout descriptorSetLayout,
676 const VkAllocationCallbacks* pAllocator);
678 static VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorPool(
680 const VkDescriptorPoolCreateInfo* pCreateInfo,
681 const VkAllocationCallbacks* pAllocator,
682 VkDescriptorPool* pDescriptorPool);
684 static VKAPI_ATTR void VKAPI_CALL DestroyDescriptorPool(
686 VkDescriptorPool descriptorPool,
687 const VkAllocationCallbacks* pAllocator);
689 static VKAPI_ATTR VkResult VKAPI_CALL ResetDescriptorPool(
691 VkDescriptorPool descriptorPool,
692 VkDescriptorPoolResetFlags flags);
694 static VKAPI_ATTR VkResult VKAPI_CALL AllocateDescriptorSets(
696 const VkDescriptorSetAllocateInfo* pAllocateInfo,
697 VkDescriptorSet* pDescriptorSets);
699 static VKAPI_ATTR VkResult VKAPI_CALL FreeDescriptorSets(
701 VkDescriptorPool descriptorPool,
702 uint32_t descriptorSetCount,
703 const VkDescriptorSet* pDescriptorSets);
705 static VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSets(
707 uint32_t descriptorWriteCount,
708 const VkWriteDescriptorSet* pDescriptorWrites,
709 uint32_t descriptorCopyCount,
710 const VkCopyDescriptorSet* pDescriptorCopies);
712 static VKAPI_ATTR VkResult VKAPI_CALL CreateFramebuffer(
714 const VkFramebufferCreateInfo* pCreateInfo,
715 const VkAllocationCallbacks* pAllocator,
716 VkFramebuffer* pFramebuffer);
718 static VKAPI_ATTR void VKAPI_CALL DestroyFramebuffer(
720 VkFramebuffer framebuffer,
721 const VkAllocationCallbacks* pAllocator);
723 static VKAPI_ATTR VkResult VKAPI_CALL CreateRenderPass(
725 const VkRenderPassCreateInfo* pCreateInfo,
726 const VkAllocationCallbacks* pAllocator,
727 VkRenderPass* pRenderPass);
729 static VKAPI_ATTR void VKAPI_CALL DestroyRenderPass(
731 VkRenderPass renderPass,
732 const VkAllocationCallbacks* pAllocator);
734 static VKAPI_ATTR void VKAPI_CALL GetRenderAreaGranularity(
736 VkRenderPass renderPass,
737 VkExtent2D* pGranularity);
739 static VKAPI_ATTR VkResult VKAPI_CALL CreateCommandPool(
741 const VkCommandPoolCreateInfo* pCreateInfo,
742 const VkAllocationCallbacks* pAllocator,
743 VkCommandPool* pCommandPool);
745 static VKAPI_ATTR void VKAPI_CALL DestroyCommandPool(
747 VkCommandPool commandPool,
748 const VkAllocationCallbacks* pAllocator);
750 static VKAPI_ATTR VkResult VKAPI_CALL ResetCommandPool(
752 VkCommandPool commandPool,
753 VkCommandPoolResetFlags flags);
755 static VKAPI_ATTR VkResult VKAPI_CALL AllocateCommandBuffers(
757 const VkCommandBufferAllocateInfo* pAllocateInfo,
758 VkCommandBuffer* pCommandBuffers);
760 static VKAPI_ATTR void VKAPI_CALL FreeCommandBuffers(
762 VkCommandPool commandPool,
763 uint32_t commandBufferCount,
764 const VkCommandBuffer* pCommandBuffers);
766 static VKAPI_ATTR VkResult VKAPI_CALL BeginCommandBuffer(
767 VkCommandBuffer commandBuffer,
768 const VkCommandBufferBeginInfo* pBeginInfo);
770 static VKAPI_ATTR VkResult VKAPI_CALL EndCommandBuffer(
771 VkCommandBuffer commandBuffer);
773 static VKAPI_ATTR VkResult VKAPI_CALL ResetCommandBuffer(
774 VkCommandBuffer commandBuffer,
775 VkCommandBufferResetFlags flags);
777 static VKAPI_ATTR void VKAPI_CALL CmdBindPipeline(
778 VkCommandBuffer commandBuffer,
779 VkPipelineBindPoint pipelineBindPoint,
780 VkPipeline pipeline);
782 static VKAPI_ATTR void VKAPI_CALL CmdSetViewport(
783 VkCommandBuffer commandBuffer,
784 uint32_t firstViewport,
785 uint32_t viewportCount,
786 const VkViewport* pViewports);
788 static VKAPI_ATTR void VKAPI_CALL CmdSetScissor(
789 VkCommandBuffer commandBuffer,
790 uint32_t firstScissor,
791 uint32_t scissorCount,
792 const VkRect2D* pScissors);
794 static VKAPI_ATTR void VKAPI_CALL CmdSetLineWidth(
795 VkCommandBuffer commandBuffer,
798 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthBias(
799 VkCommandBuffer commandBuffer,
800 float depthBiasConstantFactor,
801 float depthBiasClamp,
802 float depthBiasSlopeFactor);
804 static VKAPI_ATTR void VKAPI_CALL CmdSetBlendConstants(
805 VkCommandBuffer commandBuffer,
806 const float blendConstants[4]);
808 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthBounds(
809 VkCommandBuffer commandBuffer,
810 float minDepthBounds,
811 float maxDepthBounds);
813 static VKAPI_ATTR void VKAPI_CALL CmdSetStencilCompareMask(
814 VkCommandBuffer commandBuffer,
815 VkStencilFaceFlags faceMask,
816 uint32_t compareMask);
818 static VKAPI_ATTR void VKAPI_CALL CmdSetStencilWriteMask(
819 VkCommandBuffer commandBuffer,
820 VkStencilFaceFlags faceMask,
823 static VKAPI_ATTR void VKAPI_CALL CmdSetStencilReference(
824 VkCommandBuffer commandBuffer,
825 VkStencilFaceFlags faceMask,
828 static VKAPI_ATTR void VKAPI_CALL CmdBindDescriptorSets(
829 VkCommandBuffer commandBuffer,
830 VkPipelineBindPoint pipelineBindPoint,
831 VkPipelineLayout layout,
833 uint32_t descriptorSetCount,
834 const VkDescriptorSet* pDescriptorSets,
835 uint32_t dynamicOffsetCount,
836 const uint32_t* pDynamicOffsets);
838 static VKAPI_ATTR void VKAPI_CALL CmdBindIndexBuffer(
839 VkCommandBuffer commandBuffer,
842 VkIndexType indexType);
844 static VKAPI_ATTR void VKAPI_CALL CmdBindVertexBuffers(
845 VkCommandBuffer commandBuffer,
846 uint32_t firstBinding,
847 uint32_t bindingCount,
848 const VkBuffer* pBuffers,
849 const VkDeviceSize* pOffsets);
851 static VKAPI_ATTR void VKAPI_CALL CmdDraw(
852 VkCommandBuffer commandBuffer,
853 uint32_t vertexCount,
854 uint32_t instanceCount,
855 uint32_t firstVertex,
856 uint32_t firstInstance);
858 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndexed(
859 VkCommandBuffer commandBuffer,
861 uint32_t instanceCount,
863 int32_t vertexOffset,
864 uint32_t firstInstance);
866 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndirect(
867 VkCommandBuffer commandBuffer,
873 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirect(
874 VkCommandBuffer commandBuffer,
880 static VKAPI_ATTR void VKAPI_CALL CmdDispatch(
881 VkCommandBuffer commandBuffer,
882 uint32_t groupCountX,
883 uint32_t groupCountY,
884 uint32_t groupCountZ);
886 static VKAPI_ATTR void VKAPI_CALL CmdDispatchIndirect(
887 VkCommandBuffer commandBuffer,
889 VkDeviceSize offset);
891 static VKAPI_ATTR void VKAPI_CALL CmdCopyBuffer(
892 VkCommandBuffer commandBuffer,
895 uint32_t regionCount,
896 const VkBufferCopy* pRegions);
898 static VKAPI_ATTR void VKAPI_CALL CmdCopyImage(
899 VkCommandBuffer commandBuffer,
901 VkImageLayout srcImageLayout,
903 VkImageLayout dstImageLayout,
904 uint32_t regionCount,
905 const VkImageCopy* pRegions);
907 static VKAPI_ATTR void VKAPI_CALL CmdBlitImage(
908 VkCommandBuffer commandBuffer,
910 VkImageLayout srcImageLayout,
912 VkImageLayout dstImageLayout,
913 uint32_t regionCount,
914 const VkImageBlit* pRegions,
917 static VKAPI_ATTR void VKAPI_CALL CmdCopyBufferToImage(
918 VkCommandBuffer commandBuffer,
921 VkImageLayout dstImageLayout,
922 uint32_t regionCount,
923 const VkBufferImageCopy* pRegions);
925 static VKAPI_ATTR void VKAPI_CALL CmdCopyImageToBuffer(
926 VkCommandBuffer commandBuffer,
928 VkImageLayout srcImageLayout,
930 uint32_t regionCount,
931 const VkBufferImageCopy* pRegions);
933 static VKAPI_ATTR void VKAPI_CALL CmdUpdateBuffer(
934 VkCommandBuffer commandBuffer,
936 VkDeviceSize dstOffset,
937 VkDeviceSize dataSize,
940 static VKAPI_ATTR void VKAPI_CALL CmdFillBuffer(
941 VkCommandBuffer commandBuffer,
943 VkDeviceSize dstOffset,
947 static VKAPI_ATTR void VKAPI_CALL CmdClearColorImage(
948 VkCommandBuffer commandBuffer,
950 VkImageLayout imageLayout,
951 const VkClearColorValue* pColor,
953 const VkImageSubresourceRange* pRanges);
955 static VKAPI_ATTR void VKAPI_CALL CmdClearDepthStencilImage(
956 VkCommandBuffer commandBuffer,
958 VkImageLayout imageLayout,
959 const VkClearDepthStencilValue* pDepthStencil,
961 const VkImageSubresourceRange* pRanges);
963 static VKAPI_ATTR void VKAPI_CALL CmdClearAttachments(
964 VkCommandBuffer commandBuffer,
965 uint32_t attachmentCount,
966 const VkClearAttachment* pAttachments,
968 const VkClearRect* pRects);
970 static VKAPI_ATTR void VKAPI_CALL CmdResolveImage(
971 VkCommandBuffer commandBuffer,
973 VkImageLayout srcImageLayout,
975 VkImageLayout dstImageLayout,
976 uint32_t regionCount,
977 const VkImageResolve* pRegions);
979 static VKAPI_ATTR void VKAPI_CALL CmdSetEvent(
980 VkCommandBuffer commandBuffer,
982 VkPipelineStageFlags stageMask);
984 static VKAPI_ATTR void VKAPI_CALL CmdResetEvent(
985 VkCommandBuffer commandBuffer,
987 VkPipelineStageFlags stageMask);
989 static VKAPI_ATTR void VKAPI_CALL CmdWaitEvents(
990 VkCommandBuffer commandBuffer,
992 const VkEvent* pEvents,
993 VkPipelineStageFlags srcStageMask,
994 VkPipelineStageFlags dstStageMask,
995 uint32_t memoryBarrierCount,
996 const VkMemoryBarrier* pMemoryBarriers,
997 uint32_t bufferMemoryBarrierCount,
998 const VkBufferMemoryBarrier* pBufferMemoryBarriers,
999 uint32_t imageMemoryBarrierCount,
1000 const VkImageMemoryBarrier* pImageMemoryBarriers);
1002 static VKAPI_ATTR void VKAPI_CALL CmdPipelineBarrier(
1003 VkCommandBuffer commandBuffer,
1004 VkPipelineStageFlags srcStageMask,
1005 VkPipelineStageFlags dstStageMask,
1006 VkDependencyFlags dependencyFlags,
1007 uint32_t memoryBarrierCount,
1008 const VkMemoryBarrier* pMemoryBarriers,
1009 uint32_t bufferMemoryBarrierCount,
1010 const VkBufferMemoryBarrier* pBufferMemoryBarriers,
1011 uint32_t imageMemoryBarrierCount,
1012 const VkImageMemoryBarrier* pImageMemoryBarriers);
1014 static VKAPI_ATTR void VKAPI_CALL CmdBeginQuery(
1015 VkCommandBuffer commandBuffer,
1016 VkQueryPool queryPool,
1018 VkQueryControlFlags flags);
1020 static VKAPI_ATTR void VKAPI_CALL CmdEndQuery(
1021 VkCommandBuffer commandBuffer,
1022 VkQueryPool queryPool,
1025 static VKAPI_ATTR void VKAPI_CALL CmdResetQueryPool(
1026 VkCommandBuffer commandBuffer,
1027 VkQueryPool queryPool,
1028 uint32_t firstQuery,
1029 uint32_t queryCount);
1031 static VKAPI_ATTR void VKAPI_CALL CmdWriteTimestamp(
1032 VkCommandBuffer commandBuffer,
1033 VkPipelineStageFlagBits pipelineStage,
1034 VkQueryPool queryPool,
1037 static VKAPI_ATTR void VKAPI_CALL CmdCopyQueryPoolResults(
1038 VkCommandBuffer commandBuffer,
1039 VkQueryPool queryPool,
1040 uint32_t firstQuery,
1041 uint32_t queryCount,
1043 VkDeviceSize dstOffset,
1044 VkDeviceSize stride,
1045 VkQueryResultFlags flags);
1047 static VKAPI_ATTR void VKAPI_CALL CmdPushConstants(
1048 VkCommandBuffer commandBuffer,
1049 VkPipelineLayout layout,
1050 VkShaderStageFlags stageFlags,
1053 const void* pValues);
1055 static VKAPI_ATTR void VKAPI_CALL CmdBeginRenderPass(
1056 VkCommandBuffer commandBuffer,
1057 const VkRenderPassBeginInfo* pRenderPassBegin,
1058 VkSubpassContents contents);
1060 static VKAPI_ATTR void VKAPI_CALL CmdNextSubpass(
1061 VkCommandBuffer commandBuffer,
1062 VkSubpassContents contents);
1064 static VKAPI_ATTR void VKAPI_CALL CmdEndRenderPass(
1065 VkCommandBuffer commandBuffer);
1067 static VKAPI_ATTR void VKAPI_CALL CmdExecuteCommands(
1068 VkCommandBuffer commandBuffer,
1069 uint32_t commandBufferCount,
1070 const VkCommandBuffer* pCommandBuffers);
1073 static VKAPI_ATTR VkResult VKAPI_CALL EnumerateInstanceVersion(
1074 uint32_t* pApiVersion);
1076 static VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2(
1078 uint32_t bindInfoCount,
1079 const VkBindBufferMemoryInfo* pBindInfos);
1081 static VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2(
1083 uint32_t bindInfoCount,
1084 const VkBindImageMemoryInfo* pBindInfos);
1086 static VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeatures(
1089 uint32_t localDeviceIndex,
1090 uint32_t remoteDeviceIndex,
1091 VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
1093 static VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMask(
1094 VkCommandBuffer commandBuffer,
1095 uint32_t deviceMask);
1097 static VKAPI_ATTR void VKAPI_CALL CmdDispatchBase(
1098 VkCommandBuffer commandBuffer,
1099 uint32_t baseGroupX,
1100 uint32_t baseGroupY,
1101 uint32_t baseGroupZ,
1102 uint32_t groupCountX,
1103 uint32_t groupCountY,
1104 uint32_t groupCountZ);
1106 static VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroups(
1107 VkInstance instance,
1108 uint32_t* pPhysicalDeviceGroupCount,
1109 VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
1111 static VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements2(
1113 const VkImageMemoryRequirementsInfo2* pInfo,
1114 VkMemoryRequirements2* pMemoryRequirements);
1116 static VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements2(
1118 const VkBufferMemoryRequirementsInfo2* pInfo,
1119 VkMemoryRequirements2* pMemoryRequirements);
1121 static VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements2(
1123 const VkImageSparseMemoryRequirementsInfo2* pInfo,
1124 uint32_t* pSparseMemoryRequirementCount,
1125 VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1127 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFeatures2(
1128 VkPhysicalDevice physicalDevice,
1129 VkPhysicalDeviceFeatures2* pFeatures);
1131 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceProperties2(
1132 VkPhysicalDevice physicalDevice,
1133 VkPhysicalDeviceProperties2* pProperties);
1135 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFormatProperties2(
1136 VkPhysicalDevice physicalDevice,
1138 VkFormatProperties2* pFormatProperties);
1140 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceImageFormatProperties2(
1141 VkPhysicalDevice physicalDevice,
1142 const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
1143 VkImageFormatProperties2* pImageFormatProperties);
1145 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceQueueFamilyProperties2(
1146 VkPhysicalDevice physicalDevice,
1147 uint32_t* pQueueFamilyPropertyCount,
1148 VkQueueFamilyProperties2* pQueueFamilyProperties);
1150 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceMemoryProperties2(
1151 VkPhysicalDevice physicalDevice,
1152 VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
1154 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceSparseImageFormatProperties2(
1155 VkPhysicalDevice physicalDevice,
1156 const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
1157 uint32_t* pPropertyCount,
1158 VkSparseImageFormatProperties2* pProperties);
1160 static VKAPI_ATTR void VKAPI_CALL TrimCommandPool(
1162 VkCommandPool commandPool,
1163 VkCommandPoolTrimFlags flags);
1165 static VKAPI_ATTR void VKAPI_CALL GetDeviceQueue2(
1167 const VkDeviceQueueInfo2* pQueueInfo,
1170 static VKAPI_ATTR VkResult VKAPI_CALL CreateSamplerYcbcrConversion(
1172 const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
1173 const VkAllocationCallbacks* pAllocator,
1174 VkSamplerYcbcrConversion* pYcbcrConversion);
1176 static VKAPI_ATTR void VKAPI_CALL DestroySamplerYcbcrConversion(
1178 VkSamplerYcbcrConversion ycbcrConversion,
1179 const VkAllocationCallbacks* pAllocator);
1181 static VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorUpdateTemplate(
1183 const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
1184 const VkAllocationCallbacks* pAllocator,
1185 VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
1187 static VKAPI_ATTR void VKAPI_CALL DestroyDescriptorUpdateTemplate(
1189 VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1190 const VkAllocationCallbacks* pAllocator);
1192 static VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSetWithTemplate(
1194 VkDescriptorSet descriptorSet,
1195 VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1198 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferProperties(
1199 VkPhysicalDevice physicalDevice,
1200 const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
1201 VkExternalBufferProperties* pExternalBufferProperties);
1203 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalFenceProperties(
1204 VkPhysicalDevice physicalDevice,
1205 const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
1206 VkExternalFenceProperties* pExternalFenceProperties);
1208 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphoreProperties(
1209 VkPhysicalDevice physicalDevice,
1210 const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
1211 VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
1213 static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetLayoutSupport(
1215 const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
1216 VkDescriptorSetLayoutSupport* pSupport);
1219 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectCount(
1220 VkCommandBuffer commandBuffer,
1222 VkDeviceSize offset,
1223 VkBuffer countBuffer,
1224 VkDeviceSize countBufferOffset,
1225 uint32_t maxDrawCount,
1228 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirectCount(
1229 VkCommandBuffer commandBuffer,
1231 VkDeviceSize offset,
1232 VkBuffer countBuffer,
1233 VkDeviceSize countBufferOffset,
1234 uint32_t maxDrawCount,
1237 static VKAPI_ATTR VkResult VKAPI_CALL CreateRenderPass2(
1239 const VkRenderPassCreateInfo2* pCreateInfo,
1240 const VkAllocationCallbacks* pAllocator,
1241 VkRenderPass* pRenderPass);
1243 static VKAPI_ATTR void VKAPI_CALL CmdBeginRenderPass2(
1244 VkCommandBuffer commandBuffer,
1245 const VkRenderPassBeginInfo* pRenderPassBegin,
1246 const VkSubpassBeginInfo* pSubpassBeginInfo);
1248 static VKAPI_ATTR void VKAPI_CALL CmdNextSubpass2(
1249 VkCommandBuffer commandBuffer,
1250 const VkSubpassBeginInfo* pSubpassBeginInfo,
1251 const VkSubpassEndInfo* pSubpassEndInfo);
1253 static VKAPI_ATTR void VKAPI_CALL CmdEndRenderPass2(
1254 VkCommandBuffer commandBuffer,
1255 const VkSubpassEndInfo* pSubpassEndInfo);
1257 static VKAPI_ATTR void VKAPI_CALL ResetQueryPool(
1259 VkQueryPool queryPool,
1260 uint32_t firstQuery,
1261 uint32_t queryCount);
1263 static VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreCounterValue(
1265 VkSemaphore semaphore,
1268 static VKAPI_ATTR VkResult VKAPI_CALL WaitSemaphores(
1270 const VkSemaphoreWaitInfo* pWaitInfo,
1273 static VKAPI_ATTR VkResult VKAPI_CALL SignalSemaphore(
1275 const VkSemaphoreSignalInfo* pSignalInfo);
1277 static VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetBufferDeviceAddress(
1279 const VkBufferDeviceAddressInfo* pInfo);
1281 static VKAPI_ATTR uint64_t VKAPI_CALL GetBufferOpaqueCaptureAddress(
1283 const VkBufferDeviceAddressInfo* pInfo);
1285 static VKAPI_ATTR uint64_t VKAPI_CALL GetDeviceMemoryOpaqueCaptureAddress(
1287 const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
1290 static VKAPI_ATTR void VKAPI_CALL DestroySurfaceKHR(
1291 VkInstance instance,
1292 VkSurfaceKHR surface,
1293 const VkAllocationCallbacks* pAllocator);
1295 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceSupportKHR(
1296 VkPhysicalDevice physicalDevice,
1297 uint32_t queueFamilyIndex,
1298 VkSurfaceKHR surface,
1299 VkBool32* pSupported);
1301 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilitiesKHR(
1302 VkPhysicalDevice physicalDevice,
1303 VkSurfaceKHR surface,
1304 VkSurfaceCapabilitiesKHR* pSurfaceCapabilities);
1306 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceFormatsKHR(
1307 VkPhysicalDevice physicalDevice,
1308 VkSurfaceKHR surface,
1309 uint32_t* pSurfaceFormatCount,
1310 VkSurfaceFormatKHR* pSurfaceFormats);
1312 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfacePresentModesKHR(
1313 VkPhysicalDevice physicalDevice,
1314 VkSurfaceKHR surface,
1315 uint32_t* pPresentModeCount,
1316 VkPresentModeKHR* pPresentModes);
1319 static VKAPI_ATTR VkResult VKAPI_CALL CreateSwapchainKHR(
1321 const VkSwapchainCreateInfoKHR* pCreateInfo,
1322 const VkAllocationCallbacks* pAllocator,
1323 VkSwapchainKHR* pSwapchain);
1325 static VKAPI_ATTR void VKAPI_CALL DestroySwapchainKHR(
1327 VkSwapchainKHR swapchain,
1328 const VkAllocationCallbacks* pAllocator);
1330 static VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainImagesKHR(
1332 VkSwapchainKHR swapchain,
1333 uint32_t* pSwapchainImageCount,
1334 VkImage* pSwapchainImages);
1336 static VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImageKHR(
1338 VkSwapchainKHR swapchain,
1340 VkSemaphore semaphore,
1342 uint32_t* pImageIndex);
1344 static VKAPI_ATTR VkResult VKAPI_CALL QueuePresentKHR(
1346 const VkPresentInfoKHR* pPresentInfo);
1348 static VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupPresentCapabilitiesKHR(
1350 VkDeviceGroupPresentCapabilitiesKHR* pDeviceGroupPresentCapabilities);
1352 static VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModesKHR(
1354 VkSurfaceKHR surface,
1355 VkDeviceGroupPresentModeFlagsKHR* pModes);
1357 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDevicePresentRectanglesKHR(
1358 VkPhysicalDevice physicalDevice,
1359 VkSurfaceKHR surface,
1360 uint32_t* pRectCount,
1363 static VKAPI_ATTR VkResult VKAPI_CALL AcquireNextImage2KHR(
1365 const VkAcquireNextImageInfoKHR* pAcquireInfo,
1366 uint32_t* pImageIndex);
1369 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceDisplayPropertiesKHR(
1370 VkPhysicalDevice physicalDevice,
1371 uint32_t* pPropertyCount,
1372 VkDisplayPropertiesKHR* pProperties);
1374 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceDisplayPlanePropertiesKHR(
1375 VkPhysicalDevice physicalDevice,
1376 uint32_t* pPropertyCount,
1377 VkDisplayPlanePropertiesKHR* pProperties);
1379 static VKAPI_ATTR VkResult VKAPI_CALL GetDisplayPlaneSupportedDisplaysKHR(
1380 VkPhysicalDevice physicalDevice,
1381 uint32_t planeIndex,
1382 uint32_t* pDisplayCount,
1383 VkDisplayKHR* pDisplays);
1385 static VKAPI_ATTR VkResult VKAPI_CALL GetDisplayModePropertiesKHR(
1386 VkPhysicalDevice physicalDevice,
1387 VkDisplayKHR display,
1388 uint32_t* pPropertyCount,
1389 VkDisplayModePropertiesKHR* pProperties);
1391 static VKAPI_ATTR VkResult VKAPI_CALL CreateDisplayModeKHR(
1392 VkPhysicalDevice physicalDevice,
1393 VkDisplayKHR display,
1394 const VkDisplayModeCreateInfoKHR* pCreateInfo,
1395 const VkAllocationCallbacks* pAllocator,
1396 VkDisplayModeKHR* pMode);
1398 static VKAPI_ATTR VkResult VKAPI_CALL GetDisplayPlaneCapabilitiesKHR(
1399 VkPhysicalDevice physicalDevice,
1400 VkDisplayModeKHR mode,
1401 uint32_t planeIndex,
1402 VkDisplayPlaneCapabilitiesKHR* pCapabilities);
1404 static VKAPI_ATTR VkResult VKAPI_CALL CreateDisplayPlaneSurfaceKHR(
1405 VkInstance instance,
1406 const VkDisplaySurfaceCreateInfoKHR* pCreateInfo,
1407 const VkAllocationCallbacks* pAllocator,
1408 VkSurfaceKHR* pSurface);
1411 static VKAPI_ATTR VkResult VKAPI_CALL CreateSharedSwapchainsKHR(
1413 uint32_t swapchainCount,
1414 const VkSwapchainCreateInfoKHR* pCreateInfos,
1415 const VkAllocationCallbacks* pAllocator,
1416 VkSwapchainKHR* pSwapchains);
1418 #ifdef VK_USE_PLATFORM_XLIB_KHR
1420 static VKAPI_ATTR VkResult VKAPI_CALL CreateXlibSurfaceKHR(
1421 VkInstance instance,
1422 const VkXlibSurfaceCreateInfoKHR* pCreateInfo,
1423 const VkAllocationCallbacks* pAllocator,
1424 VkSurfaceKHR* pSurface);
1426 static VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceXlibPresentationSupportKHR(
1427 VkPhysicalDevice physicalDevice,
1428 uint32_t queueFamilyIndex,
1431 #endif /* VK_USE_PLATFORM_XLIB_KHR */
1433 #ifdef VK_USE_PLATFORM_XCB_KHR
1435 static VKAPI_ATTR VkResult VKAPI_CALL CreateXcbSurfaceKHR(
1436 VkInstance instance,
1437 const VkXcbSurfaceCreateInfoKHR* pCreateInfo,
1438 const VkAllocationCallbacks* pAllocator,
1439 VkSurfaceKHR* pSurface);
1441 static VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceXcbPresentationSupportKHR(
1442 VkPhysicalDevice physicalDevice,
1443 uint32_t queueFamilyIndex,
1444 xcb_connection_t* connection,
1445 xcb_visualid_t visual_id);
1446 #endif /* VK_USE_PLATFORM_XCB_KHR */
1448 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
1450 static VKAPI_ATTR VkResult VKAPI_CALL CreateWaylandSurfaceKHR(
1451 VkInstance instance,
1452 const VkWaylandSurfaceCreateInfoKHR* pCreateInfo,
1453 const VkAllocationCallbacks* pAllocator,
1454 VkSurfaceKHR* pSurface);
1456 static VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWaylandPresentationSupportKHR(
1457 VkPhysicalDevice physicalDevice,
1458 uint32_t queueFamilyIndex,
1459 struct wl_display* display);
1460 #endif /* VK_USE_PLATFORM_WAYLAND_KHR */
1462 #ifdef VK_USE_PLATFORM_ANDROID_KHR
1464 static VKAPI_ATTR VkResult VKAPI_CALL CreateAndroidSurfaceKHR(
1465 VkInstance instance,
1466 const VkAndroidSurfaceCreateInfoKHR* pCreateInfo,
1467 const VkAllocationCallbacks* pAllocator,
1468 VkSurfaceKHR* pSurface);
1469 #endif /* VK_USE_PLATFORM_ANDROID_KHR */
1471 #ifdef VK_USE_PLATFORM_WIN32_KHR
1473 static VKAPI_ATTR VkResult VKAPI_CALL CreateWin32SurfaceKHR(
1474 VkInstance instance,
1475 const VkWin32SurfaceCreateInfoKHR* pCreateInfo,
1476 const VkAllocationCallbacks* pAllocator,
1477 VkSurfaceKHR* pSurface);
1479 static VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceWin32PresentationSupportKHR(
1480 VkPhysicalDevice physicalDevice,
1481 uint32_t queueFamilyIndex);
1482 #endif /* VK_USE_PLATFORM_WIN32_KHR */
1487 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFeatures2KHR(
1488 VkPhysicalDevice physicalDevice,
1489 VkPhysicalDeviceFeatures2* pFeatures);
1491 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceProperties2KHR(
1492 VkPhysicalDevice physicalDevice,
1493 VkPhysicalDeviceProperties2* pProperties);
1495 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceFormatProperties2KHR(
1496 VkPhysicalDevice physicalDevice,
1498 VkFormatProperties2* pFormatProperties);
1500 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceImageFormatProperties2KHR(
1501 VkPhysicalDevice physicalDevice,
1502 const VkPhysicalDeviceImageFormatInfo2* pImageFormatInfo,
1503 VkImageFormatProperties2* pImageFormatProperties);
1505 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceQueueFamilyProperties2KHR(
1506 VkPhysicalDevice physicalDevice,
1507 uint32_t* pQueueFamilyPropertyCount,
1508 VkQueueFamilyProperties2* pQueueFamilyProperties);
1510 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceMemoryProperties2KHR(
1511 VkPhysicalDevice physicalDevice,
1512 VkPhysicalDeviceMemoryProperties2* pMemoryProperties);
1514 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceSparseImageFormatProperties2KHR(
1515 VkPhysicalDevice physicalDevice,
1516 const VkPhysicalDeviceSparseImageFormatInfo2* pFormatInfo,
1517 uint32_t* pPropertyCount,
1518 VkSparseImageFormatProperties2* pProperties);
1521 static VKAPI_ATTR void VKAPI_CALL GetDeviceGroupPeerMemoryFeaturesKHR(
1524 uint32_t localDeviceIndex,
1525 uint32_t remoteDeviceIndex,
1526 VkPeerMemoryFeatureFlags* pPeerMemoryFeatures);
1528 static VKAPI_ATTR void VKAPI_CALL CmdSetDeviceMaskKHR(
1529 VkCommandBuffer commandBuffer,
1530 uint32_t deviceMask);
1532 static VKAPI_ATTR void VKAPI_CALL CmdDispatchBaseKHR(
1533 VkCommandBuffer commandBuffer,
1534 uint32_t baseGroupX,
1535 uint32_t baseGroupY,
1536 uint32_t baseGroupZ,
1537 uint32_t groupCountX,
1538 uint32_t groupCountY,
1539 uint32_t groupCountZ);
1543 static VKAPI_ATTR void VKAPI_CALL TrimCommandPoolKHR(
1545 VkCommandPool commandPool,
1546 VkCommandPoolTrimFlags flags);
1549 static VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceGroupsKHR(
1550 VkInstance instance,
1551 uint32_t* pPhysicalDeviceGroupCount,
1552 VkPhysicalDeviceGroupProperties* pPhysicalDeviceGroupProperties);
1555 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalBufferPropertiesKHR(
1556 VkPhysicalDevice physicalDevice,
1557 const VkPhysicalDeviceExternalBufferInfo* pExternalBufferInfo,
1558 VkExternalBufferProperties* pExternalBufferProperties);
1561 #ifdef VK_USE_PLATFORM_WIN32_KHR
1563 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleKHR(
1565 const VkMemoryGetWin32HandleInfoKHR* pGetWin32HandleInfo,
1568 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandlePropertiesKHR(
1570 VkExternalMemoryHandleTypeFlagBits handleType,
1572 VkMemoryWin32HandlePropertiesKHR* pMemoryWin32HandleProperties);
1573 #endif /* VK_USE_PLATFORM_WIN32_KHR */
1576 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdKHR(
1578 const VkMemoryGetFdInfoKHR* pGetFdInfo,
1581 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryFdPropertiesKHR(
1583 VkExternalMemoryHandleTypeFlagBits handleType,
1585 VkMemoryFdPropertiesKHR* pMemoryFdProperties);
1587 #ifdef VK_USE_PLATFORM_WIN32_KHR
1588 #endif /* VK_USE_PLATFORM_WIN32_KHR */
1591 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalSemaphorePropertiesKHR(
1592 VkPhysicalDevice physicalDevice,
1593 const VkPhysicalDeviceExternalSemaphoreInfo* pExternalSemaphoreInfo,
1594 VkExternalSemaphoreProperties* pExternalSemaphoreProperties);
1597 #ifdef VK_USE_PLATFORM_WIN32_KHR
1599 static VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreWin32HandleKHR(
1601 const VkImportSemaphoreWin32HandleInfoKHR* pImportSemaphoreWin32HandleInfo);
1603 static VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreWin32HandleKHR(
1605 const VkSemaphoreGetWin32HandleInfoKHR* pGetWin32HandleInfo,
1607 #endif /* VK_USE_PLATFORM_WIN32_KHR */
1610 static VKAPI_ATTR VkResult VKAPI_CALL ImportSemaphoreFdKHR(
1612 const VkImportSemaphoreFdInfoKHR* pImportSemaphoreFdInfo);
1614 static VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreFdKHR(
1616 const VkSemaphoreGetFdInfoKHR* pGetFdInfo,
1620 static VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetKHR(
1621 VkCommandBuffer commandBuffer,
1622 VkPipelineBindPoint pipelineBindPoint,
1623 VkPipelineLayout layout,
1625 uint32_t descriptorWriteCount,
1626 const VkWriteDescriptorSet* pDescriptorWrites);
1628 static VKAPI_ATTR void VKAPI_CALL CmdPushDescriptorSetWithTemplateKHR(
1629 VkCommandBuffer commandBuffer,
1630 VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1631 VkPipelineLayout layout,
1639 static VKAPI_ATTR VkResult VKAPI_CALL CreateDescriptorUpdateTemplateKHR(
1641 const VkDescriptorUpdateTemplateCreateInfo* pCreateInfo,
1642 const VkAllocationCallbacks* pAllocator,
1643 VkDescriptorUpdateTemplate* pDescriptorUpdateTemplate);
1645 static VKAPI_ATTR void VKAPI_CALL DestroyDescriptorUpdateTemplateKHR(
1647 VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1648 const VkAllocationCallbacks* pAllocator);
1650 static VKAPI_ATTR void VKAPI_CALL UpdateDescriptorSetWithTemplateKHR(
1652 VkDescriptorSet descriptorSet,
1653 VkDescriptorUpdateTemplate descriptorUpdateTemplate,
1658 static VKAPI_ATTR VkResult VKAPI_CALL CreateRenderPass2KHR(
1660 const VkRenderPassCreateInfo2* pCreateInfo,
1661 const VkAllocationCallbacks* pAllocator,
1662 VkRenderPass* pRenderPass);
1664 static VKAPI_ATTR void VKAPI_CALL CmdBeginRenderPass2KHR(
1665 VkCommandBuffer commandBuffer,
1666 const VkRenderPassBeginInfo* pRenderPassBegin,
1667 const VkSubpassBeginInfo* pSubpassBeginInfo);
1669 static VKAPI_ATTR void VKAPI_CALL CmdNextSubpass2KHR(
1670 VkCommandBuffer commandBuffer,
1671 const VkSubpassBeginInfo* pSubpassBeginInfo,
1672 const VkSubpassEndInfo* pSubpassEndInfo);
1674 static VKAPI_ATTR void VKAPI_CALL CmdEndRenderPass2KHR(
1675 VkCommandBuffer commandBuffer,
1676 const VkSubpassEndInfo* pSubpassEndInfo);
1679 static VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainStatusKHR(
1681 VkSwapchainKHR swapchain);
1684 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceExternalFencePropertiesKHR(
1685 VkPhysicalDevice physicalDevice,
1686 const VkPhysicalDeviceExternalFenceInfo* pExternalFenceInfo,
1687 VkExternalFenceProperties* pExternalFenceProperties);
1690 #ifdef VK_USE_PLATFORM_WIN32_KHR
1692 static VKAPI_ATTR VkResult VKAPI_CALL ImportFenceWin32HandleKHR(
1694 const VkImportFenceWin32HandleInfoKHR* pImportFenceWin32HandleInfo);
1696 static VKAPI_ATTR VkResult VKAPI_CALL GetFenceWin32HandleKHR(
1698 const VkFenceGetWin32HandleInfoKHR* pGetWin32HandleInfo,
1700 #endif /* VK_USE_PLATFORM_WIN32_KHR */
1703 static VKAPI_ATTR VkResult VKAPI_CALL ImportFenceFdKHR(
1705 const VkImportFenceFdInfoKHR* pImportFenceFdInfo);
1707 static VKAPI_ATTR VkResult VKAPI_CALL GetFenceFdKHR(
1709 const VkFenceGetFdInfoKHR* pGetFdInfo,
1713 static VKAPI_ATTR VkResult VKAPI_CALL EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR(
1714 VkPhysicalDevice physicalDevice,
1715 uint32_t queueFamilyIndex,
1716 uint32_t* pCounterCount,
1717 VkPerformanceCounterKHR* pCounters,
1718 VkPerformanceCounterDescriptionKHR* pCounterDescriptions);
1720 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR(
1721 VkPhysicalDevice physicalDevice,
1722 const VkQueryPoolPerformanceCreateInfoKHR* pPerformanceQueryCreateInfo,
1723 uint32_t* pNumPasses);
1725 static VKAPI_ATTR VkResult VKAPI_CALL AcquireProfilingLockKHR(
1727 const VkAcquireProfilingLockInfoKHR* pInfo);
1729 static VKAPI_ATTR void VKAPI_CALL ReleaseProfilingLockKHR(
1734 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2KHR(
1735 VkPhysicalDevice physicalDevice,
1736 const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
1737 VkSurfaceCapabilities2KHR* pSurfaceCapabilities);
1739 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceFormats2KHR(
1740 VkPhysicalDevice physicalDevice,
1741 const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
1742 uint32_t* pSurfaceFormatCount,
1743 VkSurfaceFormat2KHR* pSurfaceFormats);
1747 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceDisplayProperties2KHR(
1748 VkPhysicalDevice physicalDevice,
1749 uint32_t* pPropertyCount,
1750 VkDisplayProperties2KHR* pProperties);
1752 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceDisplayPlaneProperties2KHR(
1753 VkPhysicalDevice physicalDevice,
1754 uint32_t* pPropertyCount,
1755 VkDisplayPlaneProperties2KHR* pProperties);
1757 static VKAPI_ATTR VkResult VKAPI_CALL GetDisplayModeProperties2KHR(
1758 VkPhysicalDevice physicalDevice,
1759 VkDisplayKHR display,
1760 uint32_t* pPropertyCount,
1761 VkDisplayModeProperties2KHR* pProperties);
1763 static VKAPI_ATTR VkResult VKAPI_CALL GetDisplayPlaneCapabilities2KHR(
1764 VkPhysicalDevice physicalDevice,
1765 const VkDisplayPlaneInfo2KHR* pDisplayPlaneInfo,
1766 VkDisplayPlaneCapabilities2KHR* pCapabilities);
1772 static VKAPI_ATTR void VKAPI_CALL GetImageMemoryRequirements2KHR(
1774 const VkImageMemoryRequirementsInfo2* pInfo,
1775 VkMemoryRequirements2* pMemoryRequirements);
1777 static VKAPI_ATTR void VKAPI_CALL GetBufferMemoryRequirements2KHR(
1779 const VkBufferMemoryRequirementsInfo2* pInfo,
1780 VkMemoryRequirements2* pMemoryRequirements);
1782 static VKAPI_ATTR void VKAPI_CALL GetImageSparseMemoryRequirements2KHR(
1784 const VkImageSparseMemoryRequirementsInfo2* pInfo,
1785 uint32_t* pSparseMemoryRequirementCount,
1786 VkSparseImageMemoryRequirements2* pSparseMemoryRequirements);
1790 static VKAPI_ATTR VkResult VKAPI_CALL CreateSamplerYcbcrConversionKHR(
1792 const VkSamplerYcbcrConversionCreateInfo* pCreateInfo,
1793 const VkAllocationCallbacks* pAllocator,
1794 VkSamplerYcbcrConversion* pYcbcrConversion);
1796 static VKAPI_ATTR void VKAPI_CALL DestroySamplerYcbcrConversionKHR(
1798 VkSamplerYcbcrConversion ycbcrConversion,
1799 const VkAllocationCallbacks* pAllocator);
1802 static VKAPI_ATTR VkResult VKAPI_CALL BindBufferMemory2KHR(
1804 uint32_t bindInfoCount,
1805 const VkBindBufferMemoryInfo* pBindInfos);
1807 static VKAPI_ATTR VkResult VKAPI_CALL BindImageMemory2KHR(
1809 uint32_t bindInfoCount,
1810 const VkBindImageMemoryInfo* pBindInfos);
1812 #ifdef VK_ENABLE_BETA_EXTENSIONS
1813 #endif /* VK_ENABLE_BETA_EXTENSIONS */
1816 static VKAPI_ATTR void VKAPI_CALL GetDescriptorSetLayoutSupportKHR(
1818 const VkDescriptorSetLayoutCreateInfo* pCreateInfo,
1819 VkDescriptorSetLayoutSupport* pSupport);
1822 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectCountKHR(
1823 VkCommandBuffer commandBuffer,
1825 VkDeviceSize offset,
1826 VkBuffer countBuffer,
1827 VkDeviceSize countBufferOffset,
1828 uint32_t maxDrawCount,
1831 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirectCountKHR(
1832 VkCommandBuffer commandBuffer,
1834 VkDeviceSize offset,
1835 VkBuffer countBuffer,
1836 VkDeviceSize countBufferOffset,
1837 uint32_t maxDrawCount,
1849 static VKAPI_ATTR VkResult VKAPI_CALL GetSemaphoreCounterValueKHR(
1851 VkSemaphore semaphore,
1854 static VKAPI_ATTR VkResult VKAPI_CALL WaitSemaphoresKHR(
1856 const VkSemaphoreWaitInfo* pWaitInfo,
1859 static VKAPI_ATTR VkResult VKAPI_CALL SignalSemaphoreKHR(
1861 const VkSemaphoreSignalInfo* pSignalInfo);
1866 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceFragmentShadingRatesKHR(
1867 VkPhysicalDevice physicalDevice,
1868 uint32_t* pFragmentShadingRateCount,
1869 VkPhysicalDeviceFragmentShadingRateKHR* pFragmentShadingRates);
1871 static VKAPI_ATTR void VKAPI_CALL CmdSetFragmentShadingRateKHR(
1872 VkCommandBuffer commandBuffer,
1873 const VkExtent2D* pFragmentSize,
1874 const VkFragmentShadingRateCombinerOpKHR combinerOps[2]);
1881 static VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetBufferDeviceAddressKHR(
1883 const VkBufferDeviceAddressInfo* pInfo);
1885 static VKAPI_ATTR uint64_t VKAPI_CALL GetBufferOpaqueCaptureAddressKHR(
1887 const VkBufferDeviceAddressInfo* pInfo);
1889 static VKAPI_ATTR uint64_t VKAPI_CALL GetDeviceMemoryOpaqueCaptureAddressKHR(
1891 const VkDeviceMemoryOpaqueCaptureAddressInfo* pInfo);
1893 #ifdef VK_ENABLE_BETA_EXTENSIONS
1895 static VKAPI_ATTR VkResult VKAPI_CALL CreateDeferredOperationKHR(
1897 const VkAllocationCallbacks* pAllocator,
1898 VkDeferredOperationKHR* pDeferredOperation);
1900 static VKAPI_ATTR void VKAPI_CALL DestroyDeferredOperationKHR(
1902 VkDeferredOperationKHR operation,
1903 const VkAllocationCallbacks* pAllocator);
1905 static VKAPI_ATTR uint32_t VKAPI_CALL GetDeferredOperationMaxConcurrencyKHR(
1907 VkDeferredOperationKHR operation);
1909 static VKAPI_ATTR VkResult VKAPI_CALL GetDeferredOperationResultKHR(
1911 VkDeferredOperationKHR operation);
1913 static VKAPI_ATTR VkResult VKAPI_CALL DeferredOperationJoinKHR(
1915 VkDeferredOperationKHR operation);
1916 #endif /* VK_ENABLE_BETA_EXTENSIONS */
1919 static VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutablePropertiesKHR(
1921 const VkPipelineInfoKHR* pPipelineInfo,
1922 uint32_t* pExecutableCount,
1923 VkPipelineExecutablePropertiesKHR* pProperties);
1925 static VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutableStatisticsKHR(
1927 const VkPipelineExecutableInfoKHR* pExecutableInfo,
1928 uint32_t* pStatisticCount,
1929 VkPipelineExecutableStatisticKHR* pStatistics);
1931 static VKAPI_ATTR VkResult VKAPI_CALL GetPipelineExecutableInternalRepresentationsKHR(
1933 const VkPipelineExecutableInfoKHR* pExecutableInfo,
1934 uint32_t* pInternalRepresentationCount,
1935 VkPipelineExecutableInternalRepresentationKHR* pInternalRepresentations);
1937 #ifdef VK_ENABLE_BETA_EXTENSIONS
1938 #endif /* VK_ENABLE_BETA_EXTENSIONS */
1942 static VKAPI_ATTR void VKAPI_CALL CmdCopyBuffer2KHR(
1943 VkCommandBuffer commandBuffer,
1944 const VkCopyBufferInfo2KHR* pCopyBufferInfo);
1946 static VKAPI_ATTR void VKAPI_CALL CmdCopyImage2KHR(
1947 VkCommandBuffer commandBuffer,
1948 const VkCopyImageInfo2KHR* pCopyImageInfo);
1950 static VKAPI_ATTR void VKAPI_CALL CmdCopyBufferToImage2KHR(
1951 VkCommandBuffer commandBuffer,
1952 const VkCopyBufferToImageInfo2KHR* pCopyBufferToImageInfo);
1954 static VKAPI_ATTR void VKAPI_CALL CmdCopyImageToBuffer2KHR(
1955 VkCommandBuffer commandBuffer,
1956 const VkCopyImageToBufferInfo2KHR* pCopyImageToBufferInfo);
1958 static VKAPI_ATTR void VKAPI_CALL CmdBlitImage2KHR(
1959 VkCommandBuffer commandBuffer,
1960 const VkBlitImageInfo2KHR* pBlitImageInfo);
1962 static VKAPI_ATTR void VKAPI_CALL CmdResolveImage2KHR(
1963 VkCommandBuffer commandBuffer,
1964 const VkResolveImageInfo2KHR* pResolveImageInfo);
1967 static VKAPI_ATTR VkResult VKAPI_CALL CreateDebugReportCallbackEXT(
1968 VkInstance instance,
1969 const VkDebugReportCallbackCreateInfoEXT* pCreateInfo,
1970 const VkAllocationCallbacks* pAllocator,
1971 VkDebugReportCallbackEXT* pCallback);
1973 static VKAPI_ATTR void VKAPI_CALL DestroyDebugReportCallbackEXT(
1974 VkInstance instance,
1975 VkDebugReportCallbackEXT callback,
1976 const VkAllocationCallbacks* pAllocator);
1978 static VKAPI_ATTR void VKAPI_CALL DebugReportMessageEXT(
1979 VkInstance instance,
1980 VkDebugReportFlagsEXT flags,
1981 VkDebugReportObjectTypeEXT objectType,
1984 int32_t messageCode,
1985 const char* pLayerPrefix,
1986 const char* pMessage);
1995 static VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectTagEXT(
1997 const VkDebugMarkerObjectTagInfoEXT* pTagInfo);
1999 static VKAPI_ATTR VkResult VKAPI_CALL DebugMarkerSetObjectNameEXT(
2001 const VkDebugMarkerObjectNameInfoEXT* pNameInfo);
2003 static VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerBeginEXT(
2004 VkCommandBuffer commandBuffer,
2005 const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
2007 static VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerEndEXT(
2008 VkCommandBuffer commandBuffer);
2010 static VKAPI_ATTR void VKAPI_CALL CmdDebugMarkerInsertEXT(
2011 VkCommandBuffer commandBuffer,
2012 const VkDebugMarkerMarkerInfoEXT* pMarkerInfo);
2017 static VKAPI_ATTR void VKAPI_CALL CmdBindTransformFeedbackBuffersEXT(
2018 VkCommandBuffer commandBuffer,
2019 uint32_t firstBinding,
2020 uint32_t bindingCount,
2021 const VkBuffer* pBuffers,
2022 const VkDeviceSize* pOffsets,
2023 const VkDeviceSize* pSizes);
2025 static VKAPI_ATTR void VKAPI_CALL CmdBeginTransformFeedbackEXT(
2026 VkCommandBuffer commandBuffer,
2027 uint32_t firstCounterBuffer,
2028 uint32_t counterBufferCount,
2029 const VkBuffer* pCounterBuffers,
2030 const VkDeviceSize* pCounterBufferOffsets);
2032 static VKAPI_ATTR void VKAPI_CALL CmdEndTransformFeedbackEXT(
2033 VkCommandBuffer commandBuffer,
2034 uint32_t firstCounterBuffer,
2035 uint32_t counterBufferCount,
2036 const VkBuffer* pCounterBuffers,
2037 const VkDeviceSize* pCounterBufferOffsets);
2039 static VKAPI_ATTR void VKAPI_CALL CmdBeginQueryIndexedEXT(
2040 VkCommandBuffer commandBuffer,
2041 VkQueryPool queryPool,
2043 VkQueryControlFlags flags,
2046 static VKAPI_ATTR void VKAPI_CALL CmdEndQueryIndexedEXT(
2047 VkCommandBuffer commandBuffer,
2048 VkQueryPool queryPool,
2052 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectByteCountEXT(
2053 VkCommandBuffer commandBuffer,
2054 uint32_t instanceCount,
2055 uint32_t firstInstance,
2056 VkBuffer counterBuffer,
2057 VkDeviceSize counterBufferOffset,
2058 uint32_t counterOffset,
2059 uint32_t vertexStride);
2062 static VKAPI_ATTR uint32_t VKAPI_CALL GetImageViewHandleNVX(
2064 const VkImageViewHandleInfoNVX* pInfo);
2066 static VKAPI_ATTR VkResult VKAPI_CALL GetImageViewAddressNVX(
2068 VkImageView imageView,
2069 VkImageViewAddressPropertiesNVX* pProperties);
2072 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndirectCountAMD(
2073 VkCommandBuffer commandBuffer,
2075 VkDeviceSize offset,
2076 VkBuffer countBuffer,
2077 VkDeviceSize countBufferOffset,
2078 uint32_t maxDrawCount,
2081 static VKAPI_ATTR void VKAPI_CALL CmdDrawIndexedIndirectCountAMD(
2082 VkCommandBuffer commandBuffer,
2084 VkDeviceSize offset,
2085 VkBuffer countBuffer,
2086 VkDeviceSize countBufferOffset,
2087 uint32_t maxDrawCount,
2095 static VKAPI_ATTR VkResult VKAPI_CALL GetShaderInfoAMD(
2097 VkPipeline pipeline,
2098 VkShaderStageFlagBits shaderStage,
2099 VkShaderInfoTypeAMD infoType,
2104 #ifdef VK_USE_PLATFORM_GGP
2106 static VKAPI_ATTR VkResult VKAPI_CALL CreateStreamDescriptorSurfaceGGP(
2107 VkInstance instance,
2108 const VkStreamDescriptorSurfaceCreateInfoGGP* pCreateInfo,
2109 const VkAllocationCallbacks* pAllocator,
2110 VkSurfaceKHR* pSurface);
2111 #endif /* VK_USE_PLATFORM_GGP */
2116 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceExternalImageFormatPropertiesNV(
2117 VkPhysicalDevice physicalDevice,
2120 VkImageTiling tiling,
2121 VkImageUsageFlags usage,
2122 VkImageCreateFlags flags,
2123 VkExternalMemoryHandleTypeFlagsNV externalHandleType,
2124 VkExternalImageFormatPropertiesNV* pExternalImageFormatProperties);
2127 #ifdef VK_USE_PLATFORM_WIN32_KHR
2129 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryWin32HandleNV(
2131 VkDeviceMemory memory,
2132 VkExternalMemoryHandleTypeFlagsNV handleType,
2134 #endif /* VK_USE_PLATFORM_WIN32_KHR */
2136 #ifdef VK_USE_PLATFORM_WIN32_KHR
2137 #endif /* VK_USE_PLATFORM_WIN32_KHR */
2140 #ifdef VK_USE_PLATFORM_VI_NN
2142 static VKAPI_ATTR VkResult VKAPI_CALL CreateViSurfaceNN(
2143 VkInstance instance,
2144 const VkViSurfaceCreateInfoNN* pCreateInfo,
2145 const VkAllocationCallbacks* pAllocator,
2146 VkSurfaceKHR* pSurface);
2147 #endif /* VK_USE_PLATFORM_VI_NN */
2154 static VKAPI_ATTR void VKAPI_CALL CmdBeginConditionalRenderingEXT(
2155 VkCommandBuffer commandBuffer,
2156 const VkConditionalRenderingBeginInfoEXT* pConditionalRenderingBegin);
2158 static VKAPI_ATTR void VKAPI_CALL CmdEndConditionalRenderingEXT(
2159 VkCommandBuffer commandBuffer);
2162 static VKAPI_ATTR void VKAPI_CALL CmdSetViewportWScalingNV(
2163 VkCommandBuffer commandBuffer,
2164 uint32_t firstViewport,
2165 uint32_t viewportCount,
2166 const VkViewportWScalingNV* pViewportWScalings);
2169 static VKAPI_ATTR VkResult VKAPI_CALL ReleaseDisplayEXT(
2170 VkPhysicalDevice physicalDevice,
2171 VkDisplayKHR display);
2173 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
2175 static VKAPI_ATTR VkResult VKAPI_CALL AcquireXlibDisplayEXT(
2176 VkPhysicalDevice physicalDevice,
2178 VkDisplayKHR display);
2180 static VKAPI_ATTR VkResult VKAPI_CALL GetRandROutputDisplayEXT(
2181 VkPhysicalDevice physicalDevice,
2184 VkDisplayKHR* pDisplay);
2185 #endif /* VK_USE_PLATFORM_XLIB_XRANDR_EXT */
2188 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfaceCapabilities2EXT(
2189 VkPhysicalDevice physicalDevice,
2190 VkSurfaceKHR surface,
2191 VkSurfaceCapabilities2EXT* pSurfaceCapabilities);
2194 static VKAPI_ATTR VkResult VKAPI_CALL DisplayPowerControlEXT(
2196 VkDisplayKHR display,
2197 const VkDisplayPowerInfoEXT* pDisplayPowerInfo);
2199 static VKAPI_ATTR VkResult VKAPI_CALL RegisterDeviceEventEXT(
2201 const VkDeviceEventInfoEXT* pDeviceEventInfo,
2202 const VkAllocationCallbacks* pAllocator,
2205 static VKAPI_ATTR VkResult VKAPI_CALL RegisterDisplayEventEXT(
2207 VkDisplayKHR display,
2208 const VkDisplayEventInfoEXT* pDisplayEventInfo,
2209 const VkAllocationCallbacks* pAllocator,
2212 static VKAPI_ATTR VkResult VKAPI_CALL GetSwapchainCounterEXT(
2214 VkSwapchainKHR swapchain,
2215 VkSurfaceCounterFlagBitsEXT counter,
2216 uint64_t* pCounterValue);
2219 static VKAPI_ATTR VkResult VKAPI_CALL GetRefreshCycleDurationGOOGLE(
2221 VkSwapchainKHR swapchain,
2222 VkRefreshCycleDurationGOOGLE* pDisplayTimingProperties);
2224 static VKAPI_ATTR VkResult VKAPI_CALL GetPastPresentationTimingGOOGLE(
2226 VkSwapchainKHR swapchain,
2227 uint32_t* pPresentationTimingCount,
2228 VkPastPresentationTimingGOOGLE* pPresentationTimings);
2236 static VKAPI_ATTR void VKAPI_CALL CmdSetDiscardRectangleEXT(
2237 VkCommandBuffer commandBuffer,
2238 uint32_t firstDiscardRectangle,
2239 uint32_t discardRectangleCount,
2240 const VkRect2D* pDiscardRectangles);
2246 static VKAPI_ATTR void VKAPI_CALL SetHdrMetadataEXT(
2248 uint32_t swapchainCount,
2249 const VkSwapchainKHR* pSwapchains,
2250 const VkHdrMetadataEXT* pMetadata);
2252 #ifdef VK_USE_PLATFORM_IOS_MVK
2254 static VKAPI_ATTR VkResult VKAPI_CALL CreateIOSSurfaceMVK(
2255 VkInstance instance,
2256 const VkIOSSurfaceCreateInfoMVK* pCreateInfo,
2257 const VkAllocationCallbacks* pAllocator,
2258 VkSurfaceKHR* pSurface);
2259 #endif /* VK_USE_PLATFORM_IOS_MVK */
2261 #ifdef VK_USE_PLATFORM_MACOS_MVK
2263 static VKAPI_ATTR VkResult VKAPI_CALL CreateMacOSSurfaceMVK(
2264 VkInstance instance,
2265 const VkMacOSSurfaceCreateInfoMVK* pCreateInfo,
2266 const VkAllocationCallbacks* pAllocator,
2267 VkSurfaceKHR* pSurface);
2268 #endif /* VK_USE_PLATFORM_MACOS_MVK */
2273 static VKAPI_ATTR VkResult VKAPI_CALL SetDebugUtilsObjectNameEXT(
2275 const VkDebugUtilsObjectNameInfoEXT* pNameInfo);
2277 static VKAPI_ATTR VkResult VKAPI_CALL SetDebugUtilsObjectTagEXT(
2279 const VkDebugUtilsObjectTagInfoEXT* pTagInfo);
2281 static VKAPI_ATTR void VKAPI_CALL QueueBeginDebugUtilsLabelEXT(
2283 const VkDebugUtilsLabelEXT* pLabelInfo);
2285 static VKAPI_ATTR void VKAPI_CALL QueueEndDebugUtilsLabelEXT(
2288 static VKAPI_ATTR void VKAPI_CALL QueueInsertDebugUtilsLabelEXT(
2290 const VkDebugUtilsLabelEXT* pLabelInfo);
2292 static VKAPI_ATTR void VKAPI_CALL CmdBeginDebugUtilsLabelEXT(
2293 VkCommandBuffer commandBuffer,
2294 const VkDebugUtilsLabelEXT* pLabelInfo);
2296 static VKAPI_ATTR void VKAPI_CALL CmdEndDebugUtilsLabelEXT(
2297 VkCommandBuffer commandBuffer);
2299 static VKAPI_ATTR void VKAPI_CALL CmdInsertDebugUtilsLabelEXT(
2300 VkCommandBuffer commandBuffer,
2301 const VkDebugUtilsLabelEXT* pLabelInfo);
2303 static VKAPI_ATTR VkResult VKAPI_CALL CreateDebugUtilsMessengerEXT(
2304 VkInstance instance,
2305 const VkDebugUtilsMessengerCreateInfoEXT* pCreateInfo,
2306 const VkAllocationCallbacks* pAllocator,
2307 VkDebugUtilsMessengerEXT* pMessenger);
2309 static VKAPI_ATTR void VKAPI_CALL DestroyDebugUtilsMessengerEXT(
2310 VkInstance instance,
2311 VkDebugUtilsMessengerEXT messenger,
2312 const VkAllocationCallbacks* pAllocator);
2314 static VKAPI_ATTR void VKAPI_CALL SubmitDebugUtilsMessageEXT(
2315 VkInstance instance,
2316 VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity,
2317 VkDebugUtilsMessageTypeFlagsEXT messageTypes,
2318 const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData);
2320 #ifdef VK_USE_PLATFORM_ANDROID_KHR
2322 static VKAPI_ATTR VkResult VKAPI_CALL GetAndroidHardwareBufferPropertiesANDROID(
2324 const struct AHardwareBuffer* buffer,
2325 VkAndroidHardwareBufferPropertiesANDROID* pProperties);
2327 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryAndroidHardwareBufferANDROID(
2329 const VkMemoryGetAndroidHardwareBufferInfoANDROID* pInfo,
2330 struct AHardwareBuffer** pBuffer);
2331 #endif /* VK_USE_PLATFORM_ANDROID_KHR */
2340 static VKAPI_ATTR void VKAPI_CALL CmdSetSampleLocationsEXT(
2341 VkCommandBuffer commandBuffer,
2342 const VkSampleLocationsInfoEXT* pSampleLocationsInfo);
2344 static VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceMultisamplePropertiesEXT(
2345 VkPhysicalDevice physicalDevice,
2346 VkSampleCountFlagBits samples,
2347 VkMultisamplePropertiesEXT* pMultisampleProperties);
2356 static VKAPI_ATTR VkResult VKAPI_CALL GetImageDrmFormatModifierPropertiesEXT(
2359 VkImageDrmFormatModifierPropertiesEXT* pProperties);
2362 static VKAPI_ATTR VkResult VKAPI_CALL CreateValidationCacheEXT(
2364 const VkValidationCacheCreateInfoEXT* pCreateInfo,
2365 const VkAllocationCallbacks* pAllocator,
2366 VkValidationCacheEXT* pValidationCache);
2368 static VKAPI_ATTR void VKAPI_CALL DestroyValidationCacheEXT(
2370 VkValidationCacheEXT validationCache,
2371 const VkAllocationCallbacks* pAllocator);
2373 static VKAPI_ATTR VkResult VKAPI_CALL MergeValidationCachesEXT(
2375 VkValidationCacheEXT dstCache,
2376 uint32_t srcCacheCount,
2377 const VkValidationCacheEXT* pSrcCaches);
2379 static VKAPI_ATTR VkResult VKAPI_CALL GetValidationCacheDataEXT(
2381 VkValidationCacheEXT validationCache,
2388 static VKAPI_ATTR void VKAPI_CALL CmdBindShadingRateImageNV(
2389 VkCommandBuffer commandBuffer,
2390 VkImageView imageView,
2391 VkImageLayout imageLayout);
2393 static VKAPI_ATTR void VKAPI_CALL CmdSetViewportShadingRatePaletteNV(
2394 VkCommandBuffer commandBuffer,
2395 uint32_t firstViewport,
2396 uint32_t viewportCount,
2397 const VkShadingRatePaletteNV* pShadingRatePalettes);
2399 static VKAPI_ATTR void VKAPI_CALL CmdSetCoarseSampleOrderNV(
2400 VkCommandBuffer commandBuffer,
2401 VkCoarseSampleOrderTypeNV sampleOrderType,
2402 uint32_t customSampleOrderCount,
2403 const VkCoarseSampleOrderCustomNV* pCustomSampleOrders);
2406 static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureNV(
2408 const VkAccelerationStructureCreateInfoNV* pCreateInfo,
2409 const VkAllocationCallbacks* pAllocator,
2410 VkAccelerationStructureNV* pAccelerationStructure);
2412 static VKAPI_ATTR void VKAPI_CALL DestroyAccelerationStructureKHR(
2414 VkAccelerationStructureKHR accelerationStructure,
2415 const VkAllocationCallbacks* pAllocator);
2417 static VKAPI_ATTR void VKAPI_CALL DestroyAccelerationStructureNV(
2419 VkAccelerationStructureKHR accelerationStructure,
2420 const VkAllocationCallbacks* pAllocator);
2422 static VKAPI_ATTR void VKAPI_CALL GetAccelerationStructureMemoryRequirementsNV(
2424 const VkAccelerationStructureMemoryRequirementsInfoNV* pInfo,
2425 VkMemoryRequirements2KHR* pMemoryRequirements);
2427 static VKAPI_ATTR VkResult VKAPI_CALL BindAccelerationStructureMemoryKHR(
2429 uint32_t bindInfoCount,
2430 const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
2432 static VKAPI_ATTR VkResult VKAPI_CALL BindAccelerationStructureMemoryNV(
2434 uint32_t bindInfoCount,
2435 const VkBindAccelerationStructureMemoryInfoKHR* pBindInfos);
2437 static VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructureNV(
2438 VkCommandBuffer commandBuffer,
2439 const VkAccelerationStructureInfoNV* pInfo,
2440 VkBuffer instanceData,
2441 VkDeviceSize instanceOffset,
2443 VkAccelerationStructureKHR dst,
2444 VkAccelerationStructureKHR src,
2446 VkDeviceSize scratchOffset);
2448 static VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureNV(
2449 VkCommandBuffer commandBuffer,
2450 VkAccelerationStructureKHR dst,
2451 VkAccelerationStructureKHR src,
2452 VkCopyAccelerationStructureModeKHR mode);
2454 static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysNV(
2455 VkCommandBuffer commandBuffer,
2456 VkBuffer raygenShaderBindingTableBuffer,
2457 VkDeviceSize raygenShaderBindingOffset,
2458 VkBuffer missShaderBindingTableBuffer,
2459 VkDeviceSize missShaderBindingOffset,
2460 VkDeviceSize missShaderBindingStride,
2461 VkBuffer hitShaderBindingTableBuffer,
2462 VkDeviceSize hitShaderBindingOffset,
2463 VkDeviceSize hitShaderBindingStride,
2464 VkBuffer callableShaderBindingTableBuffer,
2465 VkDeviceSize callableShaderBindingOffset,
2466 VkDeviceSize callableShaderBindingStride,
2471 static VKAPI_ATTR VkResult VKAPI_CALL CreateRayTracingPipelinesNV(
2473 VkPipelineCache pipelineCache,
2474 uint32_t createInfoCount,
2475 const VkRayTracingPipelineCreateInfoNV* pCreateInfos,
2476 const VkAllocationCallbacks* pAllocator,
2477 VkPipeline* pPipelines);
2479 static VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingShaderGroupHandlesKHR(
2481 VkPipeline pipeline,
2482 uint32_t firstGroup,
2483 uint32_t groupCount,
2487 static VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingShaderGroupHandlesNV(
2489 VkPipeline pipeline,
2490 uint32_t firstGroup,
2491 uint32_t groupCount,
2495 static VKAPI_ATTR VkResult VKAPI_CALL GetAccelerationStructureHandleNV(
2497 VkAccelerationStructureKHR accelerationStructure,
2501 static VKAPI_ATTR void VKAPI_CALL CmdWriteAccelerationStructuresPropertiesKHR(
2502 VkCommandBuffer commandBuffer,
2503 uint32_t accelerationStructureCount,
2504 const VkAccelerationStructureKHR* pAccelerationStructures,
2505 VkQueryType queryType,
2506 VkQueryPool queryPool,
2507 uint32_t firstQuery);
2509 static VKAPI_ATTR void VKAPI_CALL CmdWriteAccelerationStructuresPropertiesNV(
2510 VkCommandBuffer commandBuffer,
2511 uint32_t accelerationStructureCount,
2512 const VkAccelerationStructureKHR* pAccelerationStructures,
2513 VkQueryType queryType,
2514 VkQueryPool queryPool,
2515 uint32_t firstQuery);
2517 static VKAPI_ATTR VkResult VKAPI_CALL CompileDeferredNV(
2519 VkPipeline pipeline,
2527 static VKAPI_ATTR VkResult VKAPI_CALL GetMemoryHostPointerPropertiesEXT(
2529 VkExternalMemoryHandleTypeFlagBits handleType,
2530 const void* pHostPointer,
2531 VkMemoryHostPointerPropertiesEXT* pMemoryHostPointerProperties);
2534 static VKAPI_ATTR void VKAPI_CALL CmdWriteBufferMarkerAMD(
2535 VkCommandBuffer commandBuffer,
2536 VkPipelineStageFlagBits pipelineStage,
2538 VkDeviceSize dstOffset,
2543 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceCalibrateableTimeDomainsEXT(
2544 VkPhysicalDevice physicalDevice,
2545 uint32_t* pTimeDomainCount,
2546 VkTimeDomainEXT* pTimeDomains);
2548 static VKAPI_ATTR VkResult VKAPI_CALL GetCalibratedTimestampsEXT(
2550 uint32_t timestampCount,
2551 const VkCalibratedTimestampInfoEXT* pTimestampInfos,
2552 uint64_t* pTimestamps,
2553 uint64_t* pMaxDeviation);
2558 #ifdef VK_USE_PLATFORM_GGP
2559 #endif /* VK_USE_PLATFORM_GGP */
2565 static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksNV(
2566 VkCommandBuffer commandBuffer,
2568 uint32_t firstTask);
2570 static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectNV(
2571 VkCommandBuffer commandBuffer,
2573 VkDeviceSize offset,
2577 static VKAPI_ATTR void VKAPI_CALL CmdDrawMeshTasksIndirectCountNV(
2578 VkCommandBuffer commandBuffer,
2580 VkDeviceSize offset,
2581 VkBuffer countBuffer,
2582 VkDeviceSize countBufferOffset,
2583 uint32_t maxDrawCount,
2589 static VKAPI_ATTR void VKAPI_CALL CmdSetExclusiveScissorNV(
2590 VkCommandBuffer commandBuffer,
2591 uint32_t firstExclusiveScissor,
2592 uint32_t exclusiveScissorCount,
2593 const VkRect2D* pExclusiveScissors);
2596 static VKAPI_ATTR void VKAPI_CALL CmdSetCheckpointNV(
2597 VkCommandBuffer commandBuffer,
2598 const void* pCheckpointMarker);
2600 static VKAPI_ATTR void VKAPI_CALL GetQueueCheckpointDataNV(
2602 uint32_t* pCheckpointDataCount,
2603 VkCheckpointDataNV* pCheckpointData);
2607 static VKAPI_ATTR VkResult VKAPI_CALL InitializePerformanceApiINTEL(
2609 const VkInitializePerformanceApiInfoINTEL* pInitializeInfo);
2611 static VKAPI_ATTR void VKAPI_CALL UninitializePerformanceApiINTEL(
2614 static VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceMarkerINTEL(
2615 VkCommandBuffer commandBuffer,
2616 const VkPerformanceMarkerInfoINTEL* pMarkerInfo);
2618 static VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceStreamMarkerINTEL(
2619 VkCommandBuffer commandBuffer,
2620 const VkPerformanceStreamMarkerInfoINTEL* pMarkerInfo);
2622 static VKAPI_ATTR VkResult VKAPI_CALL CmdSetPerformanceOverrideINTEL(
2623 VkCommandBuffer commandBuffer,
2624 const VkPerformanceOverrideInfoINTEL* pOverrideInfo);
2626 static VKAPI_ATTR VkResult VKAPI_CALL AcquirePerformanceConfigurationINTEL(
2628 const VkPerformanceConfigurationAcquireInfoINTEL* pAcquireInfo,
2629 VkPerformanceConfigurationINTEL* pConfiguration);
2631 static VKAPI_ATTR VkResult VKAPI_CALL ReleasePerformanceConfigurationINTEL(
2633 VkPerformanceConfigurationINTEL configuration);
2635 static VKAPI_ATTR VkResult VKAPI_CALL QueueSetPerformanceConfigurationINTEL(
2637 VkPerformanceConfigurationINTEL configuration);
2639 static VKAPI_ATTR VkResult VKAPI_CALL GetPerformanceParameterINTEL(
2641 VkPerformanceParameterTypeINTEL parameter,
2642 VkPerformanceValueINTEL* pValue);
2646 static VKAPI_ATTR void VKAPI_CALL SetLocalDimmingAMD(
2648 VkSwapchainKHR swapChain,
2649 VkBool32 localDimmingEnable);
2651 #ifdef VK_USE_PLATFORM_FUCHSIA
2653 static VKAPI_ATTR VkResult VKAPI_CALL CreateImagePipeSurfaceFUCHSIA(
2654 VkInstance instance,
2655 const VkImagePipeSurfaceCreateInfoFUCHSIA* pCreateInfo,
2656 const VkAllocationCallbacks* pAllocator,
2657 VkSurfaceKHR* pSurface);
2658 #endif /* VK_USE_PLATFORM_FUCHSIA */
2660 #ifdef VK_USE_PLATFORM_METAL_EXT
2662 static VKAPI_ATTR VkResult VKAPI_CALL CreateMetalSurfaceEXT(
2663 VkInstance instance,
2664 const VkMetalSurfaceCreateInfoEXT* pCreateInfo,
2665 const VkAllocationCallbacks* pAllocator,
2666 VkSurfaceKHR* pSurface);
2667 #endif /* VK_USE_PLATFORM_METAL_EXT */
2681 static VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetBufferDeviceAddressEXT(
2683 const VkBufferDeviceAddressInfo* pInfo);
2686 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceToolPropertiesEXT(
2687 VkPhysicalDevice physicalDevice,
2688 uint32_t* pToolCount,
2689 VkPhysicalDeviceToolPropertiesEXT* pToolProperties);
2694 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceCooperativeMatrixPropertiesNV(
2695 VkPhysicalDevice physicalDevice,
2696 uint32_t* pPropertyCount,
2697 VkCooperativeMatrixPropertiesNV* pProperties);
2700 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV(
2701 VkPhysicalDevice physicalDevice,
2702 uint32_t* pCombinationCount,
2703 VkFramebufferMixedSamplesCombinationNV* pCombinations);
2707 #ifdef VK_USE_PLATFORM_WIN32_KHR
2709 static VKAPI_ATTR VkResult VKAPI_CALL GetPhysicalDeviceSurfacePresentModes2EXT(
2710 VkPhysicalDevice physicalDevice,
2711 const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
2712 uint32_t* pPresentModeCount,
2713 VkPresentModeKHR* pPresentModes);
2715 static VKAPI_ATTR VkResult VKAPI_CALL AcquireFullScreenExclusiveModeEXT(
2717 VkSwapchainKHR swapchain);
2719 static VKAPI_ATTR VkResult VKAPI_CALL ReleaseFullScreenExclusiveModeEXT(
2721 VkSwapchainKHR swapchain);
2723 static VKAPI_ATTR VkResult VKAPI_CALL GetDeviceGroupSurfacePresentModes2EXT(
2725 const VkPhysicalDeviceSurfaceInfo2KHR* pSurfaceInfo,
2726 VkDeviceGroupPresentModeFlagsKHR* pModes);
2727 #endif /* VK_USE_PLATFORM_WIN32_KHR */
2730 static VKAPI_ATTR VkResult VKAPI_CALL CreateHeadlessSurfaceEXT(
2731 VkInstance instance,
2732 const VkHeadlessSurfaceCreateInfoEXT* pCreateInfo,
2733 const VkAllocationCallbacks* pAllocator,
2734 VkSurfaceKHR* pSurface);
2737 static VKAPI_ATTR void VKAPI_CALL CmdSetLineStippleEXT(
2738 VkCommandBuffer commandBuffer,
2739 uint32_t lineStippleFactor,
2740 uint16_t lineStipplePattern);
2744 static VKAPI_ATTR void VKAPI_CALL ResetQueryPoolEXT(
2746 VkQueryPool queryPool,
2747 uint32_t firstQuery,
2748 uint32_t queryCount);
2752 static VKAPI_ATTR void VKAPI_CALL CmdSetCullModeEXT(
2753 VkCommandBuffer commandBuffer,
2754 VkCullModeFlags cullMode);
2756 static VKAPI_ATTR void VKAPI_CALL CmdSetFrontFaceEXT(
2757 VkCommandBuffer commandBuffer,
2758 VkFrontFace frontFace);
2760 static VKAPI_ATTR void VKAPI_CALL CmdSetPrimitiveTopologyEXT(
2761 VkCommandBuffer commandBuffer,
2762 VkPrimitiveTopology primitiveTopology);
2764 static VKAPI_ATTR void VKAPI_CALL CmdSetViewportWithCountEXT(
2765 VkCommandBuffer commandBuffer,
2766 uint32_t viewportCount,
2767 const VkViewport* pViewports);
2769 static VKAPI_ATTR void VKAPI_CALL CmdSetScissorWithCountEXT(
2770 VkCommandBuffer commandBuffer,
2771 uint32_t scissorCount,
2772 const VkRect2D* pScissors);
2774 static VKAPI_ATTR void VKAPI_CALL CmdBindVertexBuffers2EXT(
2775 VkCommandBuffer commandBuffer,
2776 uint32_t firstBinding,
2777 uint32_t bindingCount,
2778 const VkBuffer* pBuffers,
2779 const VkDeviceSize* pOffsets,
2780 const VkDeviceSize* pSizes,
2781 const VkDeviceSize* pStrides);
2783 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthTestEnableEXT(
2784 VkCommandBuffer commandBuffer,
2785 VkBool32 depthTestEnable);
2787 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthWriteEnableEXT(
2788 VkCommandBuffer commandBuffer,
2789 VkBool32 depthWriteEnable);
2791 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthCompareOpEXT(
2792 VkCommandBuffer commandBuffer,
2793 VkCompareOp depthCompareOp);
2795 static VKAPI_ATTR void VKAPI_CALL CmdSetDepthBoundsTestEnableEXT(
2796 VkCommandBuffer commandBuffer,
2797 VkBool32 depthBoundsTestEnable);
2799 static VKAPI_ATTR void VKAPI_CALL CmdSetStencilTestEnableEXT(
2800 VkCommandBuffer commandBuffer,
2801 VkBool32 stencilTestEnable);
2803 static VKAPI_ATTR void VKAPI_CALL CmdSetStencilOpEXT(
2804 VkCommandBuffer commandBuffer,
2805 VkStencilFaceFlags faceMask,
2808 VkStencilOp depthFailOp,
2809 VkCompareOp compareOp);
2813 static VKAPI_ATTR void VKAPI_CALL GetGeneratedCommandsMemoryRequirementsNV(
2815 const VkGeneratedCommandsMemoryRequirementsInfoNV* pInfo,
2816 VkMemoryRequirements2* pMemoryRequirements);
2818 static VKAPI_ATTR void VKAPI_CALL CmdPreprocessGeneratedCommandsNV(
2819 VkCommandBuffer commandBuffer,
2820 const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
2822 static VKAPI_ATTR void VKAPI_CALL CmdExecuteGeneratedCommandsNV(
2823 VkCommandBuffer commandBuffer,
2824 VkBool32 isPreprocessed,
2825 const VkGeneratedCommandsInfoNV* pGeneratedCommandsInfo);
2827 static VKAPI_ATTR void VKAPI_CALL CmdBindPipelineShaderGroupNV(
2828 VkCommandBuffer commandBuffer,
2829 VkPipelineBindPoint pipelineBindPoint,
2830 VkPipeline pipeline,
2831 uint32_t groupIndex);
2833 static VKAPI_ATTR VkResult VKAPI_CALL CreateIndirectCommandsLayoutNV(
2835 const VkIndirectCommandsLayoutCreateInfoNV* pCreateInfo,
2836 const VkAllocationCallbacks* pAllocator,
2837 VkIndirectCommandsLayoutNV* pIndirectCommandsLayout);
2839 static VKAPI_ATTR void VKAPI_CALL DestroyIndirectCommandsLayoutNV(
2841 VkIndirectCommandsLayoutNV indirectCommandsLayout,
2842 const VkAllocationCallbacks* pAllocator);
2851 static VKAPI_ATTR VkResult VKAPI_CALL CreatePrivateDataSlotEXT(
2853 const VkPrivateDataSlotCreateInfoEXT* pCreateInfo,
2854 const VkAllocationCallbacks* pAllocator,
2855 VkPrivateDataSlotEXT* pPrivateDataSlot);
2857 static VKAPI_ATTR void VKAPI_CALL DestroyPrivateDataSlotEXT(
2859 VkPrivateDataSlotEXT privateDataSlot,
2860 const VkAllocationCallbacks* pAllocator);
2862 static VKAPI_ATTR VkResult VKAPI_CALL SetPrivateDataEXT(
2864 VkObjectType objectType,
2865 uint64_t objectHandle,
2866 VkPrivateDataSlotEXT privateDataSlot,
2869 static VKAPI_ATTR void VKAPI_CALL GetPrivateDataEXT(
2871 VkObjectType objectType,
2872 uint64_t objectHandle,
2873 VkPrivateDataSlotEXT privateDataSlot,
2882 #ifdef VK_USE_PLATFORM_DIRECTFB_EXT
2884 static VKAPI_ATTR VkResult VKAPI_CALL CreateDirectFBSurfaceEXT(
2885 VkInstance instance,
2886 const VkDirectFBSurfaceCreateInfoEXT* pCreateInfo,
2887 const VkAllocationCallbacks* pAllocator,
2888 VkSurfaceKHR* pSurface);
2890 static VKAPI_ATTR VkBool32 VKAPI_CALL GetPhysicalDeviceDirectFBPresentationSupportEXT(
2891 VkPhysicalDevice physicalDevice,
2892 uint32_t queueFamilyIndex,
2894 #endif /* VK_USE_PLATFORM_DIRECTFB_EXT */
2896 #ifdef VK_ENABLE_BETA_EXTENSIONS
2898 static VKAPI_ATTR VkResult VKAPI_CALL CreateAccelerationStructureKHR(
2900 const VkAccelerationStructureCreateInfoKHR* pCreateInfo,
2901 const VkAllocationCallbacks* pAllocator,
2902 VkAccelerationStructureKHR* pAccelerationStructure);
2904 static VKAPI_ATTR void VKAPI_CALL GetAccelerationStructureMemoryRequirementsKHR(
2906 const VkAccelerationStructureMemoryRequirementsInfoKHR* pInfo,
2907 VkMemoryRequirements2* pMemoryRequirements);
2909 static VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructureKHR(
2910 VkCommandBuffer commandBuffer,
2912 const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
2913 const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
2915 static VKAPI_ATTR void VKAPI_CALL CmdBuildAccelerationStructureIndirectKHR(
2916 VkCommandBuffer commandBuffer,
2917 const VkAccelerationStructureBuildGeometryInfoKHR* pInfo,
2918 VkBuffer indirectBuffer,
2919 VkDeviceSize indirectOffset,
2920 uint32_t indirectStride);
2922 static VKAPI_ATTR VkResult VKAPI_CALL BuildAccelerationStructureKHR(
2925 const VkAccelerationStructureBuildGeometryInfoKHR* pInfos,
2926 const VkAccelerationStructureBuildOffsetInfoKHR* const* ppOffsetInfos);
2928 static VKAPI_ATTR VkResult VKAPI_CALL CopyAccelerationStructureKHR(
2930 const VkCopyAccelerationStructureInfoKHR* pInfo);
2932 static VKAPI_ATTR VkResult VKAPI_CALL CopyAccelerationStructureToMemoryKHR(
2934 const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
2936 static VKAPI_ATTR VkResult VKAPI_CALL CopyMemoryToAccelerationStructureKHR(
2938 const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
2940 static VKAPI_ATTR VkResult VKAPI_CALL WriteAccelerationStructuresPropertiesKHR(
2942 uint32_t accelerationStructureCount,
2943 const VkAccelerationStructureKHR* pAccelerationStructures,
2944 VkQueryType queryType,
2949 static VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureKHR(
2950 VkCommandBuffer commandBuffer,
2951 const VkCopyAccelerationStructureInfoKHR* pInfo);
2953 static VKAPI_ATTR void VKAPI_CALL CmdCopyAccelerationStructureToMemoryKHR(
2954 VkCommandBuffer commandBuffer,
2955 const VkCopyAccelerationStructureToMemoryInfoKHR* pInfo);
2957 static VKAPI_ATTR void VKAPI_CALL CmdCopyMemoryToAccelerationStructureKHR(
2958 VkCommandBuffer commandBuffer,
2959 const VkCopyMemoryToAccelerationStructureInfoKHR* pInfo);
2961 static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysKHR(
2962 VkCommandBuffer commandBuffer,
2963 const VkStridedBufferRegionKHR* pRaygenShaderBindingTable,
2964 const VkStridedBufferRegionKHR* pMissShaderBindingTable,
2965 const VkStridedBufferRegionKHR* pHitShaderBindingTable,
2966 const VkStridedBufferRegionKHR* pCallableShaderBindingTable,
2971 static VKAPI_ATTR VkResult VKAPI_CALL CreateRayTracingPipelinesKHR(
2973 VkPipelineCache pipelineCache,
2974 uint32_t createInfoCount,
2975 const VkRayTracingPipelineCreateInfoKHR* pCreateInfos,
2976 const VkAllocationCallbacks* pAllocator,
2977 VkPipeline* pPipelines);
2979 static VKAPI_ATTR VkDeviceAddress VKAPI_CALL GetAccelerationStructureDeviceAddressKHR(
2981 const VkAccelerationStructureDeviceAddressInfoKHR* pInfo);
2983 static VKAPI_ATTR VkResult VKAPI_CALL GetRayTracingCaptureReplayShaderGroupHandlesKHR(
2985 VkPipeline pipeline,
2986 uint32_t firstGroup,
2987 uint32_t groupCount,
2991 static VKAPI_ATTR void VKAPI_CALL CmdTraceRaysIndirectKHR(
2992 VkCommandBuffer commandBuffer,
2993 const VkStridedBufferRegionKHR* pRaygenShaderBindingTable,
2994 const VkStridedBufferRegionKHR* pMissShaderBindingTable,
2995 const VkStridedBufferRegionKHR* pHitShaderBindingTable,
2996 const VkStridedBufferRegionKHR* pCallableShaderBindingTable,
2998 VkDeviceSize offset);
3000 static VKAPI_ATTR VkResult VKAPI_CALL GetDeviceAccelerationStructureCompatibilityKHR(
3002 const VkAccelerationStructureVersionKHR* version);
3003 #endif /* VK_ENABLE_BETA_EXTENSIONS */
3005 // Map of all APIs to be intercepted by this layer
3006 static const std::unordered_map<std::string, void*> name_to_funcptr_map = {
3007 {"vkCreateInstance", (void*)CreateInstance},
3008 {"vkDestroyInstance", (void*)DestroyInstance},
3009 {"vkEnumeratePhysicalDevices", (void*)EnumeratePhysicalDevices},
3010 {"vkGetPhysicalDeviceFeatures", (void*)GetPhysicalDeviceFeatures},
3011 {"vkGetPhysicalDeviceFormatProperties", (void*)GetPhysicalDeviceFormatProperties},
3012 {"vkGetPhysicalDeviceImageFormatProperties", (void*)GetPhysicalDeviceImageFormatProperties},
3013 {"vkGetPhysicalDeviceProperties", (void*)GetPhysicalDeviceProperties},
3014 {"vkGetPhysicalDeviceQueueFamilyProperties", (void*)GetPhysicalDeviceQueueFamilyProperties},
3015 {"vkGetPhysicalDeviceMemoryProperties", (void*)GetPhysicalDeviceMemoryProperties},
3016 {"vkGetInstanceProcAddr", (void*)GetInstanceProcAddr},
3017 {"vkGetDeviceProcAddr", (void*)GetDeviceProcAddr},
3018 {"vkCreateDevice", (void*)CreateDevice},
3019 {"vkDestroyDevice", (void*)DestroyDevice},
3020 {"vkEnumerateInstanceExtensionProperties", (void*)EnumerateInstanceExtensionProperties},
3021 {"vkEnumerateDeviceExtensionProperties", (void*)EnumerateDeviceExtensionProperties},
3022 {"vkEnumerateInstanceLayerProperties", (void*)EnumerateInstanceLayerProperties},
3023 {"vkEnumerateDeviceLayerProperties", (void*)EnumerateDeviceLayerProperties},
3024 {"vkGetDeviceQueue", (void*)GetDeviceQueue},
3025 {"vkQueueSubmit", (void*)QueueSubmit},
3026 {"vkQueueWaitIdle", (void*)QueueWaitIdle},
3027 {"vkDeviceWaitIdle", (void*)DeviceWaitIdle},
3028 {"vkAllocateMemory", (void*)AllocateMemory},
3029 {"vkFreeMemory", (void*)FreeMemory},
3030 {"vkMapMemory", (void*)MapMemory},
3031 {"vkUnmapMemory", (void*)UnmapMemory},
3032 {"vkFlushMappedMemoryRanges", (void*)FlushMappedMemoryRanges},
3033 {"vkInvalidateMappedMemoryRanges", (void*)InvalidateMappedMemoryRanges},
3034 {"vkGetDeviceMemoryCommitment", (void*)GetDeviceMemoryCommitment},
3035 {"vkBindBufferMemory", (void*)BindBufferMemory},
3036 {"vkBindImageMemory", (void*)BindImageMemory},
3037 {"vkGetBufferMemoryRequirements", (void*)GetBufferMemoryRequirements},
3038 {"vkGetImageMemoryRequirements", (void*)GetImageMemoryRequirements},
3039 {"vkGetImageSparseMemoryRequirements", (void*)GetImageSparseMemoryRequirements},
3040 {"vkGetPhysicalDeviceSparseImageFormatProperties", (void*)GetPhysicalDeviceSparseImageFormatProperties},
3041 {"vkQueueBindSparse", (void*)QueueBindSparse},
3042 {"vkCreateFence", (void*)CreateFence},
3043 {"vkDestroyFence", (void*)DestroyFence},
3044 {"vkResetFences", (void*)ResetFences},
3045 {"vkGetFenceStatus", (void*)GetFenceStatus},
3046 {"vkWaitForFences", (void*)WaitForFences},
3047 {"vkCreateSemaphore", (void*)CreateSemaphore},
3048 {"vkDestroySemaphore", (void*)DestroySemaphore},
3049 {"vkCreateEvent", (void*)CreateEvent},
3050 {"vkDestroyEvent", (void*)DestroyEvent},
3051 {"vkGetEventStatus", (void*)GetEventStatus},
3052 {"vkSetEvent", (void*)SetEvent},
3053 {"vkResetEvent", (void*)ResetEvent},
3054 {"vkCreateQueryPool", (void*)CreateQueryPool},
3055 {"vkDestroyQueryPool", (void*)DestroyQueryPool},
3056 {"vkGetQueryPoolResults", (void*)GetQueryPoolResults},
3057 {"vkCreateBuffer", (void*)CreateBuffer},
3058 {"vkDestroyBuffer", (void*)DestroyBuffer},
3059 {"vkCreateBufferView", (void*)CreateBufferView},
3060 {"vkDestroyBufferView", (void*)DestroyBufferView},
3061 {"vkCreateImage", (void*)CreateImage},
3062 {"vkDestroyImage", (void*)DestroyImage},
3063 {"vkGetImageSubresourceLayout", (void*)GetImageSubresourceLayout},
3064 {"vkCreateImageView", (void*)CreateImageView},
3065 {"vkDestroyImageView", (void*)DestroyImageView},
3066 {"vkCreateShaderModule", (void*)CreateShaderModule},
3067 {"vkDestroyShaderModule", (void*)DestroyShaderModule},
3068 {"vkCreatePipelineCache", (void*)CreatePipelineCache},
3069 {"vkDestroyPipelineCache", (void*)DestroyPipelineCache},
3070 {"vkGetPipelineCacheData", (void*)GetPipelineCacheData},
3071 {"vkMergePipelineCaches", (void*)MergePipelineCaches},
3072 {"vkCreateGraphicsPipelines", (void*)CreateGraphicsPipelines},
3073 {"vkCreateComputePipelines", (void*)CreateComputePipelines},
3074 {"vkDestroyPipeline", (void*)DestroyPipeline},
3075 {"vkCreatePipelineLayout", (void*)CreatePipelineLayout},
3076 {"vkDestroyPipelineLayout", (void*)DestroyPipelineLayout},
3077 {"vkCreateSampler", (void*)CreateSampler},
3078 {"vkDestroySampler", (void*)DestroySampler},
3079 {"vkCreateDescriptorSetLayout", (void*)CreateDescriptorSetLayout},
3080 {"vkDestroyDescriptorSetLayout", (void*)DestroyDescriptorSetLayout},
3081 {"vkCreateDescriptorPool", (void*)CreateDescriptorPool},
3082 {"vkDestroyDescriptorPool", (void*)DestroyDescriptorPool},
3083 {"vkResetDescriptorPool", (void*)ResetDescriptorPool},
3084 {"vkAllocateDescriptorSets", (void*)AllocateDescriptorSets},
3085 {"vkFreeDescriptorSets", (void*)FreeDescriptorSets},
3086 {"vkUpdateDescriptorSets", (void*)UpdateDescriptorSets},
3087 {"vkCreateFramebuffer", (void*)CreateFramebuffer},
3088 {"vkDestroyFramebuffer", (void*)DestroyFramebuffer},
3089 {"vkCreateRenderPass", (void*)CreateRenderPass},
3090 {"vkDestroyRenderPass", (void*)DestroyRenderPass},
3091 {"vkGetRenderAreaGranularity", (void*)GetRenderAreaGranularity},
3092 {"vkCreateCommandPool", (void*)CreateCommandPool},
3093 {"vkDestroyCommandPool", (void*)DestroyCommandPool},
3094 {"vkResetCommandPool", (void*)ResetCommandPool},
3095 {"vkAllocateCommandBuffers", (void*)AllocateCommandBuffers},
3096 {"vkFreeCommandBuffers", (void*)FreeCommandBuffers},
3097 {"vkBeginCommandBuffer", (void*)BeginCommandBuffer},
3098 {"vkEndCommandBuffer", (void*)EndCommandBuffer},
3099 {"vkResetCommandBuffer", (void*)ResetCommandBuffer},
3100 {"vkCmdBindPipeline", (void*)CmdBindPipeline},
3101 {"vkCmdSetViewport", (void*)CmdSetViewport},
3102 {"vkCmdSetScissor", (void*)CmdSetScissor},
3103 {"vkCmdSetLineWidth", (void*)CmdSetLineWidth},
3104 {"vkCmdSetDepthBias", (void*)CmdSetDepthBias},
3105 {"vkCmdSetBlendConstants", (void*)CmdSetBlendConstants},
3106 {"vkCmdSetDepthBounds", (void*)CmdSetDepthBounds},
3107 {"vkCmdSetStencilCompareMask", (void*)CmdSetStencilCompareMask},
3108 {"vkCmdSetStencilWriteMask", (void*)CmdSetStencilWriteMask},
3109 {"vkCmdSetStencilReference", (void*)CmdSetStencilReference},
3110 {"vkCmdBindDescriptorSets", (void*)CmdBindDescriptorSets},
3111 {"vkCmdBindIndexBuffer", (void*)CmdBindIndexBuffer},
3112 {"vkCmdBindVertexBuffers", (void*)CmdBindVertexBuffers},
3113 {"vkCmdDraw", (void*)CmdDraw},
3114 {"vkCmdDrawIndexed", (void*)CmdDrawIndexed},
3115 {"vkCmdDrawIndirect", (void*)CmdDrawIndirect},
3116 {"vkCmdDrawIndexedIndirect", (void*)CmdDrawIndexedIndirect},
3117 {"vkCmdDispatch", (void*)CmdDispatch},
3118 {"vkCmdDispatchIndirect", (void*)CmdDispatchIndirect},
3119 {"vkCmdCopyBuffer", (void*)CmdCopyBuffer},
3120 {"vkCmdCopyImage", (void*)CmdCopyImage},
3121 {"vkCmdBlitImage", (void*)CmdBlitImage},
3122 {"vkCmdCopyBufferToImage", (void*)CmdCopyBufferToImage},
3123 {"vkCmdCopyImageToBuffer", (void*)CmdCopyImageToBuffer},
3124 {"vkCmdUpdateBuffer", (void*)CmdUpdateBuffer},
3125 {"vkCmdFillBuffer", (void*)CmdFillBuffer},
3126 {"vkCmdClearColorImage", (void*)CmdClearColorImage},
3127 {"vkCmdClearDepthStencilImage", (void*)CmdClearDepthStencilImage},
3128 {"vkCmdClearAttachments", (void*)CmdClearAttachments},
3129 {"vkCmdResolveImage", (void*)CmdResolveImage},
3130 {"vkCmdSetEvent", (void*)CmdSetEvent},
3131 {"vkCmdResetEvent", (void*)CmdResetEvent},
3132 {"vkCmdWaitEvents", (void*)CmdWaitEvents},
3133 {"vkCmdPipelineBarrier", (void*)CmdPipelineBarrier},
3134 {"vkCmdBeginQuery", (void*)CmdBeginQuery},
3135 {"vkCmdEndQuery", (void*)CmdEndQuery},
3136 {"vkCmdResetQueryPool", (void*)CmdResetQueryPool},
3137 {"vkCmdWriteTimestamp", (void*)CmdWriteTimestamp},
3138 {"vkCmdCopyQueryPoolResults", (void*)CmdCopyQueryPoolResults},
3139 {"vkCmdPushConstants", (void*)CmdPushConstants},
3140 {"vkCmdBeginRenderPass", (void*)CmdBeginRenderPass},
3141 {"vkCmdNextSubpass", (void*)CmdNextSubpass},
3142 {"vkCmdEndRenderPass", (void*)CmdEndRenderPass},
3143 {"vkCmdExecuteCommands", (void*)CmdExecuteCommands},
3144 {"vkEnumerateInstanceVersion", (void*)EnumerateInstanceVersion},
3145 {"vkBindBufferMemory2", (void*)BindBufferMemory2},
3146 {"vkBindImageMemory2", (void*)BindImageMemory2},
3147 {"vkGetDeviceGroupPeerMemoryFeatures", (void*)GetDeviceGroupPeerMemoryFeatures},
3148 {"vkCmdSetDeviceMask", (void*)CmdSetDeviceMask},
3149 {"vkCmdDispatchBase", (void*)CmdDispatchBase},
3150 {"vkEnumeratePhysicalDeviceGroups", (void*)EnumeratePhysicalDeviceGroups},
3151 {"vkGetImageMemoryRequirements2", (void*)GetImageMemoryRequirements2},
3152 {"vkGetBufferMemoryRequirements2", (void*)GetBufferMemoryRequirements2},
3153 {"vkGetImageSparseMemoryRequirements2", (void*)GetImageSparseMemoryRequirements2},
3154 {"vkGetPhysicalDeviceFeatures2", (void*)GetPhysicalDeviceFeatures2},
3155 {"vkGetPhysicalDeviceProperties2", (void*)GetPhysicalDeviceProperties2},
3156 {"vkGetPhysicalDeviceFormatProperties2", (void*)GetPhysicalDeviceFormatProperties2},
3157 {"vkGetPhysicalDeviceImageFormatProperties2", (void*)GetPhysicalDeviceImageFormatProperties2},
3158 {"vkGetPhysicalDeviceQueueFamilyProperties2", (void*)GetPhysicalDeviceQueueFamilyProperties2},
3159 {"vkGetPhysicalDeviceMemoryProperties2", (void*)GetPhysicalDeviceMemoryProperties2},
3160 {"vkGetPhysicalDeviceSparseImageFormatProperties2", (void*)GetPhysicalDeviceSparseImageFormatProperties2},
3161 {"vkTrimCommandPool", (void*)TrimCommandPool},
3162 {"vkGetDeviceQueue2", (void*)GetDeviceQueue2},
3163 {"vkCreateSamplerYcbcrConversion", (void*)CreateSamplerYcbcrConversion},
3164 {"vkDestroySamplerYcbcrConversion", (void*)DestroySamplerYcbcrConversion},
3165 {"vkCreateDescriptorUpdateTemplate", (void*)CreateDescriptorUpdateTemplate},
3166 {"vkDestroyDescriptorUpdateTemplate", (void*)DestroyDescriptorUpdateTemplate},
3167 {"vkUpdateDescriptorSetWithTemplate", (void*)UpdateDescriptorSetWithTemplate},
3168 {"vkGetPhysicalDeviceExternalBufferProperties", (void*)GetPhysicalDeviceExternalBufferProperties},
3169 {"vkGetPhysicalDeviceExternalFenceProperties", (void*)GetPhysicalDeviceExternalFenceProperties},
3170 {"vkGetPhysicalDeviceExternalSemaphoreProperties", (void*)GetPhysicalDeviceExternalSemaphoreProperties},
3171 {"vkGetDescriptorSetLayoutSupport", (void*)GetDescriptorSetLayoutSupport},
3172 {"vkCmdDrawIndirectCount", (void*)CmdDrawIndirectCount},
3173 {"vkCmdDrawIndexedIndirectCount", (void*)CmdDrawIndexedIndirectCount},
3174 {"vkCreateRenderPass2", (void*)CreateRenderPass2},
3175 {"vkCmdBeginRenderPass2", (void*)CmdBeginRenderPass2},
3176 {"vkCmdNextSubpass2", (void*)CmdNextSubpass2},
3177 {"vkCmdEndRenderPass2", (void*)CmdEndRenderPass2},
3178 {"vkResetQueryPool", (void*)ResetQueryPool},
3179 {"vkGetSemaphoreCounterValue", (void*)GetSemaphoreCounterValue},
3180 {"vkWaitSemaphores", (void*)WaitSemaphores},
3181 {"vkSignalSemaphore", (void*)SignalSemaphore},
3182 {"vkGetBufferDeviceAddress", (void*)GetBufferDeviceAddress},
3183 {"vkGetBufferOpaqueCaptureAddress", (void*)GetBufferOpaqueCaptureAddress},
3184 {"vkGetDeviceMemoryOpaqueCaptureAddress", (void*)GetDeviceMemoryOpaqueCaptureAddress},
3185 {"vkDestroySurfaceKHR", (void*)DestroySurfaceKHR},
3186 {"vkGetPhysicalDeviceSurfaceSupportKHR", (void*)GetPhysicalDeviceSurfaceSupportKHR},
3187 {"vkGetPhysicalDeviceSurfaceCapabilitiesKHR", (void*)GetPhysicalDeviceSurfaceCapabilitiesKHR},
3188 {"vkGetPhysicalDeviceSurfaceFormatsKHR", (void*)GetPhysicalDeviceSurfaceFormatsKHR},
3189 {"vkGetPhysicalDeviceSurfacePresentModesKHR", (void*)GetPhysicalDeviceSurfacePresentModesKHR},
3190 {"vkCreateSwapchainKHR", (void*)CreateSwapchainKHR},
3191 {"vkDestroySwapchainKHR", (void*)DestroySwapchainKHR},
3192 {"vkGetSwapchainImagesKHR", (void*)GetSwapchainImagesKHR},
3193 {"vkAcquireNextImageKHR", (void*)AcquireNextImageKHR},
3194 {"vkQueuePresentKHR", (void*)QueuePresentKHR},
3195 {"vkGetDeviceGroupPresentCapabilitiesKHR", (void*)GetDeviceGroupPresentCapabilitiesKHR},
3196 {"vkGetDeviceGroupSurfacePresentModesKHR", (void*)GetDeviceGroupSurfacePresentModesKHR},
3197 {"vkGetPhysicalDevicePresentRectanglesKHR", (void*)GetPhysicalDevicePresentRectanglesKHR},
3198 {"vkAcquireNextImage2KHR", (void*)AcquireNextImage2KHR},
3199 {"vkGetPhysicalDeviceDisplayPropertiesKHR", (void*)GetPhysicalDeviceDisplayPropertiesKHR},
3200 {"vkGetPhysicalDeviceDisplayPlanePropertiesKHR", (void*)GetPhysicalDeviceDisplayPlanePropertiesKHR},
3201 {"vkGetDisplayPlaneSupportedDisplaysKHR", (void*)GetDisplayPlaneSupportedDisplaysKHR},
3202 {"vkGetDisplayModePropertiesKHR", (void*)GetDisplayModePropertiesKHR},
3203 {"vkCreateDisplayModeKHR", (void*)CreateDisplayModeKHR},
3204 {"vkGetDisplayPlaneCapabilitiesKHR", (void*)GetDisplayPlaneCapabilitiesKHR},
3205 {"vkCreateDisplayPlaneSurfaceKHR", (void*)CreateDisplayPlaneSurfaceKHR},
3206 {"vkCreateSharedSwapchainsKHR", (void*)CreateSharedSwapchainsKHR},
3207 #ifdef VK_USE_PLATFORM_XLIB_KHR
3208 {"vkCreateXlibSurfaceKHR", (void*)CreateXlibSurfaceKHR},
3210 #ifdef VK_USE_PLATFORM_XLIB_KHR
3211 {"vkGetPhysicalDeviceXlibPresentationSupportKHR", (void*)GetPhysicalDeviceXlibPresentationSupportKHR},
3213 #ifdef VK_USE_PLATFORM_XCB_KHR
3214 {"vkCreateXcbSurfaceKHR", (void*)CreateXcbSurfaceKHR},
3216 #ifdef VK_USE_PLATFORM_XCB_KHR
3217 {"vkGetPhysicalDeviceXcbPresentationSupportKHR", (void*)GetPhysicalDeviceXcbPresentationSupportKHR},
3219 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
3220 {"vkCreateWaylandSurfaceKHR", (void*)CreateWaylandSurfaceKHR},
3222 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
3223 {"vkGetPhysicalDeviceWaylandPresentationSupportKHR", (void*)GetPhysicalDeviceWaylandPresentationSupportKHR},
3225 #ifdef VK_USE_PLATFORM_ANDROID_KHR
3226 {"vkCreateAndroidSurfaceKHR", (void*)CreateAndroidSurfaceKHR},
3228 #ifdef VK_USE_PLATFORM_WIN32_KHR
3229 {"vkCreateWin32SurfaceKHR", (void*)CreateWin32SurfaceKHR},
3231 #ifdef VK_USE_PLATFORM_WIN32_KHR
3232 {"vkGetPhysicalDeviceWin32PresentationSupportKHR", (void*)GetPhysicalDeviceWin32PresentationSupportKHR},
3234 {"vkGetPhysicalDeviceFeatures2KHR", (void*)GetPhysicalDeviceFeatures2KHR},
3235 {"vkGetPhysicalDeviceProperties2KHR", (void*)GetPhysicalDeviceProperties2KHR},
3236 {"vkGetPhysicalDeviceFormatProperties2KHR", (void*)GetPhysicalDeviceFormatProperties2KHR},
3237 {"vkGetPhysicalDeviceImageFormatProperties2KHR", (void*)GetPhysicalDeviceImageFormatProperties2KHR},
3238 {"vkGetPhysicalDeviceQueueFamilyProperties2KHR", (void*)GetPhysicalDeviceQueueFamilyProperties2KHR},
3239 {"vkGetPhysicalDeviceMemoryProperties2KHR", (void*)GetPhysicalDeviceMemoryProperties2KHR},
3240 {"vkGetPhysicalDeviceSparseImageFormatProperties2KHR", (void*)GetPhysicalDeviceSparseImageFormatProperties2KHR},
3241 {"vkGetDeviceGroupPeerMemoryFeaturesKHR", (void*)GetDeviceGroupPeerMemoryFeaturesKHR},
3242 {"vkCmdSetDeviceMaskKHR", (void*)CmdSetDeviceMaskKHR},
3243 {"vkCmdDispatchBaseKHR", (void*)CmdDispatchBaseKHR},
3244 {"vkTrimCommandPoolKHR", (void*)TrimCommandPoolKHR},
3245 {"vkEnumeratePhysicalDeviceGroupsKHR", (void*)EnumeratePhysicalDeviceGroupsKHR},
3246 {"vkGetPhysicalDeviceExternalBufferPropertiesKHR", (void*)GetPhysicalDeviceExternalBufferPropertiesKHR},
3247 #ifdef VK_USE_PLATFORM_WIN32_KHR
3248 {"vkGetMemoryWin32HandleKHR", (void*)GetMemoryWin32HandleKHR},
3250 #ifdef VK_USE_PLATFORM_WIN32_KHR
3251 {"vkGetMemoryWin32HandlePropertiesKHR", (void*)GetMemoryWin32HandlePropertiesKHR},
3253 {"vkGetMemoryFdKHR", (void*)GetMemoryFdKHR},
3254 {"vkGetMemoryFdPropertiesKHR", (void*)GetMemoryFdPropertiesKHR},
3255 {"vkGetPhysicalDeviceExternalSemaphorePropertiesKHR", (void*)GetPhysicalDeviceExternalSemaphorePropertiesKHR},
3256 #ifdef VK_USE_PLATFORM_WIN32_KHR
3257 {"vkImportSemaphoreWin32HandleKHR", (void*)ImportSemaphoreWin32HandleKHR},
3259 #ifdef VK_USE_PLATFORM_WIN32_KHR
3260 {"vkGetSemaphoreWin32HandleKHR", (void*)GetSemaphoreWin32HandleKHR},
3262 {"vkImportSemaphoreFdKHR", (void*)ImportSemaphoreFdKHR},
3263 {"vkGetSemaphoreFdKHR", (void*)GetSemaphoreFdKHR},
3264 {"vkCmdPushDescriptorSetKHR", (void*)CmdPushDescriptorSetKHR},
3265 {"vkCmdPushDescriptorSetWithTemplateKHR", (void*)CmdPushDescriptorSetWithTemplateKHR},
3266 {"vkCreateDescriptorUpdateTemplateKHR", (void*)CreateDescriptorUpdateTemplateKHR},
3267 {"vkDestroyDescriptorUpdateTemplateKHR", (void*)DestroyDescriptorUpdateTemplateKHR},
3268 {"vkUpdateDescriptorSetWithTemplateKHR", (void*)UpdateDescriptorSetWithTemplateKHR},
3269 {"vkCreateRenderPass2KHR", (void*)CreateRenderPass2KHR},
3270 {"vkCmdBeginRenderPass2KHR", (void*)CmdBeginRenderPass2KHR},
3271 {"vkCmdNextSubpass2KHR", (void*)CmdNextSubpass2KHR},
3272 {"vkCmdEndRenderPass2KHR", (void*)CmdEndRenderPass2KHR},
3273 {"vkGetSwapchainStatusKHR", (void*)GetSwapchainStatusKHR},
3274 {"vkGetPhysicalDeviceExternalFencePropertiesKHR", (void*)GetPhysicalDeviceExternalFencePropertiesKHR},
3275 #ifdef VK_USE_PLATFORM_WIN32_KHR
3276 {"vkImportFenceWin32HandleKHR", (void*)ImportFenceWin32HandleKHR},
3278 #ifdef VK_USE_PLATFORM_WIN32_KHR
3279 {"vkGetFenceWin32HandleKHR", (void*)GetFenceWin32HandleKHR},
3281 {"vkImportFenceFdKHR", (void*)ImportFenceFdKHR},
3282 {"vkGetFenceFdKHR", (void*)GetFenceFdKHR},
3283 {"vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR", (void*)EnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR},
3284 {"vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR", (void*)GetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR},
3285 {"vkAcquireProfilingLockKHR", (void*)AcquireProfilingLockKHR},
3286 {"vkReleaseProfilingLockKHR", (void*)ReleaseProfilingLockKHR},
3287 {"vkGetPhysicalDeviceSurfaceCapabilities2KHR", (void*)GetPhysicalDeviceSurfaceCapabilities2KHR},
3288 {"vkGetPhysicalDeviceSurfaceFormats2KHR", (void*)GetPhysicalDeviceSurfaceFormats2KHR},
3289 {"vkGetPhysicalDeviceDisplayProperties2KHR", (void*)GetPhysicalDeviceDisplayProperties2KHR},
3290 {"vkGetPhysicalDeviceDisplayPlaneProperties2KHR", (void*)GetPhysicalDeviceDisplayPlaneProperties2KHR},
3291 {"vkGetDisplayModeProperties2KHR", (void*)GetDisplayModeProperties2KHR},
3292 {"vkGetDisplayPlaneCapabilities2KHR", (void*)GetDisplayPlaneCapabilities2KHR},
3293 {"vkGetImageMemoryRequirements2KHR", (void*)GetImageMemoryRequirements2KHR},
3294 {"vkGetBufferMemoryRequirements2KHR", (void*)GetBufferMemoryRequirements2KHR},
3295 {"vkGetImageSparseMemoryRequirements2KHR", (void*)GetImageSparseMemoryRequirements2KHR},
3296 {"vkCreateSamplerYcbcrConversionKHR", (void*)CreateSamplerYcbcrConversionKHR},
3297 {"vkDestroySamplerYcbcrConversionKHR", (void*)DestroySamplerYcbcrConversionKHR},
3298 {"vkBindBufferMemory2KHR", (void*)BindBufferMemory2KHR},
3299 {"vkBindImageMemory2KHR", (void*)BindImageMemory2KHR},
3300 {"vkGetDescriptorSetLayoutSupportKHR", (void*)GetDescriptorSetLayoutSupportKHR},
3301 {"vkCmdDrawIndirectCountKHR", (void*)CmdDrawIndirectCountKHR},
3302 {"vkCmdDrawIndexedIndirectCountKHR", (void*)CmdDrawIndexedIndirectCountKHR},
3303 {"vkGetSemaphoreCounterValueKHR", (void*)GetSemaphoreCounterValueKHR},
3304 {"vkWaitSemaphoresKHR", (void*)WaitSemaphoresKHR},
3305 {"vkSignalSemaphoreKHR", (void*)SignalSemaphoreKHR},
3306 {"vkGetPhysicalDeviceFragmentShadingRatesKHR", (void*)GetPhysicalDeviceFragmentShadingRatesKHR},
3307 {"vkCmdSetFragmentShadingRateKHR", (void*)CmdSetFragmentShadingRateKHR},
3308 {"vkGetBufferDeviceAddressKHR", (void*)GetBufferDeviceAddressKHR},
3309 {"vkGetBufferOpaqueCaptureAddressKHR", (void*)GetBufferOpaqueCaptureAddressKHR},
3310 {"vkGetDeviceMemoryOpaqueCaptureAddressKHR", (void*)GetDeviceMemoryOpaqueCaptureAddressKHR},
3311 #ifdef VK_ENABLE_BETA_EXTENSIONS
3312 {"vkCreateDeferredOperationKHR", (void*)CreateDeferredOperationKHR},
3314 #ifdef VK_ENABLE_BETA_EXTENSIONS
3315 {"vkDestroyDeferredOperationKHR", (void*)DestroyDeferredOperationKHR},
3317 #ifdef VK_ENABLE_BETA_EXTENSIONS
3318 {"vkGetDeferredOperationMaxConcurrencyKHR", (void*)GetDeferredOperationMaxConcurrencyKHR},
3320 #ifdef VK_ENABLE_BETA_EXTENSIONS
3321 {"vkGetDeferredOperationResultKHR", (void*)GetDeferredOperationResultKHR},
3323 #ifdef VK_ENABLE_BETA_EXTENSIONS
3324 {"vkDeferredOperationJoinKHR", (void*)DeferredOperationJoinKHR},
3326 {"vkGetPipelineExecutablePropertiesKHR", (void*)GetPipelineExecutablePropertiesKHR},
3327 {"vkGetPipelineExecutableStatisticsKHR", (void*)GetPipelineExecutableStatisticsKHR},
3328 {"vkGetPipelineExecutableInternalRepresentationsKHR", (void*)GetPipelineExecutableInternalRepresentationsKHR},
3329 {"vkCmdCopyBuffer2KHR", (void*)CmdCopyBuffer2KHR},
3330 {"vkCmdCopyImage2KHR", (void*)CmdCopyImage2KHR},
3331 {"vkCmdCopyBufferToImage2KHR", (void*)CmdCopyBufferToImage2KHR},
3332 {"vkCmdCopyImageToBuffer2KHR", (void*)CmdCopyImageToBuffer2KHR},
3333 {"vkCmdBlitImage2KHR", (void*)CmdBlitImage2KHR},
3334 {"vkCmdResolveImage2KHR", (void*)CmdResolveImage2KHR},
3335 {"vkCreateDebugReportCallbackEXT", (void*)CreateDebugReportCallbackEXT},
3336 {"vkDestroyDebugReportCallbackEXT", (void*)DestroyDebugReportCallbackEXT},
3337 {"vkDebugReportMessageEXT", (void*)DebugReportMessageEXT},
3338 {"vkDebugMarkerSetObjectTagEXT", (void*)DebugMarkerSetObjectTagEXT},
3339 {"vkDebugMarkerSetObjectNameEXT", (void*)DebugMarkerSetObjectNameEXT},
3340 {"vkCmdDebugMarkerBeginEXT", (void*)CmdDebugMarkerBeginEXT},
3341 {"vkCmdDebugMarkerEndEXT", (void*)CmdDebugMarkerEndEXT},
3342 {"vkCmdDebugMarkerInsertEXT", (void*)CmdDebugMarkerInsertEXT},
3343 {"vkCmdBindTransformFeedbackBuffersEXT", (void*)CmdBindTransformFeedbackBuffersEXT},
3344 {"vkCmdBeginTransformFeedbackEXT", (void*)CmdBeginTransformFeedbackEXT},
3345 {"vkCmdEndTransformFeedbackEXT", (void*)CmdEndTransformFeedbackEXT},
3346 {"vkCmdBeginQueryIndexedEXT", (void*)CmdBeginQueryIndexedEXT},
3347 {"vkCmdEndQueryIndexedEXT", (void*)CmdEndQueryIndexedEXT},
3348 {"vkCmdDrawIndirectByteCountEXT", (void*)CmdDrawIndirectByteCountEXT},
3349 {"vkGetImageViewHandleNVX", (void*)GetImageViewHandleNVX},
3350 {"vkGetImageViewAddressNVX", (void*)GetImageViewAddressNVX},
3351 {"vkCmdDrawIndirectCountAMD", (void*)CmdDrawIndirectCountAMD},
3352 {"vkCmdDrawIndexedIndirectCountAMD", (void*)CmdDrawIndexedIndirectCountAMD},
3353 {"vkGetShaderInfoAMD", (void*)GetShaderInfoAMD},
3354 #ifdef VK_USE_PLATFORM_GGP
3355 {"vkCreateStreamDescriptorSurfaceGGP", (void*)CreateStreamDescriptorSurfaceGGP},
3357 {"vkGetPhysicalDeviceExternalImageFormatPropertiesNV", (void*)GetPhysicalDeviceExternalImageFormatPropertiesNV},
3358 #ifdef VK_USE_PLATFORM_WIN32_KHR
3359 {"vkGetMemoryWin32HandleNV", (void*)GetMemoryWin32HandleNV},
3361 #ifdef VK_USE_PLATFORM_VI_NN
3362 {"vkCreateViSurfaceNN", (void*)CreateViSurfaceNN},
3364 {"vkCmdBeginConditionalRenderingEXT", (void*)CmdBeginConditionalRenderingEXT},
3365 {"vkCmdEndConditionalRenderingEXT", (void*)CmdEndConditionalRenderingEXT},
3366 {"vkCmdSetViewportWScalingNV", (void*)CmdSetViewportWScalingNV},
3367 {"vkReleaseDisplayEXT", (void*)ReleaseDisplayEXT},
3368 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
3369 {"vkAcquireXlibDisplayEXT", (void*)AcquireXlibDisplayEXT},
3371 #ifdef VK_USE_PLATFORM_XLIB_XRANDR_EXT
3372 {"vkGetRandROutputDisplayEXT", (void*)GetRandROutputDisplayEXT},
3374 {"vkGetPhysicalDeviceSurfaceCapabilities2EXT", (void*)GetPhysicalDeviceSurfaceCapabilities2EXT},
3375 {"vkDisplayPowerControlEXT", (void*)DisplayPowerControlEXT},
3376 {"vkRegisterDeviceEventEXT", (void*)RegisterDeviceEventEXT},
3377 {"vkRegisterDisplayEventEXT", (void*)RegisterDisplayEventEXT},
3378 {"vkGetSwapchainCounterEXT", (void*)GetSwapchainCounterEXT},
3379 {"vkGetRefreshCycleDurationGOOGLE", (void*)GetRefreshCycleDurationGOOGLE},
3380 {"vkGetPastPresentationTimingGOOGLE", (void*)GetPastPresentationTimingGOOGLE},
3381 {"vkCmdSetDiscardRectangleEXT", (void*)CmdSetDiscardRectangleEXT},
3382 {"vkSetHdrMetadataEXT", (void*)SetHdrMetadataEXT},
3383 #ifdef VK_USE_PLATFORM_IOS_MVK
3384 {"vkCreateIOSSurfaceMVK", (void*)CreateIOSSurfaceMVK},
3386 #ifdef VK_USE_PLATFORM_MACOS_MVK
3387 {"vkCreateMacOSSurfaceMVK", (void*)CreateMacOSSurfaceMVK},
3389 {"vkSetDebugUtilsObjectNameEXT", (void*)SetDebugUtilsObjectNameEXT},
3390 {"vkSetDebugUtilsObjectTagEXT", (void*)SetDebugUtilsObjectTagEXT},
3391 {"vkQueueBeginDebugUtilsLabelEXT", (void*)QueueBeginDebugUtilsLabelEXT},
3392 {"vkQueueEndDebugUtilsLabelEXT", (void*)QueueEndDebugUtilsLabelEXT},
3393 {"vkQueueInsertDebugUtilsLabelEXT", (void*)QueueInsertDebugUtilsLabelEXT},
3394 {"vkCmdBeginDebugUtilsLabelEXT", (void*)CmdBeginDebugUtilsLabelEXT},
3395 {"vkCmdEndDebugUtilsLabelEXT", (void*)CmdEndDebugUtilsLabelEXT},
3396 {"vkCmdInsertDebugUtilsLabelEXT", (void*)CmdInsertDebugUtilsLabelEXT},
3397 {"vkCreateDebugUtilsMessengerEXT", (void*)CreateDebugUtilsMessengerEXT},
3398 {"vkDestroyDebugUtilsMessengerEXT", (void*)DestroyDebugUtilsMessengerEXT},
3399 {"vkSubmitDebugUtilsMessageEXT", (void*)SubmitDebugUtilsMessageEXT},
3400 #ifdef VK_USE_PLATFORM_ANDROID_KHR
3401 {"vkGetAndroidHardwareBufferPropertiesANDROID", (void*)GetAndroidHardwareBufferPropertiesANDROID},
3403 #ifdef VK_USE_PLATFORM_ANDROID_KHR
3404 {"vkGetMemoryAndroidHardwareBufferANDROID", (void*)GetMemoryAndroidHardwareBufferANDROID},
3406 {"vkCmdSetSampleLocationsEXT", (void*)CmdSetSampleLocationsEXT},
3407 {"vkGetPhysicalDeviceMultisamplePropertiesEXT", (void*)GetPhysicalDeviceMultisamplePropertiesEXT},
3408 {"vkGetImageDrmFormatModifierPropertiesEXT", (void*)GetImageDrmFormatModifierPropertiesEXT},
3409 {"vkCreateValidationCacheEXT", (void*)CreateValidationCacheEXT},
3410 {"vkDestroyValidationCacheEXT", (void*)DestroyValidationCacheEXT},
3411 {"vkMergeValidationCachesEXT", (void*)MergeValidationCachesEXT},
3412 {"vkGetValidationCacheDataEXT", (void*)GetValidationCacheDataEXT},
3413 {"vkCmdBindShadingRateImageNV", (void*)CmdBindShadingRateImageNV},
3414 {"vkCmdSetViewportShadingRatePaletteNV", (void*)CmdSetViewportShadingRatePaletteNV},
3415 {"vkCmdSetCoarseSampleOrderNV", (void*)CmdSetCoarseSampleOrderNV},
3416 {"vkCreateAccelerationStructureNV", (void*)CreateAccelerationStructureNV},
3417 {"vkDestroyAccelerationStructureKHR", (void*)DestroyAccelerationStructureKHR},
3418 {"vkDestroyAccelerationStructureNV", (void*)DestroyAccelerationStructureNV},
3419 {"vkGetAccelerationStructureMemoryRequirementsNV", (void*)GetAccelerationStructureMemoryRequirementsNV},
3420 {"vkBindAccelerationStructureMemoryKHR", (void*)BindAccelerationStructureMemoryKHR},
3421 {"vkBindAccelerationStructureMemoryNV", (void*)BindAccelerationStructureMemoryNV},
3422 {"vkCmdBuildAccelerationStructureNV", (void*)CmdBuildAccelerationStructureNV},
3423 {"vkCmdCopyAccelerationStructureNV", (void*)CmdCopyAccelerationStructureNV},
3424 {"vkCmdTraceRaysNV", (void*)CmdTraceRaysNV},
3425 {"vkCreateRayTracingPipelinesNV", (void*)CreateRayTracingPipelinesNV},
3426 {"vkGetRayTracingShaderGroupHandlesKHR", (void*)GetRayTracingShaderGroupHandlesKHR},
3427 {"vkGetRayTracingShaderGroupHandlesNV", (void*)GetRayTracingShaderGroupHandlesNV},
3428 {"vkGetAccelerationStructureHandleNV", (void*)GetAccelerationStructureHandleNV},
3429 {"vkCmdWriteAccelerationStructuresPropertiesKHR", (void*)CmdWriteAccelerationStructuresPropertiesKHR},
3430 {"vkCmdWriteAccelerationStructuresPropertiesNV", (void*)CmdWriteAccelerationStructuresPropertiesNV},
3431 {"vkCompileDeferredNV", (void*)CompileDeferredNV},
3432 {"vkGetMemoryHostPointerPropertiesEXT", (void*)GetMemoryHostPointerPropertiesEXT},
3433 {"vkCmdWriteBufferMarkerAMD", (void*)CmdWriteBufferMarkerAMD},
3434 {"vkGetPhysicalDeviceCalibrateableTimeDomainsEXT", (void*)GetPhysicalDeviceCalibrateableTimeDomainsEXT},
3435 {"vkGetCalibratedTimestampsEXT", (void*)GetCalibratedTimestampsEXT},
3436 {"vkCmdDrawMeshTasksNV", (void*)CmdDrawMeshTasksNV},
3437 {"vkCmdDrawMeshTasksIndirectNV", (void*)CmdDrawMeshTasksIndirectNV},
3438 {"vkCmdDrawMeshTasksIndirectCountNV", (void*)CmdDrawMeshTasksIndirectCountNV},
3439 {"vkCmdSetExclusiveScissorNV", (void*)CmdSetExclusiveScissorNV},
3440 {"vkCmdSetCheckpointNV", (void*)CmdSetCheckpointNV},
3441 {"vkGetQueueCheckpointDataNV", (void*)GetQueueCheckpointDataNV},
3442 {"vkInitializePerformanceApiINTEL", (void*)InitializePerformanceApiINTEL},
3443 {"vkUninitializePerformanceApiINTEL", (void*)UninitializePerformanceApiINTEL},
3444 {"vkCmdSetPerformanceMarkerINTEL", (void*)CmdSetPerformanceMarkerINTEL},
3445 {"vkCmdSetPerformanceStreamMarkerINTEL", (void*)CmdSetPerformanceStreamMarkerINTEL},
3446 {"vkCmdSetPerformanceOverrideINTEL", (void*)CmdSetPerformanceOverrideINTEL},
3447 {"vkAcquirePerformanceConfigurationINTEL", (void*)AcquirePerformanceConfigurationINTEL},
3448 {"vkReleasePerformanceConfigurationINTEL", (void*)ReleasePerformanceConfigurationINTEL},
3449 {"vkQueueSetPerformanceConfigurationINTEL", (void*)QueueSetPerformanceConfigurationINTEL},
3450 {"vkGetPerformanceParameterINTEL", (void*)GetPerformanceParameterINTEL},
3451 {"vkSetLocalDimmingAMD", (void*)SetLocalDimmingAMD},
3452 #ifdef VK_USE_PLATFORM_FUCHSIA
3453 {"vkCreateImagePipeSurfaceFUCHSIA", (void*)CreateImagePipeSurfaceFUCHSIA},
3455 #ifdef VK_USE_PLATFORM_METAL_EXT
3456 {"vkCreateMetalSurfaceEXT", (void*)CreateMetalSurfaceEXT},
3458 {"vkGetBufferDeviceAddressEXT", (void*)GetBufferDeviceAddressEXT},
3459 {"vkGetPhysicalDeviceToolPropertiesEXT", (void*)GetPhysicalDeviceToolPropertiesEXT},
3460 {"vkGetPhysicalDeviceCooperativeMatrixPropertiesNV", (void*)GetPhysicalDeviceCooperativeMatrixPropertiesNV},
3461 {"vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV", (void*)GetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV},
3462 #ifdef VK_USE_PLATFORM_WIN32_KHR
3463 {"vkGetPhysicalDeviceSurfacePresentModes2EXT", (void*)GetPhysicalDeviceSurfacePresentModes2EXT},
3465 #ifdef VK_USE_PLATFORM_WIN32_KHR
3466 {"vkAcquireFullScreenExclusiveModeEXT", (void*)AcquireFullScreenExclusiveModeEXT},
3468 #ifdef VK_USE_PLATFORM_WIN32_KHR
3469 {"vkReleaseFullScreenExclusiveModeEXT", (void*)ReleaseFullScreenExclusiveModeEXT},
3471 #ifdef VK_USE_PLATFORM_WIN32_KHR
3472 {"vkGetDeviceGroupSurfacePresentModes2EXT", (void*)GetDeviceGroupSurfacePresentModes2EXT},
3474 {"vkCreateHeadlessSurfaceEXT", (void*)CreateHeadlessSurfaceEXT},
3475 {"vkCmdSetLineStippleEXT", (void*)CmdSetLineStippleEXT},
3476 {"vkResetQueryPoolEXT", (void*)ResetQueryPoolEXT},
3477 {"vkCmdSetCullModeEXT", (void*)CmdSetCullModeEXT},
3478 {"vkCmdSetFrontFaceEXT", (void*)CmdSetFrontFaceEXT},
3479 {"vkCmdSetPrimitiveTopologyEXT", (void*)CmdSetPrimitiveTopologyEXT},
3480 {"vkCmdSetViewportWithCountEXT", (void*)CmdSetViewportWithCountEXT},
3481 {"vkCmdSetScissorWithCountEXT", (void*)CmdSetScissorWithCountEXT},
3482 {"vkCmdBindVertexBuffers2EXT", (void*)CmdBindVertexBuffers2EXT},
3483 {"vkCmdSetDepthTestEnableEXT", (void*)CmdSetDepthTestEnableEXT},
3484 {"vkCmdSetDepthWriteEnableEXT", (void*)CmdSetDepthWriteEnableEXT},
3485 {"vkCmdSetDepthCompareOpEXT", (void*)CmdSetDepthCompareOpEXT},
3486 {"vkCmdSetDepthBoundsTestEnableEXT", (void*)CmdSetDepthBoundsTestEnableEXT},
3487 {"vkCmdSetStencilTestEnableEXT", (void*)CmdSetStencilTestEnableEXT},
3488 {"vkCmdSetStencilOpEXT", (void*)CmdSetStencilOpEXT},
3489 {"vkGetGeneratedCommandsMemoryRequirementsNV", (void*)GetGeneratedCommandsMemoryRequirementsNV},
3490 {"vkCmdPreprocessGeneratedCommandsNV", (void*)CmdPreprocessGeneratedCommandsNV},
3491 {"vkCmdExecuteGeneratedCommandsNV", (void*)CmdExecuteGeneratedCommandsNV},
3492 {"vkCmdBindPipelineShaderGroupNV", (void*)CmdBindPipelineShaderGroupNV},
3493 {"vkCreateIndirectCommandsLayoutNV", (void*)CreateIndirectCommandsLayoutNV},
3494 {"vkDestroyIndirectCommandsLayoutNV", (void*)DestroyIndirectCommandsLayoutNV},
3495 {"vkCreatePrivateDataSlotEXT", (void*)CreatePrivateDataSlotEXT},
3496 {"vkDestroyPrivateDataSlotEXT", (void*)DestroyPrivateDataSlotEXT},
3497 {"vkSetPrivateDataEXT", (void*)SetPrivateDataEXT},
3498 {"vkGetPrivateDataEXT", (void*)GetPrivateDataEXT},
3499 #ifdef VK_USE_PLATFORM_DIRECTFB_EXT
3500 {"vkCreateDirectFBSurfaceEXT", (void*)CreateDirectFBSurfaceEXT},
3502 #ifdef VK_USE_PLATFORM_DIRECTFB_EXT
3503 {"vkGetPhysicalDeviceDirectFBPresentationSupportEXT", (void*)GetPhysicalDeviceDirectFBPresentationSupportEXT},
3505 #ifdef VK_ENABLE_BETA_EXTENSIONS
3506 {"vkCreateAccelerationStructureKHR", (void*)CreateAccelerationStructureKHR},
3508 #ifdef VK_ENABLE_BETA_EXTENSIONS
3509 {"vkGetAccelerationStructureMemoryRequirementsKHR", (void*)GetAccelerationStructureMemoryRequirementsKHR},
3511 #ifdef VK_ENABLE_BETA_EXTENSIONS
3512 {"vkCmdBuildAccelerationStructureKHR", (void*)CmdBuildAccelerationStructureKHR},
3514 #ifdef VK_ENABLE_BETA_EXTENSIONS
3515 {"vkCmdBuildAccelerationStructureIndirectKHR", (void*)CmdBuildAccelerationStructureIndirectKHR},
3517 #ifdef VK_ENABLE_BETA_EXTENSIONS
3518 {"vkBuildAccelerationStructureKHR", (void*)BuildAccelerationStructureKHR},
3520 #ifdef VK_ENABLE_BETA_EXTENSIONS
3521 {"vkCopyAccelerationStructureKHR", (void*)CopyAccelerationStructureKHR},
3523 #ifdef VK_ENABLE_BETA_EXTENSIONS
3524 {"vkCopyAccelerationStructureToMemoryKHR", (void*)CopyAccelerationStructureToMemoryKHR},
3526 #ifdef VK_ENABLE_BETA_EXTENSIONS
3527 {"vkCopyMemoryToAccelerationStructureKHR", (void*)CopyMemoryToAccelerationStructureKHR},
3529 #ifdef VK_ENABLE_BETA_EXTENSIONS
3530 {"vkWriteAccelerationStructuresPropertiesKHR", (void*)WriteAccelerationStructuresPropertiesKHR},
3532 #ifdef VK_ENABLE_BETA_EXTENSIONS
3533 {"vkCmdCopyAccelerationStructureKHR", (void*)CmdCopyAccelerationStructureKHR},
3535 #ifdef VK_ENABLE_BETA_EXTENSIONS
3536 {"vkCmdCopyAccelerationStructureToMemoryKHR", (void*)CmdCopyAccelerationStructureToMemoryKHR},
3538 #ifdef VK_ENABLE_BETA_EXTENSIONS
3539 {"vkCmdCopyMemoryToAccelerationStructureKHR", (void*)CmdCopyMemoryToAccelerationStructureKHR},
3541 #ifdef VK_ENABLE_BETA_EXTENSIONS
3542 {"vkCmdTraceRaysKHR", (void*)CmdTraceRaysKHR},
3544 #ifdef VK_ENABLE_BETA_EXTENSIONS
3545 {"vkCreateRayTracingPipelinesKHR", (void*)CreateRayTracingPipelinesKHR},
3547 #ifdef VK_ENABLE_BETA_EXTENSIONS
3548 {"vkGetAccelerationStructureDeviceAddressKHR", (void*)GetAccelerationStructureDeviceAddressKHR},
3550 #ifdef VK_ENABLE_BETA_EXTENSIONS
3551 {"vkGetRayTracingCaptureReplayShaderGroupHandlesKHR", (void*)GetRayTracingCaptureReplayShaderGroupHandlesKHR},
3553 #ifdef VK_ENABLE_BETA_EXTENSIONS
3554 {"vkCmdTraceRaysIndirectKHR", (void*)CmdTraceRaysIndirectKHR},
3556 #ifdef VK_ENABLE_BETA_EXTENSIONS
3557 {"vkGetDeviceAccelerationStructureCompatibilityKHR", (void*)GetDeviceAccelerationStructureCompatibilityKHR},
3562 } // namespace vkmock