wsdapi: Add a trailing '\n' to a WARN() message.
[wine.git] / dlls / winevulkan / vulkan_thunks.h
blob55645afd4735b18c4e03ba3225f9784d10743bfa
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-2018 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 /* Functions for which we have custom implementations outside of the thunks. */
42 VkResult WINAPI wine_vkAllocateCommandBuffers(VkDevice device, const VkCommandBufferAllocateInfo *pAllocateInfo, VkCommandBuffer *pCommandBuffers);
43 void WINAPI wine_vkCmdExecuteCommands(VkCommandBuffer commandBuffer, uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers);
44 VkResult WINAPI wine_vkCreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCreateInfo, const VkAllocationCallbacks *pAllocator, VkDevice *pDevice);
45 void WINAPI wine_vkDestroyDevice(VkDevice device, const VkAllocationCallbacks *pAllocator);
46 void WINAPI wine_vkDestroyInstance(VkInstance instance, const VkAllocationCallbacks *pAllocator);
47 VkResult WINAPI wine_vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice, const char *pLayerName, uint32_t *pPropertyCount, VkExtensionProperties *pProperties);
48 VkResult WINAPI wine_vkEnumeratePhysicalDevices(VkInstance instance, uint32_t *pPhysicalDeviceCount, VkPhysicalDevice *pPhysicalDevices);
49 void WINAPI wine_vkFreeCommandBuffers(VkDevice device, VkCommandPool commandPool, uint32_t commandBufferCount, const VkCommandBuffer *pCommandBuffers);
50 PFN_vkVoidFunction WINAPI wine_vkGetDeviceProcAddr(VkDevice device, const char *pName);
51 void WINAPI wine_vkGetDeviceQueue(VkDevice device, uint32_t queueFamilyIndex, uint32_t queueIndex, VkQueue *pQueue);
52 VkResult WINAPI wine_vkQueueSubmit(VkQueue queue, uint32_t submitCount, const VkSubmitInfo *pSubmits, VkFence fence);
54 typedef struct VkCommandBufferAllocateInfo_host
56 VkStructureType sType;
57 const void *pNext;
58 VkCommandPool commandPool;
59 VkCommandBufferLevel level;
60 uint32_t commandBufferCount;
61 } VkCommandBufferAllocateInfo_host;
63 typedef struct VkDescriptorSetAllocateInfo_host
65 VkStructureType sType;
66 const void *pNext;
67 VkDescriptorPool descriptorPool;
68 uint32_t descriptorSetCount;
69 const VkDescriptorSetLayout *pSetLayouts;
70 } VkDescriptorSetAllocateInfo_host;
72 typedef struct VkMemoryAllocateInfo_host
74 VkStructureType sType;
75 const void *pNext;
76 VkDeviceSize allocationSize;
77 uint32_t memoryTypeIndex;
78 } VkMemoryAllocateInfo_host;
80 typedef struct VkCommandBufferInheritanceInfo_host
82 VkStructureType sType;
83 const void *pNext;
84 VkRenderPass renderPass;
85 uint32_t subpass;
86 VkFramebuffer framebuffer;
87 VkBool32 occlusionQueryEnable;
88 VkQueryControlFlags queryFlags;
89 VkQueryPipelineStatisticFlags pipelineStatistics;
90 } VkCommandBufferInheritanceInfo_host;
92 typedef struct VkCommandBufferBeginInfo_host
94 VkStructureType sType;
95 const void *pNext;
96 VkCommandBufferUsageFlags flags;
97 const VkCommandBufferInheritanceInfo_host *pInheritanceInfo;
98 } VkCommandBufferBeginInfo_host;
100 typedef struct VkBindBufferMemoryInfo_host
102 VkStructureType sType;
103 const void *pNext;
104 VkBuffer buffer;
105 VkDeviceMemory memory;
106 VkDeviceSize memoryOffset;
107 } VkBindBufferMemoryInfo_host;
109 typedef struct VkBindImageMemoryInfo_host
111 VkStructureType sType;
112 const void *pNext;
113 VkImage image;
114 VkDeviceMemory memory;
115 VkDeviceSize memoryOffset;
116 } VkBindImageMemoryInfo_host;
118 typedef struct VkRenderPassBeginInfo_host
120 VkStructureType sType;
121 const void *pNext;
122 VkRenderPass renderPass;
123 VkFramebuffer framebuffer;
124 VkRect2D renderArea;
125 uint32_t clearValueCount;
126 const VkClearValue *pClearValues;
127 } VkRenderPassBeginInfo_host;
129 typedef struct VkBufferCopy_host
131 VkDeviceSize srcOffset;
132 VkDeviceSize dstOffset;
133 VkDeviceSize size;
134 } VkBufferCopy_host;
136 typedef struct VkBufferImageCopy_host
138 VkDeviceSize bufferOffset;
139 uint32_t bufferRowLength;
140 uint32_t bufferImageHeight;
141 VkImageSubresourceLayers imageSubresource;
142 VkOffset3D imageOffset;
143 VkExtent3D imageExtent;
144 } VkBufferImageCopy_host;
146 typedef struct VkBufferMemoryBarrier_host
148 VkStructureType sType;
149 const void *pNext;
150 VkAccessFlags srcAccessMask;
151 VkAccessFlags dstAccessMask;
152 uint32_t srcQueueFamilyIndex;
153 uint32_t dstQueueFamilyIndex;
154 VkBuffer buffer;
155 VkDeviceSize offset;
156 VkDeviceSize size;
157 } VkBufferMemoryBarrier_host;
159 typedef struct VkImageMemoryBarrier_host
161 VkStructureType sType;
162 const void *pNext;
163 VkAccessFlags srcAccessMask;
164 VkAccessFlags dstAccessMask;
165 VkImageLayout oldLayout;
166 VkImageLayout newLayout;
167 uint32_t srcQueueFamilyIndex;
168 uint32_t dstQueueFamilyIndex;
169 VkImage image;
170 VkImageSubresourceRange subresourceRange;
171 } VkImageMemoryBarrier_host;
173 typedef struct VkDescriptorImageInfo_host
175 VkSampler sampler;
176 VkImageView imageView;
177 VkImageLayout imageLayout;
178 } VkDescriptorImageInfo_host;
180 typedef struct VkDescriptorBufferInfo_host
182 VkBuffer buffer;
183 VkDeviceSize offset;
184 VkDeviceSize range;
185 } VkDescriptorBufferInfo_host;
187 typedef struct VkWriteDescriptorSet_host
189 VkStructureType sType;
190 const void *pNext;
191 VkDescriptorSet dstSet;
192 uint32_t dstBinding;
193 uint32_t dstArrayElement;
194 uint32_t descriptorCount;
195 VkDescriptorType descriptorType;
196 const VkDescriptorImageInfo_host *pImageInfo;
197 const VkDescriptorBufferInfo_host *pBufferInfo;
198 const VkBufferView *pTexelBufferView;
199 } VkWriteDescriptorSet_host;
201 typedef struct VkBufferCreateInfo_host
203 VkStructureType sType;
204 const void *pNext;
205 VkBufferCreateFlags flags;
206 VkDeviceSize size;
207 VkBufferUsageFlags usage;
208 VkSharingMode sharingMode;
209 uint32_t queueFamilyIndexCount;
210 const uint32_t *pQueueFamilyIndices;
211 } VkBufferCreateInfo_host;
213 typedef struct VkBufferViewCreateInfo_host
215 VkStructureType sType;
216 const void *pNext;
217 VkBufferViewCreateFlags flags;
218 VkBuffer buffer;
219 VkFormat format;
220 VkDeviceSize offset;
221 VkDeviceSize range;
222 } VkBufferViewCreateInfo_host;
224 typedef struct VkPipelineShaderStageCreateInfo_host
226 VkStructureType sType;
227 const void *pNext;
228 VkPipelineShaderStageCreateFlags flags;
229 VkShaderStageFlagBits stage;
230 VkShaderModule module;
231 const char *pName;
232 const VkSpecializationInfo *pSpecializationInfo;
233 } VkPipelineShaderStageCreateInfo_host;
235 typedef struct VkComputePipelineCreateInfo_host
237 VkStructureType sType;
238 const void *pNext;
239 VkPipelineCreateFlags flags;
240 VkPipelineShaderStageCreateInfo_host stage;
241 VkPipelineLayout layout;
242 VkPipeline basePipelineHandle;
243 int32_t basePipelineIndex;
244 } VkComputePipelineCreateInfo_host;
246 typedef struct VkDescriptorUpdateTemplateCreateInfo_host
248 VkStructureType sType;
249 void *pNext;
250 VkDescriptorUpdateTemplateCreateFlags flags;
251 uint32_t descriptorUpdateEntryCount;
252 const VkDescriptorUpdateTemplateEntry *pDescriptorUpdateEntries;
253 VkDescriptorUpdateTemplateType templateType;
254 VkDescriptorSetLayout descriptorSetLayout;
255 VkPipelineBindPoint pipelineBindPoint;
256 VkPipelineLayout pipelineLayout;
257 uint32_t set;
258 } VkDescriptorUpdateTemplateCreateInfo_host;
260 typedef struct VkFramebufferCreateInfo_host
262 VkStructureType sType;
263 const void *pNext;
264 VkFramebufferCreateFlags flags;
265 VkRenderPass renderPass;
266 uint32_t attachmentCount;
267 const VkImageView *pAttachments;
268 uint32_t width;
269 uint32_t height;
270 uint32_t layers;
271 } VkFramebufferCreateInfo_host;
273 typedef struct VkGraphicsPipelineCreateInfo_host
275 VkStructureType sType;
276 const void *pNext;
277 VkPipelineCreateFlags flags;
278 uint32_t stageCount;
279 const VkPipelineShaderStageCreateInfo_host *pStages;
280 const VkPipelineVertexInputStateCreateInfo *pVertexInputState;
281 const VkPipelineInputAssemblyStateCreateInfo *pInputAssemblyState;
282 const VkPipelineTessellationStateCreateInfo *pTessellationState;
283 const VkPipelineViewportStateCreateInfo *pViewportState;
284 const VkPipelineRasterizationStateCreateInfo *pRasterizationState;
285 const VkPipelineMultisampleStateCreateInfo *pMultisampleState;
286 const VkPipelineDepthStencilStateCreateInfo *pDepthStencilState;
287 const VkPipelineColorBlendStateCreateInfo *pColorBlendState;
288 const VkPipelineDynamicStateCreateInfo *pDynamicState;
289 VkPipelineLayout layout;
290 VkRenderPass renderPass;
291 uint32_t subpass;
292 VkPipeline basePipelineHandle;
293 int32_t basePipelineIndex;
294 } VkGraphicsPipelineCreateInfo_host;
296 typedef struct VkImageViewCreateInfo_host
298 VkStructureType sType;
299 const void *pNext;
300 VkImageViewCreateFlags flags;
301 VkImage image;
302 VkImageViewType viewType;
303 VkFormat format;
304 VkComponentMapping components;
305 VkImageSubresourceRange subresourceRange;
306 } VkImageViewCreateInfo_host;
308 typedef struct VkSwapchainCreateInfoKHR_host
310 VkStructureType sType;
311 const void *pNext;
312 VkSwapchainCreateFlagsKHR flags;
313 VkSurfaceKHR surface;
314 uint32_t minImageCount;
315 VkFormat imageFormat;
316 VkColorSpaceKHR imageColorSpace;
317 VkExtent2D imageExtent;
318 uint32_t imageArrayLayers;
319 VkImageUsageFlags imageUsage;
320 VkSharingMode imageSharingMode;
321 uint32_t queueFamilyIndexCount;
322 const uint32_t *pQueueFamilyIndices;
323 VkSurfaceTransformFlagBitsKHR preTransform;
324 VkCompositeAlphaFlagBitsKHR compositeAlpha;
325 VkPresentModeKHR presentMode;
326 VkBool32 clipped;
327 VkSwapchainKHR oldSwapchain;
328 } VkSwapchainCreateInfoKHR_host;
330 typedef struct VkMappedMemoryRange_host
332 VkStructureType sType;
333 const void *pNext;
334 VkDeviceMemory memory;
335 VkDeviceSize offset;
336 VkDeviceSize size;
337 } VkMappedMemoryRange_host;
339 typedef struct VkMemoryRequirements_host
341 VkDeviceSize size;
342 VkDeviceSize alignment;
343 uint32_t memoryTypeBits;
344 } VkMemoryRequirements_host;
346 typedef struct VkBufferMemoryRequirementsInfo2_host
348 VkStructureType sType;
349 const void *pNext;
350 VkBuffer buffer;
351 } VkBufferMemoryRequirementsInfo2_host;
353 typedef struct VkMemoryRequirements2_host
355 VkStructureType sType;
356 void *pNext;
357 VkMemoryRequirements_host memoryRequirements;
358 } VkMemoryRequirements2_host;
360 typedef struct VkImageMemoryRequirementsInfo2_host
362 VkStructureType sType;
363 const void *pNext;
364 VkImage image;
365 } VkImageMemoryRequirementsInfo2_host;
367 typedef struct VkImageSparseMemoryRequirementsInfo2_host
369 VkStructureType sType;
370 const void *pNext;
371 VkImage image;
372 } VkImageSparseMemoryRequirementsInfo2_host;
374 typedef struct VkSubresourceLayout_host
376 VkDeviceSize offset;
377 VkDeviceSize size;
378 VkDeviceSize rowPitch;
379 VkDeviceSize arrayPitch;
380 VkDeviceSize depthPitch;
381 } VkSubresourceLayout_host;
383 typedef struct VkImageFormatProperties_host
385 VkExtent3D maxExtent;
386 uint32_t maxMipLevels;
387 uint32_t maxArrayLayers;
388 VkSampleCountFlags sampleCounts;
389 VkDeviceSize maxResourceSize;
390 } VkImageFormatProperties_host;
392 typedef struct VkImageFormatProperties2_host
394 VkStructureType sType;
395 void *pNext;
396 VkImageFormatProperties_host imageFormatProperties;
397 } VkImageFormatProperties2_host;
399 typedef struct VkMemoryHeap_host
401 VkDeviceSize size;
402 VkMemoryHeapFlags flags;
403 } VkMemoryHeap_host;
405 typedef struct VkPhysicalDeviceMemoryProperties_host
407 uint32_t memoryTypeCount;
408 VkMemoryType memoryTypes[VK_MAX_MEMORY_TYPES];
409 uint32_t memoryHeapCount;
410 VkMemoryHeap_host memoryHeaps[VK_MAX_MEMORY_HEAPS];
411 } VkPhysicalDeviceMemoryProperties_host;
413 typedef struct VkPhysicalDeviceMemoryProperties2_host
415 VkStructureType sType;
416 void *pNext;
417 VkPhysicalDeviceMemoryProperties_host memoryProperties;
418 } VkPhysicalDeviceMemoryProperties2_host;
420 typedef struct VkPhysicalDeviceLimits_host
422 uint32_t maxImageDimension1D;
423 uint32_t maxImageDimension2D;
424 uint32_t maxImageDimension3D;
425 uint32_t maxImageDimensionCube;
426 uint32_t maxImageArrayLayers;
427 uint32_t maxTexelBufferElements;
428 uint32_t maxUniformBufferRange;
429 uint32_t maxStorageBufferRange;
430 uint32_t maxPushConstantsSize;
431 uint32_t maxMemoryAllocationCount;
432 uint32_t maxSamplerAllocationCount;
433 VkDeviceSize bufferImageGranularity;
434 VkDeviceSize sparseAddressSpaceSize;
435 uint32_t maxBoundDescriptorSets;
436 uint32_t maxPerStageDescriptorSamplers;
437 uint32_t maxPerStageDescriptorUniformBuffers;
438 uint32_t maxPerStageDescriptorStorageBuffers;
439 uint32_t maxPerStageDescriptorSampledImages;
440 uint32_t maxPerStageDescriptorStorageImages;
441 uint32_t maxPerStageDescriptorInputAttachments;
442 uint32_t maxPerStageResources;
443 uint32_t maxDescriptorSetSamplers;
444 uint32_t maxDescriptorSetUniformBuffers;
445 uint32_t maxDescriptorSetUniformBuffersDynamic;
446 uint32_t maxDescriptorSetStorageBuffers;
447 uint32_t maxDescriptorSetStorageBuffersDynamic;
448 uint32_t maxDescriptorSetSampledImages;
449 uint32_t maxDescriptorSetStorageImages;
450 uint32_t maxDescriptorSetInputAttachments;
451 uint32_t maxVertexInputAttributes;
452 uint32_t maxVertexInputBindings;
453 uint32_t maxVertexInputAttributeOffset;
454 uint32_t maxVertexInputBindingStride;
455 uint32_t maxVertexOutputComponents;
456 uint32_t maxTessellationGenerationLevel;
457 uint32_t maxTessellationPatchSize;
458 uint32_t maxTessellationControlPerVertexInputComponents;
459 uint32_t maxTessellationControlPerVertexOutputComponents;
460 uint32_t maxTessellationControlPerPatchOutputComponents;
461 uint32_t maxTessellationControlTotalOutputComponents;
462 uint32_t maxTessellationEvaluationInputComponents;
463 uint32_t maxTessellationEvaluationOutputComponents;
464 uint32_t maxGeometryShaderInvocations;
465 uint32_t maxGeometryInputComponents;
466 uint32_t maxGeometryOutputComponents;
467 uint32_t maxGeometryOutputVertices;
468 uint32_t maxGeometryTotalOutputComponents;
469 uint32_t maxFragmentInputComponents;
470 uint32_t maxFragmentOutputAttachments;
471 uint32_t maxFragmentDualSrcAttachments;
472 uint32_t maxFragmentCombinedOutputResources;
473 uint32_t maxComputeSharedMemorySize;
474 uint32_t maxComputeWorkGroupCount[3];
475 uint32_t maxComputeWorkGroupInvocations;
476 uint32_t maxComputeWorkGroupSize[3];
477 uint32_t subPixelPrecisionBits;
478 uint32_t subTexelPrecisionBits;
479 uint32_t mipmapPrecisionBits;
480 uint32_t maxDrawIndexedIndexValue;
481 uint32_t maxDrawIndirectCount;
482 float maxSamplerLodBias;
483 float maxSamplerAnisotropy;
484 uint32_t maxViewports;
485 uint32_t maxViewportDimensions[2];
486 float viewportBoundsRange[2];
487 uint32_t viewportSubPixelBits;
488 size_t minMemoryMapAlignment;
489 VkDeviceSize minTexelBufferOffsetAlignment;
490 VkDeviceSize minUniformBufferOffsetAlignment;
491 VkDeviceSize minStorageBufferOffsetAlignment;
492 int32_t minTexelOffset;
493 uint32_t maxTexelOffset;
494 int32_t minTexelGatherOffset;
495 uint32_t maxTexelGatherOffset;
496 float minInterpolationOffset;
497 float maxInterpolationOffset;
498 uint32_t subPixelInterpolationOffsetBits;
499 uint32_t maxFramebufferWidth;
500 uint32_t maxFramebufferHeight;
501 uint32_t maxFramebufferLayers;
502 VkSampleCountFlags framebufferColorSampleCounts;
503 VkSampleCountFlags framebufferDepthSampleCounts;
504 VkSampleCountFlags framebufferStencilSampleCounts;
505 VkSampleCountFlags framebufferNoAttachmentsSampleCounts;
506 uint32_t maxColorAttachments;
507 VkSampleCountFlags sampledImageColorSampleCounts;
508 VkSampleCountFlags sampledImageIntegerSampleCounts;
509 VkSampleCountFlags sampledImageDepthSampleCounts;
510 VkSampleCountFlags sampledImageStencilSampleCounts;
511 VkSampleCountFlags storageImageSampleCounts;
512 uint32_t maxSampleMaskWords;
513 VkBool32 timestampComputeAndGraphics;
514 float timestampPeriod;
515 uint32_t maxClipDistances;
516 uint32_t maxCullDistances;
517 uint32_t maxCombinedClipAndCullDistances;
518 uint32_t discreteQueuePriorities;
519 float pointSizeRange[2];
520 float lineWidthRange[2];
521 float pointSizeGranularity;
522 float lineWidthGranularity;
523 VkBool32 strictLines;
524 VkBool32 standardSampleLocations;
525 VkDeviceSize optimalBufferCopyOffsetAlignment;
526 VkDeviceSize optimalBufferCopyRowPitchAlignment;
527 VkDeviceSize nonCoherentAtomSize;
528 } VkPhysicalDeviceLimits_host;
530 typedef struct VkPhysicalDeviceProperties_host
532 uint32_t apiVersion;
533 uint32_t driverVersion;
534 uint32_t vendorID;
535 uint32_t deviceID;
536 VkPhysicalDeviceType deviceType;
537 char deviceName[VK_MAX_PHYSICAL_DEVICE_NAME_SIZE];
538 uint8_t pipelineCacheUUID[VK_UUID_SIZE];
539 VkPhysicalDeviceLimits_host limits;
540 VkPhysicalDeviceSparseProperties sparseProperties;
541 } VkPhysicalDeviceProperties_host;
543 typedef struct VkPhysicalDeviceProperties2_host
545 VkStructureType sType;
546 void *pNext;
547 VkPhysicalDeviceProperties_host properties;
548 } VkPhysicalDeviceProperties2_host;
550 typedef struct VkSparseMemoryBind_host
552 VkDeviceSize resourceOffset;
553 VkDeviceSize size;
554 VkDeviceMemory memory;
555 VkDeviceSize memoryOffset;
556 VkSparseMemoryBindFlags flags;
557 } VkSparseMemoryBind_host;
559 typedef struct VkSparseBufferMemoryBindInfo_host
561 VkBuffer buffer;
562 uint32_t bindCount;
563 const VkSparseMemoryBind_host *pBinds;
564 } VkSparseBufferMemoryBindInfo_host;
566 typedef struct VkSparseImageOpaqueMemoryBindInfo_host
568 VkImage image;
569 uint32_t bindCount;
570 const VkSparseMemoryBind_host *pBinds;
571 } VkSparseImageOpaqueMemoryBindInfo_host;
573 typedef struct VkSparseImageMemoryBind_host
575 VkImageSubresource subresource;
576 VkOffset3D offset;
577 VkExtent3D extent;
578 VkDeviceMemory memory;
579 VkDeviceSize memoryOffset;
580 VkSparseMemoryBindFlags flags;
581 } VkSparseImageMemoryBind_host;
583 typedef struct VkSparseImageMemoryBindInfo_host
585 VkImage image;
586 uint32_t bindCount;
587 const VkSparseImageMemoryBind_host *pBinds;
588 } VkSparseImageMemoryBindInfo_host;
590 typedef struct VkBindSparseInfo_host
592 VkStructureType sType;
593 const void *pNext;
594 uint32_t waitSemaphoreCount;
595 const VkSemaphore *pWaitSemaphores;
596 uint32_t bufferBindCount;
597 const VkSparseBufferMemoryBindInfo_host *pBufferBinds;
598 uint32_t imageOpaqueBindCount;
599 const VkSparseImageOpaqueMemoryBindInfo_host *pImageOpaqueBinds;
600 uint32_t imageBindCount;
601 const VkSparseImageMemoryBindInfo_host *pImageBinds;
602 uint32_t signalSemaphoreCount;
603 const VkSemaphore *pSignalSemaphores;
604 } VkBindSparseInfo_host;
606 typedef struct VkCopyDescriptorSet_host
608 VkStructureType sType;
609 const void *pNext;
610 VkDescriptorSet srcSet;
611 uint32_t srcBinding;
612 uint32_t srcArrayElement;
613 VkDescriptorSet dstSet;
614 uint32_t dstBinding;
615 uint32_t dstArrayElement;
616 uint32_t descriptorCount;
617 } VkCopyDescriptorSet_host;
620 /* For use by vkDevice and children */
621 struct vulkan_device_funcs
623 VkResult (*p_vkAcquireNextImageKHR)(VkDevice, VkSwapchainKHR, uint64_t, VkSemaphore, VkFence, uint32_t *);
624 #if defined(USE_STRUCT_CONVERSION)
625 VkResult (*p_vkAllocateCommandBuffers)(VkDevice, const VkCommandBufferAllocateInfo_host *, VkCommandBuffer *);
626 #else
627 VkResult (*p_vkAllocateCommandBuffers)(VkDevice, const VkCommandBufferAllocateInfo *, VkCommandBuffer *);
628 #endif
629 #if defined(USE_STRUCT_CONVERSION)
630 VkResult (*p_vkAllocateDescriptorSets)(VkDevice, const VkDescriptorSetAllocateInfo_host *, VkDescriptorSet *);
631 #else
632 VkResult (*p_vkAllocateDescriptorSets)(VkDevice, const VkDescriptorSetAllocateInfo *, VkDescriptorSet *);
633 #endif
634 #if defined(USE_STRUCT_CONVERSION)
635 VkResult (*p_vkAllocateMemory)(VkDevice, const VkMemoryAllocateInfo_host *, const VkAllocationCallbacks *, VkDeviceMemory *);
636 #else
637 VkResult (*p_vkAllocateMemory)(VkDevice, const VkMemoryAllocateInfo *, const VkAllocationCallbacks *, VkDeviceMemory *);
638 #endif
639 #if defined(USE_STRUCT_CONVERSION)
640 VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo_host *);
641 #else
642 VkResult (*p_vkBeginCommandBuffer)(VkCommandBuffer, const VkCommandBufferBeginInfo *);
643 #endif
644 VkResult (*p_vkBindBufferMemory)(VkDevice, VkBuffer, VkDeviceMemory, VkDeviceSize);
645 #if defined(USE_STRUCT_CONVERSION)
646 VkResult (*p_vkBindBufferMemory2KHR)(VkDevice, uint32_t, const VkBindBufferMemoryInfo_host *);
647 #else
648 VkResult (*p_vkBindBufferMemory2KHR)(VkDevice, uint32_t, const VkBindBufferMemoryInfo *);
649 #endif
650 VkResult (*p_vkBindImageMemory)(VkDevice, VkImage, VkDeviceMemory, VkDeviceSize);
651 #if defined(USE_STRUCT_CONVERSION)
652 VkResult (*p_vkBindImageMemory2KHR)(VkDevice, uint32_t, const VkBindImageMemoryInfo_host *);
653 #else
654 VkResult (*p_vkBindImageMemory2KHR)(VkDevice, uint32_t, const VkBindImageMemoryInfo *);
655 #endif
656 void (*p_vkCmdBeginQuery)(VkCommandBuffer, VkQueryPool, uint32_t, VkQueryControlFlags);
657 #if defined(USE_STRUCT_CONVERSION)
658 void (*p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo_host *, VkSubpassContents);
659 #else
660 void (*p_vkCmdBeginRenderPass)(VkCommandBuffer, const VkRenderPassBeginInfo *, VkSubpassContents);
661 #endif
662 void (*p_vkCmdBindDescriptorSets)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkDescriptorSet *, uint32_t, const uint32_t *);
663 void (*p_vkCmdBindIndexBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkIndexType);
664 void (*p_vkCmdBindPipeline)(VkCommandBuffer, VkPipelineBindPoint, VkPipeline);
665 void (*p_vkCmdBindVertexBuffers)(VkCommandBuffer, uint32_t, uint32_t, const VkBuffer *, const VkDeviceSize *);
666 void (*p_vkCmdBlitImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageBlit *, VkFilter);
667 void (*p_vkCmdClearAttachments)(VkCommandBuffer, uint32_t, const VkClearAttachment *, uint32_t, const VkClearRect *);
668 void (*p_vkCmdClearColorImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearColorValue *, uint32_t, const VkImageSubresourceRange *);
669 void (*p_vkCmdClearDepthStencilImage)(VkCommandBuffer, VkImage, VkImageLayout, const VkClearDepthStencilValue *, uint32_t, const VkImageSubresourceRange *);
670 #if defined(USE_STRUCT_CONVERSION)
671 void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy_host *);
672 #else
673 void (*p_vkCmdCopyBuffer)(VkCommandBuffer, VkBuffer, VkBuffer, uint32_t, const VkBufferCopy *);
674 #endif
675 #if defined(USE_STRUCT_CONVERSION)
676 void (*p_vkCmdCopyBufferToImage)(VkCommandBuffer, VkBuffer, VkImage, VkImageLayout, uint32_t, const VkBufferImageCopy_host *);
677 #else
678 void (*p_vkCmdCopyBufferToImage)(VkCommandBuffer, VkBuffer, VkImage, VkImageLayout, uint32_t, const VkBufferImageCopy *);
679 #endif
680 void (*p_vkCmdCopyImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageCopy *);
681 #if defined(USE_STRUCT_CONVERSION)
682 void (*p_vkCmdCopyImageToBuffer)(VkCommandBuffer, VkImage, VkImageLayout, VkBuffer, uint32_t, const VkBufferImageCopy_host *);
683 #else
684 void (*p_vkCmdCopyImageToBuffer)(VkCommandBuffer, VkImage, VkImageLayout, VkBuffer, uint32_t, const VkBufferImageCopy *);
685 #endif
686 void (*p_vkCmdCopyQueryPoolResults)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t, VkBuffer, VkDeviceSize, VkDeviceSize, VkQueryResultFlags);
687 void (*p_vkCmdDispatch)(VkCommandBuffer, uint32_t, uint32_t, uint32_t);
688 void (*p_vkCmdDispatchIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize);
689 void (*p_vkCmdDraw)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, uint32_t);
690 void (*p_vkCmdDrawIndexed)(VkCommandBuffer, uint32_t, uint32_t, uint32_t, int32_t, uint32_t);
691 void (*p_vkCmdDrawIndexedIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
692 void (*p_vkCmdDrawIndexedIndirectCountAMD)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
693 void (*p_vkCmdDrawIndexedIndirectCountKHR)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
694 void (*p_vkCmdDrawIndirect)(VkCommandBuffer, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
695 void (*p_vkCmdDrawIndirectCountAMD)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
696 void (*p_vkCmdDrawIndirectCountKHR)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkBuffer, VkDeviceSize, uint32_t, uint32_t);
697 void (*p_vkCmdEndQuery)(VkCommandBuffer, VkQueryPool, uint32_t);
698 void (*p_vkCmdEndRenderPass)(VkCommandBuffer);
699 void (*p_vkCmdExecuteCommands)(VkCommandBuffer, uint32_t, const VkCommandBuffer *);
700 void (*p_vkCmdFillBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, uint32_t);
701 void (*p_vkCmdNextSubpass)(VkCommandBuffer, VkSubpassContents);
702 #if defined(USE_STRUCT_CONVERSION)
703 void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier_host *, uint32_t, const VkImageMemoryBarrier_host *);
704 #else
705 void (*p_vkCmdPipelineBarrier)(VkCommandBuffer, VkPipelineStageFlags, VkPipelineStageFlags, VkDependencyFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
706 #endif
707 void (*p_vkCmdPushConstants)(VkCommandBuffer, VkPipelineLayout, VkShaderStageFlags, uint32_t, uint32_t, const void *);
708 #if defined(USE_STRUCT_CONVERSION)
709 void (*p_vkCmdPushDescriptorSetKHR)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkWriteDescriptorSet_host *);
710 #else
711 void (*p_vkCmdPushDescriptorSetKHR)(VkCommandBuffer, VkPipelineBindPoint, VkPipelineLayout, uint32_t, uint32_t, const VkWriteDescriptorSet *);
712 #endif
713 void (*p_vkCmdPushDescriptorSetWithTemplateKHR)(VkCommandBuffer, VkDescriptorUpdateTemplate, VkPipelineLayout, uint32_t, const void *);
714 void (*p_vkCmdResetEvent)(VkCommandBuffer, VkEvent, VkPipelineStageFlags);
715 void (*p_vkCmdResetQueryPool)(VkCommandBuffer, VkQueryPool, uint32_t, uint32_t);
716 void (*p_vkCmdResolveImage)(VkCommandBuffer, VkImage, VkImageLayout, VkImage, VkImageLayout, uint32_t, const VkImageResolve *);
717 void (*p_vkCmdSetBlendConstants)(VkCommandBuffer, const float[4]);
718 void (*p_vkCmdSetDepthBias)(VkCommandBuffer, float, float, float);
719 void (*p_vkCmdSetDepthBounds)(VkCommandBuffer, float, float);
720 void (*p_vkCmdSetDiscardRectangleEXT)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
721 void (*p_vkCmdSetEvent)(VkCommandBuffer, VkEvent, VkPipelineStageFlags);
722 void (*p_vkCmdSetLineWidth)(VkCommandBuffer, float);
723 void (*p_vkCmdSetSampleLocationsEXT)(VkCommandBuffer, const VkSampleLocationsInfoEXT *);
724 void (*p_vkCmdSetScissor)(VkCommandBuffer, uint32_t, uint32_t, const VkRect2D *);
725 void (*p_vkCmdSetStencilCompareMask)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
726 void (*p_vkCmdSetStencilReference)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
727 void (*p_vkCmdSetStencilWriteMask)(VkCommandBuffer, VkStencilFaceFlags, uint32_t);
728 void (*p_vkCmdSetViewport)(VkCommandBuffer, uint32_t, uint32_t, const VkViewport *);
729 void (*p_vkCmdSetViewportWScalingNV)(VkCommandBuffer, uint32_t, uint32_t, const VkViewportWScalingNV *);
730 void (*p_vkCmdUpdateBuffer)(VkCommandBuffer, VkBuffer, VkDeviceSize, VkDeviceSize, const void *);
731 #if defined(USE_STRUCT_CONVERSION)
732 void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier_host *, uint32_t, const VkImageMemoryBarrier_host *);
733 #else
734 void (*p_vkCmdWaitEvents)(VkCommandBuffer, uint32_t, const VkEvent *, VkPipelineStageFlags, VkPipelineStageFlags, uint32_t, const VkMemoryBarrier *, uint32_t, const VkBufferMemoryBarrier *, uint32_t, const VkImageMemoryBarrier *);
735 #endif
736 void (*p_vkCmdWriteBufferMarkerAMD)(VkCommandBuffer, VkPipelineStageFlagBits, VkBuffer, VkDeviceSize, uint32_t);
737 void (*p_vkCmdWriteTimestamp)(VkCommandBuffer, VkPipelineStageFlagBits, VkQueryPool, uint32_t);
738 #if defined(USE_STRUCT_CONVERSION)
739 VkResult (*p_vkCreateBuffer)(VkDevice, const VkBufferCreateInfo_host *, const VkAllocationCallbacks *, VkBuffer *);
740 #else
741 VkResult (*p_vkCreateBuffer)(VkDevice, const VkBufferCreateInfo *, const VkAllocationCallbacks *, VkBuffer *);
742 #endif
743 #if defined(USE_STRUCT_CONVERSION)
744 VkResult (*p_vkCreateBufferView)(VkDevice, const VkBufferViewCreateInfo_host *, const VkAllocationCallbacks *, VkBufferView *);
745 #else
746 VkResult (*p_vkCreateBufferView)(VkDevice, const VkBufferViewCreateInfo *, const VkAllocationCallbacks *, VkBufferView *);
747 #endif
748 VkResult (*p_vkCreateCommandPool)(VkDevice, const VkCommandPoolCreateInfo *, const VkAllocationCallbacks *, VkCommandPool *);
749 #if defined(USE_STRUCT_CONVERSION)
750 VkResult (*p_vkCreateComputePipelines)(VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo_host *, const VkAllocationCallbacks *, VkPipeline *);
751 #else
752 VkResult (*p_vkCreateComputePipelines)(VkDevice, VkPipelineCache, uint32_t, const VkComputePipelineCreateInfo *, const VkAllocationCallbacks *, VkPipeline *);
753 #endif
754 VkResult (*p_vkCreateDescriptorPool)(VkDevice, const VkDescriptorPoolCreateInfo *, const VkAllocationCallbacks *, VkDescriptorPool *);
755 VkResult (*p_vkCreateDescriptorSetLayout)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, const VkAllocationCallbacks *, VkDescriptorSetLayout *);
756 #if defined(USE_STRUCT_CONVERSION)
757 VkResult (*p_vkCreateDescriptorUpdateTemplateKHR)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo_host *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
758 #else
759 VkResult (*p_vkCreateDescriptorUpdateTemplateKHR)(VkDevice, const VkDescriptorUpdateTemplateCreateInfo *, const VkAllocationCallbacks *, VkDescriptorUpdateTemplate *);
760 #endif
761 VkResult (*p_vkCreateEvent)(VkDevice, const VkEventCreateInfo *, const VkAllocationCallbacks *, VkEvent *);
762 VkResult (*p_vkCreateFence)(VkDevice, const VkFenceCreateInfo *, const VkAllocationCallbacks *, VkFence *);
763 #if defined(USE_STRUCT_CONVERSION)
764 VkResult (*p_vkCreateFramebuffer)(VkDevice, const VkFramebufferCreateInfo_host *, const VkAllocationCallbacks *, VkFramebuffer *);
765 #else
766 VkResult (*p_vkCreateFramebuffer)(VkDevice, const VkFramebufferCreateInfo *, const VkAllocationCallbacks *, VkFramebuffer *);
767 #endif
768 #if defined(USE_STRUCT_CONVERSION)
769 VkResult (*p_vkCreateGraphicsPipelines)(VkDevice, VkPipelineCache, uint32_t, const VkGraphicsPipelineCreateInfo_host *, const VkAllocationCallbacks *, VkPipeline *);
770 #else
771 VkResult (*p_vkCreateGraphicsPipelines)(VkDevice, VkPipelineCache, uint32_t, const VkGraphicsPipelineCreateInfo *, const VkAllocationCallbacks *, VkPipeline *);
772 #endif
773 VkResult (*p_vkCreateImage)(VkDevice, const VkImageCreateInfo *, const VkAllocationCallbacks *, VkImage *);
774 #if defined(USE_STRUCT_CONVERSION)
775 VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo_host *, const VkAllocationCallbacks *, VkImageView *);
776 #else
777 VkResult (*p_vkCreateImageView)(VkDevice, const VkImageViewCreateInfo *, const VkAllocationCallbacks *, VkImageView *);
778 #endif
779 VkResult (*p_vkCreatePipelineCache)(VkDevice, const VkPipelineCacheCreateInfo *, const VkAllocationCallbacks *, VkPipelineCache *);
780 VkResult (*p_vkCreatePipelineLayout)(VkDevice, const VkPipelineLayoutCreateInfo *, const VkAllocationCallbacks *, VkPipelineLayout *);
781 VkResult (*p_vkCreateQueryPool)(VkDevice, const VkQueryPoolCreateInfo *, const VkAllocationCallbacks *, VkQueryPool *);
782 VkResult (*p_vkCreateRenderPass)(VkDevice, const VkRenderPassCreateInfo *, const VkAllocationCallbacks *, VkRenderPass *);
783 VkResult (*p_vkCreateSampler)(VkDevice, const VkSamplerCreateInfo *, const VkAllocationCallbacks *, VkSampler *);
784 VkResult (*p_vkCreateSamplerYcbcrConversionKHR)(VkDevice, const VkSamplerYcbcrConversionCreateInfo *, const VkAllocationCallbacks *, VkSamplerYcbcrConversion *);
785 VkResult (*p_vkCreateSemaphore)(VkDevice, const VkSemaphoreCreateInfo *, const VkAllocationCallbacks *, VkSemaphore *);
786 VkResult (*p_vkCreateShaderModule)(VkDevice, const VkShaderModuleCreateInfo *, const VkAllocationCallbacks *, VkShaderModule *);
787 #if defined(USE_STRUCT_CONVERSION)
788 VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR_host *, const VkAllocationCallbacks *, VkSwapchainKHR *);
789 #else
790 VkResult (*p_vkCreateSwapchainKHR)(VkDevice, const VkSwapchainCreateInfoKHR *, const VkAllocationCallbacks *, VkSwapchainKHR *);
791 #endif
792 VkResult (*p_vkCreateValidationCacheEXT)(VkDevice, const VkValidationCacheCreateInfoEXT *, const VkAllocationCallbacks *, VkValidationCacheEXT *);
793 void (*p_vkDestroyBuffer)(VkDevice, VkBuffer, const VkAllocationCallbacks *);
794 void (*p_vkDestroyBufferView)(VkDevice, VkBufferView, const VkAllocationCallbacks *);
795 void (*p_vkDestroyCommandPool)(VkDevice, VkCommandPool, const VkAllocationCallbacks *);
796 void (*p_vkDestroyDescriptorPool)(VkDevice, VkDescriptorPool, const VkAllocationCallbacks *);
797 void (*p_vkDestroyDescriptorSetLayout)(VkDevice, VkDescriptorSetLayout, const VkAllocationCallbacks *);
798 void (*p_vkDestroyDescriptorUpdateTemplateKHR)(VkDevice, VkDescriptorUpdateTemplate, const VkAllocationCallbacks *);
799 void (*p_vkDestroyDevice)(VkDevice, const VkAllocationCallbacks *);
800 void (*p_vkDestroyEvent)(VkDevice, VkEvent, const VkAllocationCallbacks *);
801 void (*p_vkDestroyFence)(VkDevice, VkFence, const VkAllocationCallbacks *);
802 void (*p_vkDestroyFramebuffer)(VkDevice, VkFramebuffer, const VkAllocationCallbacks *);
803 void (*p_vkDestroyImage)(VkDevice, VkImage, const VkAllocationCallbacks *);
804 void (*p_vkDestroyImageView)(VkDevice, VkImageView, const VkAllocationCallbacks *);
805 void (*p_vkDestroyPipeline)(VkDevice, VkPipeline, const VkAllocationCallbacks *);
806 void (*p_vkDestroyPipelineCache)(VkDevice, VkPipelineCache, const VkAllocationCallbacks *);
807 void (*p_vkDestroyPipelineLayout)(VkDevice, VkPipelineLayout, const VkAllocationCallbacks *);
808 void (*p_vkDestroyQueryPool)(VkDevice, VkQueryPool, const VkAllocationCallbacks *);
809 void (*p_vkDestroyRenderPass)(VkDevice, VkRenderPass, const VkAllocationCallbacks *);
810 void (*p_vkDestroySampler)(VkDevice, VkSampler, const VkAllocationCallbacks *);
811 void (*p_vkDestroySamplerYcbcrConversionKHR)(VkDevice, VkSamplerYcbcrConversion, const VkAllocationCallbacks *);
812 void (*p_vkDestroySemaphore)(VkDevice, VkSemaphore, const VkAllocationCallbacks *);
813 void (*p_vkDestroyShaderModule)(VkDevice, VkShaderModule, const VkAllocationCallbacks *);
814 void (*p_vkDestroySwapchainKHR)(VkDevice, VkSwapchainKHR, const VkAllocationCallbacks *);
815 void (*p_vkDestroyValidationCacheEXT)(VkDevice, VkValidationCacheEXT, const VkAllocationCallbacks *);
816 VkResult (*p_vkDeviceWaitIdle)(VkDevice);
817 VkResult (*p_vkEndCommandBuffer)(VkCommandBuffer);
818 #if defined(USE_STRUCT_CONVERSION)
819 VkResult (*p_vkFlushMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange_host *);
820 #else
821 VkResult (*p_vkFlushMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange *);
822 #endif
823 void (*p_vkFreeCommandBuffers)(VkDevice, VkCommandPool, uint32_t, const VkCommandBuffer *);
824 VkResult (*p_vkFreeDescriptorSets)(VkDevice, VkDescriptorPool, uint32_t, const VkDescriptorSet *);
825 void (*p_vkFreeMemory)(VkDevice, VkDeviceMemory, const VkAllocationCallbacks *);
826 #if defined(USE_STRUCT_CONVERSION)
827 void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements_host *);
828 #else
829 void (*p_vkGetBufferMemoryRequirements)(VkDevice, VkBuffer, VkMemoryRequirements *);
830 #endif
831 #if defined(USE_STRUCT_CONVERSION)
832 void (*p_vkGetBufferMemoryRequirements2KHR)(VkDevice, const VkBufferMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
833 #else
834 void (*p_vkGetBufferMemoryRequirements2KHR)(VkDevice, const VkBufferMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
835 #endif
836 void (*p_vkGetDescriptorSetLayoutSupportKHR)(VkDevice, const VkDescriptorSetLayoutCreateInfo *, VkDescriptorSetLayoutSupport *);
837 void (*p_vkGetDeviceMemoryCommitment)(VkDevice, VkDeviceMemory, VkDeviceSize *);
838 void (*p_vkGetDeviceQueue)(VkDevice, uint32_t, uint32_t, VkQueue *);
839 VkResult (*p_vkGetEventStatus)(VkDevice, VkEvent);
840 VkResult (*p_vkGetFenceStatus)(VkDevice, VkFence);
841 #if defined(USE_STRUCT_CONVERSION)
842 void (*p_vkGetImageMemoryRequirements)(VkDevice, VkImage, VkMemoryRequirements_host *);
843 #else
844 void (*p_vkGetImageMemoryRequirements)(VkDevice, VkImage, VkMemoryRequirements *);
845 #endif
846 #if defined(USE_STRUCT_CONVERSION)
847 void (*p_vkGetImageMemoryRequirements2KHR)(VkDevice, const VkImageMemoryRequirementsInfo2_host *, VkMemoryRequirements2_host *);
848 #else
849 void (*p_vkGetImageMemoryRequirements2KHR)(VkDevice, const VkImageMemoryRequirementsInfo2 *, VkMemoryRequirements2 *);
850 #endif
851 void (*p_vkGetImageSparseMemoryRequirements)(VkDevice, VkImage, uint32_t *, VkSparseImageMemoryRequirements *);
852 #if defined(USE_STRUCT_CONVERSION)
853 void (*p_vkGetImageSparseMemoryRequirements2KHR)(VkDevice, const VkImageSparseMemoryRequirementsInfo2_host *, uint32_t *, VkSparseImageMemoryRequirements2 *);
854 #else
855 void (*p_vkGetImageSparseMemoryRequirements2KHR)(VkDevice, const VkImageSparseMemoryRequirementsInfo2 *, uint32_t *, VkSparseImageMemoryRequirements2 *);
856 #endif
857 #if defined(USE_STRUCT_CONVERSION)
858 void (*p_vkGetImageSubresourceLayout)(VkDevice, VkImage, const VkImageSubresource *, VkSubresourceLayout_host *);
859 #else
860 void (*p_vkGetImageSubresourceLayout)(VkDevice, VkImage, const VkImageSubresource *, VkSubresourceLayout *);
861 #endif
862 VkResult (*p_vkGetPipelineCacheData)(VkDevice, VkPipelineCache, size_t *, void *);
863 VkResult (*p_vkGetQueryPoolResults)(VkDevice, VkQueryPool, uint32_t, uint32_t, size_t, void *, VkDeviceSize, VkQueryResultFlags);
864 void (*p_vkGetRenderAreaGranularity)(VkDevice, VkRenderPass, VkExtent2D *);
865 VkResult (*p_vkGetShaderInfoAMD)(VkDevice, VkPipeline, VkShaderStageFlagBits, VkShaderInfoTypeAMD, size_t *, void *);
866 VkResult (*p_vkGetSwapchainImagesKHR)(VkDevice, VkSwapchainKHR, uint32_t *, VkImage *);
867 VkResult (*p_vkGetValidationCacheDataEXT)(VkDevice, VkValidationCacheEXT, size_t *, void *);
868 #if defined(USE_STRUCT_CONVERSION)
869 VkResult (*p_vkInvalidateMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange_host *);
870 #else
871 VkResult (*p_vkInvalidateMappedMemoryRanges)(VkDevice, uint32_t, const VkMappedMemoryRange *);
872 #endif
873 VkResult (*p_vkMapMemory)(VkDevice, VkDeviceMemory, VkDeviceSize, VkDeviceSize, VkMemoryMapFlags, void **);
874 VkResult (*p_vkMergePipelineCaches)(VkDevice, VkPipelineCache, uint32_t, const VkPipelineCache *);
875 VkResult (*p_vkMergeValidationCachesEXT)(VkDevice, VkValidationCacheEXT, uint32_t, const VkValidationCacheEXT *);
876 #if defined(USE_STRUCT_CONVERSION)
877 VkResult (*p_vkQueueBindSparse)(VkQueue, uint32_t, const VkBindSparseInfo_host *, VkFence);
878 #else
879 VkResult (*p_vkQueueBindSparse)(VkQueue, uint32_t, const VkBindSparseInfo *, VkFence);
880 #endif
881 VkResult (*p_vkQueuePresentKHR)(VkQueue, const VkPresentInfoKHR *);
882 VkResult (*p_vkQueueSubmit)(VkQueue, uint32_t, const VkSubmitInfo *, VkFence);
883 VkResult (*p_vkQueueWaitIdle)(VkQueue);
884 VkResult (*p_vkResetCommandBuffer)(VkCommandBuffer, VkCommandBufferResetFlags);
885 VkResult (*p_vkResetCommandPool)(VkDevice, VkCommandPool, VkCommandPoolResetFlags);
886 VkResult (*p_vkResetDescriptorPool)(VkDevice, VkDescriptorPool, VkDescriptorPoolResetFlags);
887 VkResult (*p_vkResetEvent)(VkDevice, VkEvent);
888 VkResult (*p_vkResetFences)(VkDevice, uint32_t, const VkFence *);
889 VkResult (*p_vkSetEvent)(VkDevice, VkEvent);
890 void (*p_vkTrimCommandPoolKHR)(VkDevice, VkCommandPool, VkCommandPoolTrimFlags);
891 void (*p_vkUnmapMemory)(VkDevice, VkDeviceMemory);
892 void (*p_vkUpdateDescriptorSetWithTemplateKHR)(VkDevice, VkDescriptorSet, VkDescriptorUpdateTemplate, const void *);
893 #if defined(USE_STRUCT_CONVERSION)
894 void (*p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet_host *, uint32_t, const VkCopyDescriptorSet_host *);
895 #else
896 void (*p_vkUpdateDescriptorSets)(VkDevice, uint32_t, const VkWriteDescriptorSet *, uint32_t, const VkCopyDescriptorSet *);
897 #endif
898 VkResult (*p_vkWaitForFences)(VkDevice, uint32_t, const VkFence *, VkBool32, uint64_t);
901 /* For use by vkInstance and children */
902 struct vulkan_instance_funcs
904 VkResult (*p_vkCreateDevice)(VkPhysicalDevice, const VkDeviceCreateInfo *, const VkAllocationCallbacks *, VkDevice *);
905 VkResult (*p_vkCreateWin32SurfaceKHR)(VkInstance, const VkWin32SurfaceCreateInfoKHR *, const VkAllocationCallbacks *, VkSurfaceKHR *);
906 void (*p_vkDestroySurfaceKHR)(VkInstance, VkSurfaceKHR, const VkAllocationCallbacks *);
907 VkResult (*p_vkEnumerateDeviceExtensionProperties)(VkPhysicalDevice, const char *, uint32_t *, VkExtensionProperties *);
908 VkResult (*p_vkEnumerateDeviceLayerProperties)(VkPhysicalDevice, uint32_t *, VkLayerProperties *);
909 VkResult (*p_vkEnumeratePhysicalDevices)(VkInstance, uint32_t *, VkPhysicalDevice *);
910 void (*p_vkGetPhysicalDeviceFeatures)(VkPhysicalDevice, VkPhysicalDeviceFeatures *);
911 void (*p_vkGetPhysicalDeviceFeatures2KHR)(VkPhysicalDevice, VkPhysicalDeviceFeatures2 *);
912 void (*p_vkGetPhysicalDeviceFormatProperties)(VkPhysicalDevice, VkFormat, VkFormatProperties *);
913 void (*p_vkGetPhysicalDeviceFormatProperties2KHR)(VkPhysicalDevice, VkFormat, VkFormatProperties2 *);
914 #if defined(USE_STRUCT_CONVERSION)
915 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkImageTiling, VkImageUsageFlags, VkImageCreateFlags, VkImageFormatProperties_host *);
916 #else
917 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkImageTiling, VkImageUsageFlags, VkImageCreateFlags, VkImageFormatProperties *);
918 #endif
919 #if defined(USE_STRUCT_CONVERSION)
920 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2_host *);
921 #else
922 VkResult (*p_vkGetPhysicalDeviceImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceImageFormatInfo2 *, VkImageFormatProperties2 *);
923 #endif
924 #if defined(USE_STRUCT_CONVERSION)
925 void (*p_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties_host *);
926 #else
927 void (*p_vkGetPhysicalDeviceMemoryProperties)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties *);
928 #endif
929 #if defined(USE_STRUCT_CONVERSION)
930 void (*p_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2_host *);
931 #else
932 void (*p_vkGetPhysicalDeviceMemoryProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceMemoryProperties2 *);
933 #endif
934 void (*p_vkGetPhysicalDeviceMultisamplePropertiesEXT)(VkPhysicalDevice, VkSampleCountFlagBits, VkMultisamplePropertiesEXT *);
935 #if defined(USE_STRUCT_CONVERSION)
936 void (*p_vkGetPhysicalDeviceProperties)(VkPhysicalDevice, VkPhysicalDeviceProperties_host *);
937 #else
938 void (*p_vkGetPhysicalDeviceProperties)(VkPhysicalDevice, VkPhysicalDeviceProperties *);
939 #endif
940 #if defined(USE_STRUCT_CONVERSION)
941 void (*p_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceProperties2_host *);
942 #else
943 void (*p_vkGetPhysicalDeviceProperties2KHR)(VkPhysicalDevice, VkPhysicalDeviceProperties2 *);
944 #endif
945 void (*p_vkGetPhysicalDeviceQueueFamilyProperties)(VkPhysicalDevice, uint32_t *, VkQueueFamilyProperties *);
946 void (*p_vkGetPhysicalDeviceQueueFamilyProperties2KHR)(VkPhysicalDevice, uint32_t *, VkQueueFamilyProperties2 *);
947 void (*p_vkGetPhysicalDeviceSparseImageFormatProperties)(VkPhysicalDevice, VkFormat, VkImageType, VkSampleCountFlagBits, VkImageUsageFlags, VkImageTiling, uint32_t *, VkSparseImageFormatProperties *);
948 void (*p_vkGetPhysicalDeviceSparseImageFormatProperties2KHR)(VkPhysicalDevice, const VkPhysicalDeviceSparseImageFormatInfo2 *, uint32_t *, VkSparseImageFormatProperties2 *);
949 VkResult (*p_vkGetPhysicalDeviceSurfaceCapabilitiesKHR)(VkPhysicalDevice, VkSurfaceKHR, VkSurfaceCapabilitiesKHR *);
950 VkResult (*p_vkGetPhysicalDeviceSurfaceFormatsKHR)(VkPhysicalDevice, VkSurfaceKHR, uint32_t *, VkSurfaceFormatKHR *);
951 VkResult (*p_vkGetPhysicalDeviceSurfacePresentModesKHR)(VkPhysicalDevice, VkSurfaceKHR, uint32_t *, VkPresentModeKHR *);
952 VkResult (*p_vkGetPhysicalDeviceSurfaceSupportKHR)(VkPhysicalDevice, uint32_t, VkSurfaceKHR, VkBool32 *);
953 VkBool32 (*p_vkGetPhysicalDeviceWin32PresentationSupportKHR)(VkPhysicalDevice, uint32_t);
956 #define ALL_VK_DEVICE_FUNCS() \
957 USE_VK_FUNC(vkAcquireNextImageKHR) \
958 USE_VK_FUNC(vkAllocateCommandBuffers) \
959 USE_VK_FUNC(vkAllocateDescriptorSets) \
960 USE_VK_FUNC(vkAllocateMemory) \
961 USE_VK_FUNC(vkBeginCommandBuffer) \
962 USE_VK_FUNC(vkBindBufferMemory) \
963 USE_VK_FUNC(vkBindBufferMemory2KHR) \
964 USE_VK_FUNC(vkBindImageMemory) \
965 USE_VK_FUNC(vkBindImageMemory2KHR) \
966 USE_VK_FUNC(vkCmdBeginQuery) \
967 USE_VK_FUNC(vkCmdBeginRenderPass) \
968 USE_VK_FUNC(vkCmdBindDescriptorSets) \
969 USE_VK_FUNC(vkCmdBindIndexBuffer) \
970 USE_VK_FUNC(vkCmdBindPipeline) \
971 USE_VK_FUNC(vkCmdBindVertexBuffers) \
972 USE_VK_FUNC(vkCmdBlitImage) \
973 USE_VK_FUNC(vkCmdClearAttachments) \
974 USE_VK_FUNC(vkCmdClearColorImage) \
975 USE_VK_FUNC(vkCmdClearDepthStencilImage) \
976 USE_VK_FUNC(vkCmdCopyBuffer) \
977 USE_VK_FUNC(vkCmdCopyBufferToImage) \
978 USE_VK_FUNC(vkCmdCopyImage) \
979 USE_VK_FUNC(vkCmdCopyImageToBuffer) \
980 USE_VK_FUNC(vkCmdCopyQueryPoolResults) \
981 USE_VK_FUNC(vkCmdDispatch) \
982 USE_VK_FUNC(vkCmdDispatchIndirect) \
983 USE_VK_FUNC(vkCmdDraw) \
984 USE_VK_FUNC(vkCmdDrawIndexed) \
985 USE_VK_FUNC(vkCmdDrawIndexedIndirect) \
986 USE_VK_FUNC(vkCmdDrawIndexedIndirectCountAMD) \
987 USE_VK_FUNC(vkCmdDrawIndexedIndirectCountKHR) \
988 USE_VK_FUNC(vkCmdDrawIndirect) \
989 USE_VK_FUNC(vkCmdDrawIndirectCountAMD) \
990 USE_VK_FUNC(vkCmdDrawIndirectCountKHR) \
991 USE_VK_FUNC(vkCmdEndQuery) \
992 USE_VK_FUNC(vkCmdEndRenderPass) \
993 USE_VK_FUNC(vkCmdExecuteCommands) \
994 USE_VK_FUNC(vkCmdFillBuffer) \
995 USE_VK_FUNC(vkCmdNextSubpass) \
996 USE_VK_FUNC(vkCmdPipelineBarrier) \
997 USE_VK_FUNC(vkCmdPushConstants) \
998 USE_VK_FUNC(vkCmdPushDescriptorSetKHR) \
999 USE_VK_FUNC(vkCmdPushDescriptorSetWithTemplateKHR) \
1000 USE_VK_FUNC(vkCmdResetEvent) \
1001 USE_VK_FUNC(vkCmdResetQueryPool) \
1002 USE_VK_FUNC(vkCmdResolveImage) \
1003 USE_VK_FUNC(vkCmdSetBlendConstants) \
1004 USE_VK_FUNC(vkCmdSetDepthBias) \
1005 USE_VK_FUNC(vkCmdSetDepthBounds) \
1006 USE_VK_FUNC(vkCmdSetDiscardRectangleEXT) \
1007 USE_VK_FUNC(vkCmdSetEvent) \
1008 USE_VK_FUNC(vkCmdSetLineWidth) \
1009 USE_VK_FUNC(vkCmdSetSampleLocationsEXT) \
1010 USE_VK_FUNC(vkCmdSetScissor) \
1011 USE_VK_FUNC(vkCmdSetStencilCompareMask) \
1012 USE_VK_FUNC(vkCmdSetStencilReference) \
1013 USE_VK_FUNC(vkCmdSetStencilWriteMask) \
1014 USE_VK_FUNC(vkCmdSetViewport) \
1015 USE_VK_FUNC(vkCmdSetViewportWScalingNV) \
1016 USE_VK_FUNC(vkCmdUpdateBuffer) \
1017 USE_VK_FUNC(vkCmdWaitEvents) \
1018 USE_VK_FUNC(vkCmdWriteBufferMarkerAMD) \
1019 USE_VK_FUNC(vkCmdWriteTimestamp) \
1020 USE_VK_FUNC(vkCreateBuffer) \
1021 USE_VK_FUNC(vkCreateBufferView) \
1022 USE_VK_FUNC(vkCreateCommandPool) \
1023 USE_VK_FUNC(vkCreateComputePipelines) \
1024 USE_VK_FUNC(vkCreateDescriptorPool) \
1025 USE_VK_FUNC(vkCreateDescriptorSetLayout) \
1026 USE_VK_FUNC(vkCreateDescriptorUpdateTemplateKHR) \
1027 USE_VK_FUNC(vkCreateEvent) \
1028 USE_VK_FUNC(vkCreateFence) \
1029 USE_VK_FUNC(vkCreateFramebuffer) \
1030 USE_VK_FUNC(vkCreateGraphicsPipelines) \
1031 USE_VK_FUNC(vkCreateImage) \
1032 USE_VK_FUNC(vkCreateImageView) \
1033 USE_VK_FUNC(vkCreatePipelineCache) \
1034 USE_VK_FUNC(vkCreatePipelineLayout) \
1035 USE_VK_FUNC(vkCreateQueryPool) \
1036 USE_VK_FUNC(vkCreateRenderPass) \
1037 USE_VK_FUNC(vkCreateSampler) \
1038 USE_VK_FUNC(vkCreateSamplerYcbcrConversionKHR) \
1039 USE_VK_FUNC(vkCreateSemaphore) \
1040 USE_VK_FUNC(vkCreateShaderModule) \
1041 USE_VK_FUNC(vkCreateSwapchainKHR) \
1042 USE_VK_FUNC(vkCreateValidationCacheEXT) \
1043 USE_VK_FUNC(vkDestroyBuffer) \
1044 USE_VK_FUNC(vkDestroyBufferView) \
1045 USE_VK_FUNC(vkDestroyCommandPool) \
1046 USE_VK_FUNC(vkDestroyDescriptorPool) \
1047 USE_VK_FUNC(vkDestroyDescriptorSetLayout) \
1048 USE_VK_FUNC(vkDestroyDescriptorUpdateTemplateKHR) \
1049 USE_VK_FUNC(vkDestroyDevice) \
1050 USE_VK_FUNC(vkDestroyEvent) \
1051 USE_VK_FUNC(vkDestroyFence) \
1052 USE_VK_FUNC(vkDestroyFramebuffer) \
1053 USE_VK_FUNC(vkDestroyImage) \
1054 USE_VK_FUNC(vkDestroyImageView) \
1055 USE_VK_FUNC(vkDestroyPipeline) \
1056 USE_VK_FUNC(vkDestroyPipelineCache) \
1057 USE_VK_FUNC(vkDestroyPipelineLayout) \
1058 USE_VK_FUNC(vkDestroyQueryPool) \
1059 USE_VK_FUNC(vkDestroyRenderPass) \
1060 USE_VK_FUNC(vkDestroySampler) \
1061 USE_VK_FUNC(vkDestroySamplerYcbcrConversionKHR) \
1062 USE_VK_FUNC(vkDestroySemaphore) \
1063 USE_VK_FUNC(vkDestroyShaderModule) \
1064 USE_VK_FUNC(vkDestroySwapchainKHR) \
1065 USE_VK_FUNC(vkDestroyValidationCacheEXT) \
1066 USE_VK_FUNC(vkDeviceWaitIdle) \
1067 USE_VK_FUNC(vkEndCommandBuffer) \
1068 USE_VK_FUNC(vkFlushMappedMemoryRanges) \
1069 USE_VK_FUNC(vkFreeCommandBuffers) \
1070 USE_VK_FUNC(vkFreeDescriptorSets) \
1071 USE_VK_FUNC(vkFreeMemory) \
1072 USE_VK_FUNC(vkGetBufferMemoryRequirements) \
1073 USE_VK_FUNC(vkGetBufferMemoryRequirements2KHR) \
1074 USE_VK_FUNC(vkGetDescriptorSetLayoutSupportKHR) \
1075 USE_VK_FUNC(vkGetDeviceMemoryCommitment) \
1076 USE_VK_FUNC(vkGetDeviceQueue) \
1077 USE_VK_FUNC(vkGetEventStatus) \
1078 USE_VK_FUNC(vkGetFenceStatus) \
1079 USE_VK_FUNC(vkGetImageMemoryRequirements) \
1080 USE_VK_FUNC(vkGetImageMemoryRequirements2KHR) \
1081 USE_VK_FUNC(vkGetImageSparseMemoryRequirements) \
1082 USE_VK_FUNC(vkGetImageSparseMemoryRequirements2KHR) \
1083 USE_VK_FUNC(vkGetImageSubresourceLayout) \
1084 USE_VK_FUNC(vkGetPipelineCacheData) \
1085 USE_VK_FUNC(vkGetQueryPoolResults) \
1086 USE_VK_FUNC(vkGetRenderAreaGranularity) \
1087 USE_VK_FUNC(vkGetShaderInfoAMD) \
1088 USE_VK_FUNC(vkGetSwapchainImagesKHR) \
1089 USE_VK_FUNC(vkGetValidationCacheDataEXT) \
1090 USE_VK_FUNC(vkInvalidateMappedMemoryRanges) \
1091 USE_VK_FUNC(vkMapMemory) \
1092 USE_VK_FUNC(vkMergePipelineCaches) \
1093 USE_VK_FUNC(vkMergeValidationCachesEXT) \
1094 USE_VK_FUNC(vkQueueBindSparse) \
1095 USE_VK_FUNC(vkQueuePresentKHR) \
1096 USE_VK_FUNC(vkQueueSubmit) \
1097 USE_VK_FUNC(vkQueueWaitIdle) \
1098 USE_VK_FUNC(vkResetCommandBuffer) \
1099 USE_VK_FUNC(vkResetCommandPool) \
1100 USE_VK_FUNC(vkResetDescriptorPool) \
1101 USE_VK_FUNC(vkResetEvent) \
1102 USE_VK_FUNC(vkResetFences) \
1103 USE_VK_FUNC(vkSetEvent) \
1104 USE_VK_FUNC(vkTrimCommandPoolKHR) \
1105 USE_VK_FUNC(vkUnmapMemory) \
1106 USE_VK_FUNC(vkUpdateDescriptorSetWithTemplateKHR) \
1107 USE_VK_FUNC(vkUpdateDescriptorSets) \
1108 USE_VK_FUNC(vkWaitForFences)
1110 #define ALL_VK_INSTANCE_FUNCS() \
1111 USE_VK_FUNC(vkCreateDevice) \
1112 USE_VK_FUNC(vkCreateWin32SurfaceKHR) \
1113 USE_VK_FUNC(vkDestroySurfaceKHR) \
1114 USE_VK_FUNC(vkEnumerateDeviceExtensionProperties) \
1115 USE_VK_FUNC(vkEnumerateDeviceLayerProperties) \
1116 USE_VK_FUNC(vkEnumeratePhysicalDevices) \
1117 USE_VK_FUNC(vkGetPhysicalDeviceFeatures) \
1118 USE_VK_FUNC(vkGetPhysicalDeviceFeatures2KHR) \
1119 USE_VK_FUNC(vkGetPhysicalDeviceFormatProperties) \
1120 USE_VK_FUNC(vkGetPhysicalDeviceFormatProperties2KHR) \
1121 USE_VK_FUNC(vkGetPhysicalDeviceImageFormatProperties) \
1122 USE_VK_FUNC(vkGetPhysicalDeviceImageFormatProperties2KHR) \
1123 USE_VK_FUNC(vkGetPhysicalDeviceMemoryProperties) \
1124 USE_VK_FUNC(vkGetPhysicalDeviceMemoryProperties2KHR) \
1125 USE_VK_FUNC(vkGetPhysicalDeviceMultisamplePropertiesEXT) \
1126 USE_VK_FUNC(vkGetPhysicalDeviceProperties) \
1127 USE_VK_FUNC(vkGetPhysicalDeviceProperties2KHR) \
1128 USE_VK_FUNC(vkGetPhysicalDeviceQueueFamilyProperties) \
1129 USE_VK_FUNC(vkGetPhysicalDeviceQueueFamilyProperties2KHR) \
1130 USE_VK_FUNC(vkGetPhysicalDeviceSparseImageFormatProperties) \
1131 USE_VK_FUNC(vkGetPhysicalDeviceSparseImageFormatProperties2KHR) \
1132 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceCapabilitiesKHR) \
1133 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceFormatsKHR) \
1134 USE_VK_FUNC(vkGetPhysicalDeviceSurfacePresentModesKHR) \
1135 USE_VK_FUNC(vkGetPhysicalDeviceSurfaceSupportKHR) \
1136 USE_VK_FUNC(vkGetPhysicalDeviceWin32PresentationSupportKHR)
1138 #endif /* __WINE_VULKAN_THUNKS_H */