usp10/tests: A spelling fix in an ok() message.
[wine.git] / dlls / winevulkan / vulkan_thunks.h
blobd39cab76ac82f2f75966d5298e8e996a7d03087f
1 /* Automatically generated from Vulkan vk.xml; DO NOT EDIT!
3 * This file is generated from Vulkan vk.xml file covered
4 * by the following copyright and permission notice:
6 * Copyright (c) 2015-2019 The Khronos Group Inc.
8 * Licensed under the Apache License, Version 2.0 (the "License");
9 * you may not use this file except in compliance with the License.
10 * You may obtain a copy of the License at
12 * http://www.apache.org/licenses/LICENSE-2.0
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
20 * ---- Exceptions to the Apache 2.0 License: ----
22 * As an exception, if you use this Software to generate code and portions of
23 * this Software are embedded into the generated code as a result, you may
24 * redistribute such product without providing attribution as would otherwise
25 * be required by Sections 4(a), 4(b) and 4(d) of the License.
27 * In addition, if you combine or link code generated by this Software with
28 * software that is licensed under the GPLv2 or the LGPL v2.0 or 2.1
29 * ("`Combined Software`") and if a court of competent jurisdiction determines
30 * that the patent provision (Section 3), the indemnity provision (Section 9)
31 * or other Section of the License conflicts with the conditions of the
32 * applicable GPL or LGPL license, you may retroactively and prospectively
33 * choose to deem waived or otherwise exclude such Section(s) of the License,
34 * but only in their entirety and only with respect to the Combined Software.
38 #ifndef __WINE_VULKAN_THUNKS_H
39 #define __WINE_VULKAN_THUNKS_H
41 #define WINE_VK_VERSION VK_API_VERSION_1_1
43 /* Functions for which we have custom implementations outside of the thunks. */
44 VkResult WINAPI wine_vkAllocateCommandBuffers(VkDevice device, const VkCommandBufferAllocateInfo *pAllocateInfo, VkCommandBuffer *pCommandBuffers);
45 void WINAPI wine_vkCmdExecuteCommands(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers);
46 VkResult WINAPI wine_vkCreateCommandPool(VkDevice device, const VkCommandPoolCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkCommandPool *pCommandPool);
47 VkResult WINAPI wine_vkCreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDevice *pDevice);
48 void WINAPI wine_vkDestroyCommandPool(VkDevice device, VkCommandPool commandPool, const VkAllocationCallbacks *pAllocator);
49 void WINAPI wine_vkDestroyDevice(VkDevice device, const VkAllocationCallbacks *pAllocator);
50 void WINAPI wine_vkDestroyInstance(VkInstance instance, const VkAllocationCallbacks *pAllocator);
51 VkResult WINAPI wine_vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice, const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties);
52 VkResult WINAPI wine_vkEnumeratePhysicalDeviceGroups(VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties);
53 VkResult WINAPI wine_vkEnumeratePhysicalDeviceGroupsKHR(VkInstance instance, uint32_t *pPhysicalDeviceGroupCount, VkPhysicalDeviceGroupProperties *pPhysicalDeviceGroupProperties) DECLSPEC_HIDDEN;
54 VkResult WINAPI wine_vkEnumeratePhysicalDevices(VkInstance instance, uint32_t *pPhysicalDeviceCount, VkPhysicalDevice *pPhysicalDevices);
55 void WINAPI wine_vkFreeCommandBuffers(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers);
56 PFN_vkVoidFunction WINAPI wine_vkGetDeviceProcAddr(VkDevice device, const char *pName);
57 void WINAPI wine_vkGetDeviceQueue(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue *pQueue);
58 void WINAPI wine_vkGetDeviceQueue2(VkDevice device, const VkDeviceQueueInfo2 *pQueueInfo, VkQueue *pQueue);
59 void WINAPI wine_vkGetPhysicalDeviceExternalBufferProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo *pExternalBufferInfo, VkExternalBufferProperties *pExternalBufferProperties);
60 void WINAPI wine_vkGetPhysicalDeviceExternalBufferPropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalBufferInfo *pExternalBufferInfo, VkExternalBufferProperties *pExternalBufferProperties) DECLSPEC_HIDDEN;
61 void WINAPI wine_vkGetPhysicalDeviceExternalFenceProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties);
62 void WINAPI wine_vkGetPhysicalDeviceExternalFencePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalFenceInfo *pExternalFenceInfo, VkExternalFenceProperties *pExternalFenceProperties) DECLSPEC_HIDDEN;
63 void WINAPI wine_vkGetPhysicalDeviceExternalSemaphoreProperties(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo *pExternalSemaphoreInfo, VkExternalSemaphoreProperties *pExternalSemaphoreProperties);
64 void WINAPI wine_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceExternalSemaphoreInfo *pExternalSemaphoreInfo, VkExternalSemaphoreProperties *pExternalSemaphoreProperties) DECLSPEC_HIDDEN;
65 VkResult WINAPI wine_vkGetPhysicalDeviceImageFormatProperties2(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2 *pImageFormatInfo, VkImageFormatProperties2 *pImageFormatProperties);
66 VkResult WINAPI wine_vkGetPhysicalDeviceImageFormatProperties2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2 *pImageFormatInfo, VkImageFormatProperties2 *pImageFormatProperties) DECLSPEC_HIDDEN;
67 VkResult WINAPI wine_vkQueueSubmit(VkQueue queue, uint32_t submitCount, const VkSubmitInfo *pSubmits, VkFence fence);
69 /* Private thunks */
70 VkResult thunk_vkGetPhysicalDeviceImageFormatProperties2(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2 *pImageFormatInfo, VkImageFormatProperties2 *pImageFormatProperties) DECLSPEC_HIDDEN;
71 VkResult thunk_vkGetPhysicalDeviceImageFormatProperties2KHR(VkPhysicalDevice physicalDevice, const VkPhysicalDeviceImageFormatInfo2 *pImageFormatInfo, VkImageFormatProperties2 *pImageFormatProperties) DECLSPEC_HIDDEN;
73 typedef struct VkAcquireNextImageInfoKHR_host
75 VkStructureType sType;
76 const void *pNext;
77 VkSwapchainKHR swapchain;
78 uint64_t timeout;
79 VkSemaphore semaphore;
80 VkFence fence;
81 uint32_t deviceMask;
82 } VkAcquireNextImageInfoKHR_host;
84 typedef struct VkCommandBufferAllocateInfo_host
86 VkStructureType sType;
87 const void *pNext;
88 VkCommandPool commandPool;
89 VkCommandBufferLevel level;
90 uint32_t commandBufferCount;
91 } VkCommandBufferAllocateInfo_host;
93 typedef struct VkDescriptorSetAllocateInfo_host
95 VkStructureType sType;
96 const void *pNext;
97 VkDescriptorPool descriptorPool;
98 uint32_t descriptorSetCount;
99 const VkDescriptorSetLayout *pSetLayouts;
100 } VkDescriptorSetAllocateInfo_host;
102 typedef struct VkMemoryAllocateInfo_host
104 VkStructureType sType;
105 const void *pNext;
106 VkDeviceSize allocationSize;
107 uint32_t memoryTypeIndex;
108 } VkMemoryAllocateInfo_host;
110 typedef struct VkCommandBufferInheritanceInfo_host
112 VkStructureType sType;
113 const void *pNext;
114 VkRenderPass renderPass;
115 uint32_t subpass;
116 VkFramebuffer framebuffer;
117 VkBool32 occlusionQueryEnable;
118 VkQueryControlFlags queryFlags;
119 VkQueryPipelineStatisticFlags pipelineStatistics;
120 } VkCommandBufferInheritanceInfo_host;
122 typedef struct VkCommandBufferBeginInfo_host
124 VkStructureType sType;
125 const void *pNext;
126 VkCommandBufferUsageFlags flags;
127 const VkCommandBufferInheritanceInfo_host *pInheritanceInfo;
128 } VkCommandBufferBeginInfo_host;
130 typedef struct VkBindAccelerationStructureMemoryInfoNV_host
132 VkStructureType sType;
133 const void *pNext;
134 VkAccelerationStructureNV accelerationStructure;
135 VkDeviceMemory memory;
136 VkDeviceSize memoryOffset;
137 uint32_t deviceIndexCount;
138 const uint32_t *pDeviceIndices;
139 } VkBindAccelerationStructureMemoryInfoNV_host;
141 typedef struct VkBindBufferMemoryInfo_host
143 VkStructureType sType;
144 const void *pNext;
145 VkBuffer buffer;
146 VkDeviceMemory memory;
147 VkDeviceSize memoryOffset;
148 } VkBindBufferMemoryInfo_host;
150 typedef struct VkBindImageMemoryInfo_host
152 VkStructureType sType;
153 const void *pNext;
154 VkImage image;
155 VkDeviceMemory memory;
156 VkDeviceSize memoryOffset;
157 } VkBindImageMemoryInfo_host;
159 typedef struct VkConditionalRenderingBeginInfoEXT_host
161 VkStructureType sType;
162 const void *pNext;
163 VkBuffer buffer;
164 VkDeviceSize offset;
165 VkConditionalRenderingFlagsEXT flags;
166 } VkConditionalRenderingBeginInfoEXT_host;
168 typedef struct VkRenderPassBeginInfo_host
170 VkStructureType sType;
171 const void *pNext;
172 VkRenderPass renderPass;
173 VkFramebuffer framebuffer;
174 VkRect2D renderArea;
175 uint32_t clearValueCount;
176 const VkClearValue *pClearValues;
177 } VkRenderPassBeginInfo_host;
179 typedef struct VkGeometryTrianglesNV_host
181 VkStructureType sType;
182 const void *pNext;
183 VkBuffer vertexData;
184 VkDeviceSize vertexOffset;
185 uint32_t vertexCount;
186 VkDeviceSize vertexStride;
187 VkFormat vertexFormat;
188 VkBuffer indexData;
189 VkDeviceSize indexOffset;
190 uint32_t indexCount;
191 VkIndexType indexType;
192 VkBuffer transformData;
193 VkDeviceSize transformOffset;
194 } VkGeometryTrianglesNV_host;
196 typedef struct VkGeometryAABBNV_host
198 VkStructureType sType;
199 const void *pNext;
200 VkBuffer aabbData;
201 uint32_t numAABBs;
202 uint32_t stride;
203 VkDeviceSize offset;
204 } VkGeometryAABBNV_host;
206 typedef struct VkGeometryDataNV_host
208 VkGeometryTrianglesNV_host triangles;
209 VkGeometryAABBNV_host aabbs;
210 } VkGeometryDataNV_host;
212 typedef struct VkGeometryNV_host
214 VkStructureType sType;
215 const void *pNext;
216 VkGeometryTypeNV geometryType;
217 VkGeometryDataNV_host geometry;
218 VkGeometryFlagsNV flags;
219 } VkGeometryNV_host;
221 typedef struct VkAccelerationStructureInfoNV_host
223 VkStructureType sType;
224 const void *pNext;
225 VkAccelerationStructureTypeNV type;
226 VkBuildAccelerationStructureFlagsNV flags;
227 uint32_t instanceCount;
228 uint32_t geometryCount;
229 const VkGeometryNV_host *pGeometries;
230 } VkAccelerationStructureInfoNV_host;
232 typedef struct VkBufferCopy_host
234 VkDeviceSize srcOffset;
235 VkDeviceSize dstOffset;
236 VkDeviceSize size;
237 } VkBufferCopy_host;
239 typedef struct VkBufferImageCopy_host
241 VkDeviceSize bufferOffset;
242 uint32_t bufferRowLength;
243 uint32_t bufferImageHeight;
244 VkImageSubresourceLayers imageSubresource;
245 VkOffset3D imageOffset;
246 VkExtent3D imageExtent;
247 } VkBufferImageCopy_host;
249 typedef struct VkBufferMemoryBarrier_host
251 VkStructureType sType;
252 const void *pNext;
253 VkAccessFlags srcAccessMask;
254 VkAccessFlags dstAccessMask;
255 uint32_t srcQueueFamilyIndex;
256 uint32_t dstQueueFamilyIndex;
257 VkBuffer buffer;
258 VkDeviceSize offset;
259 VkDeviceSize size;
260 } VkBufferMemoryBarrier_host;
262 typedef struct VkImageMemoryBarrier_host
264 VkStructureType sType;
265 const void *pNext;
266 VkAccessFlags srcAccessMask;
267 VkAccessFlags dstAccessMask;
268 VkImageLayout oldLayout;
269 VkImageLayout newLayout;
270 uint32_t srcQueueFamilyIndex;
271 uint32_t dstQueueFamilyIndex;
272 VkImage image;
273 VkImageSubresourceRange subresourceRange;
274 } VkImageMemoryBarrier_host;
276 typedef struct VkDescriptorImageInfo_host
278 VkSampler sampler;
279 VkImageView imageView;
280 VkImageLayout imageLayout;
281 } VkDescriptorImageInfo_host;
283 typedef struct VkDescriptorBufferInfo_host
285 VkBuffer buffer;
286 VkDeviceSize offset;
287 VkDeviceSize range;
288 } VkDescriptorBufferInfo_host;
290 typedef struct VkWriteDescriptorSet_host
292 VkStructureType sType;
293 const void *pNext;
294 VkDescriptorSet dstSet;
295 uint32_t dstBinding;
296 uint32_t dstArrayElement;
297 uint32_t descriptorCount;
298 VkDescriptorType descriptorType;
299 const VkDescriptorImageInfo_host *pImageInfo;
300 const VkDescriptorBufferInfo_host *pBufferInfo;
301 const VkBufferView *pTexelBufferView;
302 } VkWriteDescriptorSet_host;
304 typedef struct VkAccelerationStructureCreateInfoNV_host
306 VkStructureType sType;
307 const void *pNext;
308 VkDeviceSize compactedSize;
309 VkAccelerationStructureInfoNV_host info;
310 } VkAccelerationStructureCreateInfoNV_host;
312 typedef struct VkBufferCreateInfo_host
314 VkStructureType sType;
315 const void *pNext;
316 VkBufferCreateFlags flags;
317 VkDeviceSize size;
318 VkBufferUsageFlags usage;
319 VkSharingMode sharingMode;
320 uint32_t queueFamilyIndexCount;
321 const uint32_t *pQueueFamilyIndices;
322 } VkBufferCreateInfo_host;
324 typedef struct VkBufferViewCreateInfo_host
326 VkStructureType sType;
327 const void *pNext;
328 VkBufferViewCreateFlags flags;
329 VkBuffer buffer;
330 VkFormat format;
331 VkDeviceSize offset;
332 VkDeviceSize range;
333 } VkBufferViewCreateInfo_host;
335 typedef struct VkPipelineShaderStageCreateInfo_host
337 VkStructureType sType;
338 const void *pNext;
339 VkPipelineShaderStageCreateFlags flags;
340 VkShaderStageFlagBits stage;
341 VkShaderModule module;
342 const char *pName;
343 const VkSpecializationInfo *pSpecializationInfo;
344 } VkPipelineShaderStageCreateInfo_host;
346 typedef struct VkComputePipelineCreateInfo_host
348 VkStructureType sType;
349 const void *pNext;
350 VkPipelineCreateFlags flags;
351 VkPipelineShaderStageCreateInfo_host stage;
352 VkPipelineLayout layout;
353 VkPipeline basePipelineHandle;
354 int32_t basePipelineIndex;
355 } VkComputePipelineCreateInfo_host;
357 typedef struct VkDescriptorUpdateTemplateCreateInfo_host
359 VkStructureType sType;
360 const void *pNext;
361 VkDescriptorUpdateTemplateCreateFlags flags;
362 uint32_t descriptorUpdateEntryCount;
363 const VkDescriptorUpdateTemplateEntry *pDescriptorUpdateEntries;
364 VkDescriptorUpdateTemplateType templateType;
365 VkDescriptorSetLayout descriptorSetLayout;
366 VkPipelineBindPoint pipelineBindPoint;
367 VkPipelineLayout pipelineLayout;
368 uint32_t set;
369 } VkDescriptorUpdateTemplateCreateInfo_host;
371 typedef struct VkFramebufferCreateInfo_host
373 VkStructureType sType;
374 const void *pNext;
375 VkFramebufferCreateFlags flags;
376 VkRenderPass renderPass;
377 uint32_t attachmentCount;
378 const VkImageView *pAttachments;
379 uint32_t width;
380 uint32_t height;
381 uint32_t layers;
382 } VkFramebufferCreateInfo_host;
384 typedef struct VkGraphicsPipelineCreateInfo_host
386 VkStructureType sType;
387 const void *pNext;
388 VkPipelineCreateFlags flags;
389 uint32_t stageCount;
390 const VkPipelineShaderStageCreateInfo_host *pStages;
391 const VkPipelineVertexInputStateCreateInfo *pVertexInputState;
392 const VkPipelineInputAssemblyStateCreateInfo *pInputAssemblyState;
393 const VkPipelineTessellationStateCreateInfo *pTessellationState;
394 const VkPipelineViewportStateCreateInfo *pViewportState;
395 const VkPipelineRasterizationStateCreateInfo *pRasterizationState;
396 const VkPipelineMultisampleStateCreateInfo *pMultisampleState;
397 const VkPipelineDepthStencilStateCreateInfo *pDepthStencilState;
398 const VkPipelineColorBlendStateCreateInfo *pColorBlendState;
399 const VkPipelineDynamicStateCreateInfo *pDynamicState;
400 VkPipelineLayout layout;
401 VkRenderPass renderPass;
402 uint32_t subpass;
403 VkPipeline basePipelineHandle;
404 int32_t basePipelineIndex;
405 } VkGraphicsPipelineCreateInfo_host;
407 typedef struct VkImageViewCreateInfo_host
409 VkStructureType sType;
410 const void *pNext;
411 VkImageViewCreateFlags flags;
412 VkImage image;
413 VkImageViewType viewType;
414 VkFormat format;
415 VkComponentMapping components;
416 VkImageSubresourceRange subresourceRange;
417 } VkImageViewCreateInfo_host;
419 typedef struct VkRayTracingPipelineCreateInfoNV_host
421 VkStructureType sType;
422 const void *pNext;
423 VkPipelineCreateFlags flags;
424 uint32_t stageCount;
425 const VkPipelineShaderStageCreateInfo_host *pStages;
426 uint32_t groupCount;
427 const VkRayTracingShaderGroupCreateInfoNV *pGroups;
428 uint32_t maxRecursionDepth;
429 VkPipelineLayout layout;
430 VkPipeline basePipelineHandle;
431 int32_t basePipelineIndex;
432 } VkRayTracingPipelineCreateInfoNV_host;
434 typedef struct VkSwapchainCreateInfoKHR_host
436 VkStructureType sType;
437 const void *pNext;
438 VkSwapchainCreateFlagsKHR flags;
439 VkSurfaceKHR surface;
440 uint32_t minImageCount;
441 VkFormat imageFormat;
442 VkColorSpaceKHR imageColorSpace;
443 VkExtent2D imageExtent;
444 uint32_t imageArrayLayers;
445 VkImageUsageFlags imageUsage;
446 VkSharingMode imageSharingMode;
447 uint32_t queueFamilyIndexCount;
448 const uint32_t *pQueueFamilyIndices;
449 VkSurfaceTransformFlagBitsKHR preTransform;
450 VkCompositeAlphaFlagBitsKHR compositeAlpha;
451 VkPresentModeKHR presentMode;
452 VkBool32 clipped;
453 VkSwapchainKHR oldSwapchain;
454 } VkSwapchainCreateInfoKHR_host;
456 typedef struct VkMappedMemoryRange_host
458 VkStructureType sType;
459 const void *pNext;
460 VkDeviceMemory memory;
461 VkDeviceSize offset;
462 VkDeviceSize size;
463 } VkMappedMemoryRange_host;
465 typedef struct VkAccelerationStructureMemoryRequirementsInfoNV_host
467 VkStructureType sType;
468 const void *pNext;
469 VkAccelerationStructureMemoryRequirementsTypeNV type;
470 VkAccelerationStructureNV accelerationStructure;
471 } VkAccelerationStructureMemoryRequirementsInfoNV_host;
473 typedef struct VkMemoryRequirements_host
475 VkDeviceSize size;
476 VkDeviceSize alignment;
477 uint32_t memoryTypeBits;
478 } VkMemoryRequirements_host;
480 typedef struct VkMemoryRequirements2KHR_host
482 VkStructureType sType;
483 void *pNext;
484 VkMemoryRequirements_host memoryRequirements;
485 } VkMemoryRequirements2KHR_host;
487 typedef struct VkBufferDeviceAddressInfoEXT_host
489 VkStructureType sType;
490 const void *pNext;
491 VkBuffer buffer;
492 } VkBufferDeviceAddressInfoEXT_host;
494 typedef struct VkBufferMemoryRequirementsInfo2_host
496 VkStructureType sType;
497 const void *pNext;
498 VkBuffer buffer;
499 } VkBufferMemoryRequirementsInfo2_host;
501 typedef struct VkMemoryRequirements2_host
503 VkStructureType sType;
504 void *pNext;
505 VkMemoryRequirements_host memoryRequirements;
506 } VkMemoryRequirements2_host;
508 typedef struct VkImageMemoryRequirementsInfo2_host
510 VkStructureType sType;
511 const void *pNext;
512 VkImage image;
513 } VkImageMemoryRequirementsInfo2_host;
515 typedef struct VkImageSparseMemoryRequirementsInfo2_host
517 VkStructureType sType;
518 const void *pNext;
519 VkImage image;
520 } VkImageSparseMemoryRequirementsInfo2_host;
522 typedef struct VkSubresourceLayout_host
524 VkDeviceSize offset;
525 VkDeviceSize size;
526 VkDeviceSize rowPitch;
527 VkDeviceSize arrayPitch;
528 VkDeviceSize depthPitch;
529 } VkSubresourceLayout_host;
531 typedef struct VkImageFormatProperties_host
533 VkExtent3D maxExtent;
534 uint32_t maxMipLevels;
535 uint32_t maxArrayLayers;
536 VkSampleCountFlags sampleCounts;
537 VkDeviceSize maxResourceSize;
538 } VkImageFormatProperties_host;
540 typedef struct VkImageFormatProperties2_host
542 VkStructureType sType;
543 void *pNext;
544 VkImageFormatProperties_host imageFormatProperties;
545 } VkImageFormatProperties2_host;
547 typedef struct VkMemoryHeap_host
549 VkDeviceSize size;
550 VkMemoryHeapFlags flags;
551 } VkMemoryHeap_host;
553 typedef struct VkPhysicalDeviceMemoryProperties_host
555 uint32_t memoryTypeCount;
556 VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];
557 uint32_t memoryHeapCount;
558 VkMemoryHeap_host memoryHeaps[VK_MAX_MEMORY_HEAPS];
559 } VkPhysicalDeviceMemoryProperties_host;
561 typedef struct VkPhysicalDeviceMemoryProperties2_host
563 VkStructureType sType;
564 void *pNext;
565 VkPhysicalDeviceMemoryProperties_host memoryProperties;
566 } VkPhysicalDeviceMemoryProperties2_host;
568 typedef struct VkPhysicalDeviceLimits_host
570 uint32_t maxImageDimension1D;
571 uint32_t maxImageDimension2D;
572 uint32_t maxImageDimension3D;
573 uint32_t maxImageDimensionCube;
574 uint32_t maxImageArrayLayers;
575 uint32_t maxTexelBufferElements;
576 uint32_t maxUniformBufferRange;
577 uint32_t maxStorageBufferRange;
578 uint32_t maxPushConstantsSize;
579 uint32_t maxMemoryAllocationCount;
580 uint32_t maxSamplerAllocationCount;
581 VkDeviceSize bufferImageGranularity;
582 VkDeviceSize sparseAddressSpaceSize;
583 uint32_t maxBoundDescriptorSets;
584 uint32_t maxPerStageDescriptorSamplers;
585 uint32_t maxPerStageDescriptorUniformBuffers;
586 uint32_t maxPerStageDescriptorStorageBuffers;
587 uint32_t maxPerStageDescriptorSampledImages;
588 uint32_t maxPerStageDescriptorStorageImages;
589 uint32_t maxPerStageDescriptorInputAttachments;
590 uint32_t maxPerStageResources;
591 uint32_t maxDescriptorSetSamplers;
592 uint32_t maxDescriptorSetUniformBuffers;
593 uint32_t maxDescriptorSetUniformBuffersDynamic;
594 uint32_t maxDescriptorSetStorageBuffers;
595 uint32_t maxDescriptorSetStorageBuffersDynamic;
596 uint32_t maxDescriptorSetSampledImages;
597 uint32_t maxDescriptorSetStorageImages;
598 uint32_t maxDescriptorSetInputAttachments;
599 uint32_t maxVertexInputAttributes;
600 uint32_t maxVertexInputBindings;
601 uint32_t maxVertexInputAttributeOffset;
602 uint32_t maxVertexInputBindingStride;
603 uint32_t maxVertexOutputComponents;
604 uint32_t maxTessellationGenerationLevel;
605 uint32_t maxTessellationPatchSize;
606 uint32_t maxTessellationControlPerVertexInputComponents;
607 uint32_t maxTessellationControlPerVertexOutputComponents;
608 uint32_t maxTessellationControlPerPatchOutputComponents;
609 uint32_t maxTessellationControlTotalOutputComponents;
610 uint32_t maxTessellationEvaluationInputComponents;
611 uint32_t maxTessellationEvaluationOutputComponents;
612 uint32_t maxGeometryShaderInvocations;
613 uint32_t maxGeometryInputComponents;
614 uint32_t maxGeometryOutputComponents;
615 uint32_t maxGeometryOutputVertices;
616 uint32_t maxGeometryTotalOutputComponents;
617 uint32_t maxFragmentInputComponents;
618 uint32_t maxFragmentOutputAttachments;
619 uint32_t maxFragmentDualSrcAttachments;
620 uint32_t maxFragmentCombinedOutputResources;
621 uint32_t maxComputeSharedMemorySize;
622 uint32_t maxComputeWorkGroupCount[3];
623 uint32_t maxComputeWorkGroupInvocations;
624 uint32_t maxComputeWorkGroupSize[3];
625 uint32_t subPixelPrecisionBits;
626 uint32_t subTexelPrecisionBits;
627 uint32_t mipmapPrecisionBits;
628 uint32_t maxDrawIndexedIndexValue;
629 uint32_t maxDrawIndirectCount;
630 float maxSamplerLodBias;
631 float maxSamplerAnisotropy;
632 uint32_t maxViewports;
633 uint32_t maxViewportDimensions[2];
634 float viewportBoundsRange[2];
635 uint32_t viewportSubPixelBits;
636 size_t minMemoryMapAlignment;
637 VkDeviceSize minTexelBufferOffsetAlignment;
638 VkDeviceSize minUniformBufferOffsetAlignment;
639 VkDeviceSize minStorageBufferOffsetAlignment;
640 int32_t minTexelOffset;
641 uint32_t maxTexelOffset;
642 int32_t minTexelGatherOffset;
643 uint32_t maxTexelGatherOffset;
644 float minInterpolationOffset;
645 float maxInterpolationOffset;
646 uint32_t subPixelInterpolationOffsetBits;
647 uint32_t maxFramebufferWidth;
648 uint32_t maxFramebufferHeight;
649 uint32_t maxFramebufferLayers;
650 VkSampleCountFlags framebufferColorSampleCounts;
651 VkSampleCountFlags framebufferDepthSampleCounts;
652 VkSampleCountFlags framebufferStencilSampleCounts;
653 VkSampleCountFlags framebufferNoAttachmentsSampleCounts;
654 uint32_t maxColorAttachments;
655 VkSampleCountFlags sampledImageColorSampleCounts;
656 VkSampleCountFlags sampledImageIntegerSampleCounts;
657 VkSampleCountFlags sampledImageDepthSampleCounts;
658 VkSampleCountFlags sampledImageStencilSampleCounts;
659 VkSampleCountFlags storageImageSampleCounts;
660 uint32_t maxSampleMaskWords;
661 VkBool32 timestampComputeAndGraphics;
662 float timestampPeriod;
663 uint32_t maxClipDistances;
664 uint32_t maxCullDistances;
665 uint32_t maxCombinedClipAndCullDistances;
666 uint32_t discreteQueuePriorities;
667 float pointSizeRange[2];
668 float lineWidthRange[2];
669 float pointSizeGranularity;
670 float lineWidthGranularity;
671 VkBool32 strictLines;
672 VkBool32 standardSampleLocations;
673 VkDeviceSize optimalBufferCopyOffsetAlignment;
674 VkDeviceSize optimalBufferCopyRowPitchAlignment;
675 VkDeviceSize nonCoherentAtomSize;
676 } VkPhysicalDeviceLimits_host;
678 typedef struct VkPhysicalDeviceProperties_host
680 uint32_t apiVersion;
681 uint32_t driverVersion;
682 uint32_t vendorID;
683 uint32_t deviceID;
684 VkPhysicalDeviceType deviceType;
685 char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];
686 uint8_t pipelineCacheUUID[VK_UUID_SIZE];
687 VkPhysicalDeviceLimits_host limits;
688 VkPhysicalDeviceSparseProperties sparseProperties;
689 } VkPhysicalDeviceProperties_host;
691 typedef struct VkPhysicalDeviceProperties2_host
693 VkStructureType sType;
694 void *pNext;
695 VkPhysicalDeviceProperties_host properties;
696 } VkPhysicalDeviceProperties2_host;
698 typedef struct VkSparseMemoryBind_host
700 VkDeviceSize resourceOffset;
701 VkDeviceSize size;
702 VkDeviceMemory memory;
703 VkDeviceSize memoryOffset;
704 VkSparseMemoryBindFlags flags;
705 } VkSparseMemoryBind_host;
707 typedef struct VkSparseBufferMemoryBindInfo_host
709 VkBuffer buffer;
710 uint32_t bindCount;
711 const VkSparseMemoryBind_host *pBinds;
712 } VkSparseBufferMemoryBindInfo_host;
714 typedef struct VkSparseImageOpaqueMemoryBindInfo_host
716 VkImage image;
717 uint32_t bindCount;
718 const VkSparseMemoryBind_host *pBinds;
719 } VkSparseImageOpaqueMemoryBindInfo_host;
721 typedef struct VkSparseImageMemoryBind_host
723 VkImageSubresource subresource;
724 VkOffset3D offset;
725 VkExtent3D extent;
726 VkDeviceMemory memory;
727 VkDeviceSize memoryOffset;
728 VkSparseMemoryBindFlags flags;
729 } VkSparseImageMemoryBind_host;
731 typedef struct VkSparseImageMemoryBindInfo_host
733 VkImage image;
734 uint32_t bindCount;
735 const VkSparseImageMemoryBind_host *pBinds;
736 } VkSparseImageMemoryBindInfo_host;
738 typedef struct VkBindSparseInfo_host
740 VkStructureType sType;
741 const void *pNext;
742 uint32_t waitSemaphoreCount;
743 const VkSemaphore *pWaitSemaphores;
744 uint32_t bufferBindCount;
745 const VkSparseBufferMemoryBindInfo_host *pBufferBinds;
746 uint32_t imageOpaqueBindCount;
747 const VkSparseImageOpaqueMemoryBindInfo_host *pImageOpaqueBinds;
748 uint32_t imageBindCount;
749 const VkSparseImageMemoryBindInfo_host *pImageBinds;
750 uint32_t signalSemaphoreCount;
751 const VkSemaphore *pSignalSemaphores;
752 } VkBindSparseInfo_host;
754 typedef struct VkCopyDescriptorSet_host
756 VkStructureType sType;
757 const void *pNext;
758 VkDescriptorSet srcSet;
759 uint32_t srcBinding;
760 uint32_t srcArrayElement;
761 VkDescriptorSet dstSet;
762 uint32_t dstBinding;
763 uint32_t dstArrayElement;
764 uint32_t descriptorCount;
765 } VkCopyDescriptorSet_host;
768 VkResult convert_VkDeviceCreateInfo_struct_chain(const void *pNext, VkDeviceCreateInfo *out_struct) DECLSPEC_HIDDEN;
769 void free_VkDeviceCreateInfo_struct_chain(VkDeviceCreateInfo *s) DECLSPEC_HIDDEN;
770 VkResult convert_VkInstanceCreateInfo_struct_chain(const void *pNext, VkInstanceCreateInfo *out_struct) DECLSPEC_HIDDEN;
771 void free_VkInstanceCreateInfo_struct_chain(VkInstanceCreateInfo *s) DECLSPEC_HIDDEN;
773 /* For use by vkDevice and children */
774 struct vulkan_device_funcs
776 #if defined(USE_STRUCT_CONVERSION)
777 VkResult (*p_vkAcquireNextImage2KHR)(VkDevice, const VkAcquireNextImageInfoKHR_host *, uint32_t *);
778 #else
779 VkResult (*p_vkAcquireNextImage2KHR)(VkDevice, const VkAcquireNextImageInfoKHR *, uint32_t *);
780 #endif
781 VkResult (*p_vkAcquireNextImageKHR)(VkDevice, VkSwapchainKHR, uint64_t, VkSemaphore, VkFence, uint32_t *);
782 #if defined(USE_STRUCT_CONVERSION)
783 VkResult (*p_vkAllocateCommandBuffers)(VkDevice, const VkCommandBufferAllocateInfo_host *, VkCommandBuffer *);
784 #else
785 VkResult (*p_vkAllocateCommandBuffers)(VkDevice, const VkCommandBufferAllocateInfo *, VkCommandBuffer *);
786 #endif
787 #if defined(USE_STRUCT_CONVERSION)
788 VkResult (*p_vkAllocateDescriptorSets)(VkDevice, const VkDescriptorSetAllocateInfo_host *, VkDescriptorSet *);
789 #else
790 VkResult (*p_vkAllocateDescriptorSets)(VkDevice, const VkDescriptorSetAllocateInfo *, VkDescriptorSet *);
791 #endif
792 #if defined(USE_STRUCT_CONVERSION)
793 VkResult (*p_vkAllocateMemory)(VkDevice, const VkMemoryAllocateInfo_host *, const VkAllocationCallbacks *, VkDeviceMemory *);
794 #else
795 VkResult (*p_vkAllocateMemory)(VkDevice, const VkMemoryAllocateInfo *, const VkAllocationCallbacks *, VkDeviceMemory *);
796 #endif
797 #if defined(USE_STRUCT_CONVERSION)
798 VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo_host *);
799 #else
800 VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo *);
801 #endif
802 #if defined(USE_STRUCT_CONVERSION)
803 VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV_host *);
804 #else
805 VkResult (*p_vkBindAccelerationStructureMemoryNV)(VkDevice, uint32_t, const VkBindAccelerationStructureMemoryInfoNV *);
806 #endif
807 VkResult (*p_vkBindBufferMemory)(VkDevice, VkBuffer, VkDeviceMemory, VkDeviceSize);
808 #if defined(USE_STRUCT_CONVERSION)
809 VkResult (*p_vkBindBufferMemory2)(VkDevice, uint32_t, const VkBindBufferMemoryInfo_host *);
810 #else
811 VkResult (*p_vkBindBufferMemory2)(VkDevice, uint32_t, const VkBindBufferMemoryInfo *);
812 #endif
813 #if defined(USE_STRUCT_CONVERSION)
814 VkResult (*p_vkBindBufferMemory2KHR)(VkDevice, uint32_t, const VkBindBufferMemoryInfo_host *);
815 #else
816 VkResult (*p_vkBindBufferMemory2KHR)(VkDevice, uint32_t, const VkBindBufferMemoryInfo *);
817 #endif
818 VkResult (*p_vkBindImageMemory)(VkDevice, VkImage, VkDeviceMemory, VkDeviceSize);
819 #if defined(USE_STRUCT_CONVERSION)
820 VkResult (*p_vkBindImageMemory2)(VkDevice, uint32_t, const VkBindImageMemoryInfo_host *);
821 #else
822 VkResult (*p_vkBindImageMemory2)(VkDevice, uint32_t, const VkBindImageMemoryInfo *);
823 #endif
824 #if defined(USE_STRUCT_CONVERSION)
825 VkResult (*p_vkBindImageMemory2KHR)(VkDevice, uint32_t, const VkBindImageMemoryInfo_host *);
826 #else
827 VkResult (*p_vkBindImageMemory2KHR)(VkDevice, uint32_t, const VkBindImageMemoryInfo *);
828 #endif
829 #if defined(USE_STRUCT_CONVERSION)
830 void (*p_vkCmdBeginConditionalRenderingEXT)(VkCommandBuffer, const VkConditionalRenderingBeginInfoEXT_host *);
831 #else
832 void (*p_vkCmdBeginConditionalRenderingEXT)(VkCommandBuffer, const VkConditionalRenderingBeginInfoEXT *);
833 #endif
834 void (*p_vkCmdBeginQuery)(VkCommandBuffer, VkQueryPool, uint32_t, VkQueryControlFlags);
835 void (*p_vkCmdBeginQueryIndexedEXT)(VkCommandBuffer, VkQueryPool, uint32_t, VkQueryControlFlags, uint32_t);
836 #if defined(USE_STRUCT_CONVERSION)
837 void (*p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, VkSubpassContents);
838 #else
839 void (*p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo *, VkSubpassContents);
840 #endif
841 #if defined(USE_STRUCT_CONVERSION)
842 void (*p_vkCmdBeginRenderPass2KHR)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, const VkSubpassBeginInfoKHR *);
843 #else
844 void (*p_vkCmdBeginRenderPass2KHR)(VkCommandBuffer, const VkRenderPassBeginInfo *, const VkSubpassBeginInfoKHR *);
845 #endif
846 void (*p_vkCmdBeginTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
847 void (*p_vkCmdBindDescriptorSets)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkDescriptorSet *, uint32_t, const uint32_t *);
848 void (*p_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkIndexType);
849 void (*p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
850 void (*p_vkCmdBindShadingRateImageNV)(VkCommandBuffer, VkImageView, VkImageLayout);
851 void (*p_vkCmdBindTransformFeedbackBuffersEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *, const VkDeviceSize *);
852 void (*p_vkCmdBindVertexBuffers)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
853 void (*p_vkCmdBlitImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageBlit *, VkFilter);
854 #if defined(USE_STRUCT_CONVERSION)
855 void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV_host *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
856 #else
857 void (*p_vkCmdBuildAccelerationStructureNV)(VkCommandBuffer, const VkAccelerationStructureInfoNV *, VkBuffer, VkDeviceSize, VkBool32, VkAccelerationStructureNV, VkAccelerationStructureNV, VkBuffer, VkDeviceSize);
858 #endif
859 void (*p_vkCmdClearAttachments)(VkCommandBuffer, uint32_t, const VkClearAttachment *, uint32_t, const VkClearRect *);
860 void (*p_vkCmdClearColorImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearColorValue *, uint32_t, const VkImageSubresourceRange *);
861 void (*p_vkCmdClearDepthStencilImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearDepthStencilValue *, uint32_t, const VkImageSubresourceRange *);
862 void (*p_vkCmdCopyAccelerationStructureNV)(VkCommandBuffer, VkAccelerationStructureNV, VkAccelerationStructureNV, VkCopyAccelerationStructureModeNV);
863 #if defined(USE_STRUCT_CONVERSION)
864 void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy_host *);
865 #else
866 void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy *);
867 #endif
868 #if defined(USE_STRUCT_CONVERSION)
869 void (*p_vkCmdCopyBufferToImage)(VkCommandBuffer, VkBuffer, VkImage, VkImageLayout, uint32_t, const VkBufferImageCopy_host *);
870 #else
871 void (*p_vkCmdCopyBufferToImage)(VkCommandBuffer, VkBuffer, VkImage, VkImageLayout, uint32_t, const VkBufferImageCopy *);
872 #endif
873 void (*p_vkCmdCopyImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageCopy *);
874 #if defined(USE_STRUCT_CONVERSION)
875 void (*p_vkCmdCopyImageToBuffer)(VkCommandBuffer, VkImage, VkImageLayout, VkBuffer, uint32_t, const VkBufferImageCopy_host *);
876 #else
877 void (*p_vkCmdCopyImageToBuffer)(VkCommandBuffer, VkImage, VkImageLayout, VkBuffer, uint32_t, const VkBufferImageCopy *);
878 #endif
879 void (*p_vkCmdCopyQueryPoolResults)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t, VkBuffer, VkDeviceSize, VkDeviceSize, VkQueryResultFlags);
880 void (*p_vkCmdDispatch)(VkCommandBuffer, uint32_t, uint32_t, uint32_t);
881 void (*p_vkCmdDispatchBase)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
882 void (*p_vkCmdDispatchBaseKHR)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t, uint32_t);
883 void (*p_vkCmdDispatchIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize);
884 void (*p_vkCmdDraw)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t);
885 void (*p_vkCmdDrawIndexed)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, int32_t, uint32_t);
886 void (*p_vkCmdDrawIndexedIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
887 void (*p_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
888 void (*p_vkCmdDrawIndexedIndirectCountKHR)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
889 void (*p_vkCmdDrawIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
890 void (*p_vkCmdDrawIndirectByteCountEXT)(VkCommandBuffer, uint32_t, uint32_t, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
891 void (*p_vkCmdDrawIndirectCountAMD)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
892 void (*p_vkCmdDrawIndirectCountKHR)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
893 void (*p_vkCmdDrawMeshTasksIndirectCountNV)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
894 void (*p_vkCmdDrawMeshTasksIndirectNV)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
895 void (*p_vkCmdDrawMeshTasksNV)(VkCommandBuffer, uint32_t, uint32_t);
896 void (*p_vkCmdEndConditionalRenderingEXT)(VkCommandBuffer);
897 void (*p_vkCmdEndQuery)(VkCommandBuffer, VkQueryPool, uint32_t);
898 void (*p_vkCmdEndQueryIndexedEXT)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t);
899 void (*p_vkCmdEndRenderPass)(VkCommandBuffer);
900 void (*p_vkCmdEndRenderPass2KHR)(VkCommandBuffer, const VkSubpassEndInfoKHR *);
901 void (*p_vkCmdEndTransformFeedbackEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
902 void (*p_vkCmdExecuteCommands)(VkCommandBuffer, uint32_t, const VkCommandBuffer *);
903 void (*p_vkCmdFillBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, uint32_t);
904 void (*p_vkCmdNextSubpass)(VkCommandBuffer, VkSubpassContents);
905 void (*p_vkCmdNextSubpass2KHR)(VkCommandBuffer, const VkSubpassBeginInfoKHR *, const VkSubpassEndInfoKHR *);
906 #if defined(USE_STRUCT_CONVERSION)
907 void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier_host *, uint32_t, const VkImageMemoryBarrier_host *);
908 #else
909 void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
910 #endif
911 void (*p_vkCmdPushConstants)(VkCommandBuffer, VkPipelineLayout, VkShaderStageFlags, uint32_t, uint32_t, const void *);
912 #if defined(USE_STRUCT_CONVERSION)
913 void (*p_vkCmdPushDescriptorSetKHR)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkWriteDescriptorSet_host *);
914 #else
915 void (*p_vkCmdPushDescriptorSetKHR)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkWriteDescriptorSet *);
916 #endif
917 void (*p_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer, VkDescriptorUpdateTemplate, VkPipelineLayout, uint32_t, const void *);
918 void (*p_vkCmdResetEvent)(VkCommandBuffer, VkEvent, VkPipelineStageFlags);
919 void (*p_vkCmdResetQueryPool)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t);
920 void (*p_vkCmdResolveImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageResolve *);
921 void (*p_vkCmdSetBlendConstants)(VkCommandBuffer, const float[4]);
922 void (*p_vkCmdSetCheckpointNV)(VkCommandBuffer, const void *);
923 void (*p_vkCmdSetCoarseSampleOrderNV)(VkCommandBuffer, VkCoarseSampleOrderTypeNV, uint32_t, const VkCoarseSampleOrderCustomNV *);
924 void (*p_vkCmdSetDepthBias)(VkCommandBuffer, float, float, float);
925 void (*p_vkCmdSetDepthBounds)(VkCommandBuffer, float, float);
926 void (*p_vkCmdSetDeviceMask)(VkCommandBuffer, uint32_t);
927 void (*p_vkCmdSetDeviceMaskKHR)(VkCommandBuffer, uint32_t);
928 void (*p_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
929 void (*p_vkCmdSetEvent)(VkCommandBuffer, VkEvent, VkPipelineStageFlags);
930 void (*p_vkCmdSetExclusiveScissorNV)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
931 void (*p_vkCmdSetLineWidth)(VkCommandBuffer, float);
932 void (*p_vkCmdSetSampleLocationsEXT)(VkCommandBuffer, const VkSampleLocationsInfoEXT *);
933 void (*p_vkCmdSetScissor)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
934 void (*p_vkCmdSetStencilCompareMask)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
935 void (*p_vkCmdSetStencilReference)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
936 void (*p_vkCmdSetStencilWriteMask)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
937 void (*p_vkCmdSetViewport)(VkCommandBuffer, uint32_t, uint32_t, const VkViewport *);
938 void (*p_vkCmdSetViewportShadingRatePaletteNV)(VkCommandBuffer, uint32_t, uint32_t, const VkShadingRatePaletteNV *);
939 void (*p_vkCmdSetViewportWScalingNV)(VkCommandBuffer, uint32_t, uint32_t, const VkViewportWScalingNV *);
940 void (*p_vkCmdTraceRaysNV)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, VkBuffer, VkDeviceSize, VkDeviceSize, uint32_t, uint32_t, uint32_t);
941 void (*p_vkCmdUpdateBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, const void *);
942 #if defined(USE_STRUCT_CONVERSION)
943 void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier_host *, uint32_t, const VkImageMemoryBarrier_host *);
944 #else
945 void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
946 #endif
947 void (*p_vkCmdWriteAccelerationStructuresPropertiesNV)(VkCommandBuffer, uint32_t, const VkAccelerationStructureNV *, VkQueryType, VkQueryPool, uint32_t);
948 void (*p_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer, VkPipelineStageFlagBits, VkBuffer, VkDeviceSize, uint32_t);
949 void (*p_vkCmdWriteTimestamp)(VkCommandBuffer, VkPipelineStageFlagBits, VkQueryPool, uint32_t);
950 VkResult (*p_vkCompileDeferredNV)(VkDevice, VkPipeline, uint32_t);
951 #if defined(USE_STRUCT_CONVERSION)
952 VkResult (*p_vkCreateAccelerationStructureNV)(VkDevice, const VkAccelerationStructureCreateInfoNV_host *, const VkAllocationCallbacks *, VkAccelerationStructureNV *);
953 #else
954 VkResult (*p_vkCreateAccelerationStructureNV)(VkDevice, const VkAccelerationStructureCreateInfoNV *, const VkAllocationCallbacks *, VkAccelerationStructureNV *);
955 #endif
956 #if defined(USE_STRUCT_CONVERSION)
957 VkResult (*p_vkCreateBuffer)(VkDevice, const VkBufferCreateInfo_host *, const VkAllocationCallbacks *, VkBuffer *);
958 #else
959 VkResult (*p_vkCreateBuffer)(VkDevice, const VkBufferCreateInfo *, const VkAllocationCallbacks *, VkBuffer *);
960 #endif
961 #if defined(USE_STRUCT_CONVERSION)
962 VkResult (*p_vkCreateBufferView)(VkDevice, const VkBufferViewCreateInfo_host *, const VkAllocationCallbacks *, VkBufferView *);
963 #else
964 VkResult (*p_vkCreateBufferView)(VkDevice, const VkBufferViewCreateInfo *, const VkAllocationCallbacks *, VkBufferView *);
965 #endif
966 VkResult (*p_vkCreateCommandPool)(VkDevice, const VkCommandPoolCreateInfo *, const VkAllocationCallbacks *, VkCommandPool *);
967 #if defined(USE_STRUCT_CONVERSION)
968 VkResult (*p_vkCreateComputePipelines)(VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo_host *, const VkAllocationCallbacks *, VkPipeline *);
969 #else
970 VkResult (*p_vkCreateComputePipelines)(VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo *, const VkAllocationCallbacks *, VkPipeline *);
971 #endif
972 VkResult (*p_vkCreateDescriptorPool)(VkDevice, const VkDescriptorPoolCreateInfo *, const VkAllocationCallbacks *, VkDescriptorPool *);
973 VkResult (*p_vkCreateDescriptorSetLayout)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, const VkAllocationCallbacks *, VkDescriptorSetLayout *);
974 #if defined(USE_STRUCT_CONVERSION)
975 VkResult (*p_vkCreateDescriptorUpdateTemplate)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo_host *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
976 #else
977 VkResult (*p_vkCreateDescriptorUpdateTemplate)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
978 #endif
979 #if defined(USE_STRUCT_CONVERSION)
980 VkResult (*p_vkCreateDescriptorUpdateTemplateKHR)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo_host *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
981 #else
982 VkResult (*p_vkCreateDescriptorUpdateTemplateKHR)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
983 #endif
984 VkResult (*p_vkCreateEvent)(VkDevice, const VkEventCreateInfo *, const VkAllocationCallbacks *, VkEvent *);
985 VkResult (*p_vkCreateFence)(VkDevice, const VkFenceCreateInfo *, const VkAllocationCallbacks *, VkFence *);
986 #if defined(USE_STRUCT_CONVERSION)
987 VkResult (*p_vkCreateFramebuffer)(VkDevice, const VkFramebufferCreateInfo_host *, const VkAllocationCallbacks *, VkFramebuffer *);
988 #else
989 VkResult (*p_vkCreateFramebuffer)(VkDevice, const VkFramebufferCreateInfo *, const VkAllocationCallbacks *, VkFramebuffer *);
990 #endif
991 #if defined(USE_STRUCT_CONVERSION)
992 VkResult (*p_vkCreateGraphicsPipelines)(VkDevice, VkPipelineCache, uint32_t, const VkGraphicsPipelineCreateInfo_host *, const VkAllocationCallbacks *, VkPipeline *);
993 #else
994 VkResult (*p_vkCreateGraphicsPipelines)(VkDevice, VkPipelineCache, uint32_t, const VkGraphicsPipelineCreateInfo *, const VkAllocationCallbacks *, VkPipeline *);
995 #endif
996 VkResult (*p_vkCreateImage)(VkDevice, const VkImageCreateInfo *, const VkAllocationCallbacks *, VkImage *);
997 #if defined(USE_STRUCT_CONVERSION)
998 VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo_host *, const VkAllocationCallbacks *, VkImageView *);
999 #else
1000 VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo *, const VkAllocationCallbacks *, VkImageView *);
1001 #endif
1002 VkResult (*p_vkCreatePipelineCache)(VkDevice, const VkPipelineCacheCreateInfo *, const VkAllocationCallbacks *, VkPipelineCache *);
1003 VkResult (*p_vkCreatePipelineLayout)(VkDevice, const VkPipelineLayoutCreateInfo *, const VkAllocationCallbacks *, VkPipelineLayout *);
1004 VkResult (*p_vkCreateQueryPool)(VkDevice, const VkQueryPoolCreateInfo *, const VkAllocationCallbacks *, VkQueryPool *);
1005 #if defined(USE_STRUCT_CONVERSION)
1006 VkResult (*p_vkCreateRayTracingPipelinesNV)(VkDevice, VkPipelineCache, uint32_t, const VkRayTracingPipelineCreateInfoNV_host *, const VkAllocationCallbacks *, VkPipeline *);
1007 #else
1008 VkResult (*p_vkCreateRayTracingPipelinesNV)(VkDevice, VkPipelineCache, uint32_t, const VkRayTracingPipelineCreateInfoNV *, const VkAllocationCallbacks *, VkPipeline *);
1009 #endif
1010 VkResult (*p_vkCreateRenderPass)(VkDevice, const VkRenderPassCreateInfo *, const VkAllocationCallbacks *, VkRenderPass *);
1011 VkResult (*p_vkCreateRenderPass2KHR)(VkDevice, const VkRenderPassCreateInfo2KHR *, const VkAllocationCallbacks *, VkRenderPass *);
1012 VkResult (*p_vkCreateSampler)(VkDevice, const VkSamplerCreateInfo *, const VkAllocationCallbacks *, VkSampler *);
1013 VkResult (*p_vkCreateSamplerYcbcrConversion)(VkDevice, const VkSamplerYcbcrConversionCreateInfo *, const VkAllocationCallbacks *, VkSamplerYcbcrConversion *);
1014 VkResult (*p_vkCreateSamplerYcbcrConversionKHR)(VkDevice, const VkSamplerYcbcrConversionCreateInfo *, const VkAllocationCallbacks *, VkSamplerYcbcrConversion *);
1015 VkResult (*p_vkCreateSemaphore)(VkDevice, const VkSemaphoreCreateInfo *, const VkAllocationCallbacks *, VkSemaphore *);
1016 VkResult (*p_vkCreateShaderModule)(VkDevice, const VkShaderModuleCreateInfo *, const VkAllocationCallbacks *, VkShaderModule *);
1017 #if defined(USE_STRUCT_CONVERSION)
1018 VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR_host *, const VkAllocationCallbacks *, VkSwapchainKHR *);
1019 #else
1020 VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR *, const VkAllocationCallbacks *, VkSwapchainKHR *);
1021 #endif
1022 VkResult (*p_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *);
1023 void (*p_vkDestroyAccelerationStructureNV)(VkDevice, VkAccelerationStructureNV, const VkAllocationCallbacks *);
1024 void (*p_vkDestroyBuffer)(VkDevice, VkBuffer, const VkAllocationCallbacks *);
1025 void (*p_vkDestroyBufferView)(VkDevice, VkBufferView, const VkAllocationCallbacks *);
1026 void (*p_vkDestroyCommandPool)(VkDevice, VkCommandPool, const VkAllocationCallbacks *);
1027 void (*p_vkDestroyDescriptorPool)(VkDevice, VkDescriptorPool, const VkAllocationCallbacks *);
1028 void (*p_vkDestroyDescriptorSetLayout)(VkDevice, VkDescriptorSetLayout, const VkAllocationCallbacks *);
1029 void (*p_vkDestroyDescriptorUpdateTemplate)(VkDevice, VkDescriptorUpdateTemplate, const VkAllocationCallbacks *);
1030 void (*p_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice, VkDescriptorUpdateTemplate, const VkAllocationCallbacks *);
1031 void (*p_vkDestroyDevice)(VkDevice, const VkAllocationCallbacks *);
1032 void (*p_vkDestroyEvent)(VkDevice, VkEvent, const VkAllocationCallbacks *);
1033 void (*p_vkDestroyFence)(VkDevice, VkFence, const VkAllocationCallbacks *);
1034 void (*p_vkDestroyFramebuffer)(VkDevice, VkFramebuffer, const VkAllocationCallbacks *);
1035 void (*p_vkDestroyImage)(VkDevice, VkImage, const VkAllocationCallbacks *);
1036 void (*p_vkDestroyImageView)(VkDevice, VkImageView, const VkAllocationCallbacks *);
1037 void (*p_vkDestroyPipeline)(VkDevice, VkPipeline, const VkAllocationCallbacks *);
1038 void (*p_vkDestroyPipelineCache)(VkDevice, VkPipelineCache, const VkAllocationCallbacks *);
1039 void (*p_vkDestroyPipelineLayout)(VkDevice, VkPipelineLayout, const VkAllocationCallbacks *);
1040 void (*p_vkDestroyQueryPool)(VkDevice, VkQueryPool, const VkAllocationCallbacks *);
1041 void (*p_vkDestroyRenderPass)(VkDevice, VkRenderPass, const VkAllocationCallbacks *);
1042 void (*p_vkDestroySampler)(VkDevice, VkSampler, const VkAllocationCallbacks *);
1043 void (*p_vkDestroySamplerYcbcrConversion)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
1044 void (*p_vkDestroySamplerYcbcrConversionKHR)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
1045 void (*p_vkDestroySemaphore)(VkDevice, VkSemaphore, const VkAllocationCallbacks *);
1046 void (*p_vkDestroyShaderModule)(VkDevice, VkShaderModule, const VkAllocationCallbacks *);
1047 void (*p_vkDestroySwapchainKHR)(VkDevice, VkSwapchainKHR, const VkAllocationCallbacks *);
1048 void (*p_vkDestroyValidationCacheEXT)(VkDevice, VkValidationCacheEXT, const VkAllocationCallbacks *);
1049 VkResult (*p_vkDeviceWaitIdle)(VkDevice);
1050 VkResult (*p_vkEndCommandBuffer)(VkCommandBuffer);
1051 #if defined(USE_STRUCT_CONVERSION)
1052 VkResult (*p_vkFlushMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange_host *);
1053 #else
1054 VkResult (*p_vkFlushMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange *);
1055 #endif
1056 void (*p_vkFreeCommandBuffers)(VkDevice, VkCommandPool, uint32_t, const VkCommandBuffer *);
1057 VkResult (*p_vkFreeDescriptorSets)(VkDevice, VkDescriptorPool, uint32_t, const VkDescriptorSet *);
1058 void (*p_vkFreeMemory)(VkDevice, VkDeviceMemory, const VkAllocationCallbacks *);
1059 VkResult (*p_vkGetAccelerationStructureHandleNV)(VkDevice, VkAccelerationStructureNV, size_t, void *);
1060 #if defined(USE_STRUCT_CONVERSION)
1061 void (*p_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice, const VkAccelerationStructureMemoryRequirementsInfoNV_host *, VkMemoryRequirements2KHR_host *);
1062 #else
1063 void (*p_vkGetAccelerationStructureMemoryRequirementsNV)(VkDevice, const VkAccelerationStructureMemoryRequirementsInfoNV *, VkMemoryRequirements2KHR *);
1064 #endif
1065 #if defined(USE_STRUCT_CONVERSION)
1066 VkDeviceAddress (*p_vkGetBufferDeviceAddressEXT)(VkDevice, const VkBufferDeviceAddressInfoEXT_host *);
1067 #else
1068 VkDeviceAddress (*p_vkGetBufferDeviceAddressEXT)(VkDevice, const VkBufferDeviceAddressInfoEXT *);
1069 #endif
1070 #if defined(USE_STRUCT_CONVERSION)
1071 void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements_host *);
1072 #else
1073 void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements *);
1074 #endif
1075 #if defined(USE_STRUCT_CONVERSION)
1076 void (*p_vkGetBufferMemoryRequirements2)(VkDevice, const VkBufferMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
1077 #else
1078 void (*p_vkGetBufferMemoryRequirements2)(VkDevice, const VkBufferMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
1079 #endif
1080 #if defined(USE_STRUCT_CONVERSION)
1081 void (*p_vkGetBufferMemoryRequirements2KHR)(VkDevice, const VkBufferMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
1082 #else
1083 void (*p_vkGetBufferMemoryRequirements2KHR)(VkDevice, const VkBufferMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
1084 #endif
1085 void (*p_vkGetDescriptorSetLayoutSupport)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, VkDescriptorSetLayoutSupport *);
1086 void (*p_vkGetDescriptorSetLayoutSupportKHR)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, VkDescriptorSetLayoutSupport *);
1087 void (*p_vkGetDeviceGroupPeerMemoryFeatures)(VkDevice, uint32_t, uint32_t, uint32_t, VkPeerMemoryFeatureFlags *);
1088 void (*p_vkGetDeviceGroupPeerMemoryFeaturesKHR)(VkDevice, uint32_t, uint32_t, uint32_t, VkPeerMemoryFeatureFlags *);
1089 VkResult (*p_vkGetDeviceGroupPresentCapabilitiesKHR)(VkDevice, VkDeviceGroupPresentCapabilitiesKHR *);
1090 VkResult (*p_vkGetDeviceGroupSurfacePresentModesKHR)(VkDevice, VkSurfaceKHR, VkDeviceGroupPresentModeFlagsKHR *);
1091 void (*p_vkGetDeviceMemoryCommitment)(VkDevice, VkDeviceMemory, VkDeviceSize *);
1092 void (*p_vkGetDeviceQueue)(VkDevice, uint32_t, uint32_t, VkQueue *);
1093 void (*p_vkGetDeviceQueue2)(VkDevice, const VkDeviceQueueInfo2 *, VkQueue *);
1094 VkResult (*p_vkGetEventStatus)(VkDevice, VkEvent);
1095 VkResult (*p_vkGetFenceStatus)(VkDevice, VkFence);
1096 #if defined(USE_STRUCT_CONVERSION)
1097 void (*p_vkGetImageMemoryRequirements)(VkDevice, VkImage, VkMemoryRequirements_host *);
1098 #else
1099 void (*p_vkGetImageMemoryRequirements)(VkDevice, VkImage, VkMemoryRequirements *);
1100 #endif
1101 #if defined(USE_STRUCT_CONVERSION)
1102 void (*p_vkGetImageMemoryRequirements2)(VkDevice, const VkImageMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
1103 #else
1104 void (*p_vkGetImageMemoryRequirements2)(VkDevice, const VkImageMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
1105 #endif
1106 #if defined(USE_STRUCT_CONVERSION)
1107 void (*p_vkGetImageMemoryRequirements2KHR)(VkDevice, const VkImageMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
1108 #else
1109 void (*p_vkGetImageMemoryRequirements2KHR)(VkDevice, const VkImageMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
1110 #endif
1111 void (*p_vkGetImageSparseMemoryRequirements)(VkDevice, VkImage, uint32_t *, VkSparseImageMemoryRequirements *);
1112 #if defined(USE_STRUCT_CONVERSION)
1113 void (*p_vkGetImageSparseMemoryRequirements2)(VkDevice, const VkImageSparseMemoryRequirementsInfo2_host *, uint32_t *, VkSparseImageMemoryRequirements2 *);
1114 #else
1115 void (*p_vkGetImageSparseMemoryRequirements2)(VkDevice, const VkImageSparseMemoryRequirementsInfo2 *, uint32_t *, VkSparseImageMemoryRequirements2 *);
1116 #endif
1117 #if defined(USE_STRUCT_CONVERSION)
1118 void (*p_vkGetImageSparseMemoryRequirements2KHR)(VkDevice, const VkImageSparseMemoryRequirementsInfo2_host *, uint32_t *, VkSparseImageMemoryRequirements2 *);
1119 #else
1120 void (*p_vkGetImageSparseMemoryRequirements2KHR)(VkDevice, const VkImageSparseMemoryRequirementsInfo2 *, uint32_t *, VkSparseImageMemoryRequirements2 *);
1121 #endif
1122 #if defined(USE_STRUCT_CONVERSION)
1123 void (*p_vkGetImageSubresourceLayout)(VkDevice, VkImage, const VkImageSubresource *, VkSubresourceLayout_host *);
1124 #else
1125 void (*p_vkGetImageSubresourceLayout)(VkDevice, VkImage, const VkImageSubresource *, VkSubresourceLayout *);
1126 #endif
1127 VkResult (*p_vkGetMemoryHostPointerPropertiesEXT)(VkDevice, VkExternalMemoryHandleTypeFlagBits, const void *, VkMemoryHostPointerPropertiesEXT *);
1128 VkResult (*p_vkGetPipelineCacheData)(VkDevice, VkPipelineCache, size_t *, void *);
1129 VkResult (*p_vkGetQueryPoolResults)(VkDevice, VkQueryPool, uint32_t, uint32_t, size_t, void *, VkDeviceSize, VkQueryResultFlags);
1130 void (*p_vkGetQueueCheckpointDataNV)(VkQueue, uint32_t *, VkCheckpointDataNV *);
1131 VkResult (*p_vkGetRayTracingShaderGroupHandlesNV)(VkDevice, VkPipeline, uint32_t, uint32_t, size_t, void *);
1132 void (*p_vkGetRenderAreaGranularity)(VkDevice, VkRenderPass, VkExtent2D *);
1133 VkResult (*p_vkGetShaderInfoAMD)(VkDevice, VkPipeline, VkShaderStageFlagBits, VkShaderInfoTypeAMD, size_t *, void *);
1134 VkResult (*p_vkGetSwapchainImagesKHR)(VkDevice, VkSwapchainKHR, uint32_t *, VkImage *);
1135 VkResult (*p_vkGetValidationCacheDataEXT)(VkDevice, VkValidationCacheEXT, size_t *, void *);
1136 #if defined(USE_STRUCT_CONVERSION)
1137 VkResult (*p_vkInvalidateMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange_host *);
1138 #else
1139 VkResult (*p_vkInvalidateMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange *);
1140 #endif
1141 VkResult (*p_vkMapMemory)(VkDevice, VkDeviceMemory, VkDeviceSize, VkDeviceSize, VkMemoryMapFlags, void **);
1142 VkResult (*p_vkMergePipelineCaches)(VkDevice, VkPipelineCache, uint32_t, const VkPipelineCache *);
1143 VkResult (*p_vkMergeValidationCachesEXT)(VkDevice, VkValidationCacheEXT, uint32_t, const VkValidationCacheEXT *);
1144 #if defined(USE_STRUCT_CONVERSION)
1145 VkResult (*p_vkQueueBindSparse)(VkQueue, uint32_t, const VkBindSparseInfo_host *, VkFence);
1146 #else
1147 VkResult (*p_vkQueueBindSparse)(VkQueue, uint32_t, const VkBindSparseInfo *, VkFence);
1148 #endif
1149 VkResult (*p_vkQueuePresentKHR)(VkQueue, const VkPresentInfoKHR *);
1150 VkResult (*p_vkQueueSubmit)(VkQueue, uint32_t, const VkSubmitInfo *, VkFence);
1151 VkResult (*p_vkQueueWaitIdle)(VkQueue);
1152 VkResult (*p_vkResetCommandBuffer)(VkCommandBuffer, VkCommandBufferResetFlags);
1153 VkResult (*p_vkResetCommandPool)(VkDevice, VkCommandPool, VkCommandPoolResetFlags);
1154 VkResult (*p_vkResetDescriptorPool)(VkDevice, VkDescriptorPool, VkDescriptorPoolResetFlags);
1155 VkResult (*p_vkResetEvent)(VkDevice, VkEvent);
1156 VkResult (*p_vkResetFences)(VkDevice, uint32_t, const VkFence *);
1157 void (*p_vkResetQueryPoolEXT)(VkDevice, VkQueryPool, uint32_t, uint32_t);
1158 VkResult (*p_vkSetEvent)(VkDevice, VkEvent);
1159 void (*p_vkTrimCommandPool)(VkDevice, VkCommandPool, VkCommandPoolTrimFlags);
1160 void (*p_vkTrimCommandPoolKHR)(VkDevice, VkCommandPool, VkCommandPoolTrimFlags);
1161 void (*p_vkUnmapMemory)(VkDevice, VkDeviceMemory);
1162 void (*p_vkUpdateDescriptorSetWithTemplate)(VkDevice, VkDescriptorSet, VkDescriptorUpdateTemplate, const void *);
1163 void (*p_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice, VkDescriptorSet, VkDescriptorUpdateTemplate, const void *);
1164 #if defined(USE_STRUCT_CONVERSION)
1165 void (*p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet_host *, uint32_t, const VkCopyDescriptorSet_host *);
1166 #else
1167 void (*p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet *, uint32_t, const VkCopyDescriptorSet *);
1168 #endif
1169 VkResult (*p_vkWaitForFences)(VkDevice, uint32_t, const VkFence *, VkBool32, uint64_t);
1172 /* For use by vkInstance and children */
1173 struct vulkan_instance_funcs
1175 VkResult (*p_vkCreateDevice)(VkPhysicalDevice, const VkDeviceCreateInfo *, const VkAllocationCallbacks *, VkDevice *);
1176 VkResult (*p_vkCreateWin32SurfaceKHR)(VkInstance, const VkWin32SurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *);
1177 void (*p_vkDestroySurfaceKHR)(VkInstance, VkSurfaceKHR, const VkAllocationCallbacks *);
1178 VkResult (*p_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice, const char *, uint32_t *, VkExtensionProperties *);
1179 VkResult (*p_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice, uint32_t *, VkLayerProperties *);
1180 VkResult (*p_vkEnumeratePhysicalDeviceGroups)(VkInstance, uint32_t *, VkPhysicalDeviceGroupProperties *);
1181 VkResult (*p_vkEnumeratePhysicalDeviceGroupsKHR)(VkInstance, uint32_t *, VkPhysicalDeviceGroupProperties *);
1182 VkResult (*p_vkEnumeratePhysicalDevices)(VkInstance, uint32_t *, VkPhysicalDevice *);
1183 VkResult (*p_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV)(VkPhysicalDevice, uint32_t *, VkCooperativeMatrixPropertiesNV *);
1184 void (*p_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice, VkPhysicalDeviceFeatures *);
1185 void (*p_vkGetPhysicalDeviceFeatures2)(VkPhysicalDevice, VkPhysicalDeviceFeatures2 *);
1186 void (*p_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice, VkPhysicalDeviceFeatures2 *);
1187 void (*p_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice, VkFormat, VkFormatProperties *);
1188 void (*p_vkGetPhysicalDeviceFormatProperties2)(VkPhysicalDevice, VkFormat, VkFormatProperties2 *);
1189 void (*p_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice, VkFormat, VkFormatProperties2 *);
1190 #if defined(USE_STRUCT_CONVERSION)
1191 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkImageTiling, VkImageUsageFlags, VkImageCreateFlags, VkImageFormatProperties_host *);
1192 #else
1193 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkImageTiling, VkImageUsageFlags, VkImageCreateFlags, VkImageFormatProperties *);
1194 #endif
1195 #if defined(USE_STRUCT_CONVERSION)
1196 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2_host *);
1197 #else
1198 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2 *);
1199 #endif
1200 #if defined(USE_STRUCT_CONVERSION)
1201 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2_host *);
1202 #else
1203 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2 *);
1204 #endif
1205 #if defined(USE_STRUCT_CONVERSION)
1206 void (*p_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties_host *);
1207 #else
1208 void (*p_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties *);
1209 #endif
1210 #if defined(USE_STRUCT_CONVERSION)
1211 void (*p_vkGetPhysicalDeviceMemoryProperties2)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2_host *);
1212 #else
1213 void (*p_vkGetPhysicalDeviceMemoryProperties2)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2 *);
1214 #endif
1215 #if defined(USE_STRUCT_CONVERSION)
1216 void (*p_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2_host *);
1217 #else
1218 void (*p_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2 *);
1219 #endif
1220 void (*p_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice, VkSampleCountFlagBits, VkMultisamplePropertiesEXT *);
1221 VkResult (*p_vkGetPhysicalDevicePresentRectanglesKHR)(VkPhysicalDevice, VkSurfaceKHR, uint32_t *, VkRect2D *);
1222 #if defined(USE_STRUCT_CONVERSION)
1223 void (*p_vkGetPhysicalDeviceProperties)(VkPhysicalDevice, VkPhysicalDeviceProperties_host *);
1224 #else
1225 void (*p_vkGetPhysicalDeviceProperties)(VkPhysicalDevice, VkPhysicalDeviceProperties *);
1226 #endif
1227 #if defined(USE_STRUCT_CONVERSION)
1228 void (*p_vkGetPhysicalDeviceProperties2)(VkPhysicalDevice, VkPhysicalDeviceProperties2_host *);
1229 #else
1230 void (*p_vkGetPhysicalDeviceProperties2)(VkPhysicalDevice, VkPhysicalDeviceProperties2 *);
1231 #endif
1232 #if defined(USE_STRUCT_CONVERSION)
1233 void (*p_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceProperties2_host *);
1234 #else
1235 void (*p_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceProperties2 *);
1236 #endif
1237 void (*p_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice, uint32_t *, VkQueueFamilyProperties *);
1238 void (*p_vkGetPhysicalDeviceQueueFamilyProperties2)(VkPhysicalDevice, uint32_t *, VkQueueFamilyProperties2 *);
1239 void (*p_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice, uint32_t *, VkQueueFamilyProperties2 *);
1240 void (*p_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkSampleCountFlagBits, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *);
1241 void (*p_vkGetPhysicalDeviceSparseImageFormatProperties2)(VkPhysicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2 *, uint32_t *, VkSparseImageFormatProperties2 *);
1242 void (*p_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2 *, uint32_t *, VkSparseImageFormatProperties2 *);
1243 VkResult (*p_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice, VkSurfaceKHR, VkSurfaceCapabilitiesKHR *);
1244 VkResult (*p_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice, VkSurfaceKHR, uint32_t *, VkSurfaceFormatKHR *);
1245 VkResult (*p_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice, VkSurfaceKHR, uint32_t *, VkPresentModeKHR *);
1246 VkResult (*p_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice, uint32_t, VkSurfaceKHR, VkBool32 *);
1247 VkBool32 (*p_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice, uint32_t);
1250 #define ALL_VK_DEVICE_FUNCS() \
1251 USE_VK_FUNC(vkAcquireNextImage2KHR) \
1252 USE_VK_FUNC(vkAcquireNextImageKHR) \
1253 USE_VK_FUNC(vkAllocateCommandBuffers) \
1254 USE_VK_FUNC(vkAllocateDescriptorSets) \
1255 USE_VK_FUNC(vkAllocateMemory) \
1256 USE_VK_FUNC(vkBeginCommandBuffer) \
1257 USE_VK_FUNC(vkBindAccelerationStructureMemoryNV) \
1258 USE_VK_FUNC(vkBindBufferMemory) \
1259 USE_VK_FUNC(vkBindBufferMemory2) \
1260 USE_VK_FUNC(vkBindBufferMemory2KHR) \
1261 USE_VK_FUNC(vkBindImageMemory) \
1262 USE_VK_FUNC(vkBindImageMemory2) \
1263 USE_VK_FUNC(vkBindImageMemory2KHR) \
1264 USE_VK_FUNC(vkCmdBeginConditionalRenderingEXT) \
1265 USE_VK_FUNC(vkCmdBeginQuery) \
1266 USE_VK_FUNC(vkCmdBeginQueryIndexedEXT) \
1267 USE_VK_FUNC(vkCmdBeginRenderPass) \
1268 USE_VK_FUNC(vkCmdBeginRenderPass2KHR) \
1269 USE_VK_FUNC(vkCmdBeginTransformFeedbackEXT) \
1270 USE_VK_FUNC(vkCmdBindDescriptorSets) \
1271 USE_VK_FUNC(vkCmdBindIndexBuffer) \
1272 USE_VK_FUNC(vkCmdBindPipeline) \
1273 USE_VK_FUNC(vkCmdBindShadingRateImageNV) \
1274 USE_VK_FUNC(vkCmdBindTransformFeedbackBuffersEXT) \
1275 USE_VK_FUNC(vkCmdBindVertexBuffers) \
1276 USE_VK_FUNC(vkCmdBlitImage) \
1277 USE_VK_FUNC(vkCmdBuildAccelerationStructureNV) \
1278 USE_VK_FUNC(vkCmdClearAttachments) \
1279 USE_VK_FUNC(vkCmdClearColorImage) \
1280 USE_VK_FUNC(vkCmdClearDepthStencilImage) \
1281 USE_VK_FUNC(vkCmdCopyAccelerationStructureNV) \
1282 USE_VK_FUNC(vkCmdCopyBuffer) \
1283 USE_VK_FUNC(vkCmdCopyBufferToImage) \
1284 USE_VK_FUNC(vkCmdCopyImage) \
1285 USE_VK_FUNC(vkCmdCopyImageToBuffer) \
1286 USE_VK_FUNC(vkCmdCopyQueryPoolResults) \
1287 USE_VK_FUNC(vkCmdDispatch) \
1288 USE_VK_FUNC(vkCmdDispatchBase) \
1289 USE_VK_FUNC(vkCmdDispatchBaseKHR) \
1290 USE_VK_FUNC(vkCmdDispatchIndirect) \
1291 USE_VK_FUNC(vkCmdDraw) \
1292 USE_VK_FUNC(vkCmdDrawIndexed) \
1293 USE_VK_FUNC(vkCmdDrawIndexedIndirect) \
1294 USE_VK_FUNC(vkCmdDrawIndexedIndirectCountAMD) \
1295 USE_VK_FUNC(vkCmdDrawIndexedIndirectCountKHR) \
1296 USE_VK_FUNC(vkCmdDrawIndirect) \
1297 USE_VK_FUNC(vkCmdDrawIndirectByteCountEXT) \
1298 USE_VK_FUNC(vkCmdDrawIndirectCountAMD) \
1299 USE_VK_FUNC(vkCmdDrawIndirectCountKHR) \
1300 USE_VK_FUNC(vkCmdDrawMeshTasksIndirectCountNV) \
1301 USE_VK_FUNC(vkCmdDrawMeshTasksIndirectNV) \
1302 USE_VK_FUNC(vkCmdDrawMeshTasksNV) \
1303 USE_VK_FUNC(vkCmdEndConditionalRenderingEXT) \
1304 USE_VK_FUNC(vkCmdEndQuery) \
1305 USE_VK_FUNC(vkCmdEndQueryIndexedEXT) \
1306 USE_VK_FUNC(vkCmdEndRenderPass) \
1307 USE_VK_FUNC(vkCmdEndRenderPass2KHR) \
1308 USE_VK_FUNC(vkCmdEndTransformFeedbackEXT) \
1309 USE_VK_FUNC(vkCmdExecuteCommands) \
1310 USE_VK_FUNC(vkCmdFillBuffer) \
1311 USE_VK_FUNC(vkCmdNextSubpass) \
1312 USE_VK_FUNC(vkCmdNextSubpass2KHR) \
1313 USE_VK_FUNC(vkCmdPipelineBarrier) \
1314 USE_VK_FUNC(vkCmdPushConstants) \
1315 USE_VK_FUNC(vkCmdPushDescriptorSetKHR) \
1316 USE_VK_FUNC(vkCmdPushDescriptorSetWithTemplateKHR) \
1317 USE_VK_FUNC(vkCmdResetEvent) \
1318 USE_VK_FUNC(vkCmdResetQueryPool) \
1319 USE_VK_FUNC(vkCmdResolveImage) \
1320 USE_VK_FUNC(vkCmdSetBlendConstants) \
1321 USE_VK_FUNC(vkCmdSetCheckpointNV) \
1322 USE_VK_FUNC(vkCmdSetCoarseSampleOrderNV) \
1323 USE_VK_FUNC(vkCmdSetDepthBias) \
1324 USE_VK_FUNC(vkCmdSetDepthBounds) \
1325 USE_VK_FUNC(vkCmdSetDeviceMask) \
1326 USE_VK_FUNC(vkCmdSetDeviceMaskKHR) \
1327 USE_VK_FUNC(vkCmdSetDiscardRectangleEXT) \
1328 USE_VK_FUNC(vkCmdSetEvent) \
1329 USE_VK_FUNC(vkCmdSetExclusiveScissorNV) \
1330 USE_VK_FUNC(vkCmdSetLineWidth) \
1331 USE_VK_FUNC(vkCmdSetSampleLocationsEXT) \
1332 USE_VK_FUNC(vkCmdSetScissor) \
1333 USE_VK_FUNC(vkCmdSetStencilCompareMask) \
1334 USE_VK_FUNC(vkCmdSetStencilReference) \
1335 USE_VK_FUNC(vkCmdSetStencilWriteMask) \
1336 USE_VK_FUNC(vkCmdSetViewport) \
1337 USE_VK_FUNC(vkCmdSetViewportShadingRatePaletteNV) \
1338 USE_VK_FUNC(vkCmdSetViewportWScalingNV) \
1339 USE_VK_FUNC(vkCmdTraceRaysNV) \
1340 USE_VK_FUNC(vkCmdUpdateBuffer) \
1341 USE_VK_FUNC(vkCmdWaitEvents) \
1342 USE_VK_FUNC(vkCmdWriteAccelerationStructuresPropertiesNV) \
1343 USE_VK_FUNC(vkCmdWriteBufferMarkerAMD) \
1344 USE_VK_FUNC(vkCmdWriteTimestamp) \
1345 USE_VK_FUNC(vkCompileDeferredNV) \
1346 USE_VK_FUNC(vkCreateAccelerationStructureNV) \
1347 USE_VK_FUNC(vkCreateBuffer) \
1348 USE_VK_FUNC(vkCreateBufferView) \
1349 USE_VK_FUNC(vkCreateCommandPool) \
1350 USE_VK_FUNC(vkCreateComputePipelines) \
1351 USE_VK_FUNC(vkCreateDescriptorPool) \
1352 USE_VK_FUNC(vkCreateDescriptorSetLayout) \
1353 USE_VK_FUNC(vkCreateDescriptorUpdateTemplate) \
1354 USE_VK_FUNC(vkCreateDescriptorUpdateTemplateKHR) \
1355 USE_VK_FUNC(vkCreateEvent) \
1356 USE_VK_FUNC(vkCreateFence) \
1357 USE_VK_FUNC(vkCreateFramebuffer) \
1358 USE_VK_FUNC(vkCreateGraphicsPipelines) \
1359 USE_VK_FUNC(vkCreateImage) \
1360 USE_VK_FUNC(vkCreateImageView) \
1361 USE_VK_FUNC(vkCreatePipelineCache) \
1362 USE_VK_FUNC(vkCreatePipelineLayout) \
1363 USE_VK_FUNC(vkCreateQueryPool) \
1364 USE_VK_FUNC(vkCreateRayTracingPipelinesNV) \
1365 USE_VK_FUNC(vkCreateRenderPass) \
1366 USE_VK_FUNC(vkCreateRenderPass2KHR) \
1367 USE_VK_FUNC(vkCreateSampler) \
1368 USE_VK_FUNC(vkCreateSamplerYcbcrConversion) \
1369 USE_VK_FUNC(vkCreateSamplerYcbcrConversionKHR) \
1370 USE_VK_FUNC(vkCreateSemaphore) \
1371 USE_VK_FUNC(vkCreateShaderModule) \
1372 USE_VK_FUNC(vkCreateSwapchainKHR) \
1373 USE_VK_FUNC(vkCreateValidationCacheEXT) \
1374 USE_VK_FUNC(vkDestroyAccelerationStructureNV) \
1375 USE_VK_FUNC(vkDestroyBuffer) \
1376 USE_VK_FUNC(vkDestroyBufferView) \
1377 USE_VK_FUNC(vkDestroyCommandPool) \
1378 USE_VK_FUNC(vkDestroyDescriptorPool) \
1379 USE_VK_FUNC(vkDestroyDescriptorSetLayout) \
1380 USE_VK_FUNC(vkDestroyDescriptorUpdateTemplate) \
1381 USE_VK_FUNC(vkDestroyDescriptorUpdateTemplateKHR) \
1382 USE_VK_FUNC(vkDestroyDevice) \
1383 USE_VK_FUNC(vkDestroyEvent) \
1384 USE_VK_FUNC(vkDestroyFence) \
1385 USE_VK_FUNC(vkDestroyFramebuffer) \
1386 USE_VK_FUNC(vkDestroyImage) \
1387 USE_VK_FUNC(vkDestroyImageView) \
1388 USE_VK_FUNC(vkDestroyPipeline) \
1389 USE_VK_FUNC(vkDestroyPipelineCache) \
1390 USE_VK_FUNC(vkDestroyPipelineLayout) \
1391 USE_VK_FUNC(vkDestroyQueryPool) \
1392 USE_VK_FUNC(vkDestroyRenderPass) \
1393 USE_VK_FUNC(vkDestroySampler) \
1394 USE_VK_FUNC(vkDestroySamplerYcbcrConversion) \
1395 USE_VK_FUNC(vkDestroySamplerYcbcrConversionKHR) \
1396 USE_VK_FUNC(vkDestroySemaphore) \
1397 USE_VK_FUNC(vkDestroyShaderModule) \
1398 USE_VK_FUNC(vkDestroySwapchainKHR) \
1399 USE_VK_FUNC(vkDestroyValidationCacheEXT) \
1400 USE_VK_FUNC(vkDeviceWaitIdle) \
1401 USE_VK_FUNC(vkEndCommandBuffer) \
1402 USE_VK_FUNC(vkFlushMappedMemoryRanges) \
1403 USE_VK_FUNC(vkFreeCommandBuffers) \
1404 USE_VK_FUNC(vkFreeDescriptorSets) \
1405 USE_VK_FUNC(vkFreeMemory) \
1406 USE_VK_FUNC(vkGetAccelerationStructureHandleNV) \
1407 USE_VK_FUNC(vkGetAccelerationStructureMemoryRequirementsNV) \
1408 USE_VK_FUNC(vkGetBufferDeviceAddressEXT) \
1409 USE_VK_FUNC(vkGetBufferMemoryRequirements) \
1410 USE_VK_FUNC(vkGetBufferMemoryRequirements2) \
1411 USE_VK_FUNC(vkGetBufferMemoryRequirements2KHR) \
1412 USE_VK_FUNC(vkGetDescriptorSetLayoutSupport) \
1413 USE_VK_FUNC(vkGetDescriptorSetLayoutSupportKHR) \
1414 USE_VK_FUNC(vkGetDeviceGroupPeerMemoryFeatures) \
1415 USE_VK_FUNC(vkGetDeviceGroupPeerMemoryFeaturesKHR) \
1416 USE_VK_FUNC(vkGetDeviceGroupPresentCapabilitiesKHR) \
1417 USE_VK_FUNC(vkGetDeviceGroupSurfacePresentModesKHR) \
1418 USE_VK_FUNC(vkGetDeviceMemoryCommitment) \
1419 USE_VK_FUNC(vkGetDeviceQueue) \
1420 USE_VK_FUNC(vkGetDeviceQueue2) \
1421 USE_VK_FUNC(vkGetEventStatus) \
1422 USE_VK_FUNC(vkGetFenceStatus) \
1423 USE_VK_FUNC(vkGetImageMemoryRequirements) \
1424 USE_VK_FUNC(vkGetImageMemoryRequirements2) \
1425 USE_VK_FUNC(vkGetImageMemoryRequirements2KHR) \
1426 USE_VK_FUNC(vkGetImageSparseMemoryRequirements) \
1427 USE_VK_FUNC(vkGetImageSparseMemoryRequirements2) \
1428 USE_VK_FUNC(vkGetImageSparseMemoryRequirements2KHR) \
1429 USE_VK_FUNC(vkGetImageSubresourceLayout) \
1430 USE_VK_FUNC(vkGetMemoryHostPointerPropertiesEXT) \
1431 USE_VK_FUNC(vkGetPipelineCacheData) \
1432 USE_VK_FUNC(vkGetQueryPoolResults) \
1433 USE_VK_FUNC(vkGetQueueCheckpointDataNV) \
1434 USE_VK_FUNC(vkGetRayTracingShaderGroupHandlesNV) \
1435 USE_VK_FUNC(vkGetRenderAreaGranularity) \
1436 USE_VK_FUNC(vkGetShaderInfoAMD) \
1437 USE_VK_FUNC(vkGetSwapchainImagesKHR) \
1438 USE_VK_FUNC(vkGetValidationCacheDataEXT) \
1439 USE_VK_FUNC(vkInvalidateMappedMemoryRanges) \
1440 USE_VK_FUNC(vkMapMemory) \
1441 USE_VK_FUNC(vkMergePipelineCaches) \
1442 USE_VK_FUNC(vkMergeValidationCachesEXT) \
1443 USE_VK_FUNC(vkQueueBindSparse) \
1444 USE_VK_FUNC(vkQueuePresentKHR) \
1445 USE_VK_FUNC(vkQueueSubmit) \
1446 USE_VK_FUNC(vkQueueWaitIdle) \
1447 USE_VK_FUNC(vkResetCommandBuffer) \
1448 USE_VK_FUNC(vkResetCommandPool) \
1449 USE_VK_FUNC(vkResetDescriptorPool) \
1450 USE_VK_FUNC(vkResetEvent) \
1451 USE_VK_FUNC(vkResetFences) \
1452 USE_VK_FUNC(vkResetQueryPoolEXT) \
1453 USE_VK_FUNC(vkSetEvent) \
1454 USE_VK_FUNC(vkTrimCommandPool) \
1455 USE_VK_FUNC(vkTrimCommandPoolKHR) \
1456 USE_VK_FUNC(vkUnmapMemory) \
1457 USE_VK_FUNC(vkUpdateDescriptorSetWithTemplate) \
1458 USE_VK_FUNC(vkUpdateDescriptorSetWithTemplateKHR) \
1459 USE_VK_FUNC(vkUpdateDescriptorSets) \
1460 USE_VK_FUNC(vkWaitForFences)
1462 #define ALL_VK_INSTANCE_FUNCS() \
1463 USE_VK_FUNC(vkCreateDevice) \
1464 USE_VK_FUNC(vkCreateWin32SurfaceKHR) \
1465 USE_VK_FUNC(vkDestroySurfaceKHR) \
1466 USE_VK_FUNC(vkEnumerateDeviceExtensionProperties) \
1467 USE_VK_FUNC(vkEnumerateDeviceLayerProperties) \
1468 USE_VK_FUNC(vkEnumeratePhysicalDeviceGroups) \
1469 USE_VK_FUNC(vkEnumeratePhysicalDeviceGroupsKHR) \
1470 USE_VK_FUNC(vkEnumeratePhysicalDevices) \
1471 USE_VK_FUNC(vkGetPhysicalDeviceCooperativeMatrixPropertiesNV) \
1472 USE_VK_FUNC(vkGetPhysicalDeviceFeatures) \
1473 USE_VK_FUNC(vkGetPhysicalDeviceFeatures2) \
1474 USE_VK_FUNC(vkGetPhysicalDeviceFeatures2KHR) \
1475 USE_VK_FUNC(vkGetPhysicalDeviceFormatProperties) \
1476 USE_VK_FUNC(vkGetPhysicalDeviceFormatProperties2) \
1477 USE_VK_FUNC(vkGetPhysicalDeviceFormatProperties2KHR) \
1478 USE_VK_FUNC(vkGetPhysicalDeviceImageFormatProperties) \
1479 USE_VK_FUNC(vkGetPhysicalDeviceImageFormatProperties2) \
1480 USE_VK_FUNC(vkGetPhysicalDeviceImageFormatProperties2KHR) \
1481 USE_VK_FUNC(vkGetPhysicalDeviceMemoryProperties) \
1482 USE_VK_FUNC(vkGetPhysicalDeviceMemoryProperties2) \
1483 USE_VK_FUNC(vkGetPhysicalDeviceMemoryProperties2KHR) \
1484 USE_VK_FUNC(vkGetPhysicalDeviceMultisamplePropertiesEXT) \
1485 USE_VK_FUNC(vkGetPhysicalDevicePresentRectanglesKHR) \
1486 USE_VK_FUNC(vkGetPhysicalDeviceProperties) \
1487 USE_VK_FUNC(vkGetPhysicalDeviceProperties2) \
1488 USE_VK_FUNC(vkGetPhysicalDeviceProperties2KHR) \
1489 USE_VK_FUNC(vkGetPhysicalDeviceQueueFamilyProperties) \
1490 USE_VK_FUNC(vkGetPhysicalDeviceQueueFamilyProperties2) \
1491 USE_VK_FUNC(vkGetPhysicalDeviceQueueFamilyProperties2KHR) \
1492 USE_VK_FUNC(vkGetPhysicalDeviceSparseImageFormatProperties) \
1493 USE_VK_FUNC(vkGetPhysicalDeviceSparseImageFormatProperties2) \
1494 USE_VK_FUNC(vkGetPhysicalDeviceSparseImageFormatProperties2KHR) \
1495 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceCapabilitiesKHR) \
1496 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceFormatsKHR) \
1497 USE_VK_FUNC(vkGetPhysicalDeviceSurfacePresentModesKHR) \
1498 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceSupportKHR) \
1499 USE_VK_FUNC(vkGetPhysicalDeviceWin32PresentationSupportKHR)
1501 #endif /* __WINE_VULKAN_THUNKS_H */