1 // Copyright (C) 2018 The Android Open Source Project 2 // Copyright (C) 2018 Google Inc. 3 // 4 // Licensed under the Apache License, Version 2.0 (the "License"); 5 // you may not use this file except in compliance with the License. 6 // You may obtain a copy of the License at 7 // 8 // http://www.apache.org/licenses/LICENSE-2.0 9 // 10 // Unless required by applicable law or agreed to in writing, software 11 // distributed under the License is distributed on an "AS IS" BASIS, 12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 // See the License for the specific language governing permissions and 14 // limitations under the License. 15 16 // Autogenerated module goldfish_vk_dispatch 17 // (header) generated by protocols/vulkan/xml/genvk.py -registry protocols/vulkan/xml/vk.xml cereal -o stream-servers/vulkan/cereal 18 // Please do not modify directly; 19 // re-run generate-vulkan-sources.sh, 20 // or directly from Python by defining: 21 // VULKAN_REGISTRY_XML_DIR : Directory containing genvk.py and vk.xml 22 // CEREAL_OUTPUT_DIR: Where to put the generated sources. 23 // python3 $VULKAN_REGISTRY_XML_DIR/genvk.py -registry $VULKAN_REGISTRY_XML_DIR/vk.xml cereal -o $CEREAL_OUTPUT_DIR 24 25 #pragma once 26 27 #include <vulkan/vulkan.h> 28 29 30 #include "goldfish_vk_private_defs.h" 31 namespace goldfish_vk { 32 33 struct VulkanDispatch; 34 35 } // namespace goldfish_vk 36 using DlOpenFunc = void* (void); 37 using DlSymFunc = void* (void*, const char*); 38 39 40 namespace goldfish_vk { 41 42 43 void init_vulkan_dispatch_from_system_loader( 44 DlOpenFunc dlOpenFunc, 45 DlSymFunc dlSymFunc, 46 VulkanDispatch* dispatch_out); 47 48 49 void init_vulkan_dispatch_from_instance( 50 VulkanDispatch* vk, 51 VkInstance instance, 52 VulkanDispatch* dispatch_out); 53 54 55 void init_vulkan_dispatch_from_device( 56 VulkanDispatch* vk, 57 VkDevice device, 58 VulkanDispatch* dispatch_out); 59 60 61 bool vulkan_dispatch_check_instance_VK_VERSION_1_0( 62 const VulkanDispatch* vk); 63 64 65 bool vulkan_dispatch_check_instance_VK_VERSION_1_1( 66 const VulkanDispatch* vk); 67 68 69 bool vulkan_dispatch_check_device_VK_VERSION_1_0( 70 const VulkanDispatch* vk); 71 72 73 bool vulkan_dispatch_check_device_VK_VERSION_1_1( 74 const VulkanDispatch* vk); 75 76 struct VulkanDispatch { 77 #ifdef VK_VERSION_1_0 78 PFN_vkCreateInstance vkCreateInstance; 79 PFN_vkDestroyInstance vkDestroyInstance; 80 PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices; 81 PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures; 82 PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties; 83 PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties; 84 PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties; 85 PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties; 86 PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties; 87 PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr; 88 PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr; 89 PFN_vkCreateDevice vkCreateDevice; 90 PFN_vkDestroyDevice vkDestroyDevice; 91 PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties; 92 PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties; 93 PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties; 94 PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties; 95 PFN_vkGetDeviceQueue vkGetDeviceQueue; 96 PFN_vkQueueSubmit vkQueueSubmit; 97 PFN_vkQueueWaitIdle vkQueueWaitIdle; 98 PFN_vkDeviceWaitIdle vkDeviceWaitIdle; 99 PFN_vkAllocateMemory vkAllocateMemory; 100 PFN_vkFreeMemory vkFreeMemory; 101 PFN_vkMapMemory vkMapMemory; 102 PFN_vkUnmapMemory vkUnmapMemory; 103 PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges; 104 PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges; 105 PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment; 106 PFN_vkBindBufferMemory vkBindBufferMemory; 107 PFN_vkBindImageMemory vkBindImageMemory; 108 PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements; 109 PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements; 110 PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements; 111 PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties; 112 PFN_vkQueueBindSparse vkQueueBindSparse; 113 PFN_vkCreateFence vkCreateFence; 114 PFN_vkDestroyFence vkDestroyFence; 115 PFN_vkResetFences vkResetFences; 116 PFN_vkGetFenceStatus vkGetFenceStatus; 117 PFN_vkWaitForFences vkWaitForFences; 118 PFN_vkCreateSemaphore vkCreateSemaphore; 119 PFN_vkDestroySemaphore vkDestroySemaphore; 120 PFN_vkCreateEvent vkCreateEvent; 121 PFN_vkDestroyEvent vkDestroyEvent; 122 PFN_vkGetEventStatus vkGetEventStatus; 123 PFN_vkSetEvent vkSetEvent; 124 PFN_vkResetEvent vkResetEvent; 125 PFN_vkCreateQueryPool vkCreateQueryPool; 126 PFN_vkDestroyQueryPool vkDestroyQueryPool; 127 PFN_vkGetQueryPoolResults vkGetQueryPoolResults; 128 PFN_vkCreateBuffer vkCreateBuffer; 129 PFN_vkDestroyBuffer vkDestroyBuffer; 130 PFN_vkCreateBufferView vkCreateBufferView; 131 PFN_vkDestroyBufferView vkDestroyBufferView; 132 PFN_vkCreateImage vkCreateImage; 133 PFN_vkDestroyImage vkDestroyImage; 134 PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout; 135 PFN_vkCreateImageView vkCreateImageView; 136 PFN_vkDestroyImageView vkDestroyImageView; 137 PFN_vkCreateShaderModule vkCreateShaderModule; 138 PFN_vkDestroyShaderModule vkDestroyShaderModule; 139 PFN_vkCreatePipelineCache vkCreatePipelineCache; 140 PFN_vkDestroyPipelineCache vkDestroyPipelineCache; 141 PFN_vkGetPipelineCacheData vkGetPipelineCacheData; 142 PFN_vkMergePipelineCaches vkMergePipelineCaches; 143 PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines; 144 PFN_vkCreateComputePipelines vkCreateComputePipelines; 145 PFN_vkDestroyPipeline vkDestroyPipeline; 146 PFN_vkCreatePipelineLayout vkCreatePipelineLayout; 147 PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout; 148 PFN_vkCreateSampler vkCreateSampler; 149 PFN_vkDestroySampler vkDestroySampler; 150 PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout; 151 PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout; 152 PFN_vkCreateDescriptorPool vkCreateDescriptorPool; 153 PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool; 154 PFN_vkResetDescriptorPool vkResetDescriptorPool; 155 PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets; 156 PFN_vkFreeDescriptorSets vkFreeDescriptorSets; 157 PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets; 158 PFN_vkCreateFramebuffer vkCreateFramebuffer; 159 PFN_vkDestroyFramebuffer vkDestroyFramebuffer; 160 PFN_vkCreateRenderPass vkCreateRenderPass; 161 PFN_vkDestroyRenderPass vkDestroyRenderPass; 162 PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity; 163 PFN_vkCreateCommandPool vkCreateCommandPool; 164 PFN_vkDestroyCommandPool vkDestroyCommandPool; 165 PFN_vkResetCommandPool vkResetCommandPool; 166 PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers; 167 PFN_vkFreeCommandBuffers vkFreeCommandBuffers; 168 PFN_vkBeginCommandBuffer vkBeginCommandBuffer; 169 PFN_vkEndCommandBuffer vkEndCommandBuffer; 170 PFN_vkResetCommandBuffer vkResetCommandBuffer; 171 PFN_vkCmdBindPipeline vkCmdBindPipeline; 172 PFN_vkCmdSetViewport vkCmdSetViewport; 173 PFN_vkCmdSetScissor vkCmdSetScissor; 174 PFN_vkCmdSetLineWidth vkCmdSetLineWidth; 175 PFN_vkCmdSetDepthBias vkCmdSetDepthBias; 176 PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants; 177 PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds; 178 PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask; 179 PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask; 180 PFN_vkCmdSetStencilReference vkCmdSetStencilReference; 181 PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets; 182 PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer; 183 PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers; 184 PFN_vkCmdDraw vkCmdDraw; 185 PFN_vkCmdDrawIndexed vkCmdDrawIndexed; 186 PFN_vkCmdDrawIndirect vkCmdDrawIndirect; 187 PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect; 188 PFN_vkCmdDispatch vkCmdDispatch; 189 PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect; 190 PFN_vkCmdCopyBuffer vkCmdCopyBuffer; 191 PFN_vkCmdCopyImage vkCmdCopyImage; 192 PFN_vkCmdBlitImage vkCmdBlitImage; 193 PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage; 194 PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer; 195 PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer; 196 PFN_vkCmdFillBuffer vkCmdFillBuffer; 197 PFN_vkCmdClearColorImage vkCmdClearColorImage; 198 PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage; 199 PFN_vkCmdClearAttachments vkCmdClearAttachments; 200 PFN_vkCmdResolveImage vkCmdResolveImage; 201 PFN_vkCmdSetEvent vkCmdSetEvent; 202 PFN_vkCmdResetEvent vkCmdResetEvent; 203 PFN_vkCmdWaitEvents vkCmdWaitEvents; 204 PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier; 205 PFN_vkCmdBeginQuery vkCmdBeginQuery; 206 PFN_vkCmdEndQuery vkCmdEndQuery; 207 PFN_vkCmdResetQueryPool vkCmdResetQueryPool; 208 PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp; 209 PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults; 210 PFN_vkCmdPushConstants vkCmdPushConstants; 211 PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass; 212 PFN_vkCmdNextSubpass vkCmdNextSubpass; 213 PFN_vkCmdEndRenderPass vkCmdEndRenderPass; 214 PFN_vkCmdExecuteCommands vkCmdExecuteCommands; 215 #endif 216 #ifdef VK_VERSION_1_1 217 PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion; 218 PFN_vkBindBufferMemory2 vkBindBufferMemory2; 219 PFN_vkBindImageMemory2 vkBindImageMemory2; 220 PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures; 221 PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask; 222 PFN_vkCmdDispatchBase vkCmdDispatchBase; 223 PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups; 224 PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2; 225 PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2; 226 PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2; 227 PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2; 228 PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2; 229 PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2; 230 PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2; 231 PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2; 232 PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2; 233 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2; 234 PFN_vkTrimCommandPool vkTrimCommandPool; 235 PFN_vkGetDeviceQueue2 vkGetDeviceQueue2; 236 PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion; 237 PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion; 238 PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate; 239 PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate; 240 PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate; 241 PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties; 242 PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties; 243 PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties; 244 PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport; 245 #endif 246 #ifdef VK_VERSION_1_2 247 PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount; 248 PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount; 249 PFN_vkCreateRenderPass2 vkCreateRenderPass2; 250 PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2; 251 PFN_vkCmdNextSubpass2 vkCmdNextSubpass2; 252 PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2; 253 PFN_vkResetQueryPool vkResetQueryPool; 254 PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue; 255 PFN_vkWaitSemaphores vkWaitSemaphores; 256 PFN_vkSignalSemaphore vkSignalSemaphore; 257 PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress; 258 PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress; 259 PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress; 260 #endif 261 #ifdef VK_KHR_surface 262 PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR; 263 PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR; 264 PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR; 265 PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR; 266 PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR; 267 #endif 268 #ifdef VK_KHR_swapchain 269 PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR; 270 PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR; 271 PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR; 272 PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR; 273 PFN_vkQueuePresentKHR vkQueuePresentKHR; 274 PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR; 275 PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR; 276 PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR; 277 PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR; 278 #endif 279 #ifdef VK_KHR_display 280 PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR; 281 PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR; 282 PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR; 283 PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR; 284 PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR; 285 PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR; 286 PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR; 287 #endif 288 #ifdef VK_KHR_display_swapchain 289 PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR; 290 #endif 291 #ifdef VK_KHR_xlib_surface 292 PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR; 293 PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR; 294 #endif 295 #ifdef VK_KHR_xcb_surface 296 PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR; 297 PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR; 298 #endif 299 #ifdef VK_KHR_wayland_surface 300 PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR; 301 PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR; 302 #endif 303 #ifdef VK_KHR_android_surface 304 PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR; 305 #endif 306 #ifdef VK_KHR_win32_surface 307 PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR; 308 PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR; 309 #endif 310 #ifdef VK_KHR_sampler_mirror_clamp_to_edge 311 #endif 312 #ifdef VK_KHR_multiview 313 #endif 314 #ifdef VK_KHR_get_physical_device_properties2 315 PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR; 316 PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR; 317 PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR; 318 PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR; 319 PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR; 320 PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR; 321 PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR; 322 #endif 323 #ifdef VK_KHR_device_group 324 PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR; 325 PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR; 326 PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR; 327 #endif 328 #ifdef VK_KHR_shader_draw_parameters 329 #endif 330 #ifdef VK_KHR_maintenance1 331 PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR; 332 #endif 333 #ifdef VK_KHR_device_group_creation 334 PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR; 335 #endif 336 #ifdef VK_KHR_external_memory_capabilities 337 PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR; 338 #endif 339 #ifdef VK_KHR_external_memory 340 #endif 341 #ifdef VK_KHR_external_memory_win32 342 PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR; 343 PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR; 344 #endif 345 #ifdef VK_KHR_external_memory_fd 346 PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR; 347 PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR; 348 #endif 349 #ifdef VK_KHR_win32_keyed_mutex 350 #endif 351 #ifdef VK_KHR_external_semaphore_capabilities 352 PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR; 353 #endif 354 #ifdef VK_KHR_external_semaphore 355 #endif 356 #ifdef VK_KHR_external_semaphore_win32 357 PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR; 358 PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR; 359 #endif 360 #ifdef VK_KHR_external_semaphore_fd 361 PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR; 362 PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR; 363 #endif 364 #ifdef VK_KHR_push_descriptor 365 PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR; 366 PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR; 367 #endif 368 #ifdef VK_KHR_shader_float16_int8 369 #endif 370 #ifdef VK_KHR_16bit_storage 371 #endif 372 #ifdef VK_KHR_incremental_present 373 #endif 374 #ifdef VK_KHR_descriptor_update_template 375 PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR; 376 PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR; 377 PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR; 378 #endif 379 #ifdef VK_KHR_imageless_framebuffer 380 #endif 381 #ifdef VK_KHR_create_renderpass2 382 PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR; 383 PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR; 384 PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR; 385 PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR; 386 #endif 387 #ifdef VK_KHR_shared_presentable_image 388 PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR; 389 #endif 390 #ifdef VK_KHR_external_fence_capabilities 391 PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR; 392 #endif 393 #ifdef VK_KHR_external_fence 394 #endif 395 #ifdef VK_KHR_external_fence_win32 396 PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR; 397 PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR; 398 #endif 399 #ifdef VK_KHR_external_fence_fd 400 PFN_vkImportFenceFdKHR vkImportFenceFdKHR; 401 PFN_vkGetFenceFdKHR vkGetFenceFdKHR; 402 #endif 403 #ifdef VK_KHR_performance_query 404 PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR; 405 PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR; 406 PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR; 407 PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR; 408 #endif 409 #ifdef VK_KHR_maintenance2 410 #endif 411 #ifdef VK_KHR_get_surface_capabilities2 412 PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR; 413 PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR; 414 #endif 415 #ifdef VK_KHR_variable_pointers 416 #endif 417 #ifdef VK_KHR_get_display_properties2 418 PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR; 419 PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR; 420 PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR; 421 PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR; 422 #endif 423 #ifdef VK_KHR_dedicated_allocation 424 #endif 425 #ifdef VK_KHR_storage_buffer_storage_class 426 #endif 427 #ifdef VK_KHR_relaxed_block_layout 428 #endif 429 #ifdef VK_KHR_get_memory_requirements2 430 PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR; 431 PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR; 432 PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR; 433 #endif 434 #ifdef VK_KHR_image_format_list 435 #endif 436 #ifdef VK_KHR_sampler_ycbcr_conversion 437 PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR; 438 PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR; 439 #endif 440 #ifdef VK_KHR_bind_memory2 441 PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR; 442 PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR; 443 #endif 444 #ifdef VK_KHR_portability_subset 445 #endif 446 #ifdef VK_KHR_maintenance3 447 PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR; 448 #endif 449 #ifdef VK_KHR_draw_indirect_count 450 PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR; 451 PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR; 452 #endif 453 #ifdef VK_KHR_shader_subgroup_extended_types 454 #endif 455 #ifdef VK_KHR_8bit_storage 456 #endif 457 #ifdef VK_KHR_shader_atomic_int64 458 #endif 459 #ifdef VK_KHR_shader_clock 460 #endif 461 #ifdef VK_KHR_driver_properties 462 #endif 463 #ifdef VK_KHR_shader_float_controls 464 #endif 465 #ifdef VK_KHR_depth_stencil_resolve 466 #endif 467 #ifdef VK_KHR_swapchain_mutable_format 468 #endif 469 #ifdef VK_KHR_timeline_semaphore 470 PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR; 471 PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR; 472 PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR; 473 #endif 474 #ifdef VK_KHR_vulkan_memory_model 475 #endif 476 #ifdef VK_KHR_shader_terminate_invocation 477 #endif 478 #ifdef VK_KHR_fragment_shading_rate 479 PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR vkGetPhysicalDeviceFragmentShadingRatesKHR; 480 PFN_vkCmdSetFragmentShadingRateKHR vkCmdSetFragmentShadingRateKHR; 481 #endif 482 #ifdef VK_KHR_spirv_1_4 483 #endif 484 #ifdef VK_KHR_surface_protected_capabilities 485 #endif 486 #ifdef VK_KHR_separate_depth_stencil_layouts 487 #endif 488 #ifdef VK_KHR_uniform_buffer_standard_layout 489 #endif 490 #ifdef VK_KHR_buffer_device_address 491 PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR; 492 PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR; 493 PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR; 494 #endif 495 #ifdef VK_KHR_deferred_host_operations 496 PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR; 497 PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR; 498 PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR; 499 PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR; 500 PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR; 501 #endif 502 #ifdef VK_KHR_pipeline_executable_properties 503 PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR; 504 PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR; 505 PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR; 506 #endif 507 #ifdef VK_KHR_pipeline_library 508 #endif 509 #ifdef VK_KHR_shader_non_semantic_info 510 #endif 511 #ifdef VK_KHR_copy_commands2 512 PFN_vkCmdCopyBuffer2KHR vkCmdCopyBuffer2KHR; 513 PFN_vkCmdCopyImage2KHR vkCmdCopyImage2KHR; 514 PFN_vkCmdCopyBufferToImage2KHR vkCmdCopyBufferToImage2KHR; 515 PFN_vkCmdCopyImageToBuffer2KHR vkCmdCopyImageToBuffer2KHR; 516 PFN_vkCmdBlitImage2KHR vkCmdBlitImage2KHR; 517 PFN_vkCmdResolveImage2KHR vkCmdResolveImage2KHR; 518 #endif 519 #ifdef VK_ANDROID_native_buffer 520 PFN_vkGetSwapchainGrallocUsageANDROID vkGetSwapchainGrallocUsageANDROID; 521 PFN_vkAcquireImageANDROID vkAcquireImageANDROID; 522 PFN_vkQueueSignalReleaseImageANDROID vkQueueSignalReleaseImageANDROID; 523 #endif 524 #ifdef VK_EXT_debug_report 525 PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT; 526 PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT; 527 PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT; 528 #endif 529 #ifdef VK_NV_glsl_shader 530 #endif 531 #ifdef VK_EXT_depth_range_unrestricted 532 #endif 533 #ifdef VK_IMG_filter_cubic 534 #endif 535 #ifdef VK_AMD_rasterization_order 536 #endif 537 #ifdef VK_AMD_shader_trinary_minmax 538 #endif 539 #ifdef VK_AMD_shader_explicit_vertex_parameter 540 #endif 541 #ifdef VK_EXT_debug_marker 542 PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT; 543 PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT; 544 PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT; 545 PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT; 546 PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT; 547 #endif 548 #ifdef VK_AMD_gcn_shader 549 #endif 550 #ifdef VK_NV_dedicated_allocation 551 #endif 552 #ifdef VK_EXT_transform_feedback 553 PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT; 554 PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT; 555 PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT; 556 PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT; 557 PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT; 558 PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT; 559 #endif 560 #ifdef VK_NVX_image_view_handle 561 PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX; 562 PFN_vkGetImageViewAddressNVX vkGetImageViewAddressNVX; 563 #endif 564 #ifdef VK_AMD_draw_indirect_count 565 PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD; 566 PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD; 567 #endif 568 #ifdef VK_AMD_negative_viewport_height 569 #endif 570 #ifdef VK_AMD_gpu_shader_half_float 571 #endif 572 #ifdef VK_AMD_shader_ballot 573 #endif 574 #ifdef VK_AMD_texture_gather_bias_lod 575 #endif 576 #ifdef VK_AMD_shader_info 577 PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD; 578 #endif 579 #ifdef VK_AMD_shader_image_load_store_lod 580 #endif 581 #ifdef VK_GGP_stream_descriptor_surface 582 PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP; 583 #endif 584 #ifdef VK_NV_corner_sampled_image 585 #endif 586 #ifdef VK_IMG_format_pvrtc 587 #endif 588 #ifdef VK_NV_external_memory_capabilities 589 PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV; 590 #endif 591 #ifdef VK_NV_external_memory 592 #endif 593 #ifdef VK_NV_external_memory_win32 594 PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV; 595 #endif 596 #ifdef VK_NV_win32_keyed_mutex 597 #endif 598 #ifdef VK_EXT_validation_flags 599 #endif 600 #ifdef VK_NN_vi_surface 601 PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN; 602 #endif 603 #ifdef VK_EXT_shader_subgroup_ballot 604 #endif 605 #ifdef VK_EXT_shader_subgroup_vote 606 #endif 607 #ifdef VK_EXT_texture_compression_astc_hdr 608 #endif 609 #ifdef VK_EXT_astc_decode_mode 610 #endif 611 #ifdef VK_EXT_conditional_rendering 612 PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT; 613 PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT; 614 #endif 615 #ifdef VK_NV_clip_space_w_scaling 616 PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV; 617 #endif 618 #ifdef VK_EXT_direct_mode_display 619 PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT; 620 #endif 621 #ifdef VK_EXT_acquire_xlib_display 622 PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT; 623 PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT; 624 #endif 625 #ifdef VK_EXT_display_surface_counter 626 PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT; 627 #endif 628 #ifdef VK_EXT_display_control 629 PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT; 630 PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT; 631 PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT; 632 PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT; 633 #endif 634 #ifdef VK_GOOGLE_display_timing 635 PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE; 636 PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE; 637 #endif 638 #ifdef VK_NV_sample_mask_override_coverage 639 #endif 640 #ifdef VK_NV_geometry_shader_passthrough 641 #endif 642 #ifdef VK_NV_viewport_array2 643 #endif 644 #ifdef VK_NVX_multiview_per_view_attributes 645 #endif 646 #ifdef VK_NV_viewport_swizzle 647 #endif 648 #ifdef VK_EXT_discard_rectangles 649 PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT; 650 #endif 651 #ifdef VK_EXT_conservative_rasterization 652 #endif 653 #ifdef VK_EXT_depth_clip_enable 654 #endif 655 #ifdef VK_EXT_swapchain_colorspace 656 #endif 657 #ifdef VK_EXT_hdr_metadata 658 PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT; 659 #endif 660 #ifdef VK_MVK_ios_surface 661 PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK; 662 #endif 663 #ifdef VK_MVK_macos_surface 664 PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK; 665 #endif 666 #ifdef VK_MVK_moltenvk 667 PFN_vkGetMTLDeviceMVK vkGetMTLDeviceMVK; 668 PFN_vkSetMTLTextureMVK vkSetMTLTextureMVK; 669 PFN_vkGetMTLTextureMVK vkGetMTLTextureMVK; 670 PFN_vkGetMTLBufferMVK vkGetMTLBufferMVK; 671 PFN_vkUseIOSurfaceMVK vkUseIOSurfaceMVK; 672 PFN_vkGetIOSurfaceMVK vkGetIOSurfaceMVK; 673 #endif 674 #ifdef VK_EXT_external_memory_dma_buf 675 #endif 676 #ifdef VK_EXT_queue_family_foreign 677 #endif 678 #ifdef VK_EXT_debug_utils 679 PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT; 680 PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT; 681 PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT; 682 PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT; 683 PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT; 684 PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT; 685 PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT; 686 PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT; 687 PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT; 688 PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT; 689 PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT; 690 #endif 691 #ifdef VK_ANDROID_external_memory_android_hardware_buffer 692 PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID; 693 PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID; 694 #endif 695 #ifdef VK_EXT_sampler_filter_minmax 696 #endif 697 #ifdef VK_AMD_gpu_shader_int16 698 #endif 699 #ifdef VK_AMD_mixed_attachment_samples 700 #endif 701 #ifdef VK_AMD_shader_fragment_mask 702 #endif 703 #ifdef VK_EXT_inline_uniform_block 704 #endif 705 #ifdef VK_EXT_shader_stencil_export 706 #endif 707 #ifdef VK_EXT_sample_locations 708 PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT; 709 PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT; 710 #endif 711 #ifdef VK_EXT_blend_operation_advanced 712 #endif 713 #ifdef VK_NV_fragment_coverage_to_color 714 #endif 715 #ifdef VK_NV_framebuffer_mixed_samples 716 #endif 717 #ifdef VK_NV_fill_rectangle 718 #endif 719 #ifdef VK_NV_shader_sm_builtins 720 #endif 721 #ifdef VK_EXT_post_depth_coverage 722 #endif 723 #ifdef VK_EXT_image_drm_format_modifier 724 PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT; 725 #endif 726 #ifdef VK_EXT_validation_cache 727 PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT; 728 PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT; 729 PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT; 730 PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT; 731 #endif 732 #ifdef VK_EXT_descriptor_indexing 733 #endif 734 #ifdef VK_EXT_shader_viewport_index_layer 735 #endif 736 #ifdef VK_NV_shading_rate_image 737 PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV; 738 PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV; 739 PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV; 740 #endif 741 #ifdef VK_NV_ray_tracing 742 PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV; 743 PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV; 744 PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV; 745 PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV; 746 PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV; 747 PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV; 748 PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV; 749 PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV; 750 PFN_vkGetRayTracingShaderGroupHandlesKHR vkGetRayTracingShaderGroupHandlesKHR; 751 PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV; 752 PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV; 753 PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV; 754 PFN_vkCompileDeferredNV vkCompileDeferredNV; 755 #endif 756 #ifdef VK_NV_representative_fragment_test 757 #endif 758 #ifdef VK_EXT_filter_cubic 759 #endif 760 #ifdef VK_QCOM_render_pass_shader_resolve 761 #endif 762 #ifdef VK_EXT_global_priority 763 #endif 764 #ifdef VK_EXT_external_memory_host 765 PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT; 766 #endif 767 #ifdef VK_AMD_buffer_marker 768 PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD; 769 #endif 770 #ifdef VK_AMD_pipeline_compiler_control 771 #endif 772 #ifdef VK_EXT_calibrated_timestamps 773 PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT; 774 PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT; 775 #endif 776 #ifdef VK_AMD_shader_core_properties 777 #endif 778 #ifdef VK_AMD_memory_overallocation_behavior 779 #endif 780 #ifdef VK_EXT_vertex_attribute_divisor 781 #endif 782 #ifdef VK_GGP_frame_token 783 #endif 784 #ifdef VK_EXT_pipeline_creation_feedback 785 #endif 786 #ifdef VK_NV_shader_subgroup_partitioned 787 #endif 788 #ifdef VK_NV_compute_shader_derivatives 789 #endif 790 #ifdef VK_NV_mesh_shader 791 PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV; 792 PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV; 793 PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV; 794 #endif 795 #ifdef VK_NV_fragment_shader_barycentric 796 #endif 797 #ifdef VK_NV_shader_image_footprint 798 #endif 799 #ifdef VK_NV_scissor_exclusive 800 PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV; 801 #endif 802 #ifdef VK_NV_device_diagnostic_checkpoints 803 PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV; 804 PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV; 805 #endif 806 #ifdef VK_INTEL_shader_integer_functions2 807 #endif 808 #ifdef VK_INTEL_performance_query 809 PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL; 810 PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL; 811 PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL; 812 PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL; 813 PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL; 814 PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL; 815 PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL; 816 PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL; 817 PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL; 818 #endif 819 #ifdef VK_EXT_pci_bus_info 820 #endif 821 #ifdef VK_AMD_display_native_hdr 822 PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD; 823 #endif 824 #ifdef VK_FUCHSIA_imagepipe_surface 825 PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA; 826 #endif 827 #ifdef VK_EXT_metal_surface 828 PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT; 829 #endif 830 #ifdef VK_EXT_fragment_density_map 831 #endif 832 #ifdef VK_EXT_scalar_block_layout 833 #endif 834 #ifdef VK_GOOGLE_hlsl_functionality1 835 #endif 836 #ifdef VK_GOOGLE_decorate_string 837 #endif 838 #ifdef VK_EXT_subgroup_size_control 839 #endif 840 #ifdef VK_AMD_shader_core_properties2 841 #endif 842 #ifdef VK_AMD_device_coherent_memory 843 #endif 844 #ifdef VK_EXT_shader_image_atomic_int64 845 #endif 846 #ifdef VK_EXT_memory_budget 847 #endif 848 #ifdef VK_EXT_memory_priority 849 #endif 850 #ifdef VK_NV_dedicated_allocation_image_aliasing 851 #endif 852 #ifdef VK_EXT_buffer_device_address 853 PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT; 854 #endif 855 #ifdef VK_EXT_tooling_info 856 PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT; 857 #endif 858 #ifdef VK_EXT_separate_stencil_usage 859 #endif 860 #ifdef VK_EXT_validation_features 861 #endif 862 #ifdef VK_NV_cooperative_matrix 863 PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV; 864 #endif 865 #ifdef VK_NV_coverage_reduction_mode 866 PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV; 867 #endif 868 #ifdef VK_EXT_fragment_shader_interlock 869 #endif 870 #ifdef VK_EXT_ycbcr_image_arrays 871 #endif 872 #ifdef VK_EXT_full_screen_exclusive 873 PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT; 874 PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT; 875 PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT; 876 PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT; 877 #endif 878 #ifdef VK_EXT_headless_surface 879 PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT; 880 #endif 881 #ifdef VK_EXT_line_rasterization 882 PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT; 883 #endif 884 #ifdef VK_EXT_shader_atomic_float 885 #endif 886 #ifdef VK_EXT_host_query_reset 887 PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT; 888 #endif 889 #ifdef VK_EXT_index_type_uint8 890 #endif 891 #ifdef VK_EXT_extended_dynamic_state 892 PFN_vkCmdSetCullModeEXT vkCmdSetCullModeEXT; 893 PFN_vkCmdSetFrontFaceEXT vkCmdSetFrontFaceEXT; 894 PFN_vkCmdSetPrimitiveTopologyEXT vkCmdSetPrimitiveTopologyEXT; 895 PFN_vkCmdSetViewportWithCountEXT vkCmdSetViewportWithCountEXT; 896 PFN_vkCmdSetScissorWithCountEXT vkCmdSetScissorWithCountEXT; 897 PFN_vkCmdBindVertexBuffers2EXT vkCmdBindVertexBuffers2EXT; 898 PFN_vkCmdSetDepthTestEnableEXT vkCmdSetDepthTestEnableEXT; 899 PFN_vkCmdSetDepthWriteEnableEXT vkCmdSetDepthWriteEnableEXT; 900 PFN_vkCmdSetDepthCompareOpEXT vkCmdSetDepthCompareOpEXT; 901 PFN_vkCmdSetDepthBoundsTestEnableEXT vkCmdSetDepthBoundsTestEnableEXT; 902 PFN_vkCmdSetStencilTestEnableEXT vkCmdSetStencilTestEnableEXT; 903 PFN_vkCmdSetStencilOpEXT vkCmdSetStencilOpEXT; 904 #endif 905 #ifdef VK_EXT_shader_demote_to_helper_invocation 906 #endif 907 #ifdef VK_NV_device_generated_commands 908 PFN_vkGetGeneratedCommandsMemoryRequirementsNV vkGetGeneratedCommandsMemoryRequirementsNV; 909 PFN_vkCmdPreprocessGeneratedCommandsNV vkCmdPreprocessGeneratedCommandsNV; 910 PFN_vkCmdExecuteGeneratedCommandsNV vkCmdExecuteGeneratedCommandsNV; 911 PFN_vkCmdBindPipelineShaderGroupNV vkCmdBindPipelineShaderGroupNV; 912 PFN_vkCreateIndirectCommandsLayoutNV vkCreateIndirectCommandsLayoutNV; 913 PFN_vkDestroyIndirectCommandsLayoutNV vkDestroyIndirectCommandsLayoutNV; 914 #endif 915 #ifdef VK_EXT_texel_buffer_alignment 916 #endif 917 #ifdef VK_QCOM_render_pass_transform 918 #endif 919 #ifdef VK_EXT_device_memory_report 920 #endif 921 #ifdef VK_EXT_robustness2 922 #endif 923 #ifdef VK_EXT_custom_border_color 924 #endif 925 #ifdef VK_GOOGLE_user_type 926 #endif 927 #ifdef VK_EXT_private_data 928 PFN_vkCreatePrivateDataSlotEXT vkCreatePrivateDataSlotEXT; 929 PFN_vkDestroyPrivateDataSlotEXT vkDestroyPrivateDataSlotEXT; 930 PFN_vkSetPrivateDataEXT vkSetPrivateDataEXT; 931 PFN_vkGetPrivateDataEXT vkGetPrivateDataEXT; 932 #endif 933 #ifdef VK_EXT_pipeline_creation_cache_control 934 #endif 935 #ifdef VK_NV_device_diagnostics_config 936 #endif 937 #ifdef VK_QCOM_render_pass_store_ops 938 #endif 939 #ifdef VK_NV_fragment_shading_rate_enums 940 PFN_vkCmdSetFragmentShadingRateEnumNV vkCmdSetFragmentShadingRateEnumNV; 941 #endif 942 #ifdef VK_EXT_fragment_density_map2 943 #endif 944 #ifdef VK_QCOM_rotated_copy_commands 945 #endif 946 #ifdef VK_EXT_image_robustness 947 #endif 948 #ifdef VK_EXT_4444_formats 949 #endif 950 #ifdef VK_EXT_directfb_surface 951 PFN_vkCreateDirectFBSurfaceEXT vkCreateDirectFBSurfaceEXT; 952 PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT vkGetPhysicalDeviceDirectFBPresentationSupportEXT; 953 #endif 954 #ifdef VK_GOOGLE_gfxstream 955 PFN_vkRegisterImageColorBufferGOOGLE vkRegisterImageColorBufferGOOGLE; 956 PFN_vkRegisterBufferColorBufferGOOGLE vkRegisterBufferColorBufferGOOGLE; 957 PFN_vkMapMemoryIntoAddressSpaceGOOGLE vkMapMemoryIntoAddressSpaceGOOGLE; 958 PFN_vkUpdateDescriptorSetWithTemplateSizedGOOGLE vkUpdateDescriptorSetWithTemplateSizedGOOGLE; 959 PFN_vkBeginCommandBufferAsyncGOOGLE vkBeginCommandBufferAsyncGOOGLE; 960 PFN_vkEndCommandBufferAsyncGOOGLE vkEndCommandBufferAsyncGOOGLE; 961 PFN_vkResetCommandBufferAsyncGOOGLE vkResetCommandBufferAsyncGOOGLE; 962 PFN_vkCommandBufferHostSyncGOOGLE vkCommandBufferHostSyncGOOGLE; 963 PFN_vkCreateImageWithRequirementsGOOGLE vkCreateImageWithRequirementsGOOGLE; 964 PFN_vkCreateBufferWithRequirementsGOOGLE vkCreateBufferWithRequirementsGOOGLE; 965 PFN_vkGetMemoryHostAddressInfoGOOGLE vkGetMemoryHostAddressInfoGOOGLE; 966 PFN_vkFreeMemorySyncGOOGLE vkFreeMemorySyncGOOGLE; 967 PFN_vkQueueHostSyncGOOGLE vkQueueHostSyncGOOGLE; 968 PFN_vkQueueSubmitAsyncGOOGLE vkQueueSubmitAsyncGOOGLE; 969 PFN_vkQueueWaitIdleAsyncGOOGLE vkQueueWaitIdleAsyncGOOGLE; 970 PFN_vkQueueBindSparseAsyncGOOGLE vkQueueBindSparseAsyncGOOGLE; 971 PFN_vkGetLinearImageLayoutGOOGLE vkGetLinearImageLayoutGOOGLE; 972 PFN_vkQueueFlushCommandsGOOGLE vkQueueFlushCommandsGOOGLE; 973 PFN_vkQueueCommitDescriptorSetUpdatesGOOGLE vkQueueCommitDescriptorSetUpdatesGOOGLE; 974 PFN_vkCollectDescriptorPoolIdsGOOGLE vkCollectDescriptorPoolIdsGOOGLE; 975 #endif 976 #ifdef VK_KHR_acceleration_structure 977 PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR; 978 PFN_vkDestroyAccelerationStructureKHR vkDestroyAccelerationStructureKHR; 979 PFN_vkCmdBuildAccelerationStructuresKHR vkCmdBuildAccelerationStructuresKHR; 980 PFN_vkCmdBuildAccelerationStructuresIndirectKHR vkCmdBuildAccelerationStructuresIndirectKHR; 981 PFN_vkBuildAccelerationStructuresKHR vkBuildAccelerationStructuresKHR; 982 PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR; 983 PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR; 984 PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR; 985 PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR; 986 PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR; 987 PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR; 988 PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR; 989 PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR; 990 PFN_vkCmdWriteAccelerationStructuresPropertiesKHR vkCmdWriteAccelerationStructuresPropertiesKHR; 991 PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR; 992 PFN_vkGetAccelerationStructureBuildSizesKHR vkGetAccelerationStructureBuildSizesKHR; 993 #endif 994 #ifdef VK_KHR_ray_tracing_pipeline 995 PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR; 996 PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR; 997 PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR; 998 PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR; 999 PFN_vkGetRayTracingShaderGroupStackSizeKHR vkGetRayTracingShaderGroupStackSizeKHR; 1000 PFN_vkCmdSetRayTracingPipelineStackSizeKHR vkCmdSetRayTracingPipelineStackSizeKHR; 1001 #endif 1002 #ifdef VK_KHR_ray_query 1003 #endif 1004 }; 1005 1006 } // namespace goldfish_vk 1007