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