1 /** 2 * volk 3 * 4 * Copyright (C) 2018-2023, by Arseny Kapoulkine (arseny.kapoulkine@gmail.com) 5 * Report bugs and download new versions at https://github.com/zeux/volk 6 * 7 * This library is distributed under the MIT License. See notice at the end of this file. 8 */ 9 /* clang-format off */ 10 #ifndef VOLK_H_ 11 #define VOLK_H_ 12 13 #if defined(VULKAN_H_) && !defined(VK_NO_PROTOTYPES) 14 # error To use volk, you need to define VK_NO_PROTOTYPES before including vulkan.h 15 #endif 16 17 /* VOLK_GENERATE_VERSION_DEFINE */ 18 #define VOLK_HEADER_VERSION 264 19 /* VOLK_GENERATE_VERSION_DEFINE */ 20 21 #ifndef VK_NO_PROTOTYPES 22 # define VK_NO_PROTOTYPES 23 #endif 24 25 #ifndef VULKAN_H_ 26 # ifdef VOLK_VULKAN_H_PATH 27 # include VOLK_VULKAN_H_PATH 28 # elif defined(VK_USE_PLATFORM_WIN32_KHR) 29 # include <vulkan/vk_platform.h> 30 # include <vulkan/vulkan_core.h> 31 32 /* When VK_USE_PLATFORM_WIN32_KHR is defined, instead of including vulkan.h directly, we include individual parts of the SDK 33 * This is necessary to avoid including <windows.h> which is very heavy - it takes 200ms to parse without WIN32_LEAN_AND_MEAN 34 * and 100ms to parse with it. vulkan_win32.h only needs a few symbols that are easy to redefine ourselves. 35 */ 36 typedef unsigned long DWORD; 37 typedef const wchar_t* LPCWSTR; 38 typedef void* HANDLE; 39 typedef struct HINSTANCE__* HINSTANCE; 40 typedef struct HWND__* HWND; 41 typedef struct HMONITOR__* HMONITOR; 42 typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES; 43 44 # include <vulkan/vulkan_win32.h> 45 46 # ifdef VK_ENABLE_BETA_EXTENSIONS 47 # include <vulkan/vulkan_beta.h> 48 # endif 49 # else 50 # include <vulkan/vulkan.h> 51 # endif 52 #endif 53 54 /* Disable several extensions on earlier SDKs because later SDKs introduce a backwards incompatible change to function signatures */ 55 #if VK_HEADER_VERSION < 140 56 # undef VK_NVX_image_view_handle 57 #endif 58 #if VK_HEADER_VERSION < 184 59 # undef VK_HUAWEI_subpass_shading 60 #endif 61 62 #ifdef __cplusplus 63 extern "C" { 64 #endif 65 66 struct VolkDeviceTable; 67 68 /** 69 * Initialize library by loading Vulkan loader; call this function before creating the Vulkan instance. 70 * 71 * Returns VK_SUCCESS on success and VK_ERROR_INITIALIZATION_FAILED otherwise. 72 */ 73 VkResult volkInitialize(void); 74 75 /** 76 * Initialize library by providing a custom handler to load global symbols. 77 * 78 * This function can be used instead of volkInitialize. 79 * The handler function pointer will be asked to load global Vulkan symbols which require no instance 80 * (such as vkCreateInstance, vkEnumerateInstance* and vkEnumerateInstanceVersion if available). 81 */ 82 void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler); 83 84 /** 85 * Get Vulkan instance version supported by the Vulkan loader, or 0 if Vulkan isn't supported 86 * 87 * Returns 0 if volkInitialize wasn't called or failed. 88 */ 89 uint32_t volkGetInstanceVersion(void); 90 91 /** 92 * Load global function pointers using application-created VkInstance; call this function after creating the Vulkan instance. 93 */ 94 void volkLoadInstance(VkInstance instance); 95 96 /** 97 * Load global function pointers using application-created VkInstance; call this function after creating the Vulkan instance. 98 * Skips loading device-based function pointers, requires usage of volkLoadDevice afterwards. 99 */ 100 void volkLoadInstanceOnly(VkInstance instance); 101 102 /** 103 * Load global function pointers using application-created VkDevice; call this function after creating the Vulkan device. 104 * 105 * Note: this is not suitable for applications that want to use multiple VkDevice objects concurrently. 106 */ 107 void volkLoadDevice(VkDevice device); 108 109 /** 110 * Return last VkInstance for which global function pointers have been loaded via volkLoadInstance(), 111 * or VK_NULL_HANDLE if volkLoadInstance() has not been called. 112 */ 113 VkInstance volkGetLoadedInstance(void); 114 115 /** 116 * Return last VkDevice for which global function pointers have been loaded via volkLoadDevice(), 117 * or VK_NULL_HANDLE if volkLoadDevice() has not been called. 118 */ 119 VkDevice volkGetLoadedDevice(void); 120 121 /** 122 * Load function pointers using application-created VkDevice into a table. 123 * Application should use function pointers from that table instead of using global function pointers. 124 */ 125 void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device); 126 127 /** 128 * Device-specific function pointer table 129 */ 130 struct VolkDeviceTable 131 { 132 /* VOLK_GENERATE_DEVICE_TABLE */ 133 #if defined(VK_VERSION_1_0) 134 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; 135 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; 136 PFN_vkAllocateMemory vkAllocateMemory; 137 PFN_vkBeginCommandBuffer vkBeginCommandBuffer; 138 PFN_vkBindBufferMemory vkBindBufferMemory; 139 PFN_vkBindImageMemory vkBindImageMemory; 140 PFN_vkCmdBeginQuery vkCmdBeginQuery; 141 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; 142 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; 143 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; 144 PFN_vkCmdBindPipeline vkCmdBindPipeline; 145 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; 146 PFN_vkCmdBlitImage vkCmdBlitImage; 147 PFN_vkCmdClearAttachments vkCmdClearAttachments; 148 PFN_vkCmdClearColorImage vkCmdClearColorImage; 149 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; 150 PFN_vkCmdCopyBuffer vkCmdCopyBuffer; 151 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; 152 PFN_vkCmdCopyImage vkCmdCopyImage; 153 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; 154 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; 155 PFN_vkCmdDispatch vkCmdDispatch; 156 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; 157 PFN_vkCmdDraw vkCmdDraw; 158 PFN_vkCmdDrawIndexed vkCmdDrawIndexed; 159 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; 160 PFN_vkCmdDrawIndirect vkCmdDrawIndirect; 161 PFN_vkCmdEndQuery vkCmdEndQuery; 162 PFN_vkCmdEndRenderPass vkCmdEndRenderPass; 163 PFN_vkCmdExecuteCommands vkCmdExecuteCommands; 164 PFN_vkCmdFillBuffer vkCmdFillBuffer; 165 PFN_vkCmdNextSubpass vkCmdNextSubpass; 166 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; 167 PFN_vkCmdPushConstants vkCmdPushConstants; 168 PFN_vkCmdResetEvent vkCmdResetEvent; 169 PFN_vkCmdResetQueryPool vkCmdResetQueryPool; 170 PFN_vkCmdResolveImage vkCmdResolveImage; 171 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; 172 PFN_vkCmdSetDepthBias vkCmdSetDepthBias; 173 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; 174 PFN_vkCmdSetEvent vkCmdSetEvent; 175 PFN_vkCmdSetLineWidth vkCmdSetLineWidth; 176 PFN_vkCmdSetScissor vkCmdSetScissor; 177 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; 178 PFN_vkCmdSetStencilReference vkCmdSetStencilReference; 179 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; 180 PFN_vkCmdSetViewport vkCmdSetViewport; 181 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; 182 PFN_vkCmdWaitEvents vkCmdWaitEvents; 183 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; 184 PFN_vkCreateBuffer vkCreateBuffer; 185 PFN_vkCreateBufferView vkCreateBufferView; 186 PFN_vkCreateCommandPool vkCreateCommandPool; 187 PFN_vkCreateComputePipelines vkCreateComputePipelines; 188 PFN_vkCreateDescriptorPool vkCreateDescriptorPool; 189 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; 190 PFN_vkCreateEvent vkCreateEvent; 191 PFN_vkCreateFence vkCreateFence; 192 PFN_vkCreateFramebuffer vkCreateFramebuffer; 193 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; 194 PFN_vkCreateImage vkCreateImage; 195 PFN_vkCreateImageView vkCreateImageView; 196 PFN_vkCreatePipelineCache vkCreatePipelineCache; 197 PFN_vkCreatePipelineLayout vkCreatePipelineLayout; 198 PFN_vkCreateQueryPool vkCreateQueryPool; 199 PFN_vkCreateRenderPass vkCreateRenderPass; 200 PFN_vkCreateSampler vkCreateSampler; 201 PFN_vkCreateSemaphore vkCreateSemaphore; 202 PFN_vkCreateShaderModule vkCreateShaderModule; 203 PFN_vkDestroyBuffer vkDestroyBuffer; 204 PFN_vkDestroyBufferView vkDestroyBufferView; 205 PFN_vkDestroyCommandPool vkDestroyCommandPool; 206 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; 207 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; 208 PFN_vkDestroyDevice vkDestroyDevice; 209 PFN_vkDestroyEvent vkDestroyEvent; 210 PFN_vkDestroyFence vkDestroyFence; 211 PFN_vkDestroyFramebuffer vkDestroyFramebuffer; 212 PFN_vkDestroyImage vkDestroyImage; 213 PFN_vkDestroyImageView vkDestroyImageView; 214 PFN_vkDestroyPipeline vkDestroyPipeline; 215 PFN_vkDestroyPipelineCache vkDestroyPipelineCache; 216 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; 217 PFN_vkDestroyQueryPool vkDestroyQueryPool; 218 PFN_vkDestroyRenderPass vkDestroyRenderPass; 219 PFN_vkDestroySampler vkDestroySampler; 220 PFN_vkDestroySemaphore vkDestroySemaphore; 221 PFN_vkDestroyShaderModule vkDestroyShaderModule; 222 PFN_vkDeviceWaitIdle vkDeviceWaitIdle; 223 PFN_vkEndCommandBuffer vkEndCommandBuffer; 224 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; 225 PFN_vkFreeCommandBuffers vkFreeCommandBuffers; 226 PFN_vkFreeDescriptorSets vkFreeDescriptorSets; 227 PFN_vkFreeMemory vkFreeMemory; 228 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; 229 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; 230 PFN_vkGetDeviceQueue vkGetDeviceQueue; 231 PFN_vkGetEventStatus vkGetEventStatus; 232 PFN_vkGetFenceStatus vkGetFenceStatus; 233 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; 234 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; 235 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; 236 PFN_vkGetPipelineCacheData vkGetPipelineCacheData; 237 PFN_vkGetQueryPoolResults vkGetQueryPoolResults; 238 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; 239 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; 240 PFN_vkMapMemory vkMapMemory; 241 PFN_vkMergePipelineCaches vkMergePipelineCaches; 242 PFN_vkQueueBindSparse vkQueueBindSparse; 243 PFN_vkQueueSubmit vkQueueSubmit; 244 PFN_vkQueueWaitIdle vkQueueWaitIdle; 245 PFN_vkResetCommandBuffer vkResetCommandBuffer; 246 PFN_vkResetCommandPool vkResetCommandPool; 247 PFN_vkResetDescriptorPool vkResetDescriptorPool; 248 PFN_vkResetEvent vkResetEvent; 249 PFN_vkResetFences vkResetFences; 250 PFN_vkSetEvent vkSetEvent; 251 PFN_vkUnmapMemory vkUnmapMemory; 252 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; 253 PFN_vkWaitForFences vkWaitForFences; 254 #endif /* defined(VK_VERSION_1_0) */ 255 #if defined(VK_VERSION_1_1) 256 PFN_vkBindBufferMemory2 vkBindBufferMemory2; 257 PFN_vkBindImageMemory2 vkBindImageMemory2; 258 PFN_vkCmdDispatchBase vkCmdDispatchBase; 259 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask; 260 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate; 261 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion; 262 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate; 263 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion; 264 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2; 265 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport; 266 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures; 267 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2; 268 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2; 269 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2; 270 PFN_vkTrimCommandPool vkTrimCommandPool; 271 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate; 272 #endif /* defined(VK_VERSION_1_1) */ 273 #if defined(VK_VERSION_1_2) 274 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2; 275 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount; 276 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount; 277 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2; 278 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2; 279 PFN_vkCreateRenderPass2 vkCreateRenderPass2; 280 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress; 281 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress; 282 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress; 283 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue; 284 PFN_vkResetQueryPool vkResetQueryPool; 285 PFN_vkSignalSemaphore vkSignalSemaphore; 286 PFN_vkWaitSemaphores vkWaitSemaphores; 287 #endif /* defined(VK_VERSION_1_2) */ 288 #if defined(VK_VERSION_1_3) 289 PFN_vkCmdBeginRendering vkCmdBeginRendering; 290 PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2; 291 PFN_vkCmdBlitImage2 vkCmdBlitImage2; 292 PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2; 293 PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2; 294 PFN_vkCmdCopyImage2 vkCmdCopyImage2; 295 PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2; 296 PFN_vkCmdEndRendering vkCmdEndRendering; 297 PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2; 298 PFN_vkCmdResetEvent2 vkCmdResetEvent2; 299 PFN_vkCmdResolveImage2 vkCmdResolveImage2; 300 PFN_vkCmdSetCullMode vkCmdSetCullMode; 301 PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable; 302 PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable; 303 PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp; 304 PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable; 305 PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable; 306 PFN_vkCmdSetEvent2 vkCmdSetEvent2; 307 PFN_vkCmdSetFrontFace vkCmdSetFrontFace; 308 PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable; 309 PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology; 310 PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable; 311 PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount; 312 PFN_vkCmdSetStencilOp vkCmdSetStencilOp; 313 PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable; 314 PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount; 315 PFN_vkCmdWaitEvents2 vkCmdWaitEvents2; 316 PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2; 317 PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot; 318 PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot; 319 PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements; 320 PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements; 321 PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements; 322 PFN_vkGetPrivateData vkGetPrivateData; 323 PFN_vkQueueSubmit2 vkQueueSubmit2; 324 PFN_vkSetPrivateData vkSetPrivateData; 325 #endif /* defined(VK_VERSION_1_3) */ 326 #if defined(VK_AMDX_shader_enqueue) 327 PFN_vkCmdDispatchGraphAMDX vkCmdDispatchGraphAMDX; 328 PFN_vkCmdDispatchGraphIndirectAMDX vkCmdDispatchGraphIndirectAMDX; 329 PFN_vkCmdDispatchGraphIndirectCountAMDX vkCmdDispatchGraphIndirectCountAMDX; 330 PFN_vkCmdInitializeGraphScratchMemoryAMDX vkCmdInitializeGraphScratchMemoryAMDX; 331 PFN_vkCreateExecutionGraphPipelinesAMDX vkCreateExecutionGraphPipelinesAMDX; 332 PFN_vkGetExecutionGraphPipelineNodeIndexAMDX vkGetExecutionGraphPipelineNodeIndexAMDX; 333 PFN_vkGetExecutionGraphPipelineScratchSizeAMDX vkGetExecutionGraphPipelineScratchSizeAMDX; 334 #endif /* defined(VK_AMDX_shader_enqueue) */ 335 #if defined(VK_AMD_buffer_marker) 336 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD; 337 #endif /* defined(VK_AMD_buffer_marker) */ 338 #if defined(VK_AMD_display_native_hdr) 339 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD; 340 #endif /* defined(VK_AMD_display_native_hdr) */ 341 #if defined(VK_AMD_draw_indirect_count) 342 PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD; 343 PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD; 344 #endif /* defined(VK_AMD_draw_indirect_count) */ 345 #if defined(VK_AMD_shader_info) 346 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD; 347 #endif /* defined(VK_AMD_shader_info) */ 348 #if defined(VK_ANDROID_external_memory_android_hardware_buffer) 349 PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID; 350 PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID; 351 #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */ 352 #if defined(VK_EXT_attachment_feedback_loop_dynamic_state) 353 PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT vkCmdSetAttachmentFeedbackLoopEnableEXT; 354 #endif /* defined(VK_EXT_attachment_feedback_loop_dynamic_state) */ 355 #if defined(VK_EXT_buffer_device_address) 356 PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT; 357 #endif /* defined(VK_EXT_buffer_device_address) */ 358 #if defined(VK_EXT_calibrated_timestamps) 359 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT; 360 #endif /* defined(VK_EXT_calibrated_timestamps) */ 361 #if defined(VK_EXT_color_write_enable) 362 PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT; 363 #endif /* defined(VK_EXT_color_write_enable) */ 364 #if defined(VK_EXT_conditional_rendering) 365 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT; 366 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT; 367 #endif /* defined(VK_EXT_conditional_rendering) */ 368 #if defined(VK_EXT_debug_marker) 369 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT; 370 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT; 371 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT; 372 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT; 373 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT; 374 #endif /* defined(VK_EXT_debug_marker) */ 375 #if defined(VK_EXT_depth_bias_control) 376 PFN_vkCmdSetDepthBias2EXT vkCmdSetDepthBias2EXT; 377 #endif /* defined(VK_EXT_depth_bias_control) */ 378 #if defined(VK_EXT_descriptor_buffer) 379 PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT vkCmdBindDescriptorBufferEmbeddedSamplersEXT; 380 PFN_vkCmdBindDescriptorBuffersEXT vkCmdBindDescriptorBuffersEXT; 381 PFN_vkCmdSetDescriptorBufferOffsetsEXT vkCmdSetDescriptorBufferOffsetsEXT; 382 PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT vkGetBufferOpaqueCaptureDescriptorDataEXT; 383 PFN_vkGetDescriptorEXT vkGetDescriptorEXT; 384 PFN_vkGetDescriptorSetLayoutBindingOffsetEXT vkGetDescriptorSetLayoutBindingOffsetEXT; 385 PFN_vkGetDescriptorSetLayoutSizeEXT vkGetDescriptorSetLayoutSizeEXT; 386 PFN_vkGetImageOpaqueCaptureDescriptorDataEXT vkGetImageOpaqueCaptureDescriptorDataEXT; 387 PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT vkGetImageViewOpaqueCaptureDescriptorDataEXT; 388 PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT vkGetSamplerOpaqueCaptureDescriptorDataEXT; 389 #endif /* defined(VK_EXT_descriptor_buffer) */ 390 #if defined(VK_EXT_descriptor_buffer) && (defined(VK_KHR_acceleration_structure) || defined(VK_NV_ray_tracing)) 391 PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT; 392 #endif /* defined(VK_EXT_descriptor_buffer) && (defined(VK_KHR_acceleration_structure) || defined(VK_NV_ray_tracing)) */ 393 #if defined(VK_EXT_device_fault) 394 PFN_vkGetDeviceFaultInfoEXT vkGetDeviceFaultInfoEXT; 395 #endif /* defined(VK_EXT_device_fault) */ 396 #if defined(VK_EXT_discard_rectangles) 397 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT; 398 #endif /* defined(VK_EXT_discard_rectangles) */ 399 #if defined(VK_EXT_discard_rectangles) && VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION >= 2 400 PFN_vkCmdSetDiscardRectangleEnableEXT vkCmdSetDiscardRectangleEnableEXT; 401 PFN_vkCmdSetDiscardRectangleModeEXT vkCmdSetDiscardRectangleModeEXT; 402 #endif /* defined(VK_EXT_discard_rectangles) && VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION >= 2 */ 403 #if defined(VK_EXT_display_control) 404 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT; 405 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT; 406 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT; 407 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT; 408 #endif /* defined(VK_EXT_display_control) */ 409 #if defined(VK_EXT_external_memory_host) 410 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; 411 #endif /* defined(VK_EXT_external_memory_host) */ 412 #if defined(VK_EXT_full_screen_exclusive) 413 PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT; 414 PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT; 415 #endif /* defined(VK_EXT_full_screen_exclusive) */ 416 #if defined(VK_EXT_hdr_metadata) 417 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT; 418 #endif /* defined(VK_EXT_hdr_metadata) */ 419 #if defined(VK_EXT_host_image_copy) 420 PFN_vkCopyImageToImageEXT vkCopyImageToImageEXT; 421 PFN_vkCopyImageToMemoryEXT vkCopyImageToMemoryEXT; 422 PFN_vkCopyMemoryToImageEXT vkCopyMemoryToImageEXT; 423 PFN_vkTransitionImageLayoutEXT vkTransitionImageLayoutEXT; 424 #endif /* defined(VK_EXT_host_image_copy) */ 425 #if defined(VK_EXT_host_query_reset) 426 PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT; 427 #endif /* defined(VK_EXT_host_query_reset) */ 428 #if defined(VK_EXT_image_drm_format_modifier) 429 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT; 430 #endif /* defined(VK_EXT_image_drm_format_modifier) */ 431 #if defined(VK_EXT_line_rasterization) 432 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT; 433 #endif /* defined(VK_EXT_line_rasterization) */ 434 #if defined(VK_EXT_mesh_shader) 435 PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT; 436 PFN_vkCmdDrawMeshTasksIndirectCountEXT vkCmdDrawMeshTasksIndirectCountEXT; 437 PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT; 438 #endif /* defined(VK_EXT_mesh_shader) */ 439 #if defined(VK_EXT_metal_objects) 440 PFN_vkExportMetalObjectsEXT vkExportMetalObjectsEXT; 441 #endif /* defined(VK_EXT_metal_objects) */ 442 #if defined(VK_EXT_multi_draw) 443 PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT; 444 PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT; 445 #endif /* defined(VK_EXT_multi_draw) */ 446 #if defined(VK_EXT_opacity_micromap) 447 PFN_vkBuildMicromapsEXT vkBuildMicromapsEXT; 448 PFN_vkCmdBuildMicromapsEXT vkCmdBuildMicromapsEXT; 449 PFN_vkCmdCopyMemoryToMicromapEXT vkCmdCopyMemoryToMicromapEXT; 450 PFN_vkCmdCopyMicromapEXT vkCmdCopyMicromapEXT; 451 PFN_vkCmdCopyMicromapToMemoryEXT vkCmdCopyMicromapToMemoryEXT; 452 PFN_vkCmdWriteMicromapsPropertiesEXT vkCmdWriteMicromapsPropertiesEXT; 453 PFN_vkCopyMemoryToMicromapEXT vkCopyMemoryToMicromapEXT; 454 PFN_vkCopyMicromapEXT vkCopyMicromapEXT; 455 PFN_vkCopyMicromapToMemoryEXT vkCopyMicromapToMemoryEXT; 456 PFN_vkCreateMicromapEXT vkCreateMicromapEXT; 457 PFN_vkDestroyMicromapEXT vkDestroyMicromapEXT; 458 PFN_vkGetDeviceMicromapCompatibilityEXT vkGetDeviceMicromapCompatibilityEXT; 459 PFN_vkGetMicromapBuildSizesEXT vkGetMicromapBuildSizesEXT; 460 PFN_vkWriteMicromapsPropertiesEXT vkWriteMicromapsPropertiesEXT; 461 #endif /* defined(VK_EXT_opacity_micromap) */ 462 #if defined(VK_EXT_pageable_device_local_memory) 463 PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT; 464 #endif /* defined(VK_EXT_pageable_device_local_memory) */ 465 #if defined(VK_EXT_pipeline_properties) 466 PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT; 467 #endif /* defined(VK_EXT_pipeline_properties) */ 468 #if defined(VK_EXT_private_data) 469 PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT; 470 PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT; 471 PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT; 472 PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT; 473 #endif /* defined(VK_EXT_private_data) */ 474 #if defined(VK_EXT_sample_locations) 475 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT; 476 #endif /* defined(VK_EXT_sample_locations) */ 477 #if defined(VK_EXT_shader_module_identifier) 478 PFN_vkGetShaderModuleCreateInfoIdentifierEXT vkGetShaderModuleCreateInfoIdentifierEXT; 479 PFN_vkGetShaderModuleIdentifierEXT vkGetShaderModuleIdentifierEXT; 480 #endif /* defined(VK_EXT_shader_module_identifier) */ 481 #if defined(VK_EXT_shader_object) 482 PFN_vkCmdBindShadersEXT vkCmdBindShadersEXT; 483 PFN_vkCreateShadersEXT vkCreateShadersEXT; 484 PFN_vkDestroyShaderEXT vkDestroyShaderEXT; 485 PFN_vkGetShaderBinaryDataEXT vkGetShaderBinaryDataEXT; 486 #endif /* defined(VK_EXT_shader_object) */ 487 #if defined(VK_EXT_swapchain_maintenance1) 488 PFN_vkReleaseSwapchainImagesEXT vkReleaseSwapchainImagesEXT; 489 #endif /* defined(VK_EXT_swapchain_maintenance1) */ 490 #if defined(VK_EXT_transform_feedback) 491 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; 492 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; 493 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; 494 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; 495 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; 496 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; 497 #endif /* defined(VK_EXT_transform_feedback) */ 498 #if defined(VK_EXT_validation_cache) 499 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT; 500 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT; 501 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT; 502 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT; 503 #endif /* defined(VK_EXT_validation_cache) */ 504 #if defined(VK_FUCHSIA_buffer_collection) 505 PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA; 506 PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA; 507 PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA; 508 PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA; 509 PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA; 510 #endif /* defined(VK_FUCHSIA_buffer_collection) */ 511 #if defined(VK_FUCHSIA_external_memory) 512 PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA; 513 PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA; 514 #endif /* defined(VK_FUCHSIA_external_memory) */ 515 #if defined(VK_FUCHSIA_external_semaphore) 516 PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA; 517 PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA; 518 #endif /* defined(VK_FUCHSIA_external_semaphore) */ 519 #if defined(VK_GOOGLE_display_timing) 520 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; 521 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE; 522 #endif /* defined(VK_GOOGLE_display_timing) */ 523 #if defined(VK_HUAWEI_cluster_culling_shader) 524 PFN_vkCmdDrawClusterHUAWEI vkCmdDrawClusterHUAWEI; 525 PFN_vkCmdDrawClusterIndirectHUAWEI vkCmdDrawClusterIndirectHUAWEI; 526 #endif /* defined(VK_HUAWEI_cluster_culling_shader) */ 527 #if defined(VK_HUAWEI_invocation_mask) 528 PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI; 529 #endif /* defined(VK_HUAWEI_invocation_mask) */ 530 #if defined(VK_HUAWEI_subpass_shading) 531 PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI; 532 PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI; 533 #endif /* defined(VK_HUAWEI_subpass_shading) */ 534 #if defined(VK_INTEL_performance_query) 535 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL; 536 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL; 537 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL; 538 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL; 539 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL; 540 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL; 541 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL; 542 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL; 543 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL; 544 #endif /* defined(VK_INTEL_performance_query) */ 545 #if defined(VK_KHR_acceleration_structure) 546 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR; 547 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR; 548 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR; 549 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR; 550 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR; 551 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR; 552 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR; 553 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR; 554 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR; 555 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR; 556 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR; 557 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR; 558 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR; 559 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR; 560 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR; 561 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR; 562 #endif /* defined(VK_KHR_acceleration_structure) */ 563 #if defined(VK_KHR_bind_memory2) 564 PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR; 565 PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR; 566 #endif /* defined(VK_KHR_bind_memory2) */ 567 #if defined(VK_KHR_buffer_device_address) 568 PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR; 569 PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR; 570 PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR; 571 #endif /* defined(VK_KHR_buffer_device_address) */ 572 #if defined(VK_KHR_copy_commands2) 573 PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; 574 PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR; 575 PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR; 576 PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR; 577 PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; 578 PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; 579 #endif /* defined(VK_KHR_copy_commands2) */ 580 #if defined(VK_KHR_create_renderpass2) 581 PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR; 582 PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR; 583 PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR; 584 PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR; 585 #endif /* defined(VK_KHR_create_renderpass2) */ 586 #if defined(VK_KHR_deferred_host_operations) 587 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR; 588 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR; 589 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR; 590 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR; 591 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR; 592 #endif /* defined(VK_KHR_deferred_host_operations) */ 593 #if defined(VK_KHR_descriptor_update_template) 594 PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR; 595 PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR; 596 PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR; 597 #endif /* defined(VK_KHR_descriptor_update_template) */ 598 #if defined(VK_KHR_device_group) 599 PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR; 600 PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR; 601 PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR; 602 #endif /* defined(VK_KHR_device_group) */ 603 #if defined(VK_KHR_display_swapchain) 604 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; 605 #endif /* defined(VK_KHR_display_swapchain) */ 606 #if defined(VK_KHR_draw_indirect_count) 607 PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR; 608 PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR; 609 #endif /* defined(VK_KHR_draw_indirect_count) */ 610 #if defined(VK_KHR_dynamic_rendering) 611 PFN_vkCmdBeginRenderingKHR vkCmdBeginRenderingKHR; 612 PFN_vkCmdEndRenderingKHR vkCmdEndRenderingKHR; 613 #endif /* defined(VK_KHR_dynamic_rendering) */ 614 #if defined(VK_KHR_external_fence_fd) 615 PFN_vkGetFenceFdKHR vkGetFenceFdKHR; 616 PFN_vkImportFenceFdKHR vkImportFenceFdKHR; 617 #endif /* defined(VK_KHR_external_fence_fd) */ 618 #if defined(VK_KHR_external_fence_win32) 619 PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR; 620 PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR; 621 #endif /* defined(VK_KHR_external_fence_win32) */ 622 #if defined(VK_KHR_external_memory_fd) 623 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR; 624 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR; 625 #endif /* defined(VK_KHR_external_memory_fd) */ 626 #if defined(VK_KHR_external_memory_win32) 627 PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR; 628 PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR; 629 #endif /* defined(VK_KHR_external_memory_win32) */ 630 #if defined(VK_KHR_external_semaphore_fd) 631 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR; 632 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; 633 #endif /* defined(VK_KHR_external_semaphore_fd) */ 634 #if defined(VK_KHR_external_semaphore_win32) 635 PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR; 636 PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR; 637 #endif /* defined(VK_KHR_external_semaphore_win32) */ 638 #if defined(VK_KHR_fragment_shading_rate) 639 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; 640 #endif /* defined(VK_KHR_fragment_shading_rate) */ 641 #if defined(VK_KHR_get_memory_requirements2) 642 PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR; 643 PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR; 644 PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR; 645 #endif /* defined(VK_KHR_get_memory_requirements2) */ 646 #if defined(VK_KHR_maintenance1) 647 PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR; 648 #endif /* defined(VK_KHR_maintenance1) */ 649 #if defined(VK_KHR_maintenance3) 650 PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR; 651 #endif /* defined(VK_KHR_maintenance3) */ 652 #if defined(VK_KHR_maintenance4) 653 PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR; 654 PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR; 655 PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR; 656 #endif /* defined(VK_KHR_maintenance4) */ 657 #if defined(VK_KHR_maintenance5) 658 PFN_vkCmdBindIndexBuffer2KHR vkCmdBindIndexBuffer2KHR; 659 PFN_vkGetDeviceImageSubresourceLayoutKHR vkGetDeviceImageSubresourceLayoutKHR; 660 PFN_vkGetImageSubresourceLayout2KHR vkGetImageSubresourceLayout2KHR; 661 PFN_vkGetRenderingAreaGranularityKHR vkGetRenderingAreaGranularityKHR; 662 #endif /* defined(VK_KHR_maintenance5) */ 663 #if defined(VK_KHR_map_memory2) 664 PFN_vkMapMemory2KHR vkMapMemory2KHR; 665 PFN_vkUnmapMemory2KHR vkUnmapMemory2KHR; 666 #endif /* defined(VK_KHR_map_memory2) */ 667 #if defined(VK_KHR_performance_query) 668 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR; 669 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR; 670 #endif /* defined(VK_KHR_performance_query) */ 671 #if defined(VK_KHR_pipeline_executable_properties) 672 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR; 673 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR; 674 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR; 675 #endif /* defined(VK_KHR_pipeline_executable_properties) */ 676 #if defined(VK_KHR_present_wait) 677 PFN_vkWaitForPresentKHR vkWaitForPresentKHR; 678 #endif /* defined(VK_KHR_present_wait) */ 679 #if defined(VK_KHR_push_descriptor) 680 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR; 681 #endif /* defined(VK_KHR_push_descriptor) */ 682 #if defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) 683 PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR; 684 #endif /* defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) */ 685 #if defined(VK_KHR_ray_tracing_pipeline) 686 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR; 687 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR; 688 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR; 689 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR; 690 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR; 691 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR; 692 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR; 693 #endif /* defined(VK_KHR_ray_tracing_pipeline) */ 694 #if defined(VK_KHR_sampler_ycbcr_conversion) 695 PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR; 696 PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR; 697 #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */ 698 #if defined(VK_KHR_shared_presentable_image) 699 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; 700 #endif /* defined(VK_KHR_shared_presentable_image) */ 701 #if defined(VK_KHR_swapchain) 702 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; 703 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; 704 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; 705 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; 706 PFN_vkQueuePresentKHR vkQueuePresentKHR; 707 #endif /* defined(VK_KHR_swapchain) */ 708 #if defined(VK_KHR_synchronization2) 709 PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR; 710 PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR; 711 PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR; 712 PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR; 713 PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR; 714 PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR; 715 #endif /* defined(VK_KHR_synchronization2) */ 716 #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) 717 PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD; 718 #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */ 719 #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) 720 PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV; 721 #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */ 722 #if defined(VK_KHR_timeline_semaphore) 723 PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR; 724 PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR; 725 PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR; 726 #endif /* defined(VK_KHR_timeline_semaphore) */ 727 #if defined(VK_KHR_video_decode_queue) 728 PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR; 729 #endif /* defined(VK_KHR_video_decode_queue) */ 730 #if defined(VK_KHR_video_encode_queue) 731 PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR; 732 PFN_vkGetEncodedVideoSessionParametersKHR vkGetEncodedVideoSessionParametersKHR; 733 #endif /* defined(VK_KHR_video_encode_queue) */ 734 #if defined(VK_KHR_video_queue) 735 PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR; 736 PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR; 737 PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR; 738 PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR; 739 PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR; 740 PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR; 741 PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR; 742 PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR; 743 PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR; 744 PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR; 745 #endif /* defined(VK_KHR_video_queue) */ 746 #if defined(VK_NVX_binary_import) 747 PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX; 748 PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX; 749 PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX; 750 PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX; 751 PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX; 752 #endif /* defined(VK_NVX_binary_import) */ 753 #if defined(VK_NVX_image_view_handle) 754 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX; 755 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX; 756 #endif /* defined(VK_NVX_image_view_handle) */ 757 #if defined(VK_NV_clip_space_w_scaling) 758 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV; 759 #endif /* defined(VK_NV_clip_space_w_scaling) */ 760 #if defined(VK_NV_copy_memory_indirect) 761 PFN_vkCmdCopyMemoryIndirectNV vkCmdCopyMemoryIndirectNV; 762 PFN_vkCmdCopyMemoryToImageIndirectNV vkCmdCopyMemoryToImageIndirectNV; 763 #endif /* defined(VK_NV_copy_memory_indirect) */ 764 #if defined(VK_NV_device_diagnostic_checkpoints) 765 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV; 766 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV; 767 #endif /* defined(VK_NV_device_diagnostic_checkpoints) */ 768 #if defined(VK_NV_device_generated_commands) 769 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV; 770 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV; 771 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV; 772 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV; 773 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV; 774 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV; 775 #endif /* defined(VK_NV_device_generated_commands) */ 776 #if defined(VK_NV_device_generated_commands_compute) 777 PFN_vkCmdUpdatePipelineIndirectBufferNV vkCmdUpdatePipelineIndirectBufferNV; 778 PFN_vkGetPipelineIndirectDeviceAddressNV vkGetPipelineIndirectDeviceAddressNV; 779 PFN_vkGetPipelineIndirectMemoryRequirementsNV vkGetPipelineIndirectMemoryRequirementsNV; 780 #endif /* defined(VK_NV_device_generated_commands_compute) */ 781 #if defined(VK_NV_external_memory_rdma) 782 PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV; 783 #endif /* defined(VK_NV_external_memory_rdma) */ 784 #if defined(VK_NV_external_memory_win32) 785 PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV; 786 #endif /* defined(VK_NV_external_memory_win32) */ 787 #if defined(VK_NV_fragment_shading_rate_enums) 788 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; 789 #endif /* defined(VK_NV_fragment_shading_rate_enums) */ 790 #if defined(VK_NV_memory_decompression) 791 PFN_vkCmdDecompressMemoryIndirectCountNV vkCmdDecompressMemoryIndirectCountNV; 792 PFN_vkCmdDecompressMemoryNV vkCmdDecompressMemoryNV; 793 #endif /* defined(VK_NV_memory_decompression) */ 794 #if defined(VK_NV_mesh_shader) 795 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV; 796 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV; 797 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV; 798 #endif /* defined(VK_NV_mesh_shader) */ 799 #if defined(VK_NV_optical_flow) 800 PFN_vkBindOpticalFlowSessionImageNV vkBindOpticalFlowSessionImageNV; 801 PFN_vkCmdOpticalFlowExecuteNV vkCmdOpticalFlowExecuteNV; 802 PFN_vkCreateOpticalFlowSessionNV vkCreateOpticalFlowSessionNV; 803 PFN_vkDestroyOpticalFlowSessionNV vkDestroyOpticalFlowSessionNV; 804 #endif /* defined(VK_NV_optical_flow) */ 805 #if defined(VK_NV_ray_tracing) 806 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV; 807 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV; 808 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV; 809 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV; 810 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV; 811 PFN_vkCompileDeferredNV vkCompileDeferredNV; 812 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV; 813 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV; 814 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV; 815 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV; 816 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV; 817 PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV; 818 #endif /* defined(VK_NV_ray_tracing) */ 819 #if defined(VK_NV_scissor_exclusive) && VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION >= 2 820 PFN_vkCmdSetExclusiveScissorEnableNV vkCmdSetExclusiveScissorEnableNV; 821 #endif /* defined(VK_NV_scissor_exclusive) && VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION >= 2 */ 822 #if defined(VK_NV_scissor_exclusive) 823 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV; 824 #endif /* defined(VK_NV_scissor_exclusive) */ 825 #if defined(VK_NV_shading_rate_image) 826 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV; 827 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV; 828 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV; 829 #endif /* defined(VK_NV_shading_rate_image) */ 830 #if defined(VK_QCOM_tile_properties) 831 PFN_vkGetDynamicRenderingTilePropertiesQCOM vkGetDynamicRenderingTilePropertiesQCOM; 832 PFN_vkGetFramebufferTilePropertiesQCOM vkGetFramebufferTilePropertiesQCOM; 833 #endif /* defined(VK_QCOM_tile_properties) */ 834 #if defined(VK_QNX_external_memory_screen_buffer) 835 PFN_vkGetScreenBufferPropertiesQNX vkGetScreenBufferPropertiesQNX; 836 #endif /* defined(VK_QNX_external_memory_screen_buffer) */ 837 #if defined(VK_VALVE_descriptor_set_host_mapping) 838 PFN_vkGetDescriptorSetHostMappingVALVE vkGetDescriptorSetHostMappingVALVE; 839 PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE vkGetDescriptorSetLayoutHostMappingInfoVALVE; 840 #endif /* defined(VK_VALVE_descriptor_set_host_mapping) */ 841 #if (defined(VK_EXT_extended_dynamic_state)) || (defined(VK_EXT_shader_object)) 842 PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT; 843 PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT; 844 PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT; 845 PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT; 846 PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT; 847 PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT; 848 PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT; 849 PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT; 850 PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT; 851 PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT; 852 PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT; 853 PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT; 854 #endif /* (defined(VK_EXT_extended_dynamic_state)) || (defined(VK_EXT_shader_object)) */ 855 #if (defined(VK_EXT_extended_dynamic_state2)) || (defined(VK_EXT_shader_object)) 856 PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT; 857 PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT; 858 PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT; 859 PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT; 860 PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT; 861 #endif /* (defined(VK_EXT_extended_dynamic_state2)) || (defined(VK_EXT_shader_object)) */ 862 #if (defined(VK_EXT_extended_dynamic_state3)) || (defined(VK_EXT_shader_object)) 863 PFN_vkCmdSetAlphaToCoverageEnableEXT vkCmdSetAlphaToCoverageEnableEXT; 864 PFN_vkCmdSetAlphaToOneEnableEXT vkCmdSetAlphaToOneEnableEXT; 865 PFN_vkCmdSetColorBlendAdvancedEXT vkCmdSetColorBlendAdvancedEXT; 866 PFN_vkCmdSetColorBlendEnableEXT vkCmdSetColorBlendEnableEXT; 867 PFN_vkCmdSetColorBlendEquationEXT vkCmdSetColorBlendEquationEXT; 868 PFN_vkCmdSetColorWriteMaskEXT vkCmdSetColorWriteMaskEXT; 869 PFN_vkCmdSetConservativeRasterizationModeEXT vkCmdSetConservativeRasterizationModeEXT; 870 PFN_vkCmdSetDepthClampEnableEXT vkCmdSetDepthClampEnableEXT; 871 PFN_vkCmdSetDepthClipEnableEXT vkCmdSetDepthClipEnableEXT; 872 PFN_vkCmdSetDepthClipNegativeOneToOneEXT vkCmdSetDepthClipNegativeOneToOneEXT; 873 PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT vkCmdSetExtraPrimitiveOverestimationSizeEXT; 874 PFN_vkCmdSetLineRasterizationModeEXT vkCmdSetLineRasterizationModeEXT; 875 PFN_vkCmdSetLineStippleEnableEXT vkCmdSetLineStippleEnableEXT; 876 PFN_vkCmdSetLogicOpEnableEXT vkCmdSetLogicOpEnableEXT; 877 PFN_vkCmdSetPolygonModeEXT vkCmdSetPolygonModeEXT; 878 PFN_vkCmdSetProvokingVertexModeEXT vkCmdSetProvokingVertexModeEXT; 879 PFN_vkCmdSetRasterizationSamplesEXT vkCmdSetRasterizationSamplesEXT; 880 PFN_vkCmdSetRasterizationStreamEXT vkCmdSetRasterizationStreamEXT; 881 PFN_vkCmdSetSampleLocationsEnableEXT vkCmdSetSampleLocationsEnableEXT; 882 PFN_vkCmdSetSampleMaskEXT vkCmdSetSampleMaskEXT; 883 PFN_vkCmdSetTessellationDomainOriginEXT vkCmdSetTessellationDomainOriginEXT; 884 #endif /* (defined(VK_EXT_extended_dynamic_state3)) || (defined(VK_EXT_shader_object)) */ 885 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_clip_space_w_scaling)) || (defined(VK_EXT_shader_object) && defined(VK_NV_clip_space_w_scaling)) 886 PFN_vkCmdSetViewportWScalingEnableNV vkCmdSetViewportWScalingEnableNV; 887 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_clip_space_w_scaling)) || (defined(VK_EXT_shader_object) && defined(VK_NV_clip_space_w_scaling)) */ 888 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_viewport_swizzle)) || (defined(VK_EXT_shader_object) && defined(VK_NV_viewport_swizzle)) 889 PFN_vkCmdSetViewportSwizzleNV vkCmdSetViewportSwizzleNV; 890 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_viewport_swizzle)) || (defined(VK_EXT_shader_object) && defined(VK_NV_viewport_swizzle)) */ 891 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_fragment_coverage_to_color)) || (defined(VK_EXT_shader_object) && defined(VK_NV_fragment_coverage_to_color)) 892 PFN_vkCmdSetCoverageToColorEnableNV vkCmdSetCoverageToColorEnableNV; 893 PFN_vkCmdSetCoverageToColorLocationNV vkCmdSetCoverageToColorLocationNV; 894 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_fragment_coverage_to_color)) || (defined(VK_EXT_shader_object) && defined(VK_NV_fragment_coverage_to_color)) */ 895 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_framebuffer_mixed_samples)) || (defined(VK_EXT_shader_object) && defined(VK_NV_framebuffer_mixed_samples)) 896 PFN_vkCmdSetCoverageModulationModeNV vkCmdSetCoverageModulationModeNV; 897 PFN_vkCmdSetCoverageModulationTableEnableNV vkCmdSetCoverageModulationTableEnableNV; 898 PFN_vkCmdSetCoverageModulationTableNV vkCmdSetCoverageModulationTableNV; 899 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_framebuffer_mixed_samples)) || (defined(VK_EXT_shader_object) && defined(VK_NV_framebuffer_mixed_samples)) */ 900 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_shading_rate_image)) || (defined(VK_EXT_shader_object) && defined(VK_NV_shading_rate_image)) 901 PFN_vkCmdSetShadingRateImageEnableNV vkCmdSetShadingRateImageEnableNV; 902 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_shading_rate_image)) || (defined(VK_EXT_shader_object) && defined(VK_NV_shading_rate_image)) */ 903 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_representative_fragment_test)) || (defined(VK_EXT_shader_object) && defined(VK_NV_representative_fragment_test)) 904 PFN_vkCmdSetRepresentativeFragmentTestEnableNV vkCmdSetRepresentativeFragmentTestEnableNV; 905 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_representative_fragment_test)) || (defined(VK_EXT_shader_object) && defined(VK_NV_representative_fragment_test)) */ 906 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_coverage_reduction_mode)) || (defined(VK_EXT_shader_object) && defined(VK_NV_coverage_reduction_mode)) 907 PFN_vkCmdSetCoverageReductionModeNV vkCmdSetCoverageReductionModeNV; 908 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_coverage_reduction_mode)) || (defined(VK_EXT_shader_object) && defined(VK_NV_coverage_reduction_mode)) */ 909 #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) 910 PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT; 911 #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */ 912 #if (defined(VK_EXT_host_image_copy)) || (defined(VK_EXT_image_compression_control)) 913 PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT; 914 #endif /* (defined(VK_EXT_host_image_copy)) || (defined(VK_EXT_image_compression_control)) */ 915 #if (defined(VK_EXT_shader_object)) || (defined(VK_EXT_vertex_input_dynamic_state)) 916 PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT; 917 #endif /* (defined(VK_EXT_shader_object)) || (defined(VK_EXT_vertex_input_dynamic_state)) */ 918 #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) 919 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR; 920 #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */ 921 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) 922 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR; 923 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR; 924 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */ 925 #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) 926 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR; 927 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */ 928 /* VOLK_GENERATE_DEVICE_TABLE */ 929 }; 930 931 /* VOLK_GENERATE_PROTOTYPES_H */ 932 #if defined(VK_VERSION_1_0) 933 extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; 934 extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; 935 extern PFN_vkAllocateMemory vkAllocateMemory; 936 extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer; 937 extern PFN_vkBindBufferMemory vkBindBufferMemory; 938 extern PFN_vkBindImageMemory vkBindImageMemory; 939 extern PFN_vkCmdBeginQuery vkCmdBeginQuery; 940 extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; 941 extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; 942 extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; 943 extern PFN_vkCmdBindPipeline vkCmdBindPipeline; 944 extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; 945 extern PFN_vkCmdBlitImage vkCmdBlitImage; 946 extern PFN_vkCmdClearAttachments vkCmdClearAttachments; 947 extern PFN_vkCmdClearColorImage vkCmdClearColorImage; 948 extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; 949 extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer; 950 extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; 951 extern PFN_vkCmdCopyImage vkCmdCopyImage; 952 extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; 953 extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; 954 extern PFN_vkCmdDispatch vkCmdDispatch; 955 extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; 956 extern PFN_vkCmdDraw vkCmdDraw; 957 extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed; 958 extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; 959 extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect; 960 extern PFN_vkCmdEndQuery vkCmdEndQuery; 961 extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass; 962 extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands; 963 extern PFN_vkCmdFillBuffer vkCmdFillBuffer; 964 extern PFN_vkCmdNextSubpass vkCmdNextSubpass; 965 extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; 966 extern PFN_vkCmdPushConstants vkCmdPushConstants; 967 extern PFN_vkCmdResetEvent vkCmdResetEvent; 968 extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool; 969 extern PFN_vkCmdResolveImage vkCmdResolveImage; 970 extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; 971 extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias; 972 extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; 973 extern PFN_vkCmdSetEvent vkCmdSetEvent; 974 extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth; 975 extern PFN_vkCmdSetScissor vkCmdSetScissor; 976 extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; 977 extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference; 978 extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; 979 extern PFN_vkCmdSetViewport vkCmdSetViewport; 980 extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; 981 extern PFN_vkCmdWaitEvents vkCmdWaitEvents; 982 extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; 983 extern PFN_vkCreateBuffer vkCreateBuffer; 984 extern PFN_vkCreateBufferView vkCreateBufferView; 985 extern PFN_vkCreateCommandPool vkCreateCommandPool; 986 extern PFN_vkCreateComputePipelines vkCreateComputePipelines; 987 extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool; 988 extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; 989 extern PFN_vkCreateDevice vkCreateDevice; 990 extern PFN_vkCreateEvent vkCreateEvent; 991 extern PFN_vkCreateFence vkCreateFence; 992 extern PFN_vkCreateFramebuffer vkCreateFramebuffer; 993 extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; 994 extern PFN_vkCreateImage vkCreateImage; 995 extern PFN_vkCreateImageView vkCreateImageView; 996 extern PFN_vkCreateInstance vkCreateInstance; 997 extern PFN_vkCreatePipelineCache vkCreatePipelineCache; 998 extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout; 999 extern PFN_vkCreateQueryPool vkCreateQueryPool; 1000 extern PFN_vkCreateRenderPass vkCreateRenderPass; 1001 extern PFN_vkCreateSampler vkCreateSampler; 1002 extern PFN_vkCreateSemaphore vkCreateSemaphore; 1003 extern PFN_vkCreateShaderModule vkCreateShaderModule; 1004 extern PFN_vkDestroyBuffer vkDestroyBuffer; 1005 extern PFN_vkDestroyBufferView vkDestroyBufferView; 1006 extern PFN_vkDestroyCommandPool vkDestroyCommandPool; 1007 extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; 1008 extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; 1009 extern PFN_vkDestroyDevice vkDestroyDevice; 1010 extern PFN_vkDestroyEvent vkDestroyEvent; 1011 extern PFN_vkDestroyFence vkDestroyFence; 1012 extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer; 1013 extern PFN_vkDestroyImage vkDestroyImage; 1014 extern PFN_vkDestroyImageView vkDestroyImageView; 1015 extern PFN_vkDestroyInstance vkDestroyInstance; 1016 extern PFN_vkDestroyPipeline vkDestroyPipeline; 1017 extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache; 1018 extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; 1019 extern PFN_vkDestroyQueryPool vkDestroyQueryPool; 1020 extern PFN_vkDestroyRenderPass vkDestroyRenderPass; 1021 extern PFN_vkDestroySampler vkDestroySampler; 1022 extern PFN_vkDestroySemaphore vkDestroySemaphore; 1023 extern PFN_vkDestroyShaderModule vkDestroyShaderModule; 1024 extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle; 1025 extern PFN_vkEndCommandBuffer vkEndCommandBuffer; 1026 extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; 1027 extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; 1028 extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; 1029 extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; 1030 extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; 1031 extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; 1032 extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers; 1033 extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets; 1034 extern PFN_vkFreeMemory vkFreeMemory; 1035 extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; 1036 extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; 1037 extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; 1038 extern PFN_vkGetDeviceQueue vkGetDeviceQueue; 1039 extern PFN_vkGetEventStatus vkGetEventStatus; 1040 extern PFN_vkGetFenceStatus vkGetFenceStatus; 1041 extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; 1042 extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; 1043 extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; 1044 extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; 1045 extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; 1046 extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; 1047 extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; 1048 extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; 1049 extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; 1050 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; 1051 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; 1052 extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData; 1053 extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults; 1054 extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; 1055 extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; 1056 extern PFN_vkMapMemory vkMapMemory; 1057 extern PFN_vkMergePipelineCaches vkMergePipelineCaches; 1058 extern PFN_vkQueueBindSparse vkQueueBindSparse; 1059 extern PFN_vkQueueSubmit vkQueueSubmit; 1060 extern PFN_vkQueueWaitIdle vkQueueWaitIdle; 1061 extern PFN_vkResetCommandBuffer vkResetCommandBuffer; 1062 extern PFN_vkResetCommandPool vkResetCommandPool; 1063 extern PFN_vkResetDescriptorPool vkResetDescriptorPool; 1064 extern PFN_vkResetEvent vkResetEvent; 1065 extern PFN_vkResetFences vkResetFences; 1066 extern PFN_vkSetEvent vkSetEvent; 1067 extern PFN_vkUnmapMemory vkUnmapMemory; 1068 extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; 1069 extern PFN_vkWaitForFences vkWaitForFences; 1070 #endif /* defined(VK_VERSION_1_0) */ 1071 #if defined(VK_VERSION_1_1) 1072 extern PFN_vkBindBufferMemory2 vkBindBufferMemory2; 1073 extern PFN_vkBindImageMemory2 vkBindImageMemory2; 1074 extern PFN_vkCmdDispatchBase vkCmdDispatchBase; 1075 extern PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask; 1076 extern PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate; 1077 extern PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion; 1078 extern PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate; 1079 extern PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion; 1080 extern PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion; 1081 extern PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups; 1082 extern PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2; 1083 extern PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport; 1084 extern PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures; 1085 extern PFN_vkGetDeviceQueue2 vkGetDeviceQueue2; 1086 extern PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2; 1087 extern PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2; 1088 extern PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties; 1089 extern PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties; 1090 extern PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties; 1091 extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; 1092 extern PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2; 1093 extern PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2; 1094 extern PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2; 1095 extern PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2; 1096 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2; 1097 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2; 1098 extern PFN_vkTrimCommandPool vkTrimCommandPool; 1099 extern PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate; 1100 #endif /* defined(VK_VERSION_1_1) */ 1101 #if defined(VK_VERSION_1_2) 1102 extern PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2; 1103 extern PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount; 1104 extern PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount; 1105 extern PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2; 1106 extern PFN_vkCmdNextSubpass2 vkCmdNextSubpass2; 1107 extern PFN_vkCreateRenderPass2 vkCreateRenderPass2; 1108 extern PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress; 1109 extern PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress; 1110 extern PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress; 1111 extern PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue; 1112 extern PFN_vkResetQueryPool vkResetQueryPool; 1113 extern PFN_vkSignalSemaphore vkSignalSemaphore; 1114 extern PFN_vkWaitSemaphores vkWaitSemaphores; 1115 #endif /* defined(VK_VERSION_1_2) */ 1116 #if defined(VK_VERSION_1_3) 1117 extern PFN_vkCmdBeginRendering vkCmdBeginRendering; 1118 extern PFN_vkCmdBindVertexBuffers2 vkCmdBindVertexBuffers2; 1119 extern PFN_vkCmdBlitImage2 vkCmdBlitImage2; 1120 extern PFN_vkCmdCopyBuffer2 vkCmdCopyBuffer2; 1121 extern PFN_vkCmdCopyBufferToImage2 vkCmdCopyBufferToImage2; 1122 extern PFN_vkCmdCopyImage2 vkCmdCopyImage2; 1123 extern PFN_vkCmdCopyImageToBuffer2 vkCmdCopyImageToBuffer2; 1124 extern PFN_vkCmdEndRendering vkCmdEndRendering; 1125 extern PFN_vkCmdPipelineBarrier2 vkCmdPipelineBarrier2; 1126 extern PFN_vkCmdResetEvent2 vkCmdResetEvent2; 1127 extern PFN_vkCmdResolveImage2 vkCmdResolveImage2; 1128 extern PFN_vkCmdSetCullMode vkCmdSetCullMode; 1129 extern PFN_vkCmdSetDepthBiasEnable vkCmdSetDepthBiasEnable; 1130 extern PFN_vkCmdSetDepthBoundsTestEnable vkCmdSetDepthBoundsTestEnable; 1131 extern PFN_vkCmdSetDepthCompareOp vkCmdSetDepthCompareOp; 1132 extern PFN_vkCmdSetDepthTestEnable vkCmdSetDepthTestEnable; 1133 extern PFN_vkCmdSetDepthWriteEnable vkCmdSetDepthWriteEnable; 1134 extern PFN_vkCmdSetEvent2 vkCmdSetEvent2; 1135 extern PFN_vkCmdSetFrontFace vkCmdSetFrontFace; 1136 extern PFN_vkCmdSetPrimitiveRestartEnable vkCmdSetPrimitiveRestartEnable; 1137 extern PFN_vkCmdSetPrimitiveTopology vkCmdSetPrimitiveTopology; 1138 extern PFN_vkCmdSetRasterizerDiscardEnable vkCmdSetRasterizerDiscardEnable; 1139 extern PFN_vkCmdSetScissorWithCount vkCmdSetScissorWithCount; 1140 extern PFN_vkCmdSetStencilOp vkCmdSetStencilOp; 1141 extern PFN_vkCmdSetStencilTestEnable vkCmdSetStencilTestEnable; 1142 extern PFN_vkCmdSetViewportWithCount vkCmdSetViewportWithCount; 1143 extern PFN_vkCmdWaitEvents2 vkCmdWaitEvents2; 1144 extern PFN_vkCmdWriteTimestamp2 vkCmdWriteTimestamp2; 1145 extern PFN_vkCreatePrivateDataSlot vkCreatePrivateDataSlot; 1146 extern PFN_vkDestroyPrivateDataSlot vkDestroyPrivateDataSlot; 1147 extern PFN_vkGetDeviceBufferMemoryRequirements vkGetDeviceBufferMemoryRequirements; 1148 extern PFN_vkGetDeviceImageMemoryRequirements vkGetDeviceImageMemoryRequirements; 1149 extern PFN_vkGetDeviceImageSparseMemoryRequirements vkGetDeviceImageSparseMemoryRequirements; 1150 extern PFN_vkGetPhysicalDeviceToolProperties vkGetPhysicalDeviceToolProperties; 1151 extern PFN_vkGetPrivateData vkGetPrivateData; 1152 extern PFN_vkQueueSubmit2 vkQueueSubmit2; 1153 extern PFN_vkSetPrivateData vkSetPrivateData; 1154 #endif /* defined(VK_VERSION_1_3) */ 1155 #if defined(VK_AMDX_shader_enqueue) 1156 extern PFN_vkCmdDispatchGraphAMDX vkCmdDispatchGraphAMDX; 1157 extern PFN_vkCmdDispatchGraphIndirectAMDX vkCmdDispatchGraphIndirectAMDX; 1158 extern PFN_vkCmdDispatchGraphIndirectCountAMDX vkCmdDispatchGraphIndirectCountAMDX; 1159 extern PFN_vkCmdInitializeGraphScratchMemoryAMDX vkCmdInitializeGraphScratchMemoryAMDX; 1160 extern PFN_vkCreateExecutionGraphPipelinesAMDX vkCreateExecutionGraphPipelinesAMDX; 1161 extern PFN_vkGetExecutionGraphPipelineNodeIndexAMDX vkGetExecutionGraphPipelineNodeIndexAMDX; 1162 extern PFN_vkGetExecutionGraphPipelineScratchSizeAMDX vkGetExecutionGraphPipelineScratchSizeAMDX; 1163 #endif /* defined(VK_AMDX_shader_enqueue) */ 1164 #if defined(VK_AMD_buffer_marker) 1165 extern PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD; 1166 #endif /* defined(VK_AMD_buffer_marker) */ 1167 #if defined(VK_AMD_display_native_hdr) 1168 extern PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD; 1169 #endif /* defined(VK_AMD_display_native_hdr) */ 1170 #if defined(VK_AMD_draw_indirect_count) 1171 extern PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD; 1172 extern PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD; 1173 #endif /* defined(VK_AMD_draw_indirect_count) */ 1174 #if defined(VK_AMD_shader_info) 1175 extern PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD; 1176 #endif /* defined(VK_AMD_shader_info) */ 1177 #if defined(VK_ANDROID_external_memory_android_hardware_buffer) 1178 extern PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID; 1179 extern PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID; 1180 #endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */ 1181 #if defined(VK_EXT_acquire_drm_display) 1182 extern PFN_vkAcquireDrmDisplayEXT vkAcquireDrmDisplayEXT; 1183 extern PFN_vkGetDrmDisplayEXT vkGetDrmDisplayEXT; 1184 #endif /* defined(VK_EXT_acquire_drm_display) */ 1185 #if defined(VK_EXT_acquire_xlib_display) 1186 extern PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT; 1187 extern PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT; 1188 #endif /* defined(VK_EXT_acquire_xlib_display) */ 1189 #if defined(VK_EXT_attachment_feedback_loop_dynamic_state) 1190 extern PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT vkCmdSetAttachmentFeedbackLoopEnableEXT; 1191 #endif /* defined(VK_EXT_attachment_feedback_loop_dynamic_state) */ 1192 #if defined(VK_EXT_buffer_device_address) 1193 extern PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT; 1194 #endif /* defined(VK_EXT_buffer_device_address) */ 1195 #if defined(VK_EXT_calibrated_timestamps) 1196 extern PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT; 1197 extern PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT; 1198 #endif /* defined(VK_EXT_calibrated_timestamps) */ 1199 #if defined(VK_EXT_color_write_enable) 1200 extern PFN_vkCmdSetColorWriteEnableEXT vkCmdSetColorWriteEnableEXT; 1201 #endif /* defined(VK_EXT_color_write_enable) */ 1202 #if defined(VK_EXT_conditional_rendering) 1203 extern PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT; 1204 extern PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT; 1205 #endif /* defined(VK_EXT_conditional_rendering) */ 1206 #if defined(VK_EXT_debug_marker) 1207 extern PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT; 1208 extern PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT; 1209 extern PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT; 1210 extern PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT; 1211 extern PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT; 1212 #endif /* defined(VK_EXT_debug_marker) */ 1213 #if defined(VK_EXT_debug_report) 1214 extern PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; 1215 extern PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT; 1216 extern PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; 1217 #endif /* defined(VK_EXT_debug_report) */ 1218 #if defined(VK_EXT_debug_utils) 1219 extern PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT; 1220 extern PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT; 1221 extern PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT; 1222 extern PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT; 1223 extern PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT; 1224 extern PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT; 1225 extern PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT; 1226 extern PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT; 1227 extern PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT; 1228 extern PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT; 1229 extern PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT; 1230 #endif /* defined(VK_EXT_debug_utils) */ 1231 #if defined(VK_EXT_depth_bias_control) 1232 extern PFN_vkCmdSetDepthBias2EXT vkCmdSetDepthBias2EXT; 1233 #endif /* defined(VK_EXT_depth_bias_control) */ 1234 #if defined(VK_EXT_descriptor_buffer) 1235 extern PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT vkCmdBindDescriptorBufferEmbeddedSamplersEXT; 1236 extern PFN_vkCmdBindDescriptorBuffersEXT vkCmdBindDescriptorBuffersEXT; 1237 extern PFN_vkCmdSetDescriptorBufferOffsetsEXT vkCmdSetDescriptorBufferOffsetsEXT; 1238 extern PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT vkGetBufferOpaqueCaptureDescriptorDataEXT; 1239 extern PFN_vkGetDescriptorEXT vkGetDescriptorEXT; 1240 extern PFN_vkGetDescriptorSetLayoutBindingOffsetEXT vkGetDescriptorSetLayoutBindingOffsetEXT; 1241 extern PFN_vkGetDescriptorSetLayoutSizeEXT vkGetDescriptorSetLayoutSizeEXT; 1242 extern PFN_vkGetImageOpaqueCaptureDescriptorDataEXT vkGetImageOpaqueCaptureDescriptorDataEXT; 1243 extern PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT vkGetImageViewOpaqueCaptureDescriptorDataEXT; 1244 extern PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT vkGetSamplerOpaqueCaptureDescriptorDataEXT; 1245 #endif /* defined(VK_EXT_descriptor_buffer) */ 1246 #if defined(VK_EXT_descriptor_buffer) && (defined(VK_KHR_acceleration_structure) || defined(VK_NV_ray_tracing)) 1247 extern PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT; 1248 #endif /* defined(VK_EXT_descriptor_buffer) && (defined(VK_KHR_acceleration_structure) || defined(VK_NV_ray_tracing)) */ 1249 #if defined(VK_EXT_device_fault) 1250 extern PFN_vkGetDeviceFaultInfoEXT vkGetDeviceFaultInfoEXT; 1251 #endif /* defined(VK_EXT_device_fault) */ 1252 #if defined(VK_EXT_direct_mode_display) 1253 extern PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 1254 #endif /* defined(VK_EXT_direct_mode_display) */ 1255 #if defined(VK_EXT_directfb_surface) 1256 extern PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT; 1257 extern PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT; 1258 #endif /* defined(VK_EXT_directfb_surface) */ 1259 #if defined(VK_EXT_discard_rectangles) 1260 extern PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT; 1261 #endif /* defined(VK_EXT_discard_rectangles) */ 1262 #if defined(VK_EXT_discard_rectangles) && VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION >= 2 1263 extern PFN_vkCmdSetDiscardRectangleEnableEXT vkCmdSetDiscardRectangleEnableEXT; 1264 extern PFN_vkCmdSetDiscardRectangleModeEXT vkCmdSetDiscardRectangleModeEXT; 1265 #endif /* defined(VK_EXT_discard_rectangles) && VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION >= 2 */ 1266 #if defined(VK_EXT_display_control) 1267 extern PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT; 1268 extern PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT; 1269 extern PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT; 1270 extern PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT; 1271 #endif /* defined(VK_EXT_display_control) */ 1272 #if defined(VK_EXT_display_surface_counter) 1273 extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT; 1274 #endif /* defined(VK_EXT_display_surface_counter) */ 1275 #if defined(VK_EXT_external_memory_host) 1276 extern PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; 1277 #endif /* defined(VK_EXT_external_memory_host) */ 1278 #if defined(VK_EXT_full_screen_exclusive) 1279 extern PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT; 1280 extern PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT; 1281 extern PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT; 1282 #endif /* defined(VK_EXT_full_screen_exclusive) */ 1283 #if defined(VK_EXT_hdr_metadata) 1284 extern PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT; 1285 #endif /* defined(VK_EXT_hdr_metadata) */ 1286 #if defined(VK_EXT_headless_surface) 1287 extern PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT; 1288 #endif /* defined(VK_EXT_headless_surface) */ 1289 #if defined(VK_EXT_host_image_copy) 1290 extern PFN_vkCopyImageToImageEXT vkCopyImageToImageEXT; 1291 extern PFN_vkCopyImageToMemoryEXT vkCopyImageToMemoryEXT; 1292 extern PFN_vkCopyMemoryToImageEXT vkCopyMemoryToImageEXT; 1293 extern PFN_vkTransitionImageLayoutEXT vkTransitionImageLayoutEXT; 1294 #endif /* defined(VK_EXT_host_image_copy) */ 1295 #if defined(VK_EXT_host_query_reset) 1296 extern PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT; 1297 #endif /* defined(VK_EXT_host_query_reset) */ 1298 #if defined(VK_EXT_image_drm_format_modifier) 1299 extern PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT; 1300 #endif /* defined(VK_EXT_image_drm_format_modifier) */ 1301 #if defined(VK_EXT_line_rasterization) 1302 extern PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT; 1303 #endif /* defined(VK_EXT_line_rasterization) */ 1304 #if defined(VK_EXT_mesh_shader) 1305 extern PFN_vkCmdDrawMeshTasksEXT vkCmdDrawMeshTasksEXT; 1306 extern PFN_vkCmdDrawMeshTasksIndirectCountEXT vkCmdDrawMeshTasksIndirectCountEXT; 1307 extern PFN_vkCmdDrawMeshTasksIndirectEXT vkCmdDrawMeshTasksIndirectEXT; 1308 #endif /* defined(VK_EXT_mesh_shader) */ 1309 #if defined(VK_EXT_metal_objects) 1310 extern PFN_vkExportMetalObjectsEXT vkExportMetalObjectsEXT; 1311 #endif /* defined(VK_EXT_metal_objects) */ 1312 #if defined(VK_EXT_metal_surface) 1313 extern PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT; 1314 #endif /* defined(VK_EXT_metal_surface) */ 1315 #if defined(VK_EXT_multi_draw) 1316 extern PFN_vkCmdDrawMultiEXT vkCmdDrawMultiEXT; 1317 extern PFN_vkCmdDrawMultiIndexedEXT vkCmdDrawMultiIndexedEXT; 1318 #endif /* defined(VK_EXT_multi_draw) */ 1319 #if defined(VK_EXT_opacity_micromap) 1320 extern PFN_vkBuildMicromapsEXT vkBuildMicromapsEXT; 1321 extern PFN_vkCmdBuildMicromapsEXT vkCmdBuildMicromapsEXT; 1322 extern PFN_vkCmdCopyMemoryToMicromapEXT vkCmdCopyMemoryToMicromapEXT; 1323 extern PFN_vkCmdCopyMicromapEXT vkCmdCopyMicromapEXT; 1324 extern PFN_vkCmdCopyMicromapToMemoryEXT vkCmdCopyMicromapToMemoryEXT; 1325 extern PFN_vkCmdWriteMicromapsPropertiesEXT vkCmdWriteMicromapsPropertiesEXT; 1326 extern PFN_vkCopyMemoryToMicromapEXT vkCopyMemoryToMicromapEXT; 1327 extern PFN_vkCopyMicromapEXT vkCopyMicromapEXT; 1328 extern PFN_vkCopyMicromapToMemoryEXT vkCopyMicromapToMemoryEXT; 1329 extern PFN_vkCreateMicromapEXT vkCreateMicromapEXT; 1330 extern PFN_vkDestroyMicromapEXT vkDestroyMicromapEXT; 1331 extern PFN_vkGetDeviceMicromapCompatibilityEXT vkGetDeviceMicromapCompatibilityEXT; 1332 extern PFN_vkGetMicromapBuildSizesEXT vkGetMicromapBuildSizesEXT; 1333 extern PFN_vkWriteMicromapsPropertiesEXT vkWriteMicromapsPropertiesEXT; 1334 #endif /* defined(VK_EXT_opacity_micromap) */ 1335 #if defined(VK_EXT_pageable_device_local_memory) 1336 extern PFN_vkSetDeviceMemoryPriorityEXT vkSetDeviceMemoryPriorityEXT; 1337 #endif /* defined(VK_EXT_pageable_device_local_memory) */ 1338 #if defined(VK_EXT_pipeline_properties) 1339 extern PFN_vkGetPipelinePropertiesEXT vkGetPipelinePropertiesEXT; 1340 #endif /* defined(VK_EXT_pipeline_properties) */ 1341 #if defined(VK_EXT_private_data) 1342 extern PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT; 1343 extern PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT; 1344 extern PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT; 1345 extern PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT; 1346 #endif /* defined(VK_EXT_private_data) */ 1347 #if defined(VK_EXT_sample_locations) 1348 extern PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT; 1349 extern PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT; 1350 #endif /* defined(VK_EXT_sample_locations) */ 1351 #if defined(VK_EXT_shader_module_identifier) 1352 extern PFN_vkGetShaderModuleCreateInfoIdentifierEXT vkGetShaderModuleCreateInfoIdentifierEXT; 1353 extern PFN_vkGetShaderModuleIdentifierEXT vkGetShaderModuleIdentifierEXT; 1354 #endif /* defined(VK_EXT_shader_module_identifier) */ 1355 #if defined(VK_EXT_shader_object) 1356 extern PFN_vkCmdBindShadersEXT vkCmdBindShadersEXT; 1357 extern PFN_vkCreateShadersEXT vkCreateShadersEXT; 1358 extern PFN_vkDestroyShaderEXT vkDestroyShaderEXT; 1359 extern PFN_vkGetShaderBinaryDataEXT vkGetShaderBinaryDataEXT; 1360 #endif /* defined(VK_EXT_shader_object) */ 1361 #if defined(VK_EXT_swapchain_maintenance1) 1362 extern PFN_vkReleaseSwapchainImagesEXT vkReleaseSwapchainImagesEXT; 1363 #endif /* defined(VK_EXT_swapchain_maintenance1) */ 1364 #if defined(VK_EXT_tooling_info) 1365 extern PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT; 1366 #endif /* defined(VK_EXT_tooling_info) */ 1367 #if defined(VK_EXT_transform_feedback) 1368 extern PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; 1369 extern PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; 1370 extern PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; 1371 extern PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; 1372 extern PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; 1373 extern PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; 1374 #endif /* defined(VK_EXT_transform_feedback) */ 1375 #if defined(VK_EXT_validation_cache) 1376 extern PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT; 1377 extern PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT; 1378 extern PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT; 1379 extern PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT; 1380 #endif /* defined(VK_EXT_validation_cache) */ 1381 #if defined(VK_FUCHSIA_buffer_collection) 1382 extern PFN_vkCreateBufferCollectionFUCHSIA vkCreateBufferCollectionFUCHSIA; 1383 extern PFN_vkDestroyBufferCollectionFUCHSIA vkDestroyBufferCollectionFUCHSIA; 1384 extern PFN_vkGetBufferCollectionPropertiesFUCHSIA vkGetBufferCollectionPropertiesFUCHSIA; 1385 extern PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA vkSetBufferCollectionBufferConstraintsFUCHSIA; 1386 extern PFN_vkSetBufferCollectionImageConstraintsFUCHSIA vkSetBufferCollectionImageConstraintsFUCHSIA; 1387 #endif /* defined(VK_FUCHSIA_buffer_collection) */ 1388 #if defined(VK_FUCHSIA_external_memory) 1389 extern PFN_vkGetMemoryZirconHandleFUCHSIA vkGetMemoryZirconHandleFUCHSIA; 1390 extern PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA vkGetMemoryZirconHandlePropertiesFUCHSIA; 1391 #endif /* defined(VK_FUCHSIA_external_memory) */ 1392 #if defined(VK_FUCHSIA_external_semaphore) 1393 extern PFN_vkGetSemaphoreZirconHandleFUCHSIA vkGetSemaphoreZirconHandleFUCHSIA; 1394 extern PFN_vkImportSemaphoreZirconHandleFUCHSIA vkImportSemaphoreZirconHandleFUCHSIA; 1395 #endif /* defined(VK_FUCHSIA_external_semaphore) */ 1396 #if defined(VK_FUCHSIA_imagepipe_surface) 1397 extern PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA; 1398 #endif /* defined(VK_FUCHSIA_imagepipe_surface) */ 1399 #if defined(VK_GGP_stream_descriptor_surface) 1400 extern PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP; 1401 #endif /* defined(VK_GGP_stream_descriptor_surface) */ 1402 #if defined(VK_GOOGLE_display_timing) 1403 extern PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; 1404 extern PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE; 1405 #endif /* defined(VK_GOOGLE_display_timing) */ 1406 #if defined(VK_HUAWEI_cluster_culling_shader) 1407 extern PFN_vkCmdDrawClusterHUAWEI vkCmdDrawClusterHUAWEI; 1408 extern PFN_vkCmdDrawClusterIndirectHUAWEI vkCmdDrawClusterIndirectHUAWEI; 1409 #endif /* defined(VK_HUAWEI_cluster_culling_shader) */ 1410 #if defined(VK_HUAWEI_invocation_mask) 1411 extern PFN_vkCmdBindInvocationMaskHUAWEI vkCmdBindInvocationMaskHUAWEI; 1412 #endif /* defined(VK_HUAWEI_invocation_mask) */ 1413 #if defined(VK_HUAWEI_subpass_shading) 1414 extern PFN_vkCmdSubpassShadingHUAWEI vkCmdSubpassShadingHUAWEI; 1415 extern PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI; 1416 #endif /* defined(VK_HUAWEI_subpass_shading) */ 1417 #if defined(VK_INTEL_performance_query) 1418 extern PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL; 1419 extern PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL; 1420 extern PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL; 1421 extern PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL; 1422 extern PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL; 1423 extern PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL; 1424 extern PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL; 1425 extern PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL; 1426 extern PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL; 1427 #endif /* defined(VK_INTEL_performance_query) */ 1428 #if defined(VK_KHR_acceleration_structure) 1429 extern PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR; 1430 extern PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR; 1431 extern PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR; 1432 extern PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR; 1433 extern PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR; 1434 extern PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR; 1435 extern PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR; 1436 extern PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR; 1437 extern PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR; 1438 extern PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR; 1439 extern PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR; 1440 extern PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR; 1441 extern PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR; 1442 extern PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR; 1443 extern PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR; 1444 extern PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR; 1445 #endif /* defined(VK_KHR_acceleration_structure) */ 1446 #if defined(VK_KHR_android_surface) 1447 extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR; 1448 #endif /* defined(VK_KHR_android_surface) */ 1449 #if defined(VK_KHR_bind_memory2) 1450 extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR; 1451 extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR; 1452 #endif /* defined(VK_KHR_bind_memory2) */ 1453 #if defined(VK_KHR_buffer_device_address) 1454 extern PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR; 1455 extern PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR; 1456 extern PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR; 1457 #endif /* defined(VK_KHR_buffer_device_address) */ 1458 #if defined(VK_KHR_cooperative_matrix) 1459 extern PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR; 1460 #endif /* defined(VK_KHR_cooperative_matrix) */ 1461 #if defined(VK_KHR_copy_commands2) 1462 extern PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; 1463 extern PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR; 1464 extern PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR; 1465 extern PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR; 1466 extern PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; 1467 extern PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; 1468 #endif /* defined(VK_KHR_copy_commands2) */ 1469 #if defined(VK_KHR_create_renderpass2) 1470 extern PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR; 1471 extern PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR; 1472 extern PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR; 1473 extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR; 1474 #endif /* defined(VK_KHR_create_renderpass2) */ 1475 #if defined(VK_KHR_deferred_host_operations) 1476 extern PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR; 1477 extern PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR; 1478 extern PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR; 1479 extern PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR; 1480 extern PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR; 1481 #endif /* defined(VK_KHR_deferred_host_operations) */ 1482 #if defined(VK_KHR_descriptor_update_template) 1483 extern PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR; 1484 extern PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR; 1485 extern PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR; 1486 #endif /* defined(VK_KHR_descriptor_update_template) */ 1487 #if defined(VK_KHR_device_group) 1488 extern PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR; 1489 extern PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR; 1490 extern PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR; 1491 #endif /* defined(VK_KHR_device_group) */ 1492 #if defined(VK_KHR_device_group_creation) 1493 extern PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR; 1494 #endif /* defined(VK_KHR_device_group_creation) */ 1495 #if defined(VK_KHR_display) 1496 extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; 1497 extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; 1498 extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; 1499 extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; 1500 extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; 1501 extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; 1502 extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; 1503 #endif /* defined(VK_KHR_display) */ 1504 #if defined(VK_KHR_display_swapchain) 1505 extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; 1506 #endif /* defined(VK_KHR_display_swapchain) */ 1507 #if defined(VK_KHR_draw_indirect_count) 1508 extern PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR; 1509 extern PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR; 1510 #endif /* defined(VK_KHR_draw_indirect_count) */ 1511 #if defined(VK_KHR_dynamic_rendering) 1512 extern PFN_vkCmdBeginRenderingKHR vkCmdBeginRenderingKHR; 1513 extern PFN_vkCmdEndRenderingKHR vkCmdEndRenderingKHR; 1514 #endif /* defined(VK_KHR_dynamic_rendering) */ 1515 #if defined(VK_KHR_external_fence_capabilities) 1516 extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR; 1517 #endif /* defined(VK_KHR_external_fence_capabilities) */ 1518 #if defined(VK_KHR_external_fence_fd) 1519 extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR; 1520 extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR; 1521 #endif /* defined(VK_KHR_external_fence_fd) */ 1522 #if defined(VK_KHR_external_fence_win32) 1523 extern PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR; 1524 extern PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR; 1525 #endif /* defined(VK_KHR_external_fence_win32) */ 1526 #if defined(VK_KHR_external_memory_capabilities) 1527 extern PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR; 1528 #endif /* defined(VK_KHR_external_memory_capabilities) */ 1529 #if defined(VK_KHR_external_memory_fd) 1530 extern PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR; 1531 extern PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR; 1532 #endif /* defined(VK_KHR_external_memory_fd) */ 1533 #if defined(VK_KHR_external_memory_win32) 1534 extern PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR; 1535 extern PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR; 1536 #endif /* defined(VK_KHR_external_memory_win32) */ 1537 #if defined(VK_KHR_external_semaphore_capabilities) 1538 extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR; 1539 #endif /* defined(VK_KHR_external_semaphore_capabilities) */ 1540 #if defined(VK_KHR_external_semaphore_fd) 1541 extern PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR; 1542 extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; 1543 #endif /* defined(VK_KHR_external_semaphore_fd) */ 1544 #if defined(VK_KHR_external_semaphore_win32) 1545 extern PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR; 1546 extern PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR; 1547 #endif /* defined(VK_KHR_external_semaphore_win32) */ 1548 #if defined(VK_KHR_fragment_shading_rate) 1549 extern PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; 1550 extern PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR; 1551 #endif /* defined(VK_KHR_fragment_shading_rate) */ 1552 #if defined(VK_KHR_get_display_properties2) 1553 extern PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR; 1554 extern PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR; 1555 extern PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR; 1556 extern PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR; 1557 #endif /* defined(VK_KHR_get_display_properties2) */ 1558 #if defined(VK_KHR_get_memory_requirements2) 1559 extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR; 1560 extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR; 1561 extern PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR; 1562 #endif /* defined(VK_KHR_get_memory_requirements2) */ 1563 #if defined(VK_KHR_get_physical_device_properties2) 1564 extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR; 1565 extern PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR; 1566 extern PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR; 1567 extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR; 1568 extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR; 1569 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR; 1570 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR; 1571 #endif /* defined(VK_KHR_get_physical_device_properties2) */ 1572 #if defined(VK_KHR_get_surface_capabilities2) 1573 extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR; 1574 extern PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR; 1575 #endif /* defined(VK_KHR_get_surface_capabilities2) */ 1576 #if defined(VK_KHR_maintenance1) 1577 extern PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR; 1578 #endif /* defined(VK_KHR_maintenance1) */ 1579 #if defined(VK_KHR_maintenance3) 1580 extern PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR; 1581 #endif /* defined(VK_KHR_maintenance3) */ 1582 #if defined(VK_KHR_maintenance4) 1583 extern PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirementsKHR; 1584 extern PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirementsKHR; 1585 extern PFN_vkGetDeviceImageSparseMemoryRequirementsKHR vkGetDeviceImageSparseMemoryRequirementsKHR; 1586 #endif /* defined(VK_KHR_maintenance4) */ 1587 #if defined(VK_KHR_maintenance5) 1588 extern PFN_vkCmdBindIndexBuffer2KHR vkCmdBindIndexBuffer2KHR; 1589 extern PFN_vkGetDeviceImageSubresourceLayoutKHR vkGetDeviceImageSubresourceLayoutKHR; 1590 extern PFN_vkGetImageSubresourceLayout2KHR vkGetImageSubresourceLayout2KHR; 1591 extern PFN_vkGetRenderingAreaGranularityKHR vkGetRenderingAreaGranularityKHR; 1592 #endif /* defined(VK_KHR_maintenance5) */ 1593 #if defined(VK_KHR_map_memory2) 1594 extern PFN_vkMapMemory2KHR vkMapMemory2KHR; 1595 extern PFN_vkUnmapMemory2KHR vkUnmapMemory2KHR; 1596 #endif /* defined(VK_KHR_map_memory2) */ 1597 #if defined(VK_KHR_performance_query) 1598 extern PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR; 1599 extern PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR; 1600 extern PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR; 1601 extern PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR; 1602 #endif /* defined(VK_KHR_performance_query) */ 1603 #if defined(VK_KHR_pipeline_executable_properties) 1604 extern PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR; 1605 extern PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR; 1606 extern PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR; 1607 #endif /* defined(VK_KHR_pipeline_executable_properties) */ 1608 #if defined(VK_KHR_present_wait) 1609 extern PFN_vkWaitForPresentKHR vkWaitForPresentKHR; 1610 #endif /* defined(VK_KHR_present_wait) */ 1611 #if defined(VK_KHR_push_descriptor) 1612 extern PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR; 1613 #endif /* defined(VK_KHR_push_descriptor) */ 1614 #if defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) 1615 extern PFN_vkCmdTraceRaysIndirect2KHR vkCmdTraceRaysIndirect2KHR; 1616 #endif /* defined(VK_KHR_ray_tracing_maintenance1) && defined(VK_KHR_ray_tracing_pipeline) */ 1617 #if defined(VK_KHR_ray_tracing_pipeline) 1618 extern PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR; 1619 extern PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR; 1620 extern PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR; 1621 extern PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR; 1622 extern PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR; 1623 extern PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR; 1624 extern PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR; 1625 #endif /* defined(VK_KHR_ray_tracing_pipeline) */ 1626 #if defined(VK_KHR_sampler_ycbcr_conversion) 1627 extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR; 1628 extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR; 1629 #endif /* defined(VK_KHR_sampler_ycbcr_conversion) */ 1630 #if defined(VK_KHR_shared_presentable_image) 1631 extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; 1632 #endif /* defined(VK_KHR_shared_presentable_image) */ 1633 #if defined(VK_KHR_surface) 1634 extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; 1635 extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; 1636 extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; 1637 extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; 1638 extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; 1639 #endif /* defined(VK_KHR_surface) */ 1640 #if defined(VK_KHR_swapchain) 1641 extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; 1642 extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; 1643 extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; 1644 extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; 1645 extern PFN_vkQueuePresentKHR vkQueuePresentKHR; 1646 #endif /* defined(VK_KHR_swapchain) */ 1647 #if defined(VK_KHR_synchronization2) 1648 extern PFN_vkCmdPipelineBarrier2KHR vkCmdPipelineBarrier2KHR; 1649 extern PFN_vkCmdResetEvent2KHR vkCmdResetEvent2KHR; 1650 extern PFN_vkCmdSetEvent2KHR vkCmdSetEvent2KHR; 1651 extern PFN_vkCmdWaitEvents2KHR vkCmdWaitEvents2KHR; 1652 extern PFN_vkCmdWriteTimestamp2KHR vkCmdWriteTimestamp2KHR; 1653 extern PFN_vkQueueSubmit2KHR vkQueueSubmit2KHR; 1654 #endif /* defined(VK_KHR_synchronization2) */ 1655 #if defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) 1656 extern PFN_vkCmdWriteBufferMarker2AMD vkCmdWriteBufferMarker2AMD; 1657 #endif /* defined(VK_KHR_synchronization2) && defined(VK_AMD_buffer_marker) */ 1658 #if defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) 1659 extern PFN_vkGetQueueCheckpointData2NV vkGetQueueCheckpointData2NV; 1660 #endif /* defined(VK_KHR_synchronization2) && defined(VK_NV_device_diagnostic_checkpoints) */ 1661 #if defined(VK_KHR_timeline_semaphore) 1662 extern PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR; 1663 extern PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR; 1664 extern PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR; 1665 #endif /* defined(VK_KHR_timeline_semaphore) */ 1666 #if defined(VK_KHR_video_decode_queue) 1667 extern PFN_vkCmdDecodeVideoKHR vkCmdDecodeVideoKHR; 1668 #endif /* defined(VK_KHR_video_decode_queue) */ 1669 #if defined(VK_KHR_video_encode_queue) 1670 extern PFN_vkCmdEncodeVideoKHR vkCmdEncodeVideoKHR; 1671 extern PFN_vkGetEncodedVideoSessionParametersKHR vkGetEncodedVideoSessionParametersKHR; 1672 extern PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR; 1673 #endif /* defined(VK_KHR_video_encode_queue) */ 1674 #if defined(VK_KHR_video_queue) 1675 extern PFN_vkBindVideoSessionMemoryKHR vkBindVideoSessionMemoryKHR; 1676 extern PFN_vkCmdBeginVideoCodingKHR vkCmdBeginVideoCodingKHR; 1677 extern PFN_vkCmdControlVideoCodingKHR vkCmdControlVideoCodingKHR; 1678 extern PFN_vkCmdEndVideoCodingKHR vkCmdEndVideoCodingKHR; 1679 extern PFN_vkCreateVideoSessionKHR vkCreateVideoSessionKHR; 1680 extern PFN_vkCreateVideoSessionParametersKHR vkCreateVideoSessionParametersKHR; 1681 extern PFN_vkDestroyVideoSessionKHR vkDestroyVideoSessionKHR; 1682 extern PFN_vkDestroyVideoSessionParametersKHR vkDestroyVideoSessionParametersKHR; 1683 extern PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR vkGetPhysicalDeviceVideoCapabilitiesKHR; 1684 extern PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR vkGetPhysicalDeviceVideoFormatPropertiesKHR; 1685 extern PFN_vkGetVideoSessionMemoryRequirementsKHR vkGetVideoSessionMemoryRequirementsKHR; 1686 extern PFN_vkUpdateVideoSessionParametersKHR vkUpdateVideoSessionParametersKHR; 1687 #endif /* defined(VK_KHR_video_queue) */ 1688 #if defined(VK_KHR_wayland_surface) 1689 extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR; 1690 extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR; 1691 #endif /* defined(VK_KHR_wayland_surface) */ 1692 #if defined(VK_KHR_win32_surface) 1693 extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR; 1694 extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR; 1695 #endif /* defined(VK_KHR_win32_surface) */ 1696 #if defined(VK_KHR_xcb_surface) 1697 extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR; 1698 extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR; 1699 #endif /* defined(VK_KHR_xcb_surface) */ 1700 #if defined(VK_KHR_xlib_surface) 1701 extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR; 1702 extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR; 1703 #endif /* defined(VK_KHR_xlib_surface) */ 1704 #if defined(VK_MVK_ios_surface) 1705 extern PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK; 1706 #endif /* defined(VK_MVK_ios_surface) */ 1707 #if defined(VK_MVK_macos_surface) 1708 extern PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK; 1709 #endif /* defined(VK_MVK_macos_surface) */ 1710 #if defined(VK_NN_vi_surface) 1711 extern PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN; 1712 #endif /* defined(VK_NN_vi_surface) */ 1713 #if defined(VK_NVX_binary_import) 1714 extern PFN_vkCmdCuLaunchKernelNVX vkCmdCuLaunchKernelNVX; 1715 extern PFN_vkCreateCuFunctionNVX vkCreateCuFunctionNVX; 1716 extern PFN_vkCreateCuModuleNVX vkCreateCuModuleNVX; 1717 extern PFN_vkDestroyCuFunctionNVX vkDestroyCuFunctionNVX; 1718 extern PFN_vkDestroyCuModuleNVX vkDestroyCuModuleNVX; 1719 #endif /* defined(VK_NVX_binary_import) */ 1720 #if defined(VK_NVX_image_view_handle) 1721 extern PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX; 1722 extern PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX; 1723 #endif /* defined(VK_NVX_image_view_handle) */ 1724 #if defined(VK_NV_acquire_winrt_display) 1725 extern PFN_vkAcquireWinrtDisplayNV vkAcquireWinrtDisplayNV; 1726 extern PFN_vkGetWinrtDisplayNV vkGetWinrtDisplayNV; 1727 #endif /* defined(VK_NV_acquire_winrt_display) */ 1728 #if defined(VK_NV_clip_space_w_scaling) 1729 extern PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV; 1730 #endif /* defined(VK_NV_clip_space_w_scaling) */ 1731 #if defined(VK_NV_cooperative_matrix) 1732 extern PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV; 1733 #endif /* defined(VK_NV_cooperative_matrix) */ 1734 #if defined(VK_NV_copy_memory_indirect) 1735 extern PFN_vkCmdCopyMemoryIndirectNV vkCmdCopyMemoryIndirectNV; 1736 extern PFN_vkCmdCopyMemoryToImageIndirectNV vkCmdCopyMemoryToImageIndirectNV; 1737 #endif /* defined(VK_NV_copy_memory_indirect) */ 1738 #if defined(VK_NV_coverage_reduction_mode) 1739 extern PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV; 1740 #endif /* defined(VK_NV_coverage_reduction_mode) */ 1741 #if defined(VK_NV_device_diagnostic_checkpoints) 1742 extern PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV; 1743 extern PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV; 1744 #endif /* defined(VK_NV_device_diagnostic_checkpoints) */ 1745 #if defined(VK_NV_device_generated_commands) 1746 extern PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV; 1747 extern PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV; 1748 extern PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV; 1749 extern PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV; 1750 extern PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV; 1751 extern PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV; 1752 #endif /* defined(VK_NV_device_generated_commands) */ 1753 #if defined(VK_NV_device_generated_commands_compute) 1754 extern PFN_vkCmdUpdatePipelineIndirectBufferNV vkCmdUpdatePipelineIndirectBufferNV; 1755 extern PFN_vkGetPipelineIndirectDeviceAddressNV vkGetPipelineIndirectDeviceAddressNV; 1756 extern PFN_vkGetPipelineIndirectMemoryRequirementsNV vkGetPipelineIndirectMemoryRequirementsNV; 1757 #endif /* defined(VK_NV_device_generated_commands_compute) */ 1758 #if defined(VK_NV_external_memory_capabilities) 1759 extern PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV; 1760 #endif /* defined(VK_NV_external_memory_capabilities) */ 1761 #if defined(VK_NV_external_memory_rdma) 1762 extern PFN_vkGetMemoryRemoteAddressNV vkGetMemoryRemoteAddressNV; 1763 #endif /* defined(VK_NV_external_memory_rdma) */ 1764 #if defined(VK_NV_external_memory_win32) 1765 extern PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV; 1766 #endif /* defined(VK_NV_external_memory_win32) */ 1767 #if defined(VK_NV_fragment_shading_rate_enums) 1768 extern PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; 1769 #endif /* defined(VK_NV_fragment_shading_rate_enums) */ 1770 #if defined(VK_NV_memory_decompression) 1771 extern PFN_vkCmdDecompressMemoryIndirectCountNV vkCmdDecompressMemoryIndirectCountNV; 1772 extern PFN_vkCmdDecompressMemoryNV vkCmdDecompressMemoryNV; 1773 #endif /* defined(VK_NV_memory_decompression) */ 1774 #if defined(VK_NV_mesh_shader) 1775 extern PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV; 1776 extern PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV; 1777 extern PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV; 1778 #endif /* defined(VK_NV_mesh_shader) */ 1779 #if defined(VK_NV_optical_flow) 1780 extern PFN_vkBindOpticalFlowSessionImageNV vkBindOpticalFlowSessionImageNV; 1781 extern PFN_vkCmdOpticalFlowExecuteNV vkCmdOpticalFlowExecuteNV; 1782 extern PFN_vkCreateOpticalFlowSessionNV vkCreateOpticalFlowSessionNV; 1783 extern PFN_vkDestroyOpticalFlowSessionNV vkDestroyOpticalFlowSessionNV; 1784 extern PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV vkGetPhysicalDeviceOpticalFlowImageFormatsNV; 1785 #endif /* defined(VK_NV_optical_flow) */ 1786 #if defined(VK_NV_ray_tracing) 1787 extern PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV; 1788 extern PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV; 1789 extern PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV; 1790 extern PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV; 1791 extern PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV; 1792 extern PFN_vkCompileDeferredNV vkCompileDeferredNV; 1793 extern PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV; 1794 extern PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV; 1795 extern PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV; 1796 extern PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV; 1797 extern PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV; 1798 extern PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV; 1799 #endif /* defined(VK_NV_ray_tracing) */ 1800 #if defined(VK_NV_scissor_exclusive) && VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION >= 2 1801 extern PFN_vkCmdSetExclusiveScissorEnableNV vkCmdSetExclusiveScissorEnableNV; 1802 #endif /* defined(VK_NV_scissor_exclusive) && VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION >= 2 */ 1803 #if defined(VK_NV_scissor_exclusive) 1804 extern PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV; 1805 #endif /* defined(VK_NV_scissor_exclusive) */ 1806 #if defined(VK_NV_shading_rate_image) 1807 extern PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV; 1808 extern PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV; 1809 extern PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV; 1810 #endif /* defined(VK_NV_shading_rate_image) */ 1811 #if defined(VK_QCOM_tile_properties) 1812 extern PFN_vkGetDynamicRenderingTilePropertiesQCOM vkGetDynamicRenderingTilePropertiesQCOM; 1813 extern PFN_vkGetFramebufferTilePropertiesQCOM vkGetFramebufferTilePropertiesQCOM; 1814 #endif /* defined(VK_QCOM_tile_properties) */ 1815 #if defined(VK_QNX_external_memory_screen_buffer) 1816 extern PFN_vkGetScreenBufferPropertiesQNX vkGetScreenBufferPropertiesQNX; 1817 #endif /* defined(VK_QNX_external_memory_screen_buffer) */ 1818 #if defined(VK_QNX_screen_surface) 1819 extern PFN_vkCreateScreenSurfaceQNX vkCreateScreenSurfaceQNX; 1820 extern PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX vkGetPhysicalDeviceScreenPresentationSupportQNX; 1821 #endif /* defined(VK_QNX_screen_surface) */ 1822 #if defined(VK_VALVE_descriptor_set_host_mapping) 1823 extern PFN_vkGetDescriptorSetHostMappingVALVE vkGetDescriptorSetHostMappingVALVE; 1824 extern PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE vkGetDescriptorSetLayoutHostMappingInfoVALVE; 1825 #endif /* defined(VK_VALVE_descriptor_set_host_mapping) */ 1826 #if (defined(VK_EXT_extended_dynamic_state)) || (defined(VK_EXT_shader_object)) 1827 extern PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT; 1828 extern PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT; 1829 extern PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT; 1830 extern PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT; 1831 extern PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT; 1832 extern PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT; 1833 extern PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT; 1834 extern PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT; 1835 extern PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT; 1836 extern PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT; 1837 extern PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT; 1838 extern PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT; 1839 #endif /* (defined(VK_EXT_extended_dynamic_state)) || (defined(VK_EXT_shader_object)) */ 1840 #if (defined(VK_EXT_extended_dynamic_state2)) || (defined(VK_EXT_shader_object)) 1841 extern PFN_vkCmdSetDepthBiasEnableEXT vkCmdSetDepthBiasEnableEXT; 1842 extern PFN_vkCmdSetLogicOpEXT vkCmdSetLogicOpEXT; 1843 extern PFN_vkCmdSetPatchControlPointsEXT vkCmdSetPatchControlPointsEXT; 1844 extern PFN_vkCmdSetPrimitiveRestartEnableEXT vkCmdSetPrimitiveRestartEnableEXT; 1845 extern PFN_vkCmdSetRasterizerDiscardEnableEXT vkCmdSetRasterizerDiscardEnableEXT; 1846 #endif /* (defined(VK_EXT_extended_dynamic_state2)) || (defined(VK_EXT_shader_object)) */ 1847 #if (defined(VK_EXT_extended_dynamic_state3)) || (defined(VK_EXT_shader_object)) 1848 extern PFN_vkCmdSetAlphaToCoverageEnableEXT vkCmdSetAlphaToCoverageEnableEXT; 1849 extern PFN_vkCmdSetAlphaToOneEnableEXT vkCmdSetAlphaToOneEnableEXT; 1850 extern PFN_vkCmdSetColorBlendAdvancedEXT vkCmdSetColorBlendAdvancedEXT; 1851 extern PFN_vkCmdSetColorBlendEnableEXT vkCmdSetColorBlendEnableEXT; 1852 extern PFN_vkCmdSetColorBlendEquationEXT vkCmdSetColorBlendEquationEXT; 1853 extern PFN_vkCmdSetColorWriteMaskEXT vkCmdSetColorWriteMaskEXT; 1854 extern PFN_vkCmdSetConservativeRasterizationModeEXT vkCmdSetConservativeRasterizationModeEXT; 1855 extern PFN_vkCmdSetDepthClampEnableEXT vkCmdSetDepthClampEnableEXT; 1856 extern PFN_vkCmdSetDepthClipEnableEXT vkCmdSetDepthClipEnableEXT; 1857 extern PFN_vkCmdSetDepthClipNegativeOneToOneEXT vkCmdSetDepthClipNegativeOneToOneEXT; 1858 extern PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT vkCmdSetExtraPrimitiveOverestimationSizeEXT; 1859 extern PFN_vkCmdSetLineRasterizationModeEXT vkCmdSetLineRasterizationModeEXT; 1860 extern PFN_vkCmdSetLineStippleEnableEXT vkCmdSetLineStippleEnableEXT; 1861 extern PFN_vkCmdSetLogicOpEnableEXT vkCmdSetLogicOpEnableEXT; 1862 extern PFN_vkCmdSetPolygonModeEXT vkCmdSetPolygonModeEXT; 1863 extern PFN_vkCmdSetProvokingVertexModeEXT vkCmdSetProvokingVertexModeEXT; 1864 extern PFN_vkCmdSetRasterizationSamplesEXT vkCmdSetRasterizationSamplesEXT; 1865 extern PFN_vkCmdSetRasterizationStreamEXT vkCmdSetRasterizationStreamEXT; 1866 extern PFN_vkCmdSetSampleLocationsEnableEXT vkCmdSetSampleLocationsEnableEXT; 1867 extern PFN_vkCmdSetSampleMaskEXT vkCmdSetSampleMaskEXT; 1868 extern PFN_vkCmdSetTessellationDomainOriginEXT vkCmdSetTessellationDomainOriginEXT; 1869 #endif /* (defined(VK_EXT_extended_dynamic_state3)) || (defined(VK_EXT_shader_object)) */ 1870 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_clip_space_w_scaling)) || (defined(VK_EXT_shader_object) && defined(VK_NV_clip_space_w_scaling)) 1871 extern PFN_vkCmdSetViewportWScalingEnableNV vkCmdSetViewportWScalingEnableNV; 1872 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_clip_space_w_scaling)) || (defined(VK_EXT_shader_object) && defined(VK_NV_clip_space_w_scaling)) */ 1873 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_viewport_swizzle)) || (defined(VK_EXT_shader_object) && defined(VK_NV_viewport_swizzle)) 1874 extern PFN_vkCmdSetViewportSwizzleNV vkCmdSetViewportSwizzleNV; 1875 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_viewport_swizzle)) || (defined(VK_EXT_shader_object) && defined(VK_NV_viewport_swizzle)) */ 1876 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_fragment_coverage_to_color)) || (defined(VK_EXT_shader_object) && defined(VK_NV_fragment_coverage_to_color)) 1877 extern PFN_vkCmdSetCoverageToColorEnableNV vkCmdSetCoverageToColorEnableNV; 1878 extern PFN_vkCmdSetCoverageToColorLocationNV vkCmdSetCoverageToColorLocationNV; 1879 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_fragment_coverage_to_color)) || (defined(VK_EXT_shader_object) && defined(VK_NV_fragment_coverage_to_color)) */ 1880 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_framebuffer_mixed_samples)) || (defined(VK_EXT_shader_object) && defined(VK_NV_framebuffer_mixed_samples)) 1881 extern PFN_vkCmdSetCoverageModulationModeNV vkCmdSetCoverageModulationModeNV; 1882 extern PFN_vkCmdSetCoverageModulationTableEnableNV vkCmdSetCoverageModulationTableEnableNV; 1883 extern PFN_vkCmdSetCoverageModulationTableNV vkCmdSetCoverageModulationTableNV; 1884 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_framebuffer_mixed_samples)) || (defined(VK_EXT_shader_object) && defined(VK_NV_framebuffer_mixed_samples)) */ 1885 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_shading_rate_image)) || (defined(VK_EXT_shader_object) && defined(VK_NV_shading_rate_image)) 1886 extern PFN_vkCmdSetShadingRateImageEnableNV vkCmdSetShadingRateImageEnableNV; 1887 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_shading_rate_image)) || (defined(VK_EXT_shader_object) && defined(VK_NV_shading_rate_image)) */ 1888 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_representative_fragment_test)) || (defined(VK_EXT_shader_object) && defined(VK_NV_representative_fragment_test)) 1889 extern PFN_vkCmdSetRepresentativeFragmentTestEnableNV vkCmdSetRepresentativeFragmentTestEnableNV; 1890 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_representative_fragment_test)) || (defined(VK_EXT_shader_object) && defined(VK_NV_representative_fragment_test)) */ 1891 #if (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_coverage_reduction_mode)) || (defined(VK_EXT_shader_object) && defined(VK_NV_coverage_reduction_mode)) 1892 extern PFN_vkCmdSetCoverageReductionModeNV vkCmdSetCoverageReductionModeNV; 1893 #endif /* (defined(VK_EXT_extended_dynamic_state3) && defined(VK_NV_coverage_reduction_mode)) || (defined(VK_EXT_shader_object) && defined(VK_NV_coverage_reduction_mode)) */ 1894 #if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) 1895 extern PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT; 1896 #endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */ 1897 #if (defined(VK_EXT_host_image_copy)) || (defined(VK_EXT_image_compression_control)) 1898 extern PFN_vkGetImageSubresourceLayout2EXT vkGetImageSubresourceLayout2EXT; 1899 #endif /* (defined(VK_EXT_host_image_copy)) || (defined(VK_EXT_image_compression_control)) */ 1900 #if (defined(VK_EXT_shader_object)) || (defined(VK_EXT_vertex_input_dynamic_state)) 1901 extern PFN_vkCmdSetVertexInputEXT vkCmdSetVertexInputEXT; 1902 #endif /* (defined(VK_EXT_shader_object)) || (defined(VK_EXT_vertex_input_dynamic_state)) */ 1903 #if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) 1904 extern PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR; 1905 #endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) || (defined(VK_KHR_push_descriptor) && defined(VK_KHR_descriptor_update_template)) */ 1906 #if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) 1907 extern PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR; 1908 extern PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR; 1909 extern PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR; 1910 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */ 1911 #if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) 1912 extern PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR; 1913 #endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */ 1914 /* VOLK_GENERATE_PROTOTYPES_H */ 1915 1916 #ifdef __cplusplus 1917 } 1918 #endif 1919 1920 #endif 1921 1922 #ifdef VOLK_IMPLEMENTATION 1923 #undef VOLK_IMPLEMENTATION 1924 // Prevent tools like dependency checkers that don't evaluate 1925 // macros from detecting a cyclic dependency. 1926 #define VOLK_SOURCE "volk.c" 1927 #include VOLK_SOURCE 1928 #endif 1929 1930 /** 1931 * Copyright (c) 2018-2023 Arseny Kapoulkine 1932 * 1933 * Permission is hereby granted, free of charge, to any person obtaining a copy 1934 * of this software and associated documentation files (the "Software"), to deal 1935 * in the Software without restriction, including without limitation the rights 1936 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 1937 * copies of the Software, and to permit persons to whom the Software is 1938 * furnished to do so, subject to the following conditions: 1939 * 1940 * The above copyright notice and this permission notice shall be included in all 1941 * copies or substantial portions of the Software. 1942 * 1943 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 1944 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 1945 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 1946 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 1947 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 1948 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 1949 * SOFTWARE. 1950 */ 1951 /* clang-format on */ 1952