Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/angle
Path: blob/main_old/src/third_party/volk/volk.h
1693 views
1
/**
2
* volk
3
*
4
* Copyright (C) 2018-2019, by Arseny Kapoulkine ([email protected])
5
* Report bugs and download new versions at https://github.com/zeux/volk
6
*
7
* This library is distributed under the MIT License. See notice at the end of this file.
8
*/
9
/* clang-format off */
10
#ifndef VOLK_H_
11
#define VOLK_H_
12
13
#if defined(VULKAN_H_) && !defined(VK_NO_PROTOTYPES)
14
# error To use volk, you need to define VK_NO_PROTOTYPES before including vulkan.h
15
#endif
16
17
/* VOLK_GENERATE_VERSION_DEFINE */
18
#define VOLK_HEADER_VERSION 130
19
/* VOLK_GENERATE_VERSION_DEFINE */
20
21
#ifndef VK_NO_PROTOTYPES
22
# define VK_NO_PROTOTYPES
23
#endif
24
25
#ifndef VULKAN_H_
26
# ifdef VOLK_VULKAN_H_PATH
27
# include VOLK_VULKAN_H_PATH
28
# elif defined(VK_USE_PLATFORM_WIN32_KHR)
29
# include <vulkan/vk_platform.h>
30
# include <vulkan/vulkan_core.h>
31
32
/* When VK_USE_PLATFORM_WIN32_KHR is defined, instead of including vulkan.h directly, we include individual parts of the SDK
33
* This is necessary to avoid including <windows.h> which is very heavy - it takes 200ms to parse without WIN32_LEAN_AND_MEAN
34
* and 100ms to parse with it. vulkan_win32.h only needs a few symbols that are easy to redefine ourselves.
35
*/
36
typedef unsigned long DWORD;
37
typedef const wchar_t* LPCWSTR;
38
typedef void* HANDLE;
39
typedef struct HINSTANCE__* HINSTANCE;
40
typedef struct HWND__* HWND;
41
typedef struct HMONITOR__* HMONITOR;
42
typedef struct _SECURITY_ATTRIBUTES SECURITY_ATTRIBUTES;
43
44
# include <vulkan/vulkan_win32.h>
45
# else
46
# include <vulkan/vulkan.h>
47
# endif
48
#endif
49
50
#ifdef __cplusplus
51
extern "C" {
52
#endif
53
54
struct VolkDeviceTable;
55
56
/**
57
* Initialize library by loading Vulkan loader; call this function before creating the Vulkan instance.
58
*
59
* Returns VK_SUCCESS on success and VK_ERROR_INITIALIZATION_FAILED otherwise.
60
*/
61
VkResult volkInitialize(void);
62
63
/**
64
* Initialize library by providing a custom handler to load global symbols.
65
*
66
* This function can be used instead of volkInitialize.
67
* The handler function pointer will be asked to load global Vulkan symbols which require no instance
68
* (such as vkCreateInstance, vkEnumerateInstance* and vkEnumerateInstanceVersion if available).
69
*/
70
void volkInitializeCustom(PFN_vkGetInstanceProcAddr handler);
71
72
/**
73
* Get Vulkan instance version supported by the Vulkan loader, or 0 if Vulkan isn't supported
74
*
75
* Returns 0 if volkInitialize wasn't called or failed.
76
*/
77
uint32_t volkGetInstanceVersion(void);
78
79
/**
80
* Load global function pointers using application-created VkInstance; call this function after creating the Vulkan instance.
81
*/
82
void volkLoadInstance(VkInstance instance);
83
84
/**
85
* Load global function pointers using application-created VkDevice; call this function after creating the Vulkan device.
86
*
87
* Note: this is not suitable for applications that want to use multiple VkDevice objects concurrently.
88
*/
89
void volkLoadDevice(VkDevice device);
90
91
/**
92
* Return last VkInstance for which global function pointers have been loaded via volkLoadInstance(),
93
* or VK_NULL_HANDLE if volkLoadInstance() has not been called.
94
*/
95
VkInstance volkGetLoadedInstance();
96
97
/**
98
* Return last VkDevice for which global function pointers have been loaded via volkLoadDevice(),
99
* or VK_NULL_HANDLE if volkLoadDevice() has not been called.
100
*/
101
VkDevice volkGetLoadedDevice();
102
103
/**
104
* Load function pointers using application-created VkDevice into a table.
105
* Application should use function pointers from that table instead of using global function pointers.
106
*/
107
void volkLoadDeviceTable(struct VolkDeviceTable* table, VkDevice device);
108
109
/**
110
* Device-specific function pointer table
111
*/
112
struct VolkDeviceTable
113
{
114
/* VOLK_GENERATE_DEVICE_TABLE */
115
#if defined(VK_VERSION_1_0)
116
PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
117
PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
118
PFN_vkAllocateMemory vkAllocateMemory;
119
PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
120
PFN_vkBindBufferMemory vkBindBufferMemory;
121
PFN_vkBindImageMemory vkBindImageMemory;
122
PFN_vkCmdBeginQuery vkCmdBeginQuery;
123
PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
124
PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
125
PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
126
PFN_vkCmdBindPipeline vkCmdBindPipeline;
127
PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
128
PFN_vkCmdBlitImage vkCmdBlitImage;
129
PFN_vkCmdClearAttachments vkCmdClearAttachments;
130
PFN_vkCmdClearColorImage vkCmdClearColorImage;
131
PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
132
PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
133
PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
134
PFN_vkCmdCopyImage vkCmdCopyImage;
135
PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
136
PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
137
PFN_vkCmdDispatch vkCmdDispatch;
138
PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
139
PFN_vkCmdDraw vkCmdDraw;
140
PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
141
PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
142
PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
143
PFN_vkCmdEndQuery vkCmdEndQuery;
144
PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
145
PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
146
PFN_vkCmdFillBuffer vkCmdFillBuffer;
147
PFN_vkCmdNextSubpass vkCmdNextSubpass;
148
PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
149
PFN_vkCmdPushConstants vkCmdPushConstants;
150
PFN_vkCmdResetEvent vkCmdResetEvent;
151
PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
152
PFN_vkCmdResolveImage vkCmdResolveImage;
153
PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
154
PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
155
PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
156
PFN_vkCmdSetEvent vkCmdSetEvent;
157
PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
158
PFN_vkCmdSetScissor vkCmdSetScissor;
159
PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
160
PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
161
PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
162
PFN_vkCmdSetViewport vkCmdSetViewport;
163
PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
164
PFN_vkCmdWaitEvents vkCmdWaitEvents;
165
PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
166
PFN_vkCreateBuffer vkCreateBuffer;
167
PFN_vkCreateBufferView vkCreateBufferView;
168
PFN_vkCreateCommandPool vkCreateCommandPool;
169
PFN_vkCreateComputePipelines vkCreateComputePipelines;
170
PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
171
PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
172
PFN_vkCreateEvent vkCreateEvent;
173
PFN_vkCreateFence vkCreateFence;
174
PFN_vkCreateFramebuffer vkCreateFramebuffer;
175
PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
176
PFN_vkCreateImage vkCreateImage;
177
PFN_vkCreateImageView vkCreateImageView;
178
PFN_vkCreatePipelineCache vkCreatePipelineCache;
179
PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
180
PFN_vkCreateQueryPool vkCreateQueryPool;
181
PFN_vkCreateRenderPass vkCreateRenderPass;
182
PFN_vkCreateSampler vkCreateSampler;
183
PFN_vkCreateSemaphore vkCreateSemaphore;
184
PFN_vkCreateShaderModule vkCreateShaderModule;
185
PFN_vkDestroyBuffer vkDestroyBuffer;
186
PFN_vkDestroyBufferView vkDestroyBufferView;
187
PFN_vkDestroyCommandPool vkDestroyCommandPool;
188
PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
189
PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
190
PFN_vkDestroyDevice vkDestroyDevice;
191
PFN_vkDestroyEvent vkDestroyEvent;
192
PFN_vkDestroyFence vkDestroyFence;
193
PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
194
PFN_vkDestroyImage vkDestroyImage;
195
PFN_vkDestroyImageView vkDestroyImageView;
196
PFN_vkDestroyPipeline vkDestroyPipeline;
197
PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
198
PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
199
PFN_vkDestroyQueryPool vkDestroyQueryPool;
200
PFN_vkDestroyRenderPass vkDestroyRenderPass;
201
PFN_vkDestroySampler vkDestroySampler;
202
PFN_vkDestroySemaphore vkDestroySemaphore;
203
PFN_vkDestroyShaderModule vkDestroyShaderModule;
204
PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
205
PFN_vkEndCommandBuffer vkEndCommandBuffer;
206
PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
207
PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
208
PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
209
PFN_vkFreeMemory vkFreeMemory;
210
PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
211
PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
212
PFN_vkGetDeviceQueue vkGetDeviceQueue;
213
PFN_vkGetEventStatus vkGetEventStatus;
214
PFN_vkGetFenceStatus vkGetFenceStatus;
215
PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
216
PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
217
PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
218
PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
219
PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
220
PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
221
PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
222
PFN_vkMapMemory vkMapMemory;
223
PFN_vkMergePipelineCaches vkMergePipelineCaches;
224
PFN_vkQueueBindSparse vkQueueBindSparse;
225
PFN_vkQueueSubmit vkQueueSubmit;
226
PFN_vkQueueWaitIdle vkQueueWaitIdle;
227
PFN_vkResetCommandBuffer vkResetCommandBuffer;
228
PFN_vkResetCommandPool vkResetCommandPool;
229
PFN_vkResetDescriptorPool vkResetDescriptorPool;
230
PFN_vkResetEvent vkResetEvent;
231
PFN_vkResetFences vkResetFences;
232
PFN_vkSetEvent vkSetEvent;
233
PFN_vkUnmapMemory vkUnmapMemory;
234
PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
235
PFN_vkWaitForFences vkWaitForFences;
236
#endif /* defined(VK_VERSION_1_0) */
237
#if defined(VK_VERSION_1_1)
238
PFN_vkBindBufferMemory2 vkBindBufferMemory2;
239
PFN_vkBindImageMemory2 vkBindImageMemory2;
240
PFN_vkCmdDispatchBase vkCmdDispatchBase;
241
PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
242
PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
243
PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
244
PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
245
PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
246
PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
247
PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
248
PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
249
PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
250
PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
251
PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
252
PFN_vkTrimCommandPool vkTrimCommandPool;
253
PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
254
#endif /* defined(VK_VERSION_1_1) */
255
#if defined(VK_AMD_buffer_marker)
256
PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
257
#endif /* defined(VK_AMD_buffer_marker) */
258
#if defined(VK_AMD_display_native_hdr)
259
PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
260
#endif /* defined(VK_AMD_display_native_hdr) */
261
#if defined(VK_AMD_draw_indirect_count)
262
PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
263
PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
264
#endif /* defined(VK_AMD_draw_indirect_count) */
265
#if defined(VK_AMD_shader_info)
266
PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
267
#endif /* defined(VK_AMD_shader_info) */
268
#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
269
PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
270
PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
271
#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
272
#if defined(VK_EXT_buffer_device_address)
273
PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
274
#endif /* defined(VK_EXT_buffer_device_address) */
275
#if defined(VK_EXT_calibrated_timestamps)
276
PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
277
#endif /* defined(VK_EXT_calibrated_timestamps) */
278
#if defined(VK_EXT_conditional_rendering)
279
PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
280
PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
281
#endif /* defined(VK_EXT_conditional_rendering) */
282
#if defined(VK_EXT_debug_marker)
283
PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
284
PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
285
PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
286
PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
287
PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
288
#endif /* defined(VK_EXT_debug_marker) */
289
#if defined(VK_EXT_discard_rectangles)
290
PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
291
#endif /* defined(VK_EXT_discard_rectangles) */
292
#if defined(VK_EXT_display_control)
293
PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
294
PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
295
PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
296
PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
297
#endif /* defined(VK_EXT_display_control) */
298
#if defined(VK_EXT_external_memory_host)
299
PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
300
#endif /* defined(VK_EXT_external_memory_host) */
301
#if defined(VK_EXT_full_screen_exclusive)
302
PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
303
PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
304
#endif /* defined(VK_EXT_full_screen_exclusive) */
305
#if defined(VK_EXT_hdr_metadata)
306
PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
307
#endif /* defined(VK_EXT_hdr_metadata) */
308
#if defined(VK_EXT_host_query_reset)
309
PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
310
#endif /* defined(VK_EXT_host_query_reset) */
311
#if defined(VK_EXT_image_drm_format_modifier)
312
PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
313
#endif /* defined(VK_EXT_image_drm_format_modifier) */
314
#if defined(VK_EXT_line_rasterization)
315
PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
316
#endif /* defined(VK_EXT_line_rasterization) */
317
#if defined(VK_EXT_sample_locations)
318
PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
319
#endif /* defined(VK_EXT_sample_locations) */
320
#if defined(VK_EXT_transform_feedback)
321
PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
322
PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
323
PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
324
PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
325
PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
326
PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
327
#endif /* defined(VK_EXT_transform_feedback) */
328
#if defined(VK_EXT_validation_cache)
329
PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
330
PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
331
PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
332
PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
333
#endif /* defined(VK_EXT_validation_cache) */
334
#if defined(VK_GOOGLE_display_timing)
335
PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
336
PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
337
#endif /* defined(VK_GOOGLE_display_timing) */
338
#if defined(VK_INTEL_performance_query)
339
PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
340
PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
341
PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
342
PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
343
PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
344
PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
345
PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
346
PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
347
PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
348
#endif /* defined(VK_INTEL_performance_query) */
349
#if defined(VK_KHR_bind_memory2)
350
PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
351
PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
352
#endif /* defined(VK_KHR_bind_memory2) */
353
#if defined(VK_KHR_buffer_device_address)
354
PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
355
PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
356
PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
357
#endif /* defined(VK_KHR_buffer_device_address) */
358
#if defined(VK_KHR_create_renderpass2)
359
PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
360
PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
361
PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
362
PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
363
#endif /* defined(VK_KHR_create_renderpass2) */
364
#if defined(VK_KHR_descriptor_update_template)
365
PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
366
PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
367
PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
368
#endif /* defined(VK_KHR_descriptor_update_template) */
369
#if defined(VK_KHR_device_group)
370
PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
371
PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
372
PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
373
#endif /* defined(VK_KHR_device_group) */
374
#if defined(VK_KHR_display_swapchain)
375
PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
376
#endif /* defined(VK_KHR_display_swapchain) */
377
#if defined(VK_KHR_draw_indirect_count)
378
PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
379
PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
380
#endif /* defined(VK_KHR_draw_indirect_count) */
381
#if defined(VK_KHR_external_fence_fd)
382
PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
383
PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
384
#endif /* defined(VK_KHR_external_fence_fd) */
385
#if defined(VK_KHR_external_fence_win32)
386
PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
387
PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
388
#endif /* defined(VK_KHR_external_fence_win32) */
389
#if defined(VK_KHR_external_memory_fd)
390
PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
391
PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
392
#endif /* defined(VK_KHR_external_memory_fd) */
393
#if defined(VK_KHR_external_memory_win32)
394
PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
395
PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
396
#endif /* defined(VK_KHR_external_memory_win32) */
397
#if defined(VK_KHR_external_semaphore_fd)
398
PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
399
PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
400
#endif /* defined(VK_KHR_external_semaphore_fd) */
401
#if defined(VK_KHR_external_semaphore_win32)
402
PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
403
PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
404
#endif /* defined(VK_KHR_external_semaphore_win32) */
405
#if defined(VK_KHR_get_memory_requirements2)
406
PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
407
PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
408
PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
409
#endif /* defined(VK_KHR_get_memory_requirements2) */
410
#if defined(VK_KHR_maintenance1)
411
PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
412
#endif /* defined(VK_KHR_maintenance1) */
413
#if defined(VK_KHR_maintenance3)
414
PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
415
#endif /* defined(VK_KHR_maintenance3) */
416
#if defined(VK_KHR_performance_query)
417
PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
418
PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
419
#endif /* defined(VK_KHR_performance_query) */
420
#if defined(VK_KHR_pipeline_executable_properties)
421
PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
422
PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
423
PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
424
#endif /* defined(VK_KHR_pipeline_executable_properties) */
425
#if defined(VK_KHR_push_descriptor)
426
PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
427
#endif /* defined(VK_KHR_push_descriptor) */
428
#if defined(VK_KHR_sampler_ycbcr_conversion)
429
PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
430
PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
431
#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
432
#if defined(VK_KHR_shared_presentable_image)
433
PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
434
#endif /* defined(VK_KHR_shared_presentable_image) */
435
#if defined(VK_KHR_swapchain)
436
PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
437
PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
438
PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
439
PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
440
PFN_vkQueuePresentKHR vkQueuePresentKHR;
441
#endif /* defined(VK_KHR_swapchain) */
442
#if defined(VK_KHR_timeline_semaphore)
443
PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
444
PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
445
PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
446
#endif /* defined(VK_KHR_timeline_semaphore) */
447
#if defined(VK_NVX_device_generated_commands)
448
PFN_vkCmdProcessCommandsNVX vkCmdProcessCommandsNVX;
449
PFN_vkCmdReserveSpaceForCommandsNVX vkCmdReserveSpaceForCommandsNVX;
450
PFN_vkCreateIndirectCommandsLayoutNVX vkCreateIndirectCommandsLayoutNVX;
451
PFN_vkCreateObjectTableNVX vkCreateObjectTableNVX;
452
PFN_vkDestroyIndirectCommandsLayoutNVX vkDestroyIndirectCommandsLayoutNVX;
453
PFN_vkDestroyObjectTableNVX vkDestroyObjectTableNVX;
454
PFN_vkRegisterObjectsNVX vkRegisterObjectsNVX;
455
PFN_vkUnregisterObjectsNVX vkUnregisterObjectsNVX;
456
#endif /* defined(VK_NVX_device_generated_commands) */
457
#if defined(VK_NVX_image_view_handle)
458
PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
459
#endif /* defined(VK_NVX_image_view_handle) */
460
#if defined(VK_NV_clip_space_w_scaling)
461
PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
462
#endif /* defined(VK_NV_clip_space_w_scaling) */
463
#if defined(VK_NV_device_diagnostic_checkpoints)
464
PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
465
PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
466
#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
467
#if defined(VK_NV_external_memory_win32)
468
PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
469
#endif /* defined(VK_NV_external_memory_win32) */
470
#if defined(VK_NV_mesh_shader)
471
PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
472
PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
473
PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
474
#endif /* defined(VK_NV_mesh_shader) */
475
#if defined(VK_NV_ray_tracing)
476
PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
477
PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
478
PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
479
PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
480
PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
481
PFN_vkCompileDeferredNV vkCompileDeferredNV;
482
PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
483
PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
484
PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
485
PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
486
PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
487
PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
488
#endif /* defined(VK_NV_ray_tracing) */
489
#if defined(VK_NV_scissor_exclusive)
490
PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
491
#endif /* defined(VK_NV_scissor_exclusive) */
492
#if defined(VK_NV_shading_rate_image)
493
PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
494
PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
495
PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
496
#endif /* defined(VK_NV_shading_rate_image) */
497
#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
498
PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
499
#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
500
#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1))
501
PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
502
#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) */
503
#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
504
PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
505
PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
506
#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
507
#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
508
PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
509
#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
510
/* VOLK_GENERATE_DEVICE_TABLE */
511
};
512
513
/* VOLK_GENERATE_PROTOTYPES_H */
514
#if defined(VK_VERSION_1_0)
515
extern PFN_vkAllocateCommandBuffers vkAllocateCommandBuffers;
516
extern PFN_vkAllocateDescriptorSets vkAllocateDescriptorSets;
517
extern PFN_vkAllocateMemory vkAllocateMemory;
518
extern PFN_vkBeginCommandBuffer vkBeginCommandBuffer;
519
extern PFN_vkBindBufferMemory vkBindBufferMemory;
520
extern PFN_vkBindImageMemory vkBindImageMemory;
521
extern PFN_vkCmdBeginQuery vkCmdBeginQuery;
522
extern PFN_vkCmdBeginRenderPass vkCmdBeginRenderPass;
523
extern PFN_vkCmdBindDescriptorSets vkCmdBindDescriptorSets;
524
extern PFN_vkCmdBindIndexBuffer vkCmdBindIndexBuffer;
525
extern PFN_vkCmdBindPipeline vkCmdBindPipeline;
526
extern PFN_vkCmdBindVertexBuffers vkCmdBindVertexBuffers;
527
extern PFN_vkCmdBlitImage vkCmdBlitImage;
528
extern PFN_vkCmdClearAttachments vkCmdClearAttachments;
529
extern PFN_vkCmdClearColorImage vkCmdClearColorImage;
530
extern PFN_vkCmdClearDepthStencilImage vkCmdClearDepthStencilImage;
531
extern PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
532
extern PFN_vkCmdCopyBufferToImage vkCmdCopyBufferToImage;
533
extern PFN_vkCmdCopyImage vkCmdCopyImage;
534
extern PFN_vkCmdCopyImageToBuffer vkCmdCopyImageToBuffer;
535
extern PFN_vkCmdCopyQueryPoolResults vkCmdCopyQueryPoolResults;
536
extern PFN_vkCmdDispatch vkCmdDispatch;
537
extern PFN_vkCmdDispatchIndirect vkCmdDispatchIndirect;
538
extern PFN_vkCmdDraw vkCmdDraw;
539
extern PFN_vkCmdDrawIndexed vkCmdDrawIndexed;
540
extern PFN_vkCmdDrawIndexedIndirect vkCmdDrawIndexedIndirect;
541
extern PFN_vkCmdDrawIndirect vkCmdDrawIndirect;
542
extern PFN_vkCmdEndQuery vkCmdEndQuery;
543
extern PFN_vkCmdEndRenderPass vkCmdEndRenderPass;
544
extern PFN_vkCmdExecuteCommands vkCmdExecuteCommands;
545
extern PFN_vkCmdFillBuffer vkCmdFillBuffer;
546
extern PFN_vkCmdNextSubpass vkCmdNextSubpass;
547
extern PFN_vkCmdPipelineBarrier vkCmdPipelineBarrier;
548
extern PFN_vkCmdPushConstants vkCmdPushConstants;
549
extern PFN_vkCmdResetEvent vkCmdResetEvent;
550
extern PFN_vkCmdResetQueryPool vkCmdResetQueryPool;
551
extern PFN_vkCmdResolveImage vkCmdResolveImage;
552
extern PFN_vkCmdSetBlendConstants vkCmdSetBlendConstants;
553
extern PFN_vkCmdSetDepthBias vkCmdSetDepthBias;
554
extern PFN_vkCmdSetDepthBounds vkCmdSetDepthBounds;
555
extern PFN_vkCmdSetEvent vkCmdSetEvent;
556
extern PFN_vkCmdSetLineWidth vkCmdSetLineWidth;
557
extern PFN_vkCmdSetScissor vkCmdSetScissor;
558
extern PFN_vkCmdSetStencilCompareMask vkCmdSetStencilCompareMask;
559
extern PFN_vkCmdSetStencilReference vkCmdSetStencilReference;
560
extern PFN_vkCmdSetStencilWriteMask vkCmdSetStencilWriteMask;
561
extern PFN_vkCmdSetViewport vkCmdSetViewport;
562
extern PFN_vkCmdUpdateBuffer vkCmdUpdateBuffer;
563
extern PFN_vkCmdWaitEvents vkCmdWaitEvents;
564
extern PFN_vkCmdWriteTimestamp vkCmdWriteTimestamp;
565
extern PFN_vkCreateBuffer vkCreateBuffer;
566
extern PFN_vkCreateBufferView vkCreateBufferView;
567
extern PFN_vkCreateCommandPool vkCreateCommandPool;
568
extern PFN_vkCreateComputePipelines vkCreateComputePipelines;
569
extern PFN_vkCreateDescriptorPool vkCreateDescriptorPool;
570
extern PFN_vkCreateDescriptorSetLayout vkCreateDescriptorSetLayout;
571
extern PFN_vkCreateDevice vkCreateDevice;
572
extern PFN_vkCreateEvent vkCreateEvent;
573
extern PFN_vkCreateFence vkCreateFence;
574
extern PFN_vkCreateFramebuffer vkCreateFramebuffer;
575
extern PFN_vkCreateGraphicsPipelines vkCreateGraphicsPipelines;
576
extern PFN_vkCreateImage vkCreateImage;
577
extern PFN_vkCreateImageView vkCreateImageView;
578
extern PFN_vkCreateInstance vkCreateInstance;
579
extern PFN_vkCreatePipelineCache vkCreatePipelineCache;
580
extern PFN_vkCreatePipelineLayout vkCreatePipelineLayout;
581
extern PFN_vkCreateQueryPool vkCreateQueryPool;
582
extern PFN_vkCreateRenderPass vkCreateRenderPass;
583
extern PFN_vkCreateSampler vkCreateSampler;
584
extern PFN_vkCreateSemaphore vkCreateSemaphore;
585
extern PFN_vkCreateShaderModule vkCreateShaderModule;
586
extern PFN_vkDestroyBuffer vkDestroyBuffer;
587
extern PFN_vkDestroyBufferView vkDestroyBufferView;
588
extern PFN_vkDestroyCommandPool vkDestroyCommandPool;
589
extern PFN_vkDestroyDescriptorPool vkDestroyDescriptorPool;
590
extern PFN_vkDestroyDescriptorSetLayout vkDestroyDescriptorSetLayout;
591
extern PFN_vkDestroyDevice vkDestroyDevice;
592
extern PFN_vkDestroyEvent vkDestroyEvent;
593
extern PFN_vkDestroyFence vkDestroyFence;
594
extern PFN_vkDestroyFramebuffer vkDestroyFramebuffer;
595
extern PFN_vkDestroyImage vkDestroyImage;
596
extern PFN_vkDestroyImageView vkDestroyImageView;
597
extern PFN_vkDestroyInstance vkDestroyInstance;
598
extern PFN_vkDestroyPipeline vkDestroyPipeline;
599
extern PFN_vkDestroyPipelineCache vkDestroyPipelineCache;
600
extern PFN_vkDestroyPipelineLayout vkDestroyPipelineLayout;
601
extern PFN_vkDestroyQueryPool vkDestroyQueryPool;
602
extern PFN_vkDestroyRenderPass vkDestroyRenderPass;
603
extern PFN_vkDestroySampler vkDestroySampler;
604
extern PFN_vkDestroySemaphore vkDestroySemaphore;
605
extern PFN_vkDestroyShaderModule vkDestroyShaderModule;
606
extern PFN_vkDeviceWaitIdle vkDeviceWaitIdle;
607
extern PFN_vkEndCommandBuffer vkEndCommandBuffer;
608
extern PFN_vkEnumerateDeviceExtensionProperties vkEnumerateDeviceExtensionProperties;
609
extern PFN_vkEnumerateDeviceLayerProperties vkEnumerateDeviceLayerProperties;
610
extern PFN_vkEnumerateInstanceExtensionProperties vkEnumerateInstanceExtensionProperties;
611
extern PFN_vkEnumerateInstanceLayerProperties vkEnumerateInstanceLayerProperties;
612
extern PFN_vkEnumeratePhysicalDevices vkEnumeratePhysicalDevices;
613
extern PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
614
extern PFN_vkFreeCommandBuffers vkFreeCommandBuffers;
615
extern PFN_vkFreeDescriptorSets vkFreeDescriptorSets;
616
extern PFN_vkFreeMemory vkFreeMemory;
617
extern PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
618
extern PFN_vkGetDeviceMemoryCommitment vkGetDeviceMemoryCommitment;
619
extern PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
620
extern PFN_vkGetDeviceQueue vkGetDeviceQueue;
621
extern PFN_vkGetEventStatus vkGetEventStatus;
622
extern PFN_vkGetFenceStatus vkGetFenceStatus;
623
extern PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
624
extern PFN_vkGetImageSparseMemoryRequirements vkGetImageSparseMemoryRequirements;
625
extern PFN_vkGetImageSubresourceLayout vkGetImageSubresourceLayout;
626
extern PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
627
extern PFN_vkGetPhysicalDeviceFeatures vkGetPhysicalDeviceFeatures;
628
extern PFN_vkGetPhysicalDeviceFormatProperties vkGetPhysicalDeviceFormatProperties;
629
extern PFN_vkGetPhysicalDeviceImageFormatProperties vkGetPhysicalDeviceImageFormatProperties;
630
extern PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
631
extern PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
632
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties vkGetPhysicalDeviceQueueFamilyProperties;
633
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties vkGetPhysicalDeviceSparseImageFormatProperties;
634
extern PFN_vkGetPipelineCacheData vkGetPipelineCacheData;
635
extern PFN_vkGetQueryPoolResults vkGetQueryPoolResults;
636
extern PFN_vkGetRenderAreaGranularity vkGetRenderAreaGranularity;
637
extern PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
638
extern PFN_vkMapMemory vkMapMemory;
639
extern PFN_vkMergePipelineCaches vkMergePipelineCaches;
640
extern PFN_vkQueueBindSparse vkQueueBindSparse;
641
extern PFN_vkQueueSubmit vkQueueSubmit;
642
extern PFN_vkQueueWaitIdle vkQueueWaitIdle;
643
extern PFN_vkResetCommandBuffer vkResetCommandBuffer;
644
extern PFN_vkResetCommandPool vkResetCommandPool;
645
extern PFN_vkResetDescriptorPool vkResetDescriptorPool;
646
extern PFN_vkResetEvent vkResetEvent;
647
extern PFN_vkResetFences vkResetFences;
648
extern PFN_vkSetEvent vkSetEvent;
649
extern PFN_vkUnmapMemory vkUnmapMemory;
650
extern PFN_vkUpdateDescriptorSets vkUpdateDescriptorSets;
651
extern PFN_vkWaitForFences vkWaitForFences;
652
#endif /* defined(VK_VERSION_1_0) */
653
#if defined(VK_VERSION_1_1)
654
extern PFN_vkBindBufferMemory2 vkBindBufferMemory2;
655
extern PFN_vkBindImageMemory2 vkBindImageMemory2;
656
extern PFN_vkCmdDispatchBase vkCmdDispatchBase;
657
extern PFN_vkCmdSetDeviceMask vkCmdSetDeviceMask;
658
extern PFN_vkCreateDescriptorUpdateTemplate vkCreateDescriptorUpdateTemplate;
659
extern PFN_vkCreateSamplerYcbcrConversion vkCreateSamplerYcbcrConversion;
660
extern PFN_vkDestroyDescriptorUpdateTemplate vkDestroyDescriptorUpdateTemplate;
661
extern PFN_vkDestroySamplerYcbcrConversion vkDestroySamplerYcbcrConversion;
662
extern PFN_vkEnumerateInstanceVersion vkEnumerateInstanceVersion;
663
extern PFN_vkEnumeratePhysicalDeviceGroups vkEnumeratePhysicalDeviceGroups;
664
extern PFN_vkGetBufferMemoryRequirements2 vkGetBufferMemoryRequirements2;
665
extern PFN_vkGetDescriptorSetLayoutSupport vkGetDescriptorSetLayoutSupport;
666
extern PFN_vkGetDeviceGroupPeerMemoryFeatures vkGetDeviceGroupPeerMemoryFeatures;
667
extern PFN_vkGetDeviceQueue2 vkGetDeviceQueue2;
668
extern PFN_vkGetImageMemoryRequirements2 vkGetImageMemoryRequirements2;
669
extern PFN_vkGetImageSparseMemoryRequirements2 vkGetImageSparseMemoryRequirements2;
670
extern PFN_vkGetPhysicalDeviceExternalBufferProperties vkGetPhysicalDeviceExternalBufferProperties;
671
extern PFN_vkGetPhysicalDeviceExternalFenceProperties vkGetPhysicalDeviceExternalFenceProperties;
672
extern PFN_vkGetPhysicalDeviceExternalSemaphoreProperties vkGetPhysicalDeviceExternalSemaphoreProperties;
673
extern PFN_vkGetPhysicalDeviceFeatures2 vkGetPhysicalDeviceFeatures2;
674
extern PFN_vkGetPhysicalDeviceFormatProperties2 vkGetPhysicalDeviceFormatProperties2;
675
extern PFN_vkGetPhysicalDeviceImageFormatProperties2 vkGetPhysicalDeviceImageFormatProperties2;
676
extern PFN_vkGetPhysicalDeviceMemoryProperties2 vkGetPhysicalDeviceMemoryProperties2;
677
extern PFN_vkGetPhysicalDeviceProperties2 vkGetPhysicalDeviceProperties2;
678
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2 vkGetPhysicalDeviceQueueFamilyProperties2;
679
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 vkGetPhysicalDeviceSparseImageFormatProperties2;
680
extern PFN_vkTrimCommandPool vkTrimCommandPool;
681
extern PFN_vkUpdateDescriptorSetWithTemplate vkUpdateDescriptorSetWithTemplate;
682
#endif /* defined(VK_VERSION_1_1) */
683
#if defined(VK_AMD_buffer_marker)
684
extern PFN_vkCmdWriteBufferMarkerAMD vkCmdWriteBufferMarkerAMD;
685
#endif /* defined(VK_AMD_buffer_marker) */
686
#if defined(VK_AMD_display_native_hdr)
687
extern PFN_vkSetLocalDimmingAMD vkSetLocalDimmingAMD;
688
#endif /* defined(VK_AMD_display_native_hdr) */
689
#if defined(VK_AMD_draw_indirect_count)
690
extern PFN_vkCmdDrawIndexedIndirectCountAMD vkCmdDrawIndexedIndirectCountAMD;
691
extern PFN_vkCmdDrawIndirectCountAMD vkCmdDrawIndirectCountAMD;
692
#endif /* defined(VK_AMD_draw_indirect_count) */
693
#if defined(VK_AMD_shader_info)
694
extern PFN_vkGetShaderInfoAMD vkGetShaderInfoAMD;
695
#endif /* defined(VK_AMD_shader_info) */
696
#if defined(VK_ANDROID_external_memory_android_hardware_buffer)
697
extern PFN_vkGetAndroidHardwareBufferPropertiesANDROID vkGetAndroidHardwareBufferPropertiesANDROID;
698
extern PFN_vkGetMemoryAndroidHardwareBufferANDROID vkGetMemoryAndroidHardwareBufferANDROID;
699
#endif /* defined(VK_ANDROID_external_memory_android_hardware_buffer) */
700
#if defined(VK_EXT_acquire_xlib_display)
701
extern PFN_vkAcquireXlibDisplayEXT vkAcquireXlibDisplayEXT;
702
extern PFN_vkGetRandROutputDisplayEXT vkGetRandROutputDisplayEXT;
703
#endif /* defined(VK_EXT_acquire_xlib_display) */
704
#if defined(VK_EXT_buffer_device_address)
705
extern PFN_vkGetBufferDeviceAddressEXT vkGetBufferDeviceAddressEXT;
706
#endif /* defined(VK_EXT_buffer_device_address) */
707
#if defined(VK_EXT_calibrated_timestamps)
708
extern PFN_vkGetCalibratedTimestampsEXT vkGetCalibratedTimestampsEXT;
709
extern PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT vkGetPhysicalDeviceCalibrateableTimeDomainsEXT;
710
#endif /* defined(VK_EXT_calibrated_timestamps) */
711
#if defined(VK_EXT_conditional_rendering)
712
extern PFN_vkCmdBeginConditionalRenderingEXT vkCmdBeginConditionalRenderingEXT;
713
extern PFN_vkCmdEndConditionalRenderingEXT vkCmdEndConditionalRenderingEXT;
714
#endif /* defined(VK_EXT_conditional_rendering) */
715
#if defined(VK_EXT_debug_marker)
716
extern PFN_vkCmdDebugMarkerBeginEXT vkCmdDebugMarkerBeginEXT;
717
extern PFN_vkCmdDebugMarkerEndEXT vkCmdDebugMarkerEndEXT;
718
extern PFN_vkCmdDebugMarkerInsertEXT vkCmdDebugMarkerInsertEXT;
719
extern PFN_vkDebugMarkerSetObjectNameEXT vkDebugMarkerSetObjectNameEXT;
720
extern PFN_vkDebugMarkerSetObjectTagEXT vkDebugMarkerSetObjectTagEXT;
721
#endif /* defined(VK_EXT_debug_marker) */
722
#if defined(VK_EXT_debug_report)
723
extern PFN_vkCreateDebugReportCallbackEXT vkCreateDebugReportCallbackEXT;
724
extern PFN_vkDebugReportMessageEXT vkDebugReportMessageEXT;
725
extern PFN_vkDestroyDebugReportCallbackEXT vkDestroyDebugReportCallbackEXT;
726
#endif /* defined(VK_EXT_debug_report) */
727
#if defined(VK_EXT_debug_utils)
728
extern PFN_vkCmdBeginDebugUtilsLabelEXT vkCmdBeginDebugUtilsLabelEXT;
729
extern PFN_vkCmdEndDebugUtilsLabelEXT vkCmdEndDebugUtilsLabelEXT;
730
extern PFN_vkCmdInsertDebugUtilsLabelEXT vkCmdInsertDebugUtilsLabelEXT;
731
extern PFN_vkCreateDebugUtilsMessengerEXT vkCreateDebugUtilsMessengerEXT;
732
extern PFN_vkDestroyDebugUtilsMessengerEXT vkDestroyDebugUtilsMessengerEXT;
733
extern PFN_vkQueueBeginDebugUtilsLabelEXT vkQueueBeginDebugUtilsLabelEXT;
734
extern PFN_vkQueueEndDebugUtilsLabelEXT vkQueueEndDebugUtilsLabelEXT;
735
extern PFN_vkQueueInsertDebugUtilsLabelEXT vkQueueInsertDebugUtilsLabelEXT;
736
extern PFN_vkSetDebugUtilsObjectNameEXT vkSetDebugUtilsObjectNameEXT;
737
extern PFN_vkSetDebugUtilsObjectTagEXT vkSetDebugUtilsObjectTagEXT;
738
extern PFN_vkSubmitDebugUtilsMessageEXT vkSubmitDebugUtilsMessageEXT;
739
#endif /* defined(VK_EXT_debug_utils) */
740
#if defined(VK_EXT_direct_mode_display)
741
extern PFN_vkReleaseDisplayEXT vkReleaseDisplayEXT;
742
#endif /* defined(VK_EXT_direct_mode_display) */
743
#if defined(VK_EXT_discard_rectangles)
744
extern PFN_vkCmdSetDiscardRectangleEXT vkCmdSetDiscardRectangleEXT;
745
#endif /* defined(VK_EXT_discard_rectangles) */
746
#if defined(VK_EXT_display_control)
747
extern PFN_vkDisplayPowerControlEXT vkDisplayPowerControlEXT;
748
extern PFN_vkGetSwapchainCounterEXT vkGetSwapchainCounterEXT;
749
extern PFN_vkRegisterDeviceEventEXT vkRegisterDeviceEventEXT;
750
extern PFN_vkRegisterDisplayEventEXT vkRegisterDisplayEventEXT;
751
#endif /* defined(VK_EXT_display_control) */
752
#if defined(VK_EXT_display_surface_counter)
753
extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT vkGetPhysicalDeviceSurfaceCapabilities2EXT;
754
#endif /* defined(VK_EXT_display_surface_counter) */
755
#if defined(VK_EXT_external_memory_host)
756
extern PFN_vkGetMemoryHostPointerPropertiesEXT vkGetMemoryHostPointerPropertiesEXT;
757
#endif /* defined(VK_EXT_external_memory_host) */
758
#if defined(VK_EXT_full_screen_exclusive)
759
extern PFN_vkAcquireFullScreenExclusiveModeEXT vkAcquireFullScreenExclusiveModeEXT;
760
extern PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT vkGetPhysicalDeviceSurfacePresentModes2EXT;
761
extern PFN_vkReleaseFullScreenExclusiveModeEXT vkReleaseFullScreenExclusiveModeEXT;
762
#endif /* defined(VK_EXT_full_screen_exclusive) */
763
#if defined(VK_EXT_hdr_metadata)
764
extern PFN_vkSetHdrMetadataEXT vkSetHdrMetadataEXT;
765
#endif /* defined(VK_EXT_hdr_metadata) */
766
#if defined(VK_EXT_headless_surface)
767
extern PFN_vkCreateHeadlessSurfaceEXT vkCreateHeadlessSurfaceEXT;
768
#endif /* defined(VK_EXT_headless_surface) */
769
#if defined(VK_EXT_host_query_reset)
770
extern PFN_vkResetQueryPoolEXT vkResetQueryPoolEXT;
771
#endif /* defined(VK_EXT_host_query_reset) */
772
#if defined(VK_EXT_image_drm_format_modifier)
773
extern PFN_vkGetImageDrmFormatModifierPropertiesEXT vkGetImageDrmFormatModifierPropertiesEXT;
774
#endif /* defined(VK_EXT_image_drm_format_modifier) */
775
#if defined(VK_EXT_line_rasterization)
776
extern PFN_vkCmdSetLineStippleEXT vkCmdSetLineStippleEXT;
777
#endif /* defined(VK_EXT_line_rasterization) */
778
#if defined(VK_EXT_metal_surface)
779
extern PFN_vkCreateMetalSurfaceEXT vkCreateMetalSurfaceEXT;
780
#endif /* defined(VK_EXT_metal_surface) */
781
#if defined(VK_EXT_sample_locations)
782
extern PFN_vkCmdSetSampleLocationsEXT vkCmdSetSampleLocationsEXT;
783
extern PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT vkGetPhysicalDeviceMultisamplePropertiesEXT;
784
#endif /* defined(VK_EXT_sample_locations) */
785
#if defined(VK_EXT_tooling_info)
786
extern PFN_vkGetPhysicalDeviceToolPropertiesEXT vkGetPhysicalDeviceToolPropertiesEXT;
787
#endif /* defined(VK_EXT_tooling_info) */
788
#if defined(VK_EXT_transform_feedback)
789
extern PFN_vkCmdBeginQueryIndexedEXT vkCmdBeginQueryIndexedEXT;
790
extern PFN_vkCmdBeginTransformFeedbackEXT vkCmdBeginTransformFeedbackEXT;
791
extern PFN_vkCmdBindTransformFeedbackBuffersEXT vkCmdBindTransformFeedbackBuffersEXT;
792
extern PFN_vkCmdDrawIndirectByteCountEXT vkCmdDrawIndirectByteCountEXT;
793
extern PFN_vkCmdEndQueryIndexedEXT vkCmdEndQueryIndexedEXT;
794
extern PFN_vkCmdEndTransformFeedbackEXT vkCmdEndTransformFeedbackEXT;
795
#endif /* defined(VK_EXT_transform_feedback) */
796
#if defined(VK_EXT_validation_cache)
797
extern PFN_vkCreateValidationCacheEXT vkCreateValidationCacheEXT;
798
extern PFN_vkDestroyValidationCacheEXT vkDestroyValidationCacheEXT;
799
extern PFN_vkGetValidationCacheDataEXT vkGetValidationCacheDataEXT;
800
extern PFN_vkMergeValidationCachesEXT vkMergeValidationCachesEXT;
801
#endif /* defined(VK_EXT_validation_cache) */
802
#if defined(VK_FUCHSIA_imagepipe_surface)
803
extern PFN_vkCreateImagePipeSurfaceFUCHSIA vkCreateImagePipeSurfaceFUCHSIA;
804
#endif /* defined(VK_FUCHSIA_imagepipe_surface) */
805
#if defined(VK_GGP_stream_descriptor_surface)
806
extern PFN_vkCreateStreamDescriptorSurfaceGGP vkCreateStreamDescriptorSurfaceGGP;
807
#endif /* defined(VK_GGP_stream_descriptor_surface) */
808
#if defined(VK_GOOGLE_display_timing)
809
extern PFN_vkGetPastPresentationTimingGOOGLE vkGetPastPresentationTimingGOOGLE;
810
extern PFN_vkGetRefreshCycleDurationGOOGLE vkGetRefreshCycleDurationGOOGLE;
811
#endif /* defined(VK_GOOGLE_display_timing) */
812
#if defined(VK_INTEL_performance_query)
813
extern PFN_vkAcquirePerformanceConfigurationINTEL vkAcquirePerformanceConfigurationINTEL;
814
extern PFN_vkCmdSetPerformanceMarkerINTEL vkCmdSetPerformanceMarkerINTEL;
815
extern PFN_vkCmdSetPerformanceOverrideINTEL vkCmdSetPerformanceOverrideINTEL;
816
extern PFN_vkCmdSetPerformanceStreamMarkerINTEL vkCmdSetPerformanceStreamMarkerINTEL;
817
extern PFN_vkGetPerformanceParameterINTEL vkGetPerformanceParameterINTEL;
818
extern PFN_vkInitializePerformanceApiINTEL vkInitializePerformanceApiINTEL;
819
extern PFN_vkQueueSetPerformanceConfigurationINTEL vkQueueSetPerformanceConfigurationINTEL;
820
extern PFN_vkReleasePerformanceConfigurationINTEL vkReleasePerformanceConfigurationINTEL;
821
extern PFN_vkUninitializePerformanceApiINTEL vkUninitializePerformanceApiINTEL;
822
#endif /* defined(VK_INTEL_performance_query) */
823
#if defined(VK_KHR_android_surface)
824
extern PFN_vkCreateAndroidSurfaceKHR vkCreateAndroidSurfaceKHR;
825
#endif /* defined(VK_KHR_android_surface) */
826
#if defined(VK_KHR_bind_memory2)
827
extern PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
828
extern PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
829
#endif /* defined(VK_KHR_bind_memory2) */
830
#if defined(VK_KHR_buffer_device_address)
831
extern PFN_vkGetBufferDeviceAddressKHR vkGetBufferDeviceAddressKHR;
832
extern PFN_vkGetBufferOpaqueCaptureAddressKHR vkGetBufferOpaqueCaptureAddressKHR;
833
extern PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR vkGetDeviceMemoryOpaqueCaptureAddressKHR;
834
#endif /* defined(VK_KHR_buffer_device_address) */
835
#if defined(VK_KHR_create_renderpass2)
836
extern PFN_vkCmdBeginRenderPass2KHR vkCmdBeginRenderPass2KHR;
837
extern PFN_vkCmdEndRenderPass2KHR vkCmdEndRenderPass2KHR;
838
extern PFN_vkCmdNextSubpass2KHR vkCmdNextSubpass2KHR;
839
extern PFN_vkCreateRenderPass2KHR vkCreateRenderPass2KHR;
840
#endif /* defined(VK_KHR_create_renderpass2) */
841
#if defined(VK_KHR_descriptor_update_template)
842
extern PFN_vkCreateDescriptorUpdateTemplateKHR vkCreateDescriptorUpdateTemplateKHR;
843
extern PFN_vkDestroyDescriptorUpdateTemplateKHR vkDestroyDescriptorUpdateTemplateKHR;
844
extern PFN_vkUpdateDescriptorSetWithTemplateKHR vkUpdateDescriptorSetWithTemplateKHR;
845
#endif /* defined(VK_KHR_descriptor_update_template) */
846
#if defined(VK_KHR_device_group)
847
extern PFN_vkCmdDispatchBaseKHR vkCmdDispatchBaseKHR;
848
extern PFN_vkCmdSetDeviceMaskKHR vkCmdSetDeviceMaskKHR;
849
extern PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR vkGetDeviceGroupPeerMemoryFeaturesKHR;
850
#endif /* defined(VK_KHR_device_group) */
851
#if defined(VK_KHR_device_group_creation)
852
extern PFN_vkEnumeratePhysicalDeviceGroupsKHR vkEnumeratePhysicalDeviceGroupsKHR;
853
#endif /* defined(VK_KHR_device_group_creation) */
854
#if defined(VK_KHR_display)
855
extern PFN_vkCreateDisplayModeKHR vkCreateDisplayModeKHR;
856
extern PFN_vkCreateDisplayPlaneSurfaceKHR vkCreateDisplayPlaneSurfaceKHR;
857
extern PFN_vkGetDisplayModePropertiesKHR vkGetDisplayModePropertiesKHR;
858
extern PFN_vkGetDisplayPlaneCapabilitiesKHR vkGetDisplayPlaneCapabilitiesKHR;
859
extern PFN_vkGetDisplayPlaneSupportedDisplaysKHR vkGetDisplayPlaneSupportedDisplaysKHR;
860
extern PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR vkGetPhysicalDeviceDisplayPlanePropertiesKHR;
861
extern PFN_vkGetPhysicalDeviceDisplayPropertiesKHR vkGetPhysicalDeviceDisplayPropertiesKHR;
862
#endif /* defined(VK_KHR_display) */
863
#if defined(VK_KHR_display_swapchain)
864
extern PFN_vkCreateSharedSwapchainsKHR vkCreateSharedSwapchainsKHR;
865
#endif /* defined(VK_KHR_display_swapchain) */
866
#if defined(VK_KHR_draw_indirect_count)
867
extern PFN_vkCmdDrawIndexedIndirectCountKHR vkCmdDrawIndexedIndirectCountKHR;
868
extern PFN_vkCmdDrawIndirectCountKHR vkCmdDrawIndirectCountKHR;
869
#endif /* defined(VK_KHR_draw_indirect_count) */
870
#if defined(VK_KHR_external_fence_capabilities)
871
extern PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR vkGetPhysicalDeviceExternalFencePropertiesKHR;
872
#endif /* defined(VK_KHR_external_fence_capabilities) */
873
#if defined(VK_KHR_external_fence_fd)
874
extern PFN_vkGetFenceFdKHR vkGetFenceFdKHR;
875
extern PFN_vkImportFenceFdKHR vkImportFenceFdKHR;
876
#endif /* defined(VK_KHR_external_fence_fd) */
877
#if defined(VK_KHR_external_fence_win32)
878
extern PFN_vkGetFenceWin32HandleKHR vkGetFenceWin32HandleKHR;
879
extern PFN_vkImportFenceWin32HandleKHR vkImportFenceWin32HandleKHR;
880
#endif /* defined(VK_KHR_external_fence_win32) */
881
#if defined(VK_KHR_external_memory_capabilities)
882
extern PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR vkGetPhysicalDeviceExternalBufferPropertiesKHR;
883
#endif /* defined(VK_KHR_external_memory_capabilities) */
884
#if defined(VK_KHR_external_memory_fd)
885
extern PFN_vkGetMemoryFdKHR vkGetMemoryFdKHR;
886
extern PFN_vkGetMemoryFdPropertiesKHR vkGetMemoryFdPropertiesKHR;
887
#endif /* defined(VK_KHR_external_memory_fd) */
888
#if defined(VK_KHR_external_memory_win32)
889
extern PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
890
extern PFN_vkGetMemoryWin32HandlePropertiesKHR vkGetMemoryWin32HandlePropertiesKHR;
891
#endif /* defined(VK_KHR_external_memory_win32) */
892
#if defined(VK_KHR_external_semaphore_capabilities)
893
extern PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR vkGetPhysicalDeviceExternalSemaphorePropertiesKHR;
894
#endif /* defined(VK_KHR_external_semaphore_capabilities) */
895
#if defined(VK_KHR_external_semaphore_fd)
896
extern PFN_vkGetSemaphoreFdKHR vkGetSemaphoreFdKHR;
897
extern PFN_vkImportSemaphoreFdKHR vkImportSemaphoreFdKHR;
898
#endif /* defined(VK_KHR_external_semaphore_fd) */
899
#if defined(VK_KHR_external_semaphore_win32)
900
extern PFN_vkGetSemaphoreWin32HandleKHR vkGetSemaphoreWin32HandleKHR;
901
extern PFN_vkImportSemaphoreWin32HandleKHR vkImportSemaphoreWin32HandleKHR;
902
#endif /* defined(VK_KHR_external_semaphore_win32) */
903
#if defined(VK_KHR_get_display_properties2)
904
extern PFN_vkGetDisplayModeProperties2KHR vkGetDisplayModeProperties2KHR;
905
extern PFN_vkGetDisplayPlaneCapabilities2KHR vkGetDisplayPlaneCapabilities2KHR;
906
extern PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR vkGetPhysicalDeviceDisplayPlaneProperties2KHR;
907
extern PFN_vkGetPhysicalDeviceDisplayProperties2KHR vkGetPhysicalDeviceDisplayProperties2KHR;
908
#endif /* defined(VK_KHR_get_display_properties2) */
909
#if defined(VK_KHR_get_memory_requirements2)
910
extern PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
911
extern PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
912
extern PFN_vkGetImageSparseMemoryRequirements2KHR vkGetImageSparseMemoryRequirements2KHR;
913
#endif /* defined(VK_KHR_get_memory_requirements2) */
914
#if defined(VK_KHR_get_physical_device_properties2)
915
extern PFN_vkGetPhysicalDeviceFeatures2KHR vkGetPhysicalDeviceFeatures2KHR;
916
extern PFN_vkGetPhysicalDeviceFormatProperties2KHR vkGetPhysicalDeviceFormatProperties2KHR;
917
extern PFN_vkGetPhysicalDeviceImageFormatProperties2KHR vkGetPhysicalDeviceImageFormatProperties2KHR;
918
extern PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
919
extern PFN_vkGetPhysicalDeviceProperties2KHR vkGetPhysicalDeviceProperties2KHR;
920
extern PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR vkGetPhysicalDeviceQueueFamilyProperties2KHR;
921
extern PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR vkGetPhysicalDeviceSparseImageFormatProperties2KHR;
922
#endif /* defined(VK_KHR_get_physical_device_properties2) */
923
#if defined(VK_KHR_get_surface_capabilities2)
924
extern PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR vkGetPhysicalDeviceSurfaceCapabilities2KHR;
925
extern PFN_vkGetPhysicalDeviceSurfaceFormats2KHR vkGetPhysicalDeviceSurfaceFormats2KHR;
926
#endif /* defined(VK_KHR_get_surface_capabilities2) */
927
#if defined(VK_KHR_maintenance1)
928
extern PFN_vkTrimCommandPoolKHR vkTrimCommandPoolKHR;
929
#endif /* defined(VK_KHR_maintenance1) */
930
#if defined(VK_KHR_maintenance3)
931
extern PFN_vkGetDescriptorSetLayoutSupportKHR vkGetDescriptorSetLayoutSupportKHR;
932
#endif /* defined(VK_KHR_maintenance3) */
933
#if defined(VK_KHR_performance_query)
934
extern PFN_vkAcquireProfilingLockKHR vkAcquireProfilingLockKHR;
935
extern PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR;
936
extern PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR;
937
extern PFN_vkReleaseProfilingLockKHR vkReleaseProfilingLockKHR;
938
#endif /* defined(VK_KHR_performance_query) */
939
#if defined(VK_KHR_pipeline_executable_properties)
940
extern PFN_vkGetPipelineExecutableInternalRepresentationsKHR vkGetPipelineExecutableInternalRepresentationsKHR;
941
extern PFN_vkGetPipelineExecutablePropertiesKHR vkGetPipelineExecutablePropertiesKHR;
942
extern PFN_vkGetPipelineExecutableStatisticsKHR vkGetPipelineExecutableStatisticsKHR;
943
#endif /* defined(VK_KHR_pipeline_executable_properties) */
944
#if defined(VK_KHR_push_descriptor)
945
extern PFN_vkCmdPushDescriptorSetKHR vkCmdPushDescriptorSetKHR;
946
#endif /* defined(VK_KHR_push_descriptor) */
947
#if defined(VK_KHR_sampler_ycbcr_conversion)
948
extern PFN_vkCreateSamplerYcbcrConversionKHR vkCreateSamplerYcbcrConversionKHR;
949
extern PFN_vkDestroySamplerYcbcrConversionKHR vkDestroySamplerYcbcrConversionKHR;
950
#endif /* defined(VK_KHR_sampler_ycbcr_conversion) */
951
#if defined(VK_KHR_shared_presentable_image)
952
extern PFN_vkGetSwapchainStatusKHR vkGetSwapchainStatusKHR;
953
#endif /* defined(VK_KHR_shared_presentable_image) */
954
#if defined(VK_KHR_surface)
955
extern PFN_vkDestroySurfaceKHR vkDestroySurfaceKHR;
956
extern PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR vkGetPhysicalDeviceSurfaceCapabilitiesKHR;
957
extern PFN_vkGetPhysicalDeviceSurfaceFormatsKHR vkGetPhysicalDeviceSurfaceFormatsKHR;
958
extern PFN_vkGetPhysicalDeviceSurfacePresentModesKHR vkGetPhysicalDeviceSurfacePresentModesKHR;
959
extern PFN_vkGetPhysicalDeviceSurfaceSupportKHR vkGetPhysicalDeviceSurfaceSupportKHR;
960
#endif /* defined(VK_KHR_surface) */
961
#if defined(VK_KHR_swapchain)
962
extern PFN_vkAcquireNextImageKHR vkAcquireNextImageKHR;
963
extern PFN_vkCreateSwapchainKHR vkCreateSwapchainKHR;
964
extern PFN_vkDestroySwapchainKHR vkDestroySwapchainKHR;
965
extern PFN_vkGetSwapchainImagesKHR vkGetSwapchainImagesKHR;
966
extern PFN_vkQueuePresentKHR vkQueuePresentKHR;
967
#endif /* defined(VK_KHR_swapchain) */
968
#if defined(VK_KHR_timeline_semaphore)
969
extern PFN_vkGetSemaphoreCounterValueKHR vkGetSemaphoreCounterValueKHR;
970
extern PFN_vkSignalSemaphoreKHR vkSignalSemaphoreKHR;
971
extern PFN_vkWaitSemaphoresKHR vkWaitSemaphoresKHR;
972
#endif /* defined(VK_KHR_timeline_semaphore) */
973
#if defined(VK_KHR_wayland_surface)
974
extern PFN_vkCreateWaylandSurfaceKHR vkCreateWaylandSurfaceKHR;
975
extern PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR vkGetPhysicalDeviceWaylandPresentationSupportKHR;
976
#endif /* defined(VK_KHR_wayland_surface) */
977
#if defined(VK_KHR_win32_surface)
978
extern PFN_vkCreateWin32SurfaceKHR vkCreateWin32SurfaceKHR;
979
extern PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR vkGetPhysicalDeviceWin32PresentationSupportKHR;
980
#endif /* defined(VK_KHR_win32_surface) */
981
#if defined(VK_KHR_xcb_surface)
982
extern PFN_vkCreateXcbSurfaceKHR vkCreateXcbSurfaceKHR;
983
extern PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR vkGetPhysicalDeviceXcbPresentationSupportKHR;
984
#endif /* defined(VK_KHR_xcb_surface) */
985
#if defined(VK_KHR_xlib_surface)
986
extern PFN_vkCreateXlibSurfaceKHR vkCreateXlibSurfaceKHR;
987
extern PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR vkGetPhysicalDeviceXlibPresentationSupportKHR;
988
#endif /* defined(VK_KHR_xlib_surface) */
989
#if defined(VK_MVK_ios_surface)
990
extern PFN_vkCreateIOSSurfaceMVK vkCreateIOSSurfaceMVK;
991
#endif /* defined(VK_MVK_ios_surface) */
992
#if defined(VK_MVK_macos_surface)
993
extern PFN_vkCreateMacOSSurfaceMVK vkCreateMacOSSurfaceMVK;
994
#endif /* defined(VK_MVK_macos_surface) */
995
#if defined(VK_NN_vi_surface)
996
extern PFN_vkCreateViSurfaceNN vkCreateViSurfaceNN;
997
#endif /* defined(VK_NN_vi_surface) */
998
#if defined(VK_NVX_device_generated_commands)
999
extern PFN_vkCmdProcessCommandsNVX vkCmdProcessCommandsNVX;
1000
extern PFN_vkCmdReserveSpaceForCommandsNVX vkCmdReserveSpaceForCommandsNVX;
1001
extern PFN_vkCreateIndirectCommandsLayoutNVX vkCreateIndirectCommandsLayoutNVX;
1002
extern PFN_vkCreateObjectTableNVX vkCreateObjectTableNVX;
1003
extern PFN_vkDestroyIndirectCommandsLayoutNVX vkDestroyIndirectCommandsLayoutNVX;
1004
extern PFN_vkDestroyObjectTableNVX vkDestroyObjectTableNVX;
1005
extern PFN_vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX;
1006
extern PFN_vkRegisterObjectsNVX vkRegisterObjectsNVX;
1007
extern PFN_vkUnregisterObjectsNVX vkUnregisterObjectsNVX;
1008
#endif /* defined(VK_NVX_device_generated_commands) */
1009
#if defined(VK_NVX_image_view_handle)
1010
extern PFN_vkGetImageViewHandleNVX vkGetImageViewHandleNVX;
1011
#endif /* defined(VK_NVX_image_view_handle) */
1012
#if defined(VK_NV_clip_space_w_scaling)
1013
extern PFN_vkCmdSetViewportWScalingNV vkCmdSetViewportWScalingNV;
1014
#endif /* defined(VK_NV_clip_space_w_scaling) */
1015
#if defined(VK_NV_cooperative_matrix)
1016
extern PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV vkGetPhysicalDeviceCooperativeMatrixPropertiesNV;
1017
#endif /* defined(VK_NV_cooperative_matrix) */
1018
#if defined(VK_NV_coverage_reduction_mode)
1019
extern PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV;
1020
#endif /* defined(VK_NV_coverage_reduction_mode) */
1021
#if defined(VK_NV_device_diagnostic_checkpoints)
1022
extern PFN_vkCmdSetCheckpointNV vkCmdSetCheckpointNV;
1023
extern PFN_vkGetQueueCheckpointDataNV vkGetQueueCheckpointDataNV;
1024
#endif /* defined(VK_NV_device_diagnostic_checkpoints) */
1025
#if defined(VK_NV_external_memory_capabilities)
1026
extern PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV vkGetPhysicalDeviceExternalImageFormatPropertiesNV;
1027
#endif /* defined(VK_NV_external_memory_capabilities) */
1028
#if defined(VK_NV_external_memory_win32)
1029
extern PFN_vkGetMemoryWin32HandleNV vkGetMemoryWin32HandleNV;
1030
#endif /* defined(VK_NV_external_memory_win32) */
1031
#if defined(VK_NV_mesh_shader)
1032
extern PFN_vkCmdDrawMeshTasksIndirectCountNV vkCmdDrawMeshTasksIndirectCountNV;
1033
extern PFN_vkCmdDrawMeshTasksIndirectNV vkCmdDrawMeshTasksIndirectNV;
1034
extern PFN_vkCmdDrawMeshTasksNV vkCmdDrawMeshTasksNV;
1035
#endif /* defined(VK_NV_mesh_shader) */
1036
#if defined(VK_NV_ray_tracing)
1037
extern PFN_vkBindAccelerationStructureMemoryNV vkBindAccelerationStructureMemoryNV;
1038
extern PFN_vkCmdBuildAccelerationStructureNV vkCmdBuildAccelerationStructureNV;
1039
extern PFN_vkCmdCopyAccelerationStructureNV vkCmdCopyAccelerationStructureNV;
1040
extern PFN_vkCmdTraceRaysNV vkCmdTraceRaysNV;
1041
extern PFN_vkCmdWriteAccelerationStructuresPropertiesNV vkCmdWriteAccelerationStructuresPropertiesNV;
1042
extern PFN_vkCompileDeferredNV vkCompileDeferredNV;
1043
extern PFN_vkCreateAccelerationStructureNV vkCreateAccelerationStructureNV;
1044
extern PFN_vkCreateRayTracingPipelinesNV vkCreateRayTracingPipelinesNV;
1045
extern PFN_vkDestroyAccelerationStructureNV vkDestroyAccelerationStructureNV;
1046
extern PFN_vkGetAccelerationStructureHandleNV vkGetAccelerationStructureHandleNV;
1047
extern PFN_vkGetAccelerationStructureMemoryRequirementsNV vkGetAccelerationStructureMemoryRequirementsNV;
1048
extern PFN_vkGetRayTracingShaderGroupHandlesNV vkGetRayTracingShaderGroupHandlesNV;
1049
#endif /* defined(VK_NV_ray_tracing) */
1050
#if defined(VK_NV_scissor_exclusive)
1051
extern PFN_vkCmdSetExclusiveScissorNV vkCmdSetExclusiveScissorNV;
1052
#endif /* defined(VK_NV_scissor_exclusive) */
1053
#if defined(VK_NV_shading_rate_image)
1054
extern PFN_vkCmdBindShadingRateImageNV vkCmdBindShadingRateImageNV;
1055
extern PFN_vkCmdSetCoarseSampleOrderNV vkCmdSetCoarseSampleOrderNV;
1056
extern PFN_vkCmdSetViewportShadingRatePaletteNV vkCmdSetViewportShadingRatePaletteNV;
1057
#endif /* defined(VK_NV_shading_rate_image) */
1058
#if (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1))
1059
extern PFN_vkGetDeviceGroupSurfacePresentModes2EXT vkGetDeviceGroupSurfacePresentModes2EXT;
1060
#endif /* (defined(VK_EXT_full_screen_exclusive) && defined(VK_KHR_device_group)) || (defined(VK_EXT_full_screen_exclusive) && defined(VK_VERSION_1_1)) */
1061
#if (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1))
1062
extern PFN_vkCmdPushDescriptorSetWithTemplateKHR vkCmdPushDescriptorSetWithTemplateKHR;
1063
#endif /* (defined(VK_KHR_descriptor_update_template) && defined(VK_KHR_push_descriptor)) || (defined(VK_KHR_push_descriptor) && defined(VK_VERSION_1_1)) */
1064
#if (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
1065
extern PFN_vkGetDeviceGroupPresentCapabilitiesKHR vkGetDeviceGroupPresentCapabilitiesKHR;
1066
extern PFN_vkGetDeviceGroupSurfacePresentModesKHR vkGetDeviceGroupSurfacePresentModesKHR;
1067
extern PFN_vkGetPhysicalDevicePresentRectanglesKHR vkGetPhysicalDevicePresentRectanglesKHR;
1068
#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_surface)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
1069
#if (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1))
1070
extern PFN_vkAcquireNextImage2KHR vkAcquireNextImage2KHR;
1071
#endif /* (defined(VK_KHR_device_group) && defined(VK_KHR_swapchain)) || (defined(VK_KHR_swapchain) && defined(VK_VERSION_1_1)) */
1072
/* VOLK_GENERATE_PROTOTYPES_H */
1073
1074
#ifdef __cplusplus
1075
}
1076
#endif
1077
1078
#endif
1079
1080
#ifdef VOLK_IMPLEMENTATION
1081
#undef VOLK_IMPLEMENTATION
1082
// Prevent tools like dependency checkers that don't evaluate
1083
// macros from detecting a cyclic dependency.
1084
#define VOLK_SOURCE "volk.c"
1085
#include VOLK_SOURCE
1086
#endif
1087
1088
/**
1089
* Copyright (c) 2018-2019 Arseny Kapoulkine
1090
*
1091
* Permission is hereby granted, free of charge, to any person obtaining a copy
1092
* of this software and associated documentation files (the "Software"), to deal
1093
* in the Software without restriction, including without limitation the rights
1094
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
1095
* copies of the Software, and to permit persons to whom the Software is
1096
* furnished to do so, subject to the following conditions:
1097
*
1098
* The above copyright notice and this permission notice shall be included in all
1099
* copies or substantial portions of the Software.
1100
*
1101
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
1102
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
1103
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
1104
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
1105
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
1106
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
1107
* SOFTWARE.
1108
*/
1109
/* clang-format on */
1110
1111