build: Update known-good for 1.2.135 header
[platform/upstream/Vulkan-Tools.git] / common / vulkan_wrapper.h
1 /*
2  * Copyright 2018 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 // This file is generated.
17 #ifndef VULKAN_WRAPPER_H
18 #define VULKAN_WRAPPER_H
19
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23
24 #define VK_NO_PROTOTYPES 1
25 #include <vulkan/vulkan.h>
26
27 /* Initialize the Vulkan function pointer variables declared in this header.
28  * Returns 0 if vulkan is not available, non-zero if it is available.
29  */
30 int InitVulkan(void);
31
32 // VK_core_0
33 extern PFN_vkCreateInstance vkCreateInstance;
34 extern PFN_vkDestroyInstance vkDestroyInstance;
35 extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
36 extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
37 extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
38 extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
39 extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
40 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
41 extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
42 extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
43 extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
44 extern PFN_vkCreateDevice vkCreateDevice;
45 extern PFN_vkDestroyDevice vkDestroyDevice;
46 extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
47 extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
48 extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
49 extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
50 extern PFN_vkGetDeviceQueue vkGetDeviceQueue;
51 extern PFN_vkQueueSubmit vkQueueSubmit;
52 extern PFN_vkQueueWaitIdle vkQueueWaitIdle;
53 extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
54 extern PFN_vkAllocateMemory vkAllocateMemory;
55 extern PFN_vkFreeMemory vkFreeMemory;
56 extern PFN_vkMapMemory vkMapMemory;
57 extern PFN_vkUnmapMemory vkUnmapMemory;
58 extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
59 extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
60 extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
61 extern PFN_vkBindBufferMemory vkBindBufferMemory;
62 extern PFN_vkBindImageMemory vkBindImageMemory;
63 extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
64 extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
65 extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
66 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
67 extern PFN_vkQueueBindSparse vkQueueBindSparse;
68 extern PFN_vkCreateFence vkCreateFence;
69 extern PFN_vkDestroyFence vkDestroyFence;
70 extern PFN_vkResetFences vkResetFences;
71 extern PFN_vkGetFenceStatus vkGetFenceStatus;
72 extern PFN_vkWaitForFences vkWaitForFences;
73 extern PFN_vkCreateSemaphore vkCreateSemaphore;
74 extern PFN_vkDestroySemaphore vkDestroySemaphore;
75 extern PFN_vkCreateEvent vkCreateEvent;
76 extern PFN_vkDestroyEvent vkDestroyEvent;
77 extern PFN_vkGetEventStatus vkGetEventStatus;
78 extern PFN_vkSetEvent vkSetEvent;
79 extern PFN_vkResetEvent vkResetEvent;
80 extern PFN_vkCreateQueryPool vkCreateQueryPool;
81 extern PFN_vkDestroyQueryPool vkDestroyQueryPool;
82 extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
83 extern PFN_vkCreateBuffer vkCreateBuffer;
84 extern PFN_vkDestroyBuffer vkDestroyBuffer;
85 extern PFN_vkCreateBufferView vkCreateBufferView;
86 extern PFN_vkDestroyBufferView vkDestroyBufferView;
87 extern PFN_vkCreateImage vkCreateImage;
88 extern PFN_vkDestroyImage vkDestroyImage;
89 extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
90 extern PFN_vkCreateImageView vkCreateImageView;
91 extern PFN_vkDestroyImageView vkDestroyImageView;
92 extern PFN_vkCreateShaderModule vkCreateShaderModule;
93 extern PFN_vkDestroyShaderModule vkDestroyShaderModule;
94 extern PFN_vkCreatePipelineCache vkCreatePipelineCache;
95 extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
96 extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
97 extern PFN_vkMergePipelineCaches vkMergePipelineCaches;
98 extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
99 extern PFN_vkCreateComputePipelines vkCreateComputePipelines;
100 extern PFN_vkDestroyPipeline vkDestroyPipeline;
101 extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
102 extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
103 extern PFN_vkCreateSampler vkCreateSampler;
104 extern PFN_vkDestroySampler vkDestroySampler;
105 extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
106 extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
107 extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
108 extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
109 extern PFN_vkResetDescriptorPool vkResetDescriptorPool;
110 extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
111 extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
112 extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
113 extern PFN_vkCreateFramebuffer vkCreateFramebuffer;
114 extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
115 extern PFN_vkCreateRenderPass vkCreateRenderPass;
116 extern PFN_vkDestroyRenderPass vkDestroyRenderPass;
117 extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
118 extern PFN_vkCreateCommandPool vkCreateCommandPool;
119 extern PFN_vkDestroyCommandPool vkDestroyCommandPool;
120 extern PFN_vkResetCommandPool vkResetCommandPool;
121 extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
122 extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
123 extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
124 extern PFN_vkEndCommandBuffer vkEndCommandBuffer;
125 extern PFN_vkResetCommandBuffer vkResetCommandBuffer;
126 extern PFN_vkCmdBindPipeline vkCmdBindPipeline;
127 extern PFN_vkCmdSetViewport vkCmdSetViewport;
128 extern PFN_vkCmdSetScissor vkCmdSetScissor;
129 extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
130 extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
131 extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
132 extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
133 extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
134 extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
135 extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
136 extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
137 extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
138 extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
139 extern PFN_vkCmdDraw vkCmdDraw;
140 extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
141 extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
142 extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
143 extern PFN_vkCmdDispatch vkCmdDispatch;
144 extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
145 extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
146 extern PFN_vkCmdCopyImage vkCmdCopyImage;
147 extern PFN_vkCmdBlitImage vkCmdBlitImage;
148 extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
149 extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
150 extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
151 extern PFN_vkCmdFillBuffer vkCmdFillBuffer;
152 extern PFN_vkCmdClearColorImage vkCmdClearColorImage;
153 extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
154 extern PFN_vkCmdClearAttachments vkCmdClearAttachments;
155 extern PFN_vkCmdResolveImage vkCmdResolveImage;
156 extern PFN_vkCmdSetEvent vkCmdSetEvent;
157 extern PFN_vkCmdResetEvent vkCmdResetEvent;
158 extern PFN_vkCmdWaitEvents vkCmdWaitEvents;
159 extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
160 extern PFN_vkCmdBeginQuery vkCmdBeginQuery;
161 extern PFN_vkCmdEndQuery vkCmdEndQuery;
162 extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
163 extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
164 extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
165 extern PFN_vkCmdPushConstants vkCmdPushConstants;
166 extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
167 extern PFN_vkCmdNextSubpass vkCmdNextSubpass;
168 extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
169 extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
170
171 // VK_core_1
172 extern PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
173 extern PFN_vkBindBufferMemory2 vkBindBufferMemory2;
174 extern PFN_vkBindImageMemory2 vkBindImageMemory2;
175 extern PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
176 extern PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
177 extern PFN_vkCmdDispatchBase vkCmdDispatchBase;
178 extern PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
179 extern PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
180 extern PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
181 extern PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
182 extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
183 extern PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
184 extern PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
185 extern PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
186 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
187 extern PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
188 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
189 extern PFN_vkTrimCommandPool vkTrimCommandPool;
190 extern PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
191 extern PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
192 extern PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
193 extern PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
194 extern PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
195 extern PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
196 extern PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
197 extern PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
198 extern PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
199 extern PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
200
201 // VK_core_2
202 extern PFN_vkCmdDrawIndirectCount vkCmdDrawIndirectCount;
203 extern PFN_vkCmdDrawIndexedIndirectCount vkCmdDrawIndexedIndirectCount;
204 extern PFN_vkCreateRenderPass2 vkCreateRenderPass2;
205 extern PFN_vkCmdBeginRenderPass2 vkCmdBeginRenderPass2;
206 extern PFN_vkCmdNextSubpass2 vkCmdNextSubpass2;
207 extern PFN_vkCmdEndRenderPass2 vkCmdEndRenderPass2;
208 extern PFN_vkResetQueryPool vkResetQueryPool;
209 extern PFN_vkGetSemaphoreCounterValue vkGetSemaphoreCounterValue;
210 extern PFN_vkWaitSemaphores vkWaitSemaphores;
211 extern PFN_vkSignalSemaphore vkSignalSemaphore;
212 extern PFN_vkGetBufferDeviceAddress vkGetBufferDeviceAddress;
213 extern PFN_vkGetBufferOpaqueCaptureAddress vkGetBufferOpaqueCaptureAddress;
214 extern PFN_vkGetDeviceMemoryOpaqueCaptureAddress vkGetDeviceMemoryOpaqueCaptureAddress;
215
216 // VK_KHR_surface
217 extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
218 extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
219 extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
220 extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
221 extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
222
223 // VK_KHR_swapchain
224 extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
225 extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
226 extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
227 extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
228 extern PFN_vkQueuePresentKHR vkQueuePresentKHR;
229 extern PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
230 extern PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
231 extern PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
232 extern PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
233
234 // VK_KHR_display
235 extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
236 extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
237 extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
238 extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
239 extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
240 extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
241 extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
242
243 // VK_KHR_display_swapchain
244 extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
245
246 // VK_KHR_sampler_mirror_clamp_to_edge
247
248 // VK_KHR_multiview
249
250 // VK_KHR_get_physical_device_properties2
251 extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
252 extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
253 extern PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
254 extern PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
255 extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
256 extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
257 extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
258
259 // VK_KHR_device_group
260 extern PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
261 extern PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
262 extern PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
263
264 // VK_KHR_shader_draw_parameters
265
266 // VK_KHR_maintenance1
267 extern PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
268
269 // VK_KHR_device_group_creation
270 extern PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
271
272 // VK_KHR_external_memory_capabilities
273 extern PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
274
275 // VK_KHR_external_memory
276
277 // VK_KHR_external_memory_fd
278 extern PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
279 extern PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
280
281 // VK_KHR_external_semaphore_capabilities
282 extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
283
284 // VK_KHR_external_semaphore
285
286 // VK_KHR_external_semaphore_fd
287 extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
288 extern PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
289
290 // VK_KHR_push_descriptor
291 extern PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
292 extern PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
293
294 // VK_KHR_shader_float16_int8
295
296 // VK_KHR_16bit_storage
297
298 // VK_KHR_incremental_present
299
300 // VK_KHR_descriptor_update_template
301 extern PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
302 extern PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
303 extern PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
304
305 // VK_KHR_imageless_framebuffer
306
307 // VK_KHR_create_renderpass2
308 extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
309 extern PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
310 extern PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
311 extern PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
312
313 // VK_KHR_shared_presentable_image
314 extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
315
316 // VK_KHR_external_fence_capabilities
317 extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
318
319 // VK_KHR_external_fence
320
321 // VK_KHR_external_fence_fd
322 extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
323 extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
324
325 // VK_KHR_performance_query
326 extern PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR
327     vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
328 extern PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
329 extern PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
330 extern PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
331
332 // VK_KHR_maintenance2
333
334 // VK_KHR_get_surface_capabilities2
335 extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
336 extern PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
337
338 // VK_KHR_variable_pointers
339
340 // VK_KHR_get_display_properties2
341 extern PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
342 extern PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
343 extern PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
344 extern PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
345
346 // VK_KHR_dedicated_allocation
347
348 // VK_KHR_storage_buffer_storage_class
349
350 // VK_KHR_relaxed_block_layout
351
352 // VK_KHR_get_memory_requirements2
353 extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
354 extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
355 extern PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
356
357 // VK_KHR_image_format_list
358
359 // VK_KHR_sampler_ycbcr_conversion
360 extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
361 extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
362
363 // VK_KHR_bind_memory2
364 extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
365 extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
366
367 // VK_KHR_maintenance3
368 extern PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
369
370 // VK_KHR_draw_indirect_count
371 extern PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
372 extern PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
373
374 // VK_KHR_shader_subgroup_extended_types
375
376 // VK_KHR_8bit_storage
377
378 // VK_KHR_shader_atomic_int64
379
380 // VK_KHR_shader_clock
381
382 // VK_KHR_driver_properties
383
384 // VK_KHR_shader_float_controls
385
386 // VK_KHR_depth_stencil_resolve
387
388 // VK_KHR_swapchain_mutable_format
389
390 // VK_KHR_timeline_semaphore
391 extern PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
392 extern PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
393 extern PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
394
395 // VK_KHR_vulkan_memory_model
396
397 // VK_KHR_spirv_1_4
398
399 // VK_KHR_surface_protected_capabilities
400
401 // VK_KHR_separate_depth_stencil_layouts
402
403 // VK_KHR_uniform_buffer_standard_layout
404
405 // VK_KHR_buffer_device_address
406 extern PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
407 extern PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
408 extern PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
409
410 // VK_KHR_pipeline_executable_properties
411 extern PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
412 extern PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
413 extern PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
414
415 // VK_KHR_shader_non_semantic_info
416
417 #ifdef VK_USE_PLATFORM_ANDROID_KHR
418 // VK_KHR_android_surface
419 extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
420 #endif
421
422 #ifdef VK_USE_PLATFORM_WAYLAND_KHR
423 // VK_KHR_wayland_surface
424 extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
425 extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
426 #endif
427
428 #ifdef VK_USE_PLATFORM_WIN32_KHR
429 // VK_KHR_win32_surface
430 extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
431 extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
432 #endif
433
434 #ifdef VK_USE_PLATFORM_WIN32_KHR
435 // VK_KHR_external_memory_win32
436 extern PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
437 extern PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
438 #endif
439
440 #ifdef VK_USE_PLATFORM_WIN32_KHR
441 // VK_KHR_win32_keyed_mutex
442 #endif
443
444 #ifdef VK_USE_PLATFORM_WIN32_KHR
445 // VK_KHR_external_semaphore_win32
446 extern PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
447 extern PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
448 #endif
449
450 #ifdef VK_USE_PLATFORM_WIN32_KHR
451 // VK_KHR_external_fence_win32
452 extern PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
453 extern PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
454 #endif
455
456 #ifdef VK_USE_PLATFORM_XCB_KHR
457 // VK_KHR_xcb_surface
458 extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
459 extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
460 #endif
461
462 #ifdef VK_USE_PLATFORM_XLIB_KHR
463 // VK_KHR_xlib_surface
464 extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
465 extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
466 #endif
467
468 #ifdef VK_USE_PLATFORM_GGP
469 // VK_KHR_deferred_host_operations
470 extern PFN_vkCreateDeferredOperationKHR vkCreateDeferredOperationKHR;
471 extern PFN_vkDestroyDeferredOperationKHR vkDestroyDeferredOperationKHR;
472 extern PFN_vkGetDeferredOperationMaxConcurrencyKHR vkGetDeferredOperationMaxConcurrencyKHR;
473 extern PFN_vkGetDeferredOperationResultKHR vkGetDeferredOperationResultKHR;
474 extern PFN_vkDeferredOperationJoinKHR vkDeferredOperationJoinKHR;
475 #endif
476
477 #ifdef VK_USE_PLATFORM_GGP
478 // VK_KHR_pipeline_library
479 #endif
480
481 #ifdef VK_USE_PLATFORM_GGP
482 // VK_KHR_ray_tracing
483 extern PFN_vkCreateAccelerationStructureKHR vkCreateAccelerationStructureKHR;
484 extern PFN_vkGetAccelerationStructureMemoryRequirementsKHR vkGetAccelerationStructureMemoryRequirementsKHR;
485 extern PFN_vkCmdBuildAccelerationStructureKHR vkCmdBuildAccelerationStructureKHR;
486 extern PFN_vkCmdBuildAccelerationStructureIndirectKHR vkCmdBuildAccelerationStructureIndirectKHR;
487 extern PFN_vkBuildAccelerationStructureKHR vkBuildAccelerationStructureKHR;
488 extern PFN_vkCopyAccelerationStructureKHR vkCopyAccelerationStructureKHR;
489 extern PFN_vkCopyAccelerationStructureToMemoryKHR vkCopyAccelerationStructureToMemoryKHR;
490 extern PFN_vkCopyMemoryToAccelerationStructureKHR vkCopyMemoryToAccelerationStructureKHR;
491 extern PFN_vkWriteAccelerationStructuresPropertiesKHR vkWriteAccelerationStructuresPropertiesKHR;
492 extern PFN_vkCmdCopyAccelerationStructureKHR vkCmdCopyAccelerationStructureKHR;
493 extern PFN_vkCmdCopyAccelerationStructureToMemoryKHR vkCmdCopyAccelerationStructureToMemoryKHR;
494 extern PFN_vkCmdCopyMemoryToAccelerationStructureKHR vkCmdCopyMemoryToAccelerationStructureKHR;
495 extern PFN_vkCmdTraceRaysKHR vkCmdTraceRaysKHR;
496 extern PFN_vkCreateRayTracingPipelinesKHR vkCreateRayTracingPipelinesKHR;
497 extern PFN_vkGetAccelerationStructureDeviceAddressKHR vkGetAccelerationStructureDeviceAddressKHR;
498 extern PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR vkGetRayTracingCaptureReplayShaderGroupHandlesKHR;
499 extern PFN_vkCmdTraceRaysIndirectKHR vkCmdTraceRaysIndirectKHR;
500 extern PFN_vkGetDeviceAccelerationStructureCompatibilityKHR vkGetDeviceAccelerationStructureCompatibilityKHR;
501 #endif
502
503 #ifdef __cplusplus
504 }
505 #endif
506
507 #endif  // VULKAN_WRAPPER_H