• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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