vulkanalia_sys/
commands.rs

1// SPDX-License-Identifier: Apache-2.0
2
3// DO NOT EDIT.
4//
5// This file has been generated by the Kotlin project in the `generator`
6// directory from a Vulkan API registry.
7
8#![allow(
9    non_camel_case_types,
10    non_snake_case,
11    clippy::bad_bit_mask,
12    clippy::let_unit_value,
13    clippy::missing_safety_doc,
14    clippy::missing_transmute_annotations,
15    clippy::too_many_arguments,
16    clippy::type_complexity,
17    clippy::unnecessary_cast,
18    clippy::upper_case_acronyms,
19    clippy::useless_transmute
20)]
21
22use core::ffi::{c_char, c_int, c_void};
23
24use crate::*;
25
26/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireDrmDisplayEXT.html>
27pub type PFN_vkAcquireDrmDisplayEXT = unsafe extern "system" fn(
28    _physical_device: PhysicalDevice,
29    _drm_fd: i32,
30    _display: DisplayKHR,
31) -> Result;
32
33/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireFullScreenExclusiveModeEXT.html>
34pub type PFN_vkAcquireFullScreenExclusiveModeEXT =
35    unsafe extern "system" fn(_device: Device, _swapchain: SwapchainKHR) -> Result;
36
37/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireNextImage2KHR.html>
38pub type PFN_vkAcquireNextImage2KHR = unsafe extern "system" fn(
39    _device: Device,
40    _acquire_info: *const AcquireNextImageInfoKHR,
41    _image_index: *mut u32,
42) -> Result;
43
44/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireNextImageKHR.html>
45pub type PFN_vkAcquireNextImageKHR = unsafe extern "system" fn(
46    _device: Device,
47    _swapchain: SwapchainKHR,
48    _timeout: u64,
49    _semaphore: Semaphore,
50    _fence: Fence,
51    _image_index: *mut u32,
52) -> Result;
53
54/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquirePerformanceConfigurationINTEL.html>
55pub type PFN_vkAcquirePerformanceConfigurationINTEL = unsafe extern "system" fn(
56    _device: Device,
57    _acquire_info: *const PerformanceConfigurationAcquireInfoINTEL,
58    _configuration: *mut PerformanceConfigurationINTEL,
59) -> Result;
60
61/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireProfilingLockKHR.html>
62pub type PFN_vkAcquireProfilingLockKHR =
63    unsafe extern "system" fn(_device: Device, _info: *const AcquireProfilingLockInfoKHR) -> Result;
64
65/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireWinrtDisplayNV.html>
66pub type PFN_vkAcquireWinrtDisplayNV =
67    unsafe extern "system" fn(_physical_device: PhysicalDevice, _display: DisplayKHR) -> Result;
68
69/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAcquireXlibDisplayEXT.html>
70pub type PFN_vkAcquireXlibDisplayEXT = unsafe extern "system" fn(
71    _physical_device: PhysicalDevice,
72    _dpy: *mut Display,
73    _display: DisplayKHR,
74) -> Result;
75
76/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAllocateCommandBuffers.html>
77pub type PFN_vkAllocateCommandBuffers = unsafe extern "system" fn(
78    _device: Device,
79    _allocate_info: *const CommandBufferAllocateInfo,
80    _command_buffers: *mut CommandBuffer,
81) -> Result;
82
83/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAllocateDescriptorSets.html>
84pub type PFN_vkAllocateDescriptorSets = unsafe extern "system" fn(
85    _device: Device,
86    _allocate_info: *const DescriptorSetAllocateInfo,
87    _descriptor_sets: *mut DescriptorSet,
88) -> Result;
89
90/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAllocateMemory.html>
91pub type PFN_vkAllocateMemory = unsafe extern "system" fn(
92    _device: Device,
93    _allocate_info: *const MemoryAllocateInfo,
94    _allocator: *const AllocationCallbacks,
95    _memory: *mut DeviceMemory,
96) -> Result;
97
98/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkAntiLagUpdateAMD.html>
99pub type PFN_vkAntiLagUpdateAMD =
100    unsafe extern "system" fn(_device: Device, _data: *const AntiLagDataAMD);
101
102/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBeginCommandBuffer.html>
103pub type PFN_vkBeginCommandBuffer = unsafe extern "system" fn(
104    _command_buffer: CommandBuffer,
105    _begin_info: *const CommandBufferBeginInfo,
106) -> Result;
107
108/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindAccelerationStructureMemoryNV.html>
109pub type PFN_vkBindAccelerationStructureMemoryNV = unsafe extern "system" fn(
110    _device: Device,
111    _bind_info_count: u32,
112    _bind_infos: *const BindAccelerationStructureMemoryInfoNV,
113) -> Result;
114
115/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindBufferMemory.html>
116pub type PFN_vkBindBufferMemory = unsafe extern "system" fn(
117    _device: Device,
118    _buffer: Buffer,
119    _memory: DeviceMemory,
120    _memory_offset: DeviceSize,
121) -> Result;
122
123/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindBufferMemory2.html>
124pub type PFN_vkBindBufferMemory2 = unsafe extern "system" fn(
125    _device: Device,
126    _bind_info_count: u32,
127    _bind_infos: *const BindBufferMemoryInfo,
128) -> Result;
129
130/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindBufferMemory2KHR.html>
131pub type PFN_vkBindBufferMemory2KHR = PFN_vkBindBufferMemory2;
132
133/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindImageMemory.html>
134pub type PFN_vkBindImageMemory = unsafe extern "system" fn(
135    _device: Device,
136    _image: Image,
137    _memory: DeviceMemory,
138    _memory_offset: DeviceSize,
139) -> Result;
140
141/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindImageMemory2.html>
142pub type PFN_vkBindImageMemory2 = unsafe extern "system" fn(
143    _device: Device,
144    _bind_info_count: u32,
145    _bind_infos: *const BindImageMemoryInfo,
146) -> Result;
147
148/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindImageMemory2KHR.html>
149pub type PFN_vkBindImageMemory2KHR = PFN_vkBindImageMemory2;
150
151/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindOpticalFlowSessionImageNV.html>
152pub type PFN_vkBindOpticalFlowSessionImageNV = unsafe extern "system" fn(
153    _device: Device,
154    _session: OpticalFlowSessionNV,
155    _binding_point: OpticalFlowSessionBindingPointNV,
156    _view: ImageView,
157    _layout: ImageLayout,
158) -> Result;
159
160/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBindVideoSessionMemoryKHR.html>
161pub type PFN_vkBindVideoSessionMemoryKHR = unsafe extern "system" fn(
162    _device: Device,
163    _video_session: VideoSessionKHR,
164    _bind_session_memory_info_count: u32,
165    _bind_session_memory_infos: *const BindVideoSessionMemoryInfoKHR,
166) -> Result;
167
168/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBuildAccelerationStructuresKHR.html>
169pub type PFN_vkBuildAccelerationStructuresKHR = unsafe extern "system" fn(
170    _device: Device,
171    _deferred_operation: DeferredOperationKHR,
172    _info_count: u32,
173    _infos: *const AccelerationStructureBuildGeometryInfoKHR,
174    _build_range_infos: *const *const AccelerationStructureBuildRangeInfoKHR,
175) -> Result;
176
177/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkBuildMicromapsEXT.html>
178pub type PFN_vkBuildMicromapsEXT = unsafe extern "system" fn(
179    _device: Device,
180    _deferred_operation: DeferredOperationKHR,
181    _info_count: u32,
182    _infos: *const MicromapBuildInfoEXT,
183) -> Result;
184
185/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginConditionalRenderingEXT.html>
186pub type PFN_vkCmdBeginConditionalRenderingEXT = unsafe extern "system" fn(
187    _command_buffer: CommandBuffer,
188    _conditional_rendering_begin: *const ConditionalRenderingBeginInfoEXT,
189);
190
191/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginDebugUtilsLabelEXT.html>
192pub type PFN_vkCmdBeginDebugUtilsLabelEXT = unsafe extern "system" fn(
193    _command_buffer: CommandBuffer,
194    _label_info: *const DebugUtilsLabelEXT,
195);
196
197/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginQuery.html>
198pub type PFN_vkCmdBeginQuery = unsafe extern "system" fn(
199    _command_buffer: CommandBuffer,
200    _query_pool: QueryPool,
201    _query: u32,
202    _flags: QueryControlFlags,
203);
204
205/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginQueryIndexedEXT.html>
206pub type PFN_vkCmdBeginQueryIndexedEXT = unsafe extern "system" fn(
207    _command_buffer: CommandBuffer,
208    _query_pool: QueryPool,
209    _query: u32,
210    _flags: QueryControlFlags,
211    _index: u32,
212);
213
214/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginRenderPass.html>
215pub type PFN_vkCmdBeginRenderPass = unsafe extern "system" fn(
216    _command_buffer: CommandBuffer,
217    _render_pass_begin: *const RenderPassBeginInfo,
218    _contents: SubpassContents,
219);
220
221/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginRenderPass2.html>
222pub type PFN_vkCmdBeginRenderPass2 = unsafe extern "system" fn(
223    _command_buffer: CommandBuffer,
224    _render_pass_begin: *const RenderPassBeginInfo,
225    _subpass_begin_info: *const SubpassBeginInfo,
226);
227
228/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginRenderPass2KHR.html>
229pub type PFN_vkCmdBeginRenderPass2KHR = PFN_vkCmdBeginRenderPass2;
230
231/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginRendering.html>
232pub type PFN_vkCmdBeginRendering = unsafe extern "system" fn(
233    _command_buffer: CommandBuffer,
234    _rendering_info: *const RenderingInfo,
235);
236
237/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginRenderingKHR.html>
238pub type PFN_vkCmdBeginRenderingKHR = PFN_vkCmdBeginRendering;
239
240/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginTransformFeedbackEXT.html>
241pub type PFN_vkCmdBeginTransformFeedbackEXT = unsafe extern "system" fn(
242    _command_buffer: CommandBuffer,
243    _first_counter_buffer: u32,
244    _counter_buffer_count: u32,
245    _counter_buffers: *const Buffer,
246    _counter_buffer_offsets: *const DeviceSize,
247);
248
249/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBeginVideoCodingKHR.html>
250pub type PFN_vkCmdBeginVideoCodingKHR = unsafe extern "system" fn(
251    _command_buffer: CommandBuffer,
252    _begin_info: *const VideoBeginCodingInfoKHR,
253);
254
255/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorBufferEmbeddedSamplers2EXT.html>
256pub type PFN_vkCmdBindDescriptorBufferEmbeddedSamplers2EXT = unsafe extern "system" fn (_command_buffer: CommandBuffer, _bind_descriptor_buffer_embedded_samplers_info: *const BindDescriptorBufferEmbeddedSamplersInfoEXT);
257
258/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorBufferEmbeddedSamplersEXT.html>
259pub type PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT = unsafe extern "system" fn(
260    _command_buffer: CommandBuffer,
261    _pipeline_bind_point: PipelineBindPoint,
262    _layout: PipelineLayout,
263    _set: u32,
264);
265
266/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorBuffersEXT.html>
267pub type PFN_vkCmdBindDescriptorBuffersEXT = unsafe extern "system" fn(
268    _command_buffer: CommandBuffer,
269    _buffer_count: u32,
270    _binding_infos: *const DescriptorBufferBindingInfoEXT,
271);
272
273/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorSets.html>
274pub type PFN_vkCmdBindDescriptorSets = unsafe extern "system" fn(
275    _command_buffer: CommandBuffer,
276    _pipeline_bind_point: PipelineBindPoint,
277    _layout: PipelineLayout,
278    _first_set: u32,
279    _descriptor_set_count: u32,
280    _descriptor_sets: *const DescriptorSet,
281    _dynamic_offset_count: u32,
282    _dynamic_offsets: *const u32,
283);
284
285/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorSets2.html>
286pub type PFN_vkCmdBindDescriptorSets2 = unsafe extern "system" fn(
287    _command_buffer: CommandBuffer,
288    _bind_descriptor_sets_info: *const BindDescriptorSetsInfo,
289);
290
291/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindDescriptorSets2KHR.html>
292pub type PFN_vkCmdBindDescriptorSets2KHR = PFN_vkCmdBindDescriptorSets2;
293
294/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindIndexBuffer.html>
295pub type PFN_vkCmdBindIndexBuffer = unsafe extern "system" fn(
296    _command_buffer: CommandBuffer,
297    _buffer: Buffer,
298    _offset: DeviceSize,
299    _index_type: IndexType,
300);
301
302/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindIndexBuffer2.html>
303pub type PFN_vkCmdBindIndexBuffer2 = unsafe extern "system" fn(
304    _command_buffer: CommandBuffer,
305    _buffer: Buffer,
306    _offset: DeviceSize,
307    _size: DeviceSize,
308    _index_type: IndexType,
309);
310
311/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindIndexBuffer2KHR.html>
312pub type PFN_vkCmdBindIndexBuffer2KHR = PFN_vkCmdBindIndexBuffer2;
313
314/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindInvocationMaskHUAWEI.html>
315pub type PFN_vkCmdBindInvocationMaskHUAWEI = unsafe extern "system" fn(
316    _command_buffer: CommandBuffer,
317    _image_view: ImageView,
318    _image_layout: ImageLayout,
319);
320
321/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindPipeline.html>
322pub type PFN_vkCmdBindPipeline = unsafe extern "system" fn(
323    _command_buffer: CommandBuffer,
324    _pipeline_bind_point: PipelineBindPoint,
325    _pipeline: Pipeline,
326);
327
328/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindPipelineShaderGroupNV.html>
329pub type PFN_vkCmdBindPipelineShaderGroupNV = unsafe extern "system" fn(
330    _command_buffer: CommandBuffer,
331    _pipeline_bind_point: PipelineBindPoint,
332    _pipeline: Pipeline,
333    _group_index: u32,
334);
335
336/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindShadersEXT.html>
337pub type PFN_vkCmdBindShadersEXT = unsafe extern "system" fn(
338    _command_buffer: CommandBuffer,
339    _stage_count: u32,
340    _stages: *const ShaderStageFlags,
341    _shaders: *const ShaderEXT,
342);
343
344/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindShadingRateImageNV.html>
345pub type PFN_vkCmdBindShadingRateImageNV = unsafe extern "system" fn(
346    _command_buffer: CommandBuffer,
347    _image_view: ImageView,
348    _image_layout: ImageLayout,
349);
350
351/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindTransformFeedbackBuffersEXT.html>
352pub type PFN_vkCmdBindTransformFeedbackBuffersEXT = unsafe extern "system" fn(
353    _command_buffer: CommandBuffer,
354    _first_binding: u32,
355    _binding_count: u32,
356    _buffers: *const Buffer,
357    _offsets: *const DeviceSize,
358    _sizes: *const DeviceSize,
359);
360
361/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindVertexBuffers.html>
362pub type PFN_vkCmdBindVertexBuffers = unsafe extern "system" fn(
363    _command_buffer: CommandBuffer,
364    _first_binding: u32,
365    _binding_count: u32,
366    _buffers: *const Buffer,
367    _offsets: *const DeviceSize,
368);
369
370/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindVertexBuffers2.html>
371pub type PFN_vkCmdBindVertexBuffers2 = unsafe extern "system" fn(
372    _command_buffer: CommandBuffer,
373    _first_binding: u32,
374    _binding_count: u32,
375    _buffers: *const Buffer,
376    _offsets: *const DeviceSize,
377    _sizes: *const DeviceSize,
378    _strides: *const DeviceSize,
379);
380
381/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBindVertexBuffers2EXT.html>
382pub type PFN_vkCmdBindVertexBuffers2EXT = PFN_vkCmdBindVertexBuffers2;
383
384/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBlitImage.html>
385pub type PFN_vkCmdBlitImage = unsafe extern "system" fn(
386    _command_buffer: CommandBuffer,
387    _src_image: Image,
388    _src_image_layout: ImageLayout,
389    _dst_image: Image,
390    _dst_image_layout: ImageLayout,
391    _region_count: u32,
392    _regions: *const ImageBlit,
393    _filter: Filter,
394);
395
396/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBlitImage2.html>
397pub type PFN_vkCmdBlitImage2 = unsafe extern "system" fn(
398    _command_buffer: CommandBuffer,
399    _blit_image_info: *const BlitImageInfo2,
400);
401
402/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBlitImage2KHR.html>
403pub type PFN_vkCmdBlitImage2KHR = PFN_vkCmdBlitImage2;
404
405/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildAccelerationStructureNV.html>
406pub type PFN_vkCmdBuildAccelerationStructureNV = unsafe extern "system" fn(
407    _command_buffer: CommandBuffer,
408    _info: *const AccelerationStructureInfoNV,
409    _instance_data: Buffer,
410    _instance_offset: DeviceSize,
411    _update: Bool32,
412    _dst: AccelerationStructureNV,
413    _src: AccelerationStructureNV,
414    _scratch: Buffer,
415    _scratch_offset: DeviceSize,
416);
417
418/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildAccelerationStructuresIndirectKHR.html>
419pub type PFN_vkCmdBuildAccelerationStructuresIndirectKHR = unsafe extern "system" fn(
420    _command_buffer: CommandBuffer,
421    _info_count: u32,
422    _infos: *const AccelerationStructureBuildGeometryInfoKHR,
423    _indirect_device_addresses: *const DeviceAddress,
424    _indirect_strides: *const u32,
425    _max_primitive_counts: *const *const u32,
426);
427
428/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildAccelerationStructuresKHR.html>
429pub type PFN_vkCmdBuildAccelerationStructuresKHR = unsafe extern "system" fn(
430    _command_buffer: CommandBuffer,
431    _info_count: u32,
432    _infos: *const AccelerationStructureBuildGeometryInfoKHR,
433    _build_range_infos: *const *const AccelerationStructureBuildRangeInfoKHR,
434);
435
436/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildClusterAccelerationStructureIndirectNV.html>
437pub type PFN_vkCmdBuildClusterAccelerationStructureIndirectNV = unsafe extern "system" fn(
438    _command_buffer: CommandBuffer,
439    _command_infos: *const ClusterAccelerationStructureCommandsInfoNV,
440);
441
442/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildMicromapsEXT.html>
443pub type PFN_vkCmdBuildMicromapsEXT = unsafe extern "system" fn(
444    _command_buffer: CommandBuffer,
445    _info_count: u32,
446    _infos: *const MicromapBuildInfoEXT,
447);
448
449/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdBuildPartitionedAccelerationStructuresNV.html>
450pub type PFN_vkCmdBuildPartitionedAccelerationStructuresNV = unsafe extern "system" fn(
451    _command_buffer: CommandBuffer,
452    _build_info: *const BuildPartitionedAccelerationStructureInfoNV,
453);
454
455/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdClearAttachments.html>
456pub type PFN_vkCmdClearAttachments = unsafe extern "system" fn(
457    _command_buffer: CommandBuffer,
458    _attachment_count: u32,
459    _attachments: *const ClearAttachment,
460    _rect_count: u32,
461    _rects: *const ClearRect,
462);
463
464/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdClearColorImage.html>
465pub type PFN_vkCmdClearColorImage = unsafe extern "system" fn(
466    _command_buffer: CommandBuffer,
467    _image: Image,
468    _image_layout: ImageLayout,
469    _color: *const ClearColorValue,
470    _range_count: u32,
471    _ranges: *const ImageSubresourceRange,
472);
473
474/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdClearDepthStencilImage.html>
475pub type PFN_vkCmdClearDepthStencilImage = unsafe extern "system" fn(
476    _command_buffer: CommandBuffer,
477    _image: Image,
478    _image_layout: ImageLayout,
479    _depth_stencil: *const ClearDepthStencilValue,
480    _range_count: u32,
481    _ranges: *const ImageSubresourceRange,
482);
483
484/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdControlVideoCodingKHR.html>
485pub type PFN_vkCmdControlVideoCodingKHR = unsafe extern "system" fn(
486    _command_buffer: CommandBuffer,
487    _coding_control_info: *const VideoCodingControlInfoKHR,
488);
489
490/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdConvertCooperativeVectorMatrixNV.html>
491pub type PFN_vkCmdConvertCooperativeVectorMatrixNV = unsafe extern "system" fn(
492    _command_buffer: CommandBuffer,
493    _info_count: u32,
494    _infos: *const ConvertCooperativeVectorMatrixInfoNV,
495);
496
497/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyAccelerationStructureKHR.html>
498pub type PFN_vkCmdCopyAccelerationStructureKHR = unsafe extern "system" fn(
499    _command_buffer: CommandBuffer,
500    _info: *const CopyAccelerationStructureInfoKHR,
501);
502
503/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyAccelerationStructureNV.html>
504pub type PFN_vkCmdCopyAccelerationStructureNV = unsafe extern "system" fn(
505    _command_buffer: CommandBuffer,
506    _dst: AccelerationStructureNV,
507    _src: AccelerationStructureNV,
508    _mode: CopyAccelerationStructureModeKHR,
509);
510
511/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyAccelerationStructureToMemoryKHR.html>
512pub type PFN_vkCmdCopyAccelerationStructureToMemoryKHR = unsafe extern "system" fn(
513    _command_buffer: CommandBuffer,
514    _info: *const CopyAccelerationStructureToMemoryInfoKHR,
515);
516
517/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBuffer.html>
518pub type PFN_vkCmdCopyBuffer = unsafe extern "system" fn(
519    _command_buffer: CommandBuffer,
520    _src_buffer: Buffer,
521    _dst_buffer: Buffer,
522    _region_count: u32,
523    _regions: *const BufferCopy,
524);
525
526/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBuffer2.html>
527pub type PFN_vkCmdCopyBuffer2 = unsafe extern "system" fn(
528    _command_buffer: CommandBuffer,
529    _copy_buffer_info: *const CopyBufferInfo2,
530);
531
532/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBuffer2KHR.html>
533pub type PFN_vkCmdCopyBuffer2KHR = PFN_vkCmdCopyBuffer2;
534
535/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBufferToImage.html>
536pub type PFN_vkCmdCopyBufferToImage = unsafe extern "system" fn(
537    _command_buffer: CommandBuffer,
538    _src_buffer: Buffer,
539    _dst_image: Image,
540    _dst_image_layout: ImageLayout,
541    _region_count: u32,
542    _regions: *const BufferImageCopy,
543);
544
545/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBufferToImage2.html>
546pub type PFN_vkCmdCopyBufferToImage2 = unsafe extern "system" fn(
547    _command_buffer: CommandBuffer,
548    _copy_buffer_to_image_info: *const CopyBufferToImageInfo2,
549);
550
551/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyBufferToImage2KHR.html>
552pub type PFN_vkCmdCopyBufferToImage2KHR = PFN_vkCmdCopyBufferToImage2;
553
554/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImage.html>
555pub type PFN_vkCmdCopyImage = unsafe extern "system" fn(
556    _command_buffer: CommandBuffer,
557    _src_image: Image,
558    _src_image_layout: ImageLayout,
559    _dst_image: Image,
560    _dst_image_layout: ImageLayout,
561    _region_count: u32,
562    _regions: *const ImageCopy,
563);
564
565/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImage2.html>
566pub type PFN_vkCmdCopyImage2 = unsafe extern "system" fn(
567    _command_buffer: CommandBuffer,
568    _copy_image_info: *const CopyImageInfo2,
569);
570
571/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImage2KHR.html>
572pub type PFN_vkCmdCopyImage2KHR = PFN_vkCmdCopyImage2;
573
574/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImageToBuffer.html>
575pub type PFN_vkCmdCopyImageToBuffer = unsafe extern "system" fn(
576    _command_buffer: CommandBuffer,
577    _src_image: Image,
578    _src_image_layout: ImageLayout,
579    _dst_buffer: Buffer,
580    _region_count: u32,
581    _regions: *const BufferImageCopy,
582);
583
584/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImageToBuffer2.html>
585pub type PFN_vkCmdCopyImageToBuffer2 = unsafe extern "system" fn(
586    _command_buffer: CommandBuffer,
587    _copy_image_to_buffer_info: *const CopyImageToBufferInfo2,
588);
589
590/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyImageToBuffer2KHR.html>
591pub type PFN_vkCmdCopyImageToBuffer2KHR = PFN_vkCmdCopyImageToBuffer2;
592
593/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMemoryIndirectNV.html>
594pub type PFN_vkCmdCopyMemoryIndirectNV = unsafe extern "system" fn(
595    _command_buffer: CommandBuffer,
596    _copy_buffer_address: DeviceAddress,
597    _copy_count: u32,
598    _stride: u32,
599);
600
601/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMemoryToAccelerationStructureKHR.html>
602pub type PFN_vkCmdCopyMemoryToAccelerationStructureKHR = unsafe extern "system" fn(
603    _command_buffer: CommandBuffer,
604    _info: *const CopyMemoryToAccelerationStructureInfoKHR,
605);
606
607/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMemoryToImageIndirectNV.html>
608pub type PFN_vkCmdCopyMemoryToImageIndirectNV = unsafe extern "system" fn(
609    _command_buffer: CommandBuffer,
610    _copy_buffer_address: DeviceAddress,
611    _copy_count: u32,
612    _stride: u32,
613    _dst_image: Image,
614    _dst_image_layout: ImageLayout,
615    _image_subresources: *const ImageSubresourceLayers,
616);
617
618/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMemoryToMicromapEXT.html>
619pub type PFN_vkCmdCopyMemoryToMicromapEXT = unsafe extern "system" fn(
620    _command_buffer: CommandBuffer,
621    _info: *const CopyMemoryToMicromapInfoEXT,
622);
623
624/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMicromapEXT.html>
625pub type PFN_vkCmdCopyMicromapEXT =
626    unsafe extern "system" fn(_command_buffer: CommandBuffer, _info: *const CopyMicromapInfoEXT);
627
628/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyMicromapToMemoryEXT.html>
629pub type PFN_vkCmdCopyMicromapToMemoryEXT = unsafe extern "system" fn(
630    _command_buffer: CommandBuffer,
631    _info: *const CopyMicromapToMemoryInfoEXT,
632);
633
634/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCopyQueryPoolResults.html>
635pub type PFN_vkCmdCopyQueryPoolResults = unsafe extern "system" fn(
636    _command_buffer: CommandBuffer,
637    _query_pool: QueryPool,
638    _first_query: u32,
639    _query_count: u32,
640    _dst_buffer: Buffer,
641    _dst_offset: DeviceSize,
642    _stride: DeviceSize,
643    _flags: QueryResultFlags,
644);
645
646/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCuLaunchKernelNVX.html>
647pub type PFN_vkCmdCuLaunchKernelNVX =
648    unsafe extern "system" fn(_command_buffer: CommandBuffer, _launch_info: *const CuLaunchInfoNVX);
649
650/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdCudaLaunchKernelNV.html>
651pub type PFN_vkCmdCudaLaunchKernelNV = unsafe extern "system" fn(
652    _command_buffer: CommandBuffer,
653    _launch_info: *const CudaLaunchInfoNV,
654);
655
656/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDebugMarkerBeginEXT.html>
657pub type PFN_vkCmdDebugMarkerBeginEXT = unsafe extern "system" fn(
658    _command_buffer: CommandBuffer,
659    _marker_info: *const DebugMarkerMarkerInfoEXT,
660);
661
662/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDebugMarkerEndEXT.html>
663pub type PFN_vkCmdDebugMarkerEndEXT = unsafe extern "system" fn(_command_buffer: CommandBuffer);
664
665/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDebugMarkerInsertEXT.html>
666pub type PFN_vkCmdDebugMarkerInsertEXT = unsafe extern "system" fn(
667    _command_buffer: CommandBuffer,
668    _marker_info: *const DebugMarkerMarkerInfoEXT,
669);
670
671/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDecodeVideoKHR.html>
672pub type PFN_vkCmdDecodeVideoKHR = unsafe extern "system" fn(
673    _command_buffer: CommandBuffer,
674    _decode_info: *const VideoDecodeInfoKHR,
675);
676
677/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDecompressMemoryIndirectCountNV.html>
678pub type PFN_vkCmdDecompressMemoryIndirectCountNV = unsafe extern "system" fn(
679    _command_buffer: CommandBuffer,
680    _indirect_commands_address: DeviceAddress,
681    _indirect_commands_count_address: DeviceAddress,
682    _stride: u32,
683);
684
685/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDecompressMemoryNV.html>
686pub type PFN_vkCmdDecompressMemoryNV = unsafe extern "system" fn(
687    _command_buffer: CommandBuffer,
688    _decompress_region_count: u32,
689    _decompress_memory_regions: *const DecompressMemoryRegionNV,
690);
691
692/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatch.html>
693pub type PFN_vkCmdDispatch = unsafe extern "system" fn(
694    _command_buffer: CommandBuffer,
695    _group_count_x: u32,
696    _group_count_y: u32,
697    _group_count_z: u32,
698);
699
700/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchBase.html>
701pub type PFN_vkCmdDispatchBase = unsafe extern "system" fn(
702    _command_buffer: CommandBuffer,
703    _base_group_x: u32,
704    _base_group_y: u32,
705    _base_group_z: u32,
706    _group_count_x: u32,
707    _group_count_y: u32,
708    _group_count_z: u32,
709);
710
711/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchBaseKHR.html>
712pub type PFN_vkCmdDispatchBaseKHR = PFN_vkCmdDispatchBase;
713
714/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchGraphAMDX.html>
715pub type PFN_vkCmdDispatchGraphAMDX = unsafe extern "system" fn(
716    _command_buffer: CommandBuffer,
717    _scratch: DeviceAddress,
718    _scratch_size: DeviceSize,
719    _count_info: *const DispatchGraphCountInfoAMDX,
720);
721
722/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchGraphIndirectAMDX.html>
723pub type PFN_vkCmdDispatchGraphIndirectAMDX = unsafe extern "system" fn(
724    _command_buffer: CommandBuffer,
725    _scratch: DeviceAddress,
726    _scratch_size: DeviceSize,
727    _count_info: *const DispatchGraphCountInfoAMDX,
728);
729
730/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchGraphIndirectCountAMDX.html>
731pub type PFN_vkCmdDispatchGraphIndirectCountAMDX = unsafe extern "system" fn(
732    _command_buffer: CommandBuffer,
733    _scratch: DeviceAddress,
734    _scratch_size: DeviceSize,
735    _count_info: DeviceAddress,
736);
737
738/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDispatchIndirect.html>
739pub type PFN_vkCmdDispatchIndirect =
740    unsafe extern "system" fn(_command_buffer: CommandBuffer, _buffer: Buffer, _offset: DeviceSize);
741
742/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDraw.html>
743pub type PFN_vkCmdDraw = unsafe extern "system" fn(
744    _command_buffer: CommandBuffer,
745    _vertex_count: u32,
746    _instance_count: u32,
747    _first_vertex: u32,
748    _first_instance: u32,
749);
750
751/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawClusterHUAWEI.html>
752pub type PFN_vkCmdDrawClusterHUAWEI = unsafe extern "system" fn(
753    _command_buffer: CommandBuffer,
754    _group_count_x: u32,
755    _group_count_y: u32,
756    _group_count_z: u32,
757);
758
759/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawClusterIndirectHUAWEI.html>
760pub type PFN_vkCmdDrawClusterIndirectHUAWEI =
761    unsafe extern "system" fn(_command_buffer: CommandBuffer, _buffer: Buffer, _offset: DeviceSize);
762
763/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndexed.html>
764pub type PFN_vkCmdDrawIndexed = unsafe extern "system" fn(
765    _command_buffer: CommandBuffer,
766    _index_count: u32,
767    _instance_count: u32,
768    _first_index: u32,
769    _vertex_offset: i32,
770    _first_instance: u32,
771);
772
773/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndexedIndirect.html>
774pub type PFN_vkCmdDrawIndexedIndirect = unsafe extern "system" fn(
775    _command_buffer: CommandBuffer,
776    _buffer: Buffer,
777    _offset: DeviceSize,
778    _draw_count: u32,
779    _stride: u32,
780);
781
782/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndexedIndirectCount.html>
783pub type PFN_vkCmdDrawIndexedIndirectCount = unsafe extern "system" fn(
784    _command_buffer: CommandBuffer,
785    _buffer: Buffer,
786    _offset: DeviceSize,
787    _count_buffer: Buffer,
788    _count_buffer_offset: DeviceSize,
789    _max_draw_count: u32,
790    _stride: u32,
791);
792
793/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndexedIndirectCountAMD.html>
794pub type PFN_vkCmdDrawIndexedIndirectCountAMD = PFN_vkCmdDrawIndexedIndirectCount;
795
796/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndexedIndirectCountKHR.html>
797pub type PFN_vkCmdDrawIndexedIndirectCountKHR = PFN_vkCmdDrawIndexedIndirectCount;
798
799/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndirect.html>
800pub type PFN_vkCmdDrawIndirect = unsafe extern "system" fn(
801    _command_buffer: CommandBuffer,
802    _buffer: Buffer,
803    _offset: DeviceSize,
804    _draw_count: u32,
805    _stride: u32,
806);
807
808/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndirectByteCountEXT.html>
809pub type PFN_vkCmdDrawIndirectByteCountEXT = unsafe extern "system" fn(
810    _command_buffer: CommandBuffer,
811    _instance_count: u32,
812    _first_instance: u32,
813    _counter_buffer: Buffer,
814    _counter_buffer_offset: DeviceSize,
815    _counter_offset: u32,
816    _vertex_stride: u32,
817);
818
819/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndirectCount.html>
820pub type PFN_vkCmdDrawIndirectCount = unsafe extern "system" fn(
821    _command_buffer: CommandBuffer,
822    _buffer: Buffer,
823    _offset: DeviceSize,
824    _count_buffer: Buffer,
825    _count_buffer_offset: DeviceSize,
826    _max_draw_count: u32,
827    _stride: u32,
828);
829
830/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndirectCountAMD.html>
831pub type PFN_vkCmdDrawIndirectCountAMD = PFN_vkCmdDrawIndirectCount;
832
833/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawIndirectCountKHR.html>
834pub type PFN_vkCmdDrawIndirectCountKHR = PFN_vkCmdDrawIndirectCount;
835
836/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksEXT.html>
837pub type PFN_vkCmdDrawMeshTasksEXT = unsafe extern "system" fn(
838    _command_buffer: CommandBuffer,
839    _group_count_x: u32,
840    _group_count_y: u32,
841    _group_count_z: u32,
842);
843
844/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksIndirectCountEXT.html>
845pub type PFN_vkCmdDrawMeshTasksIndirectCountEXT = unsafe extern "system" fn(
846    _command_buffer: CommandBuffer,
847    _buffer: Buffer,
848    _offset: DeviceSize,
849    _count_buffer: Buffer,
850    _count_buffer_offset: DeviceSize,
851    _max_draw_count: u32,
852    _stride: u32,
853);
854
855/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksIndirectCountNV.html>
856pub type PFN_vkCmdDrawMeshTasksIndirectCountNV = unsafe extern "system" fn(
857    _command_buffer: CommandBuffer,
858    _buffer: Buffer,
859    _offset: DeviceSize,
860    _count_buffer: Buffer,
861    _count_buffer_offset: DeviceSize,
862    _max_draw_count: u32,
863    _stride: u32,
864);
865
866/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksIndirectEXT.html>
867pub type PFN_vkCmdDrawMeshTasksIndirectEXT = unsafe extern "system" fn(
868    _command_buffer: CommandBuffer,
869    _buffer: Buffer,
870    _offset: DeviceSize,
871    _draw_count: u32,
872    _stride: u32,
873);
874
875/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksIndirectNV.html>
876pub type PFN_vkCmdDrawMeshTasksIndirectNV = unsafe extern "system" fn(
877    _command_buffer: CommandBuffer,
878    _buffer: Buffer,
879    _offset: DeviceSize,
880    _draw_count: u32,
881    _stride: u32,
882);
883
884/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMeshTasksNV.html>
885pub type PFN_vkCmdDrawMeshTasksNV =
886    unsafe extern "system" fn(_command_buffer: CommandBuffer, _task_count: u32, _first_task: u32);
887
888/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMultiEXT.html>
889pub type PFN_vkCmdDrawMultiEXT = unsafe extern "system" fn(
890    _command_buffer: CommandBuffer,
891    _draw_count: u32,
892    _vertex_info: *const MultiDrawInfoEXT,
893    _instance_count: u32,
894    _first_instance: u32,
895    _stride: u32,
896);
897
898/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdDrawMultiIndexedEXT.html>
899pub type PFN_vkCmdDrawMultiIndexedEXT = unsafe extern "system" fn(
900    _command_buffer: CommandBuffer,
901    _draw_count: u32,
902    _index_info: *const MultiDrawIndexedInfoEXT,
903    _instance_count: u32,
904    _first_instance: u32,
905    _stride: u32,
906    _vertex_offset: *const i32,
907);
908
909/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEncodeVideoKHR.html>
910pub type PFN_vkCmdEncodeVideoKHR = unsafe extern "system" fn(
911    _command_buffer: CommandBuffer,
912    _encode_info: *const VideoEncodeInfoKHR,
913);
914
915/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndConditionalRenderingEXT.html>
916pub type PFN_vkCmdEndConditionalRenderingEXT =
917    unsafe extern "system" fn(_command_buffer: CommandBuffer);
918
919/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndDebugUtilsLabelEXT.html>
920pub type PFN_vkCmdEndDebugUtilsLabelEXT = unsafe extern "system" fn(_command_buffer: CommandBuffer);
921
922/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndQuery.html>
923pub type PFN_vkCmdEndQuery =
924    unsafe extern "system" fn(_command_buffer: CommandBuffer, _query_pool: QueryPool, _query: u32);
925
926/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndQueryIndexedEXT.html>
927pub type PFN_vkCmdEndQueryIndexedEXT = unsafe extern "system" fn(
928    _command_buffer: CommandBuffer,
929    _query_pool: QueryPool,
930    _query: u32,
931    _index: u32,
932);
933
934/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndRenderPass.html>
935pub type PFN_vkCmdEndRenderPass = unsafe extern "system" fn(_command_buffer: CommandBuffer);
936
937/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndRenderPass2.html>
938pub type PFN_vkCmdEndRenderPass2 = unsafe extern "system" fn(
939    _command_buffer: CommandBuffer,
940    _subpass_end_info: *const SubpassEndInfo,
941);
942
943/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndRenderPass2KHR.html>
944pub type PFN_vkCmdEndRenderPass2KHR = PFN_vkCmdEndRenderPass2;
945
946/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndRendering.html>
947pub type PFN_vkCmdEndRendering = unsafe extern "system" fn(_command_buffer: CommandBuffer);
948
949/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndRenderingKHR.html>
950pub type PFN_vkCmdEndRenderingKHR = PFN_vkCmdEndRendering;
951
952/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndTransformFeedbackEXT.html>
953pub type PFN_vkCmdEndTransformFeedbackEXT = unsafe extern "system" fn(
954    _command_buffer: CommandBuffer,
955    _first_counter_buffer: u32,
956    _counter_buffer_count: u32,
957    _counter_buffers: *const Buffer,
958    _counter_buffer_offsets: *const DeviceSize,
959);
960
961/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdEndVideoCodingKHR.html>
962pub type PFN_vkCmdEndVideoCodingKHR = unsafe extern "system" fn(
963    _command_buffer: CommandBuffer,
964    _end_coding_info: *const VideoEndCodingInfoKHR,
965);
966
967/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdExecuteCommands.html>
968pub type PFN_vkCmdExecuteCommands = unsafe extern "system" fn(
969    _command_buffer: CommandBuffer,
970    _command_buffer_count: u32,
971    _command_buffers: *const CommandBuffer,
972);
973
974/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdExecuteGeneratedCommandsEXT.html>
975pub type PFN_vkCmdExecuteGeneratedCommandsEXT = unsafe extern "system" fn(
976    _command_buffer: CommandBuffer,
977    _is_preprocessed: Bool32,
978    _generated_commands_info: *const GeneratedCommandsInfoEXT,
979);
980
981/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdExecuteGeneratedCommandsNV.html>
982pub type PFN_vkCmdExecuteGeneratedCommandsNV = unsafe extern "system" fn(
983    _command_buffer: CommandBuffer,
984    _is_preprocessed: Bool32,
985    _generated_commands_info: *const GeneratedCommandsInfoNV,
986);
987
988/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdFillBuffer.html>
989pub type PFN_vkCmdFillBuffer = unsafe extern "system" fn(
990    _command_buffer: CommandBuffer,
991    _dst_buffer: Buffer,
992    _dst_offset: DeviceSize,
993    _size: DeviceSize,
994    _data: u32,
995);
996
997/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdInitializeGraphScratchMemoryAMDX.html>
998pub type PFN_vkCmdInitializeGraphScratchMemoryAMDX = unsafe extern "system" fn(
999    _command_buffer: CommandBuffer,
1000    _execution_graph: Pipeline,
1001    _scratch: DeviceAddress,
1002    _scratch_size: DeviceSize,
1003);
1004
1005/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdInsertDebugUtilsLabelEXT.html>
1006pub type PFN_vkCmdInsertDebugUtilsLabelEXT = unsafe extern "system" fn(
1007    _command_buffer: CommandBuffer,
1008    _label_info: *const DebugUtilsLabelEXT,
1009);
1010
1011/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdNextSubpass.html>
1012pub type PFN_vkCmdNextSubpass =
1013    unsafe extern "system" fn(_command_buffer: CommandBuffer, _contents: SubpassContents);
1014
1015/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdNextSubpass2.html>
1016pub type PFN_vkCmdNextSubpass2 = unsafe extern "system" fn(
1017    _command_buffer: CommandBuffer,
1018    _subpass_begin_info: *const SubpassBeginInfo,
1019    _subpass_end_info: *const SubpassEndInfo,
1020);
1021
1022/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdNextSubpass2KHR.html>
1023pub type PFN_vkCmdNextSubpass2KHR = PFN_vkCmdNextSubpass2;
1024
1025/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdOpticalFlowExecuteNV.html>
1026pub type PFN_vkCmdOpticalFlowExecuteNV = unsafe extern "system" fn(
1027    _command_buffer: CommandBuffer,
1028    _session: OpticalFlowSessionNV,
1029    _execute_info: *const OpticalFlowExecuteInfoNV,
1030);
1031
1032/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPipelineBarrier.html>
1033pub type PFN_vkCmdPipelineBarrier = unsafe extern "system" fn(
1034    _command_buffer: CommandBuffer,
1035    _src_stage_mask: PipelineStageFlags,
1036    _dst_stage_mask: PipelineStageFlags,
1037    _dependency_flags: DependencyFlags,
1038    _memory_barrier_count: u32,
1039    _memory_barriers: *const MemoryBarrier,
1040    _buffer_memory_barrier_count: u32,
1041    _buffer_memory_barriers: *const BufferMemoryBarrier,
1042    _image_memory_barrier_count: u32,
1043    _image_memory_barriers: *const ImageMemoryBarrier,
1044);
1045
1046/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPipelineBarrier2.html>
1047pub type PFN_vkCmdPipelineBarrier2 = unsafe extern "system" fn(
1048    _command_buffer: CommandBuffer,
1049    _dependency_info: *const DependencyInfo,
1050);
1051
1052/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPipelineBarrier2KHR.html>
1053pub type PFN_vkCmdPipelineBarrier2KHR = PFN_vkCmdPipelineBarrier2;
1054
1055/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPreprocessGeneratedCommandsEXT.html>
1056pub type PFN_vkCmdPreprocessGeneratedCommandsEXT = unsafe extern "system" fn(
1057    _command_buffer: CommandBuffer,
1058    _generated_commands_info: *const GeneratedCommandsInfoEXT,
1059    _state_command_buffer: CommandBuffer,
1060);
1061
1062/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPreprocessGeneratedCommandsNV.html>
1063pub type PFN_vkCmdPreprocessGeneratedCommandsNV = unsafe extern "system" fn(
1064    _command_buffer: CommandBuffer,
1065    _generated_commands_info: *const GeneratedCommandsInfoNV,
1066);
1067
1068/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushConstants.html>
1069pub type PFN_vkCmdPushConstants = unsafe extern "system" fn(
1070    _command_buffer: CommandBuffer,
1071    _layout: PipelineLayout,
1072    _stage_flags: ShaderStageFlags,
1073    _offset: u32,
1074    _size: u32,
1075    _values: *const c_void,
1076);
1077
1078/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushConstants2.html>
1079pub type PFN_vkCmdPushConstants2 = unsafe extern "system" fn(
1080    _command_buffer: CommandBuffer,
1081    _push_constants_info: *const PushConstantsInfo,
1082);
1083
1084/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushConstants2KHR.html>
1085pub type PFN_vkCmdPushConstants2KHR = PFN_vkCmdPushConstants2;
1086
1087/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSet.html>
1088pub type PFN_vkCmdPushDescriptorSet = unsafe extern "system" fn(
1089    _command_buffer: CommandBuffer,
1090    _pipeline_bind_point: PipelineBindPoint,
1091    _layout: PipelineLayout,
1092    _set: u32,
1093    _descriptor_write_count: u32,
1094    _descriptor_writes: *const WriteDescriptorSet,
1095);
1096
1097/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSet2.html>
1098pub type PFN_vkCmdPushDescriptorSet2 = unsafe extern "system" fn(
1099    _command_buffer: CommandBuffer,
1100    _push_descriptor_set_info: *const PushDescriptorSetInfo,
1101);
1102
1103/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSet2KHR.html>
1104pub type PFN_vkCmdPushDescriptorSet2KHR = PFN_vkCmdPushDescriptorSet2;
1105
1106/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSetKHR.html>
1107pub type PFN_vkCmdPushDescriptorSetKHR = PFN_vkCmdPushDescriptorSet;
1108
1109/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSetWithTemplate.html>
1110pub type PFN_vkCmdPushDescriptorSetWithTemplate = unsafe extern "system" fn(
1111    _command_buffer: CommandBuffer,
1112    _descriptor_update_template: DescriptorUpdateTemplate,
1113    _layout: PipelineLayout,
1114    _set: u32,
1115    _data: *const c_void,
1116);
1117
1118/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSetWithTemplate2.html>
1119pub type PFN_vkCmdPushDescriptorSetWithTemplate2 = unsafe extern "system" fn(
1120    _command_buffer: CommandBuffer,
1121    _push_descriptor_set_with_template_info: *const PushDescriptorSetWithTemplateInfo,
1122);
1123
1124/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSetWithTemplate2KHR.html>
1125pub type PFN_vkCmdPushDescriptorSetWithTemplate2KHR = PFN_vkCmdPushDescriptorSetWithTemplate2;
1126
1127/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html>
1128pub type PFN_vkCmdPushDescriptorSetWithTemplateKHR = PFN_vkCmdPushDescriptorSetWithTemplate;
1129
1130/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdRefreshObjectsKHR.html>
1131pub type PFN_vkCmdRefreshObjectsKHR = unsafe extern "system" fn(
1132    _command_buffer: CommandBuffer,
1133    _refresh_objects: *const RefreshObjectListKHR,
1134);
1135
1136/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResetEvent.html>
1137pub type PFN_vkCmdResetEvent = unsafe extern "system" fn(
1138    _command_buffer: CommandBuffer,
1139    _event: Event,
1140    _stage_mask: PipelineStageFlags,
1141);
1142
1143/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResetEvent2.html>
1144pub type PFN_vkCmdResetEvent2 = unsafe extern "system" fn(
1145    _command_buffer: CommandBuffer,
1146    _event: Event,
1147    _stage_mask: PipelineStageFlags2,
1148);
1149
1150/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResetEvent2KHR.html>
1151pub type PFN_vkCmdResetEvent2KHR = PFN_vkCmdResetEvent2;
1152
1153/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResetQueryPool.html>
1154pub type PFN_vkCmdResetQueryPool = unsafe extern "system" fn(
1155    _command_buffer: CommandBuffer,
1156    _query_pool: QueryPool,
1157    _first_query: u32,
1158    _query_count: u32,
1159);
1160
1161/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResolveImage.html>
1162pub type PFN_vkCmdResolveImage = unsafe extern "system" fn(
1163    _command_buffer: CommandBuffer,
1164    _src_image: Image,
1165    _src_image_layout: ImageLayout,
1166    _dst_image: Image,
1167    _dst_image_layout: ImageLayout,
1168    _region_count: u32,
1169    _regions: *const ImageResolve,
1170);
1171
1172/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResolveImage2.html>
1173pub type PFN_vkCmdResolveImage2 = unsafe extern "system" fn(
1174    _command_buffer: CommandBuffer,
1175    _resolve_image_info: *const ResolveImageInfo2,
1176);
1177
1178/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdResolveImage2KHR.html>
1179pub type PFN_vkCmdResolveImage2KHR = PFN_vkCmdResolveImage2;
1180
1181/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetAlphaToCoverageEnableEXT.html>
1182pub type PFN_vkCmdSetAlphaToCoverageEnableEXT =
1183    unsafe extern "system" fn(_command_buffer: CommandBuffer, _alpha_to_coverage_enable: Bool32);
1184
1185/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetAlphaToOneEnableEXT.html>
1186pub type PFN_vkCmdSetAlphaToOneEnableEXT =
1187    unsafe extern "system" fn(_command_buffer: CommandBuffer, _alpha_to_one_enable: Bool32);
1188
1189/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetAttachmentFeedbackLoopEnableEXT.html>
1190pub type PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT =
1191    unsafe extern "system" fn(_command_buffer: CommandBuffer, _aspect_mask: ImageAspectFlags);
1192
1193/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetBlendConstants.html>
1194pub type PFN_vkCmdSetBlendConstants =
1195    unsafe extern "system" fn(_command_buffer: CommandBuffer, _blend_constants: *const f32);
1196
1197/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCheckpointNV.html>
1198pub type PFN_vkCmdSetCheckpointNV =
1199    unsafe extern "system" fn(_command_buffer: CommandBuffer, _checkpoint_marker: *const c_void);
1200
1201/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoarseSampleOrderNV.html>
1202pub type PFN_vkCmdSetCoarseSampleOrderNV = unsafe extern "system" fn(
1203    _command_buffer: CommandBuffer,
1204    _sample_order_type: CoarseSampleOrderTypeNV,
1205    _custom_sample_order_count: u32,
1206    _custom_sample_orders: *const CoarseSampleOrderCustomNV,
1207);
1208
1209/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetColorBlendAdvancedEXT.html>
1210pub type PFN_vkCmdSetColorBlendAdvancedEXT = unsafe extern "system" fn(
1211    _command_buffer: CommandBuffer,
1212    _first_attachment: u32,
1213    _attachment_count: u32,
1214    _color_blend_advanced: *const ColorBlendAdvancedEXT,
1215);
1216
1217/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetColorBlendEnableEXT.html>
1218pub type PFN_vkCmdSetColorBlendEnableEXT = unsafe extern "system" fn(
1219    _command_buffer: CommandBuffer,
1220    _first_attachment: u32,
1221    _attachment_count: u32,
1222    _color_blend_enables: *const Bool32,
1223);
1224
1225/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetColorBlendEquationEXT.html>
1226pub type PFN_vkCmdSetColorBlendEquationEXT = unsafe extern "system" fn(
1227    _command_buffer: CommandBuffer,
1228    _first_attachment: u32,
1229    _attachment_count: u32,
1230    _color_blend_equations: *const ColorBlendEquationEXT,
1231);
1232
1233/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetColorWriteEnableEXT.html>
1234pub type PFN_vkCmdSetColorWriteEnableEXT = unsafe extern "system" fn(
1235    _command_buffer: CommandBuffer,
1236    _attachment_count: u32,
1237    _color_write_enables: *const Bool32,
1238);
1239
1240/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetColorWriteMaskEXT.html>
1241pub type PFN_vkCmdSetColorWriteMaskEXT = unsafe extern "system" fn(
1242    _command_buffer: CommandBuffer,
1243    _first_attachment: u32,
1244    _attachment_count: u32,
1245    _color_write_masks: *const ColorComponentFlags,
1246);
1247
1248/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetConservativeRasterizationModeEXT.html>
1249pub type PFN_vkCmdSetConservativeRasterizationModeEXT = unsafe extern "system" fn(
1250    _command_buffer: CommandBuffer,
1251    _conservative_rasterization_mode: ConservativeRasterizationModeEXT,
1252);
1253
1254/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageModulationModeNV.html>
1255pub type PFN_vkCmdSetCoverageModulationModeNV = unsafe extern "system" fn(
1256    _command_buffer: CommandBuffer,
1257    _coverage_modulation_mode: CoverageModulationModeNV,
1258);
1259
1260/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageModulationTableEnableNV.html>
1261pub type PFN_vkCmdSetCoverageModulationTableEnableNV = unsafe extern "system" fn(
1262    _command_buffer: CommandBuffer,
1263    _coverage_modulation_table_enable: Bool32,
1264);
1265
1266/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageModulationTableNV.html>
1267pub type PFN_vkCmdSetCoverageModulationTableNV = unsafe extern "system" fn(
1268    _command_buffer: CommandBuffer,
1269    _coverage_modulation_table_count: u32,
1270    _coverage_modulation_table: *const f32,
1271);
1272
1273/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageReductionModeNV.html>
1274pub type PFN_vkCmdSetCoverageReductionModeNV = unsafe extern "system" fn(
1275    _command_buffer: CommandBuffer,
1276    _coverage_reduction_mode: CoverageReductionModeNV,
1277);
1278
1279/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageToColorEnableNV.html>
1280pub type PFN_vkCmdSetCoverageToColorEnableNV =
1281    unsafe extern "system" fn(_command_buffer: CommandBuffer, _coverage_to_color_enable: Bool32);
1282
1283/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCoverageToColorLocationNV.html>
1284pub type PFN_vkCmdSetCoverageToColorLocationNV =
1285    unsafe extern "system" fn(_command_buffer: CommandBuffer, _coverage_to_color_location: u32);
1286
1287/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCullMode.html>
1288pub type PFN_vkCmdSetCullMode =
1289    unsafe extern "system" fn(_command_buffer: CommandBuffer, _cull_mode: CullModeFlags);
1290
1291/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetCullModeEXT.html>
1292pub type PFN_vkCmdSetCullModeEXT = PFN_vkCmdSetCullMode;
1293
1294/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBias.html>
1295pub type PFN_vkCmdSetDepthBias = unsafe extern "system" fn(
1296    _command_buffer: CommandBuffer,
1297    _depth_bias_constant_factor: f32,
1298    _depth_bias_clamp: f32,
1299    _depth_bias_slope_factor: f32,
1300);
1301
1302/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBias2EXT.html>
1303pub type PFN_vkCmdSetDepthBias2EXT = unsafe extern "system" fn(
1304    _command_buffer: CommandBuffer,
1305    _depth_bias_info: *const DepthBiasInfoEXT,
1306);
1307
1308/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBiasEnable.html>
1309pub type PFN_vkCmdSetDepthBiasEnable =
1310    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_bias_enable: Bool32);
1311
1312/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBiasEnableEXT.html>
1313pub type PFN_vkCmdSetDepthBiasEnableEXT = PFN_vkCmdSetDepthBiasEnable;
1314
1315/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBounds.html>
1316pub type PFN_vkCmdSetDepthBounds = unsafe extern "system" fn(
1317    _command_buffer: CommandBuffer,
1318    _min_depth_bounds: f32,
1319    _max_depth_bounds: f32,
1320);
1321
1322/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBoundsTestEnable.html>
1323pub type PFN_vkCmdSetDepthBoundsTestEnable =
1324    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_bounds_test_enable: Bool32);
1325
1326/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthBoundsTestEnableEXT.html>
1327pub type PFN_vkCmdSetDepthBoundsTestEnableEXT = PFN_vkCmdSetDepthBoundsTestEnable;
1328
1329/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthClampEnableEXT.html>
1330pub type PFN_vkCmdSetDepthClampEnableEXT =
1331    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_clamp_enable: Bool32);
1332
1333/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthClampRangeEXT.html>
1334pub type PFN_vkCmdSetDepthClampRangeEXT = unsafe extern "system" fn(
1335    _command_buffer: CommandBuffer,
1336    _depth_clamp_mode: DepthClampModeEXT,
1337    _depth_clamp_range: *const DepthClampRangeEXT,
1338);
1339
1340/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthClipEnableEXT.html>
1341pub type PFN_vkCmdSetDepthClipEnableEXT =
1342    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_clip_enable: Bool32);
1343
1344/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthClipNegativeOneToOneEXT.html>
1345pub type PFN_vkCmdSetDepthClipNegativeOneToOneEXT =
1346    unsafe extern "system" fn(_command_buffer: CommandBuffer, _negative_one_to_one: Bool32);
1347
1348/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthCompareOp.html>
1349pub type PFN_vkCmdSetDepthCompareOp =
1350    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_compare_op: CompareOp);
1351
1352/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthCompareOpEXT.html>
1353pub type PFN_vkCmdSetDepthCompareOpEXT = PFN_vkCmdSetDepthCompareOp;
1354
1355/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthTestEnable.html>
1356pub type PFN_vkCmdSetDepthTestEnable =
1357    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_test_enable: Bool32);
1358
1359/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthTestEnableEXT.html>
1360pub type PFN_vkCmdSetDepthTestEnableEXT = PFN_vkCmdSetDepthTestEnable;
1361
1362/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthWriteEnable.html>
1363pub type PFN_vkCmdSetDepthWriteEnable =
1364    unsafe extern "system" fn(_command_buffer: CommandBuffer, _depth_write_enable: Bool32);
1365
1366/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDepthWriteEnableEXT.html>
1367pub type PFN_vkCmdSetDepthWriteEnableEXT = PFN_vkCmdSetDepthWriteEnable;
1368
1369/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDescriptorBufferOffsets2EXT.html>
1370pub type PFN_vkCmdSetDescriptorBufferOffsets2EXT = unsafe extern "system" fn(
1371    _command_buffer: CommandBuffer,
1372    _set_descriptor_buffer_offsets_info: *const SetDescriptorBufferOffsetsInfoEXT,
1373);
1374
1375/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDescriptorBufferOffsetsEXT.html>
1376pub type PFN_vkCmdSetDescriptorBufferOffsetsEXT = unsafe extern "system" fn(
1377    _command_buffer: CommandBuffer,
1378    _pipeline_bind_point: PipelineBindPoint,
1379    _layout: PipelineLayout,
1380    _first_set: u32,
1381    _set_count: u32,
1382    _buffer_indices: *const u32,
1383    _offsets: *const DeviceSize,
1384);
1385
1386/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDeviceMask.html>
1387pub type PFN_vkCmdSetDeviceMask =
1388    unsafe extern "system" fn(_command_buffer: CommandBuffer, _device_mask: u32);
1389
1390/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDeviceMaskKHR.html>
1391pub type PFN_vkCmdSetDeviceMaskKHR = PFN_vkCmdSetDeviceMask;
1392
1393/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDiscardRectangleEXT.html>
1394pub type PFN_vkCmdSetDiscardRectangleEXT = unsafe extern "system" fn(
1395    _command_buffer: CommandBuffer,
1396    _first_discard_rectangle: u32,
1397    _discard_rectangle_count: u32,
1398    _discard_rectangles: *const Rect2D,
1399);
1400
1401/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDiscardRectangleEnableEXT.html>
1402pub type PFN_vkCmdSetDiscardRectangleEnableEXT =
1403    unsafe extern "system" fn(_command_buffer: CommandBuffer, _discard_rectangle_enable: Bool32);
1404
1405/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetDiscardRectangleModeEXT.html>
1406pub type PFN_vkCmdSetDiscardRectangleModeEXT = unsafe extern "system" fn(
1407    _command_buffer: CommandBuffer,
1408    _discard_rectangle_mode: DiscardRectangleModeEXT,
1409);
1410
1411/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetEvent.html>
1412pub type PFN_vkCmdSetEvent = unsafe extern "system" fn(
1413    _command_buffer: CommandBuffer,
1414    _event: Event,
1415    _stage_mask: PipelineStageFlags,
1416);
1417
1418/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetEvent2.html>
1419pub type PFN_vkCmdSetEvent2 = unsafe extern "system" fn(
1420    _command_buffer: CommandBuffer,
1421    _event: Event,
1422    _dependency_info: *const DependencyInfo,
1423);
1424
1425/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetEvent2KHR.html>
1426pub type PFN_vkCmdSetEvent2KHR = PFN_vkCmdSetEvent2;
1427
1428/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetExclusiveScissorEnableNV.html>
1429pub type PFN_vkCmdSetExclusiveScissorEnableNV = unsafe extern "system" fn(
1430    _command_buffer: CommandBuffer,
1431    _first_exclusive_scissor: u32,
1432    _exclusive_scissor_count: u32,
1433    _exclusive_scissor_enables: *const Bool32,
1434);
1435
1436/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetExclusiveScissorNV.html>
1437pub type PFN_vkCmdSetExclusiveScissorNV = unsafe extern "system" fn(
1438    _command_buffer: CommandBuffer,
1439    _first_exclusive_scissor: u32,
1440    _exclusive_scissor_count: u32,
1441    _exclusive_scissors: *const Rect2D,
1442);
1443
1444/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetExtraPrimitiveOverestimationSizeEXT.html>
1445pub type PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT = unsafe extern "system" fn(
1446    _command_buffer: CommandBuffer,
1447    _extra_primitive_overestimation_size: f32,
1448);
1449
1450/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetFragmentShadingRateEnumNV.html>
1451pub type PFN_vkCmdSetFragmentShadingRateEnumNV = unsafe extern "system" fn(
1452    _command_buffer: CommandBuffer,
1453    _shading_rate: FragmentShadingRateNV,
1454    _combiner_ops: *const FragmentShadingRateCombinerOpKHR,
1455);
1456
1457/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetFragmentShadingRateKHR.html>
1458pub type PFN_vkCmdSetFragmentShadingRateKHR = unsafe extern "system" fn(
1459    _command_buffer: CommandBuffer,
1460    _fragment_size: *const Extent2D,
1461    _combiner_ops: *const FragmentShadingRateCombinerOpKHR,
1462);
1463
1464/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetFrontFace.html>
1465pub type PFN_vkCmdSetFrontFace =
1466    unsafe extern "system" fn(_command_buffer: CommandBuffer, _front_face: FrontFace);
1467
1468/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetFrontFaceEXT.html>
1469pub type PFN_vkCmdSetFrontFaceEXT = PFN_vkCmdSetFrontFace;
1470
1471/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineRasterizationModeEXT.html>
1472pub type PFN_vkCmdSetLineRasterizationModeEXT = unsafe extern "system" fn(
1473    _command_buffer: CommandBuffer,
1474    _line_rasterization_mode: LineRasterizationModeEXT,
1475);
1476
1477/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineStipple.html>
1478pub type PFN_vkCmdSetLineStipple = unsafe extern "system" fn(
1479    _command_buffer: CommandBuffer,
1480    _line_stipple_factor: u32,
1481    _line_stipple_pattern: u16,
1482);
1483
1484/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineStippleEXT.html>
1485pub type PFN_vkCmdSetLineStippleEXT = PFN_vkCmdSetLineStipple;
1486
1487/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineStippleEnableEXT.html>
1488pub type PFN_vkCmdSetLineStippleEnableEXT =
1489    unsafe extern "system" fn(_command_buffer: CommandBuffer, _stippled_line_enable: Bool32);
1490
1491/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineStippleKHR.html>
1492pub type PFN_vkCmdSetLineStippleKHR = PFN_vkCmdSetLineStipple;
1493
1494/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLineWidth.html>
1495pub type PFN_vkCmdSetLineWidth =
1496    unsafe extern "system" fn(_command_buffer: CommandBuffer, _line_width: f32);
1497
1498/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLogicOpEXT.html>
1499pub type PFN_vkCmdSetLogicOpEXT =
1500    unsafe extern "system" fn(_command_buffer: CommandBuffer, _logic_op: LogicOp);
1501
1502/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetLogicOpEnableEXT.html>
1503pub type PFN_vkCmdSetLogicOpEnableEXT =
1504    unsafe extern "system" fn(_command_buffer: CommandBuffer, _logic_op_enable: Bool32);
1505
1506/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPatchControlPointsEXT.html>
1507pub type PFN_vkCmdSetPatchControlPointsEXT =
1508    unsafe extern "system" fn(_command_buffer: CommandBuffer, _patch_control_points: u32);
1509
1510/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPerformanceMarkerINTEL.html>
1511pub type PFN_vkCmdSetPerformanceMarkerINTEL = unsafe extern "system" fn(
1512    _command_buffer: CommandBuffer,
1513    _marker_info: *const PerformanceMarkerInfoINTEL,
1514) -> Result;
1515
1516/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPerformanceOverrideINTEL.html>
1517pub type PFN_vkCmdSetPerformanceOverrideINTEL = unsafe extern "system" fn(
1518    _command_buffer: CommandBuffer,
1519    _override_info: *const PerformanceOverrideInfoINTEL,
1520) -> Result;
1521
1522/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPerformanceStreamMarkerINTEL.html>
1523pub type PFN_vkCmdSetPerformanceStreamMarkerINTEL = unsafe extern "system" fn(
1524    _command_buffer: CommandBuffer,
1525    _marker_info: *const PerformanceStreamMarkerInfoINTEL,
1526) -> Result;
1527
1528/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPolygonModeEXT.html>
1529pub type PFN_vkCmdSetPolygonModeEXT =
1530    unsafe extern "system" fn(_command_buffer: CommandBuffer, _polygon_mode: PolygonMode);
1531
1532/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPrimitiveRestartEnable.html>
1533pub type PFN_vkCmdSetPrimitiveRestartEnable =
1534    unsafe extern "system" fn(_command_buffer: CommandBuffer, _primitive_restart_enable: Bool32);
1535
1536/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPrimitiveRestartEnableEXT.html>
1537pub type PFN_vkCmdSetPrimitiveRestartEnableEXT = PFN_vkCmdSetPrimitiveRestartEnable;
1538
1539/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPrimitiveTopology.html>
1540pub type PFN_vkCmdSetPrimitiveTopology = unsafe extern "system" fn(
1541    _command_buffer: CommandBuffer,
1542    _primitive_topology: PrimitiveTopology,
1543);
1544
1545/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetPrimitiveTopologyEXT.html>
1546pub type PFN_vkCmdSetPrimitiveTopologyEXT = PFN_vkCmdSetPrimitiveTopology;
1547
1548/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetProvokingVertexModeEXT.html>
1549pub type PFN_vkCmdSetProvokingVertexModeEXT = unsafe extern "system" fn(
1550    _command_buffer: CommandBuffer,
1551    _provoking_vertex_mode: ProvokingVertexModeEXT,
1552);
1553
1554/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRasterizationSamplesEXT.html>
1555pub type PFN_vkCmdSetRasterizationSamplesEXT = unsafe extern "system" fn(
1556    _command_buffer: CommandBuffer,
1557    _rasterization_samples: SampleCountFlags,
1558);
1559
1560/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRasterizationStreamEXT.html>
1561pub type PFN_vkCmdSetRasterizationStreamEXT =
1562    unsafe extern "system" fn(_command_buffer: CommandBuffer, _rasterization_stream: u32);
1563
1564/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRasterizerDiscardEnable.html>
1565pub type PFN_vkCmdSetRasterizerDiscardEnable =
1566    unsafe extern "system" fn(_command_buffer: CommandBuffer, _rasterizer_discard_enable: Bool32);
1567
1568/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRasterizerDiscardEnableEXT.html>
1569pub type PFN_vkCmdSetRasterizerDiscardEnableEXT = PFN_vkCmdSetRasterizerDiscardEnable;
1570
1571/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRayTracingPipelineStackSizeKHR.html>
1572pub type PFN_vkCmdSetRayTracingPipelineStackSizeKHR =
1573    unsafe extern "system" fn(_command_buffer: CommandBuffer, _pipeline_stack_size: u32);
1574
1575/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRenderingAttachmentLocations.html>
1576pub type PFN_vkCmdSetRenderingAttachmentLocations = unsafe extern "system" fn(
1577    _command_buffer: CommandBuffer,
1578    _location_info: *const RenderingAttachmentLocationInfo,
1579);
1580
1581/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRenderingAttachmentLocationsKHR.html>
1582pub type PFN_vkCmdSetRenderingAttachmentLocationsKHR = PFN_vkCmdSetRenderingAttachmentLocations;
1583
1584/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRenderingInputAttachmentIndices.html>
1585pub type PFN_vkCmdSetRenderingInputAttachmentIndices = unsafe extern "system" fn(
1586    _command_buffer: CommandBuffer,
1587    _input_attachment_index_info: *const RenderingInputAttachmentIndexInfo,
1588);
1589
1590/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRenderingInputAttachmentIndicesKHR.html>
1591pub type PFN_vkCmdSetRenderingInputAttachmentIndicesKHR =
1592    PFN_vkCmdSetRenderingInputAttachmentIndices;
1593
1594/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetRepresentativeFragmentTestEnableNV.html>
1595pub type PFN_vkCmdSetRepresentativeFragmentTestEnableNV = unsafe extern "system" fn(
1596    _command_buffer: CommandBuffer,
1597    _representative_fragment_test_enable: Bool32,
1598);
1599
1600/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetSampleLocationsEXT.html>
1601pub type PFN_vkCmdSetSampleLocationsEXT = unsafe extern "system" fn(
1602    _command_buffer: CommandBuffer,
1603    _sample_locations_info: *const SampleLocationsInfoEXT,
1604);
1605
1606/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetSampleLocationsEnableEXT.html>
1607pub type PFN_vkCmdSetSampleLocationsEnableEXT =
1608    unsafe extern "system" fn(_command_buffer: CommandBuffer, _sample_locations_enable: Bool32);
1609
1610/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetSampleMaskEXT.html>
1611pub type PFN_vkCmdSetSampleMaskEXT = unsafe extern "system" fn(
1612    _command_buffer: CommandBuffer,
1613    _samples: SampleCountFlags,
1614    _sample_mask: *const SampleMask,
1615);
1616
1617/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetScissor.html>
1618pub type PFN_vkCmdSetScissor = unsafe extern "system" fn(
1619    _command_buffer: CommandBuffer,
1620    _first_scissor: u32,
1621    _scissor_count: u32,
1622    _scissors: *const Rect2D,
1623);
1624
1625/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetScissorWithCount.html>
1626pub type PFN_vkCmdSetScissorWithCount = unsafe extern "system" fn(
1627    _command_buffer: CommandBuffer,
1628    _scissor_count: u32,
1629    _scissors: *const Rect2D,
1630);
1631
1632/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetScissorWithCountEXT.html>
1633pub type PFN_vkCmdSetScissorWithCountEXT = PFN_vkCmdSetScissorWithCount;
1634
1635/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetShadingRateImageEnableNV.html>
1636pub type PFN_vkCmdSetShadingRateImageEnableNV =
1637    unsafe extern "system" fn(_command_buffer: CommandBuffer, _shading_rate_image_enable: Bool32);
1638
1639/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilCompareMask.html>
1640pub type PFN_vkCmdSetStencilCompareMask = unsafe extern "system" fn(
1641    _command_buffer: CommandBuffer,
1642    _face_mask: StencilFaceFlags,
1643    _compare_mask: u32,
1644);
1645
1646/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilOp.html>
1647pub type PFN_vkCmdSetStencilOp = unsafe extern "system" fn(
1648    _command_buffer: CommandBuffer,
1649    _face_mask: StencilFaceFlags,
1650    _fail_op: StencilOp,
1651    _pass_op: StencilOp,
1652    _depth_fail_op: StencilOp,
1653    _compare_op: CompareOp,
1654);
1655
1656/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilOpEXT.html>
1657pub type PFN_vkCmdSetStencilOpEXT = PFN_vkCmdSetStencilOp;
1658
1659/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilReference.html>
1660pub type PFN_vkCmdSetStencilReference = unsafe extern "system" fn(
1661    _command_buffer: CommandBuffer,
1662    _face_mask: StencilFaceFlags,
1663    _reference: u32,
1664);
1665
1666/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilTestEnable.html>
1667pub type PFN_vkCmdSetStencilTestEnable =
1668    unsafe extern "system" fn(_command_buffer: CommandBuffer, _stencil_test_enable: Bool32);
1669
1670/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilTestEnableEXT.html>
1671pub type PFN_vkCmdSetStencilTestEnableEXT = PFN_vkCmdSetStencilTestEnable;
1672
1673/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetStencilWriteMask.html>
1674pub type PFN_vkCmdSetStencilWriteMask = unsafe extern "system" fn(
1675    _command_buffer: CommandBuffer,
1676    _face_mask: StencilFaceFlags,
1677    _write_mask: u32,
1678);
1679
1680/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetTessellationDomainOriginEXT.html>
1681pub type PFN_vkCmdSetTessellationDomainOriginEXT = unsafe extern "system" fn(
1682    _command_buffer: CommandBuffer,
1683    _domain_origin: TessellationDomainOrigin,
1684);
1685
1686/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetVertexInputEXT.html>
1687pub type PFN_vkCmdSetVertexInputEXT = unsafe extern "system" fn(
1688    _command_buffer: CommandBuffer,
1689    _vertex_binding_description_count: u32,
1690    _vertex_binding_descriptions: *const VertexInputBindingDescription2EXT,
1691    _vertex_attribute_description_count: u32,
1692    _vertex_attribute_descriptions: *const VertexInputAttributeDescription2EXT,
1693);
1694
1695/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewport.html>
1696pub type PFN_vkCmdSetViewport = unsafe extern "system" fn(
1697    _command_buffer: CommandBuffer,
1698    _first_viewport: u32,
1699    _viewport_count: u32,
1700    _viewports: *const Viewport,
1701);
1702
1703/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportShadingRatePaletteNV.html>
1704pub type PFN_vkCmdSetViewportShadingRatePaletteNV = unsafe extern "system" fn(
1705    _command_buffer: CommandBuffer,
1706    _first_viewport: u32,
1707    _viewport_count: u32,
1708    _shading_rate_palettes: *const ShadingRatePaletteNV,
1709);
1710
1711/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportSwizzleNV.html>
1712pub type PFN_vkCmdSetViewportSwizzleNV = unsafe extern "system" fn(
1713    _command_buffer: CommandBuffer,
1714    _first_viewport: u32,
1715    _viewport_count: u32,
1716    _viewport_swizzles: *const ViewportSwizzleNV,
1717);
1718
1719/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportWScalingEnableNV.html>
1720pub type PFN_vkCmdSetViewportWScalingEnableNV =
1721    unsafe extern "system" fn(_command_buffer: CommandBuffer, _viewport_w_scaling_enable: Bool32);
1722
1723/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportWScalingNV.html>
1724pub type PFN_vkCmdSetViewportWScalingNV = unsafe extern "system" fn(
1725    _command_buffer: CommandBuffer,
1726    _first_viewport: u32,
1727    _viewport_count: u32,
1728    _viewport_w_scalings: *const ViewportWScalingNV,
1729);
1730
1731/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportWithCount.html>
1732pub type PFN_vkCmdSetViewportWithCount = unsafe extern "system" fn(
1733    _command_buffer: CommandBuffer,
1734    _viewport_count: u32,
1735    _viewports: *const Viewport,
1736);
1737
1738/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSetViewportWithCountEXT.html>
1739pub type PFN_vkCmdSetViewportWithCountEXT = PFN_vkCmdSetViewportWithCount;
1740
1741/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdSubpassShadingHUAWEI.html>
1742pub type PFN_vkCmdSubpassShadingHUAWEI = unsafe extern "system" fn(_command_buffer: CommandBuffer);
1743
1744/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdTraceRaysIndirect2KHR.html>
1745pub type PFN_vkCmdTraceRaysIndirect2KHR = unsafe extern "system" fn(
1746    _command_buffer: CommandBuffer,
1747    _indirect_device_address: DeviceAddress,
1748);
1749
1750/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdTraceRaysIndirectKHR.html>
1751pub type PFN_vkCmdTraceRaysIndirectKHR = unsafe extern "system" fn(
1752    _command_buffer: CommandBuffer,
1753    _raygen_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1754    _miss_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1755    _hit_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1756    _callable_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1757    _indirect_device_address: DeviceAddress,
1758);
1759
1760/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdTraceRaysKHR.html>
1761pub type PFN_vkCmdTraceRaysKHR = unsafe extern "system" fn(
1762    _command_buffer: CommandBuffer,
1763    _raygen_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1764    _miss_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1765    _hit_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1766    _callable_shader_binding_table: *const StridedDeviceAddressRegionKHR,
1767    _width: u32,
1768    _height: u32,
1769    _depth: u32,
1770);
1771
1772/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdTraceRaysNV.html>
1773pub type PFN_vkCmdTraceRaysNV = unsafe extern "system" fn(
1774    _command_buffer: CommandBuffer,
1775    _raygen_shader_binding_table_buffer: Buffer,
1776    _raygen_shader_binding_offset: DeviceSize,
1777    _miss_shader_binding_table_buffer: Buffer,
1778    _miss_shader_binding_offset: DeviceSize,
1779    _miss_shader_binding_stride: DeviceSize,
1780    _hit_shader_binding_table_buffer: Buffer,
1781    _hit_shader_binding_offset: DeviceSize,
1782    _hit_shader_binding_stride: DeviceSize,
1783    _callable_shader_binding_table_buffer: Buffer,
1784    _callable_shader_binding_offset: DeviceSize,
1785    _callable_shader_binding_stride: DeviceSize,
1786    _width: u32,
1787    _height: u32,
1788    _depth: u32,
1789);
1790
1791/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdUpdateBuffer.html>
1792pub type PFN_vkCmdUpdateBuffer = unsafe extern "system" fn(
1793    _command_buffer: CommandBuffer,
1794    _dst_buffer: Buffer,
1795    _dst_offset: DeviceSize,
1796    _data_size: DeviceSize,
1797    _data: *const c_void,
1798);
1799
1800/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdUpdatePipelineIndirectBufferNV.html>
1801pub type PFN_vkCmdUpdatePipelineIndirectBufferNV = unsafe extern "system" fn(
1802    _command_buffer: CommandBuffer,
1803    _pipeline_bind_point: PipelineBindPoint,
1804    _pipeline: Pipeline,
1805);
1806
1807/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWaitEvents.html>
1808pub type PFN_vkCmdWaitEvents = unsafe extern "system" fn(
1809    _command_buffer: CommandBuffer,
1810    _event_count: u32,
1811    _events: *const Event,
1812    _src_stage_mask: PipelineStageFlags,
1813    _dst_stage_mask: PipelineStageFlags,
1814    _memory_barrier_count: u32,
1815    _memory_barriers: *const MemoryBarrier,
1816    _buffer_memory_barrier_count: u32,
1817    _buffer_memory_barriers: *const BufferMemoryBarrier,
1818    _image_memory_barrier_count: u32,
1819    _image_memory_barriers: *const ImageMemoryBarrier,
1820);
1821
1822/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWaitEvents2.html>
1823pub type PFN_vkCmdWaitEvents2 = unsafe extern "system" fn(
1824    _command_buffer: CommandBuffer,
1825    _event_count: u32,
1826    _events: *const Event,
1827    _dependency_infos: *const DependencyInfo,
1828);
1829
1830/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWaitEvents2KHR.html>
1831pub type PFN_vkCmdWaitEvents2KHR = PFN_vkCmdWaitEvents2;
1832
1833/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteAccelerationStructuresPropertiesKHR.html>
1834pub type PFN_vkCmdWriteAccelerationStructuresPropertiesKHR = unsafe extern "system" fn(
1835    _command_buffer: CommandBuffer,
1836    _acceleration_structure_count: u32,
1837    _acceleration_structures: *const AccelerationStructureKHR,
1838    _query_type: QueryType,
1839    _query_pool: QueryPool,
1840    _first_query: u32,
1841);
1842
1843/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteAccelerationStructuresPropertiesNV.html>
1844pub type PFN_vkCmdWriteAccelerationStructuresPropertiesNV = unsafe extern "system" fn(
1845    _command_buffer: CommandBuffer,
1846    _acceleration_structure_count: u32,
1847    _acceleration_structures: *const AccelerationStructureNV,
1848    _query_type: QueryType,
1849    _query_pool: QueryPool,
1850    _first_query: u32,
1851);
1852
1853/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteBufferMarker2AMD.html>
1854pub type PFN_vkCmdWriteBufferMarker2AMD = unsafe extern "system" fn(
1855    _command_buffer: CommandBuffer,
1856    _stage: PipelineStageFlags2,
1857    _dst_buffer: Buffer,
1858    _dst_offset: DeviceSize,
1859    _marker: u32,
1860);
1861
1862/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteBufferMarkerAMD.html>
1863pub type PFN_vkCmdWriteBufferMarkerAMD = unsafe extern "system" fn(
1864    _command_buffer: CommandBuffer,
1865    _pipeline_stage: PipelineStageFlags,
1866    _dst_buffer: Buffer,
1867    _dst_offset: DeviceSize,
1868    _marker: u32,
1869);
1870
1871/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteMicromapsPropertiesEXT.html>
1872pub type PFN_vkCmdWriteMicromapsPropertiesEXT = unsafe extern "system" fn(
1873    _command_buffer: CommandBuffer,
1874    _micromap_count: u32,
1875    _micromaps: *const MicromapEXT,
1876    _query_type: QueryType,
1877    _query_pool: QueryPool,
1878    _first_query: u32,
1879);
1880
1881/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteTimestamp.html>
1882pub type PFN_vkCmdWriteTimestamp = unsafe extern "system" fn(
1883    _command_buffer: CommandBuffer,
1884    _pipeline_stage: PipelineStageFlags,
1885    _query_pool: QueryPool,
1886    _query: u32,
1887);
1888
1889/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteTimestamp2.html>
1890pub type PFN_vkCmdWriteTimestamp2 = unsafe extern "system" fn(
1891    _command_buffer: CommandBuffer,
1892    _stage: PipelineStageFlags2,
1893    _query_pool: QueryPool,
1894    _query: u32,
1895);
1896
1897/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCmdWriteTimestamp2KHR.html>
1898pub type PFN_vkCmdWriteTimestamp2KHR = PFN_vkCmdWriteTimestamp2;
1899
1900/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCompileDeferredNV.html>
1901pub type PFN_vkCompileDeferredNV =
1902    unsafe extern "system" fn(_device: Device, _pipeline: Pipeline, _shader: u32) -> Result;
1903
1904/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkConvertCooperativeVectorMatrixNV.html>
1905pub type PFN_vkConvertCooperativeVectorMatrixNV = unsafe extern "system" fn(
1906    _device: Device,
1907    _info: *const ConvertCooperativeVectorMatrixInfoNV,
1908) -> Result;
1909
1910/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyAccelerationStructureKHR.html>
1911pub type PFN_vkCopyAccelerationStructureKHR = unsafe extern "system" fn(
1912    _device: Device,
1913    _deferred_operation: DeferredOperationKHR,
1914    _info: *const CopyAccelerationStructureInfoKHR,
1915) -> Result;
1916
1917/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyAccelerationStructureToMemoryKHR.html>
1918pub type PFN_vkCopyAccelerationStructureToMemoryKHR = unsafe extern "system" fn(
1919    _device: Device,
1920    _deferred_operation: DeferredOperationKHR,
1921    _info: *const CopyAccelerationStructureToMemoryInfoKHR,
1922) -> Result;
1923
1924/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyImageToImage.html>
1925pub type PFN_vkCopyImageToImage = unsafe extern "system" fn(
1926    _device: Device,
1927    _copy_image_to_image_info: *const CopyImageToImageInfo,
1928) -> Result;
1929
1930/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyImageToImageEXT.html>
1931pub type PFN_vkCopyImageToImageEXT = PFN_vkCopyImageToImage;
1932
1933/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyImageToMemory.html>
1934pub type PFN_vkCopyImageToMemory = unsafe extern "system" fn(
1935    _device: Device,
1936    _copy_image_to_memory_info: *const CopyImageToMemoryInfo,
1937) -> Result;
1938
1939/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyImageToMemoryEXT.html>
1940pub type PFN_vkCopyImageToMemoryEXT = PFN_vkCopyImageToMemory;
1941
1942/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMemoryToAccelerationStructureKHR.html>
1943pub type PFN_vkCopyMemoryToAccelerationStructureKHR = unsafe extern "system" fn(
1944    _device: Device,
1945    _deferred_operation: DeferredOperationKHR,
1946    _info: *const CopyMemoryToAccelerationStructureInfoKHR,
1947) -> Result;
1948
1949/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMemoryToImage.html>
1950pub type PFN_vkCopyMemoryToImage = unsafe extern "system" fn(
1951    _device: Device,
1952    _copy_memory_to_image_info: *const CopyMemoryToImageInfo,
1953) -> Result;
1954
1955/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMemoryToImageEXT.html>
1956pub type PFN_vkCopyMemoryToImageEXT = PFN_vkCopyMemoryToImage;
1957
1958/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMemoryToMicromapEXT.html>
1959pub type PFN_vkCopyMemoryToMicromapEXT = unsafe extern "system" fn(
1960    _device: Device,
1961    _deferred_operation: DeferredOperationKHR,
1962    _info: *const CopyMemoryToMicromapInfoEXT,
1963) -> Result;
1964
1965/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMicromapEXT.html>
1966pub type PFN_vkCopyMicromapEXT = unsafe extern "system" fn(
1967    _device: Device,
1968    _deferred_operation: DeferredOperationKHR,
1969    _info: *const CopyMicromapInfoEXT,
1970) -> Result;
1971
1972/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCopyMicromapToMemoryEXT.html>
1973pub type PFN_vkCopyMicromapToMemoryEXT = unsafe extern "system" fn(
1974    _device: Device,
1975    _deferred_operation: DeferredOperationKHR,
1976    _info: *const CopyMicromapToMemoryInfoEXT,
1977) -> Result;
1978
1979/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateAccelerationStructureKHR.html>
1980pub type PFN_vkCreateAccelerationStructureKHR = unsafe extern "system" fn(
1981    _device: Device,
1982    _create_info: *const AccelerationStructureCreateInfoKHR,
1983    _allocator: *const AllocationCallbacks,
1984    _acceleration_structure: *mut AccelerationStructureKHR,
1985) -> Result;
1986
1987/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateAccelerationStructureNV.html>
1988pub type PFN_vkCreateAccelerationStructureNV = unsafe extern "system" fn(
1989    _device: Device,
1990    _create_info: *const AccelerationStructureCreateInfoNV,
1991    _allocator: *const AllocationCallbacks,
1992    _acceleration_structure: *mut AccelerationStructureNV,
1993) -> Result;
1994
1995/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateAndroidSurfaceKHR.html>
1996pub type PFN_vkCreateAndroidSurfaceKHR = unsafe extern "system" fn(
1997    _instance: Instance,
1998    _create_info: *const AndroidSurfaceCreateInfoKHR,
1999    _allocator: *const AllocationCallbacks,
2000    _surface: *mut SurfaceKHR,
2001) -> Result;
2002
2003/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateBuffer.html>
2004pub type PFN_vkCreateBuffer = unsafe extern "system" fn(
2005    _device: Device,
2006    _create_info: *const BufferCreateInfo,
2007    _allocator: *const AllocationCallbacks,
2008    _buffer: *mut Buffer,
2009) -> Result;
2010
2011/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateBufferCollectionFUCHSIA.html>
2012pub type PFN_vkCreateBufferCollectionFUCHSIA = unsafe extern "system" fn(
2013    _device: Device,
2014    _create_info: *const BufferCollectionCreateInfoFUCHSIA,
2015    _allocator: *const AllocationCallbacks,
2016    _collection: *mut BufferCollectionFUCHSIA,
2017) -> Result;
2018
2019/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateBufferView.html>
2020pub type PFN_vkCreateBufferView = unsafe extern "system" fn(
2021    _device: Device,
2022    _create_info: *const BufferViewCreateInfo,
2023    _allocator: *const AllocationCallbacks,
2024    _view: *mut BufferView,
2025) -> Result;
2026
2027/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateCommandPool.html>
2028pub type PFN_vkCreateCommandPool = unsafe extern "system" fn(
2029    _device: Device,
2030    _create_info: *const CommandPoolCreateInfo,
2031    _allocator: *const AllocationCallbacks,
2032    _command_pool: *mut CommandPool,
2033) -> Result;
2034
2035/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateComputePipelines.html>
2036pub type PFN_vkCreateComputePipelines = unsafe extern "system" fn(
2037    _device: Device,
2038    _pipeline_cache: PipelineCache,
2039    _create_info_count: u32,
2040    _create_infos: *const ComputePipelineCreateInfo,
2041    _allocator: *const AllocationCallbacks,
2042    _pipelines: *mut Pipeline,
2043) -> Result;
2044
2045/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateCuFunctionNVX.html>
2046pub type PFN_vkCreateCuFunctionNVX = unsafe extern "system" fn(
2047    _device: Device,
2048    _create_info: *const CuFunctionCreateInfoNVX,
2049    _allocator: *const AllocationCallbacks,
2050    _function: *mut CuFunctionNVX,
2051) -> Result;
2052
2053/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateCuModuleNVX.html>
2054pub type PFN_vkCreateCuModuleNVX = unsafe extern "system" fn(
2055    _device: Device,
2056    _create_info: *const CuModuleCreateInfoNVX,
2057    _allocator: *const AllocationCallbacks,
2058    _module: *mut CuModuleNVX,
2059) -> Result;
2060
2061/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateCudaFunctionNV.html>
2062pub type PFN_vkCreateCudaFunctionNV = unsafe extern "system" fn(
2063    _device: Device,
2064    _create_info: *const CudaFunctionCreateInfoNV,
2065    _allocator: *const AllocationCallbacks,
2066    _function: *mut CudaFunctionNV,
2067) -> Result;
2068
2069/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateCudaModuleNV.html>
2070pub type PFN_vkCreateCudaModuleNV = unsafe extern "system" fn(
2071    _device: Device,
2072    _create_info: *const CudaModuleCreateInfoNV,
2073    _allocator: *const AllocationCallbacks,
2074    _module: *mut CudaModuleNV,
2075) -> Result;
2076
2077/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDebugReportCallbackEXT.html>
2078pub type PFN_vkCreateDebugReportCallbackEXT = unsafe extern "system" fn(
2079    _instance: Instance,
2080    _create_info: *const DebugReportCallbackCreateInfoEXT,
2081    _allocator: *const AllocationCallbacks,
2082    _callback: *mut DebugReportCallbackEXT,
2083) -> Result;
2084
2085/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDebugUtilsMessengerEXT.html>
2086pub type PFN_vkCreateDebugUtilsMessengerEXT = unsafe extern "system" fn(
2087    _instance: Instance,
2088    _create_info: *const DebugUtilsMessengerCreateInfoEXT,
2089    _allocator: *const AllocationCallbacks,
2090    _messenger: *mut DebugUtilsMessengerEXT,
2091) -> Result;
2092
2093/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDeferredOperationKHR.html>
2094pub type PFN_vkCreateDeferredOperationKHR = unsafe extern "system" fn(
2095    _device: Device,
2096    _allocator: *const AllocationCallbacks,
2097    _deferred_operation: *mut DeferredOperationKHR,
2098) -> Result;
2099
2100/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDescriptorPool.html>
2101pub type PFN_vkCreateDescriptorPool = unsafe extern "system" fn(
2102    _device: Device,
2103    _create_info: *const DescriptorPoolCreateInfo,
2104    _allocator: *const AllocationCallbacks,
2105    _descriptor_pool: *mut DescriptorPool,
2106) -> Result;
2107
2108/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDescriptorSetLayout.html>
2109pub type PFN_vkCreateDescriptorSetLayout = unsafe extern "system" fn(
2110    _device: Device,
2111    _create_info: *const DescriptorSetLayoutCreateInfo,
2112    _allocator: *const AllocationCallbacks,
2113    _set_layout: *mut DescriptorSetLayout,
2114) -> Result;
2115
2116/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDescriptorUpdateTemplate.html>
2117pub type PFN_vkCreateDescriptorUpdateTemplate = unsafe extern "system" fn(
2118    _device: Device,
2119    _create_info: *const DescriptorUpdateTemplateCreateInfo,
2120    _allocator: *const AllocationCallbacks,
2121    _descriptor_update_template: *mut DescriptorUpdateTemplate,
2122) -> Result;
2123
2124/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDescriptorUpdateTemplateKHR.html>
2125pub type PFN_vkCreateDescriptorUpdateTemplateKHR = PFN_vkCreateDescriptorUpdateTemplate;
2126
2127/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDevice.html>
2128pub type PFN_vkCreateDevice = unsafe extern "system" fn(
2129    _physical_device: PhysicalDevice,
2130    _create_info: *const DeviceCreateInfo,
2131    _allocator: *const AllocationCallbacks,
2132    _device: *mut Device,
2133) -> Result;
2134
2135/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDirectFBSurfaceEXT.html>
2136pub type PFN_vkCreateDirectFBSurfaceEXT = unsafe extern "system" fn(
2137    _instance: Instance,
2138    _create_info: *const DirectFBSurfaceCreateInfoEXT,
2139    _allocator: *const AllocationCallbacks,
2140    _surface: *mut SurfaceKHR,
2141) -> Result;
2142
2143/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDisplayModeKHR.html>
2144pub type PFN_vkCreateDisplayModeKHR = unsafe extern "system" fn(
2145    _physical_device: PhysicalDevice,
2146    _display: DisplayKHR,
2147    _create_info: *const DisplayModeCreateInfoKHR,
2148    _allocator: *const AllocationCallbacks,
2149    _mode: *mut DisplayModeKHR,
2150) -> Result;
2151
2152/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateDisplayPlaneSurfaceKHR.html>
2153pub type PFN_vkCreateDisplayPlaneSurfaceKHR = unsafe extern "system" fn(
2154    _instance: Instance,
2155    _create_info: *const DisplaySurfaceCreateInfoKHR,
2156    _allocator: *const AllocationCallbacks,
2157    _surface: *mut SurfaceKHR,
2158) -> Result;
2159
2160/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateEvent.html>
2161pub type PFN_vkCreateEvent = unsafe extern "system" fn(
2162    _device: Device,
2163    _create_info: *const EventCreateInfo,
2164    _allocator: *const AllocationCallbacks,
2165    _event: *mut Event,
2166) -> Result;
2167
2168/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateExecutionGraphPipelinesAMDX.html>
2169pub type PFN_vkCreateExecutionGraphPipelinesAMDX = unsafe extern "system" fn(
2170    _device: Device,
2171    _pipeline_cache: PipelineCache,
2172    _create_info_count: u32,
2173    _create_infos: *const ExecutionGraphPipelineCreateInfoAMDX,
2174    _allocator: *const AllocationCallbacks,
2175    _pipelines: *mut Pipeline,
2176) -> Result;
2177
2178/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateFence.html>
2179pub type PFN_vkCreateFence = unsafe extern "system" fn(
2180    _device: Device,
2181    _create_info: *const FenceCreateInfo,
2182    _allocator: *const AllocationCallbacks,
2183    _fence: *mut Fence,
2184) -> Result;
2185
2186/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateFramebuffer.html>
2187pub type PFN_vkCreateFramebuffer = unsafe extern "system" fn(
2188    _device: Device,
2189    _create_info: *const FramebufferCreateInfo,
2190    _allocator: *const AllocationCallbacks,
2191    _framebuffer: *mut Framebuffer,
2192) -> Result;
2193
2194/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateGraphicsPipelines.html>
2195pub type PFN_vkCreateGraphicsPipelines = unsafe extern "system" fn(
2196    _device: Device,
2197    _pipeline_cache: PipelineCache,
2198    _create_info_count: u32,
2199    _create_infos: *const GraphicsPipelineCreateInfo,
2200    _allocator: *const AllocationCallbacks,
2201    _pipelines: *mut Pipeline,
2202) -> Result;
2203
2204/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateHeadlessSurfaceEXT.html>
2205pub type PFN_vkCreateHeadlessSurfaceEXT = unsafe extern "system" fn(
2206    _instance: Instance,
2207    _create_info: *const HeadlessSurfaceCreateInfoEXT,
2208    _allocator: *const AllocationCallbacks,
2209    _surface: *mut SurfaceKHR,
2210) -> Result;
2211
2212/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateIOSSurfaceMVK.html>
2213pub type PFN_vkCreateIOSSurfaceMVK = unsafe extern "system" fn(
2214    _instance: Instance,
2215    _create_info: *const IOSSurfaceCreateInfoMVK,
2216    _allocator: *const AllocationCallbacks,
2217    _surface: *mut SurfaceKHR,
2218) -> Result;
2219
2220/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateImage.html>
2221pub type PFN_vkCreateImage = unsafe extern "system" fn(
2222    _device: Device,
2223    _create_info: *const ImageCreateInfo,
2224    _allocator: *const AllocationCallbacks,
2225    _image: *mut Image,
2226) -> Result;
2227
2228/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateImagePipeSurfaceFUCHSIA.html>
2229pub type PFN_vkCreateImagePipeSurfaceFUCHSIA = unsafe extern "system" fn(
2230    _instance: Instance,
2231    _create_info: *const ImagePipeSurfaceCreateInfoFUCHSIA,
2232    _allocator: *const AllocationCallbacks,
2233    _surface: *mut SurfaceKHR,
2234) -> Result;
2235
2236/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateImageView.html>
2237pub type PFN_vkCreateImageView = unsafe extern "system" fn(
2238    _device: Device,
2239    _create_info: *const ImageViewCreateInfo,
2240    _allocator: *const AllocationCallbacks,
2241    _view: *mut ImageView,
2242) -> Result;
2243
2244/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateIndirectCommandsLayoutEXT.html>
2245pub type PFN_vkCreateIndirectCommandsLayoutEXT = unsafe extern "system" fn(
2246    _device: Device,
2247    _create_info: *const IndirectCommandsLayoutCreateInfoEXT,
2248    _allocator: *const AllocationCallbacks,
2249    _indirect_commands_layout: *mut IndirectCommandsLayoutEXT,
2250) -> Result;
2251
2252/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateIndirectCommandsLayoutNV.html>
2253pub type PFN_vkCreateIndirectCommandsLayoutNV = unsafe extern "system" fn(
2254    _device: Device,
2255    _create_info: *const IndirectCommandsLayoutCreateInfoNV,
2256    _allocator: *const AllocationCallbacks,
2257    _indirect_commands_layout: *mut IndirectCommandsLayoutNV,
2258) -> Result;
2259
2260/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateIndirectExecutionSetEXT.html>
2261pub type PFN_vkCreateIndirectExecutionSetEXT = unsafe extern "system" fn(
2262    _device: Device,
2263    _create_info: *const IndirectExecutionSetCreateInfoEXT,
2264    _allocator: *const AllocationCallbacks,
2265    _indirect_execution_set: *mut IndirectExecutionSetEXT,
2266) -> Result;
2267
2268/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateInstance.html>
2269pub type PFN_vkCreateInstance = unsafe extern "system" fn(
2270    _create_info: *const InstanceCreateInfo,
2271    _allocator: *const AllocationCallbacks,
2272    _instance: *mut Instance,
2273) -> Result;
2274
2275/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateMacOSSurfaceMVK.html>
2276pub type PFN_vkCreateMacOSSurfaceMVK = unsafe extern "system" fn(
2277    _instance: Instance,
2278    _create_info: *const MacOSSurfaceCreateInfoMVK,
2279    _allocator: *const AllocationCallbacks,
2280    _surface: *mut SurfaceKHR,
2281) -> Result;
2282
2283/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateMetalSurfaceEXT.html>
2284pub type PFN_vkCreateMetalSurfaceEXT = unsafe extern "system" fn(
2285    _instance: Instance,
2286    _create_info: *const MetalSurfaceCreateInfoEXT,
2287    _allocator: *const AllocationCallbacks,
2288    _surface: *mut SurfaceKHR,
2289) -> Result;
2290
2291/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateMicromapEXT.html>
2292pub type PFN_vkCreateMicromapEXT = unsafe extern "system" fn(
2293    _device: Device,
2294    _create_info: *const MicromapCreateInfoEXT,
2295    _allocator: *const AllocationCallbacks,
2296    _micromap: *mut MicromapEXT,
2297) -> Result;
2298
2299/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateOpticalFlowSessionNV.html>
2300pub type PFN_vkCreateOpticalFlowSessionNV = unsafe extern "system" fn(
2301    _device: Device,
2302    _create_info: *const OpticalFlowSessionCreateInfoNV,
2303    _allocator: *const AllocationCallbacks,
2304    _session: *mut OpticalFlowSessionNV,
2305) -> Result;
2306
2307/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreatePipelineBinariesKHR.html>
2308pub type PFN_vkCreatePipelineBinariesKHR = unsafe extern "system" fn(
2309    _device: Device,
2310    _create_info: *const PipelineBinaryCreateInfoKHR,
2311    _allocator: *const AllocationCallbacks,
2312    _binaries: *mut PipelineBinaryHandlesInfoKHR,
2313) -> Result;
2314
2315/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreatePipelineCache.html>
2316pub type PFN_vkCreatePipelineCache = unsafe extern "system" fn(
2317    _device: Device,
2318    _create_info: *const PipelineCacheCreateInfo,
2319    _allocator: *const AllocationCallbacks,
2320    _pipeline_cache: *mut PipelineCache,
2321) -> Result;
2322
2323/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreatePipelineLayout.html>
2324pub type PFN_vkCreatePipelineLayout = unsafe extern "system" fn(
2325    _device: Device,
2326    _create_info: *const PipelineLayoutCreateInfo,
2327    _allocator: *const AllocationCallbacks,
2328    _pipeline_layout: *mut PipelineLayout,
2329) -> Result;
2330
2331/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreatePrivateDataSlot.html>
2332pub type PFN_vkCreatePrivateDataSlot = unsafe extern "system" fn(
2333    _device: Device,
2334    _create_info: *const PrivateDataSlotCreateInfo,
2335    _allocator: *const AllocationCallbacks,
2336    _private_data_slot: *mut PrivateDataSlot,
2337) -> Result;
2338
2339/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreatePrivateDataSlotEXT.html>
2340pub type PFN_vkCreatePrivateDataSlotEXT = PFN_vkCreatePrivateDataSlot;
2341
2342/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateQueryPool.html>
2343pub type PFN_vkCreateQueryPool = unsafe extern "system" fn(
2344    _device: Device,
2345    _create_info: *const QueryPoolCreateInfo,
2346    _allocator: *const AllocationCallbacks,
2347    _query_pool: *mut QueryPool,
2348) -> Result;
2349
2350/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateRayTracingPipelinesKHR.html>
2351pub type PFN_vkCreateRayTracingPipelinesKHR = unsafe extern "system" fn(
2352    _device: Device,
2353    _deferred_operation: DeferredOperationKHR,
2354    _pipeline_cache: PipelineCache,
2355    _create_info_count: u32,
2356    _create_infos: *const RayTracingPipelineCreateInfoKHR,
2357    _allocator: *const AllocationCallbacks,
2358    _pipelines: *mut Pipeline,
2359) -> Result;
2360
2361/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateRayTracingPipelinesNV.html>
2362pub type PFN_vkCreateRayTracingPipelinesNV = unsafe extern "system" fn(
2363    _device: Device,
2364    _pipeline_cache: PipelineCache,
2365    _create_info_count: u32,
2366    _create_infos: *const RayTracingPipelineCreateInfoNV,
2367    _allocator: *const AllocationCallbacks,
2368    _pipelines: *mut Pipeline,
2369) -> Result;
2370
2371/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateRenderPass.html>
2372pub type PFN_vkCreateRenderPass = unsafe extern "system" fn(
2373    _device: Device,
2374    _create_info: *const RenderPassCreateInfo,
2375    _allocator: *const AllocationCallbacks,
2376    _render_pass: *mut RenderPass,
2377) -> Result;
2378
2379/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateRenderPass2.html>
2380pub type PFN_vkCreateRenderPass2 = unsafe extern "system" fn(
2381    _device: Device,
2382    _create_info: *const RenderPassCreateInfo2,
2383    _allocator: *const AllocationCallbacks,
2384    _render_pass: *mut RenderPass,
2385) -> Result;
2386
2387/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateRenderPass2KHR.html>
2388pub type PFN_vkCreateRenderPass2KHR = PFN_vkCreateRenderPass2;
2389
2390/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSampler.html>
2391pub type PFN_vkCreateSampler = unsafe extern "system" fn(
2392    _device: Device,
2393    _create_info: *const SamplerCreateInfo,
2394    _allocator: *const AllocationCallbacks,
2395    _sampler: *mut Sampler,
2396) -> Result;
2397
2398/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSamplerYcbcrConversion.html>
2399pub type PFN_vkCreateSamplerYcbcrConversion = unsafe extern "system" fn(
2400    _device: Device,
2401    _create_info: *const SamplerYcbcrConversionCreateInfo,
2402    _allocator: *const AllocationCallbacks,
2403    _ycbcr_conversion: *mut SamplerYcbcrConversion,
2404) -> Result;
2405
2406/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSamplerYcbcrConversionKHR.html>
2407pub type PFN_vkCreateSamplerYcbcrConversionKHR = PFN_vkCreateSamplerYcbcrConversion;
2408
2409/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateScreenSurfaceQNX.html>
2410pub type PFN_vkCreateScreenSurfaceQNX = unsafe extern "system" fn(
2411    _instance: Instance,
2412    _create_info: *const ScreenSurfaceCreateInfoQNX,
2413    _allocator: *const AllocationCallbacks,
2414    _surface: *mut SurfaceKHR,
2415) -> Result;
2416
2417/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSemaphore.html>
2418pub type PFN_vkCreateSemaphore = unsafe extern "system" fn(
2419    _device: Device,
2420    _create_info: *const SemaphoreCreateInfo,
2421    _allocator: *const AllocationCallbacks,
2422    _semaphore: *mut Semaphore,
2423) -> Result;
2424
2425/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSemaphoreSciSyncPoolNV.html>
2426pub type PFN_vkCreateSemaphoreSciSyncPoolNV = unsafe extern "system" fn(
2427    _device: Device,
2428    _create_info: *const SemaphoreSciSyncPoolCreateInfoNV,
2429    _allocator: *const AllocationCallbacks,
2430    _semaphore_pool: *mut SemaphoreSciSyncPoolNV,
2431) -> Result;
2432
2433/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateShaderModule.html>
2434pub type PFN_vkCreateShaderModule = unsafe extern "system" fn(
2435    _device: Device,
2436    _create_info: *const ShaderModuleCreateInfo,
2437    _allocator: *const AllocationCallbacks,
2438    _shader_module: *mut ShaderModule,
2439) -> Result;
2440
2441/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateShadersEXT.html>
2442pub type PFN_vkCreateShadersEXT = unsafe extern "system" fn(
2443    _device: Device,
2444    _create_info_count: u32,
2445    _create_infos: *const ShaderCreateInfoEXT,
2446    _allocator: *const AllocationCallbacks,
2447    _shaders: *mut ShaderEXT,
2448) -> Result;
2449
2450/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSharedSwapchainsKHR.html>
2451pub type PFN_vkCreateSharedSwapchainsKHR = unsafe extern "system" fn(
2452    _device: Device,
2453    _swapchain_count: u32,
2454    _create_infos: *const SwapchainCreateInfoKHR,
2455    _allocator: *const AllocationCallbacks,
2456    _swapchains: *mut SwapchainKHR,
2457) -> Result;
2458
2459/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateStreamDescriptorSurfaceGGP.html>
2460pub type PFN_vkCreateStreamDescriptorSurfaceGGP = unsafe extern "system" fn(
2461    _instance: Instance,
2462    _create_info: *const StreamDescriptorSurfaceCreateInfoGGP,
2463    _allocator: *const AllocationCallbacks,
2464    _surface: *mut SurfaceKHR,
2465) -> Result;
2466
2467/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateSwapchainKHR.html>
2468pub type PFN_vkCreateSwapchainKHR = unsafe extern "system" fn(
2469    _device: Device,
2470    _create_info: *const SwapchainCreateInfoKHR,
2471    _allocator: *const AllocationCallbacks,
2472    _swapchain: *mut SwapchainKHR,
2473) -> Result;
2474
2475/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateValidationCacheEXT.html>
2476pub type PFN_vkCreateValidationCacheEXT = unsafe extern "system" fn(
2477    _device: Device,
2478    _create_info: *const ValidationCacheCreateInfoEXT,
2479    _allocator: *const AllocationCallbacks,
2480    _validation_cache: *mut ValidationCacheEXT,
2481) -> Result;
2482
2483/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateViSurfaceNN.html>
2484pub type PFN_vkCreateViSurfaceNN = unsafe extern "system" fn(
2485    _instance: Instance,
2486    _create_info: *const ViSurfaceCreateInfoNN,
2487    _allocator: *const AllocationCallbacks,
2488    _surface: *mut SurfaceKHR,
2489) -> Result;
2490
2491/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateVideoSessionKHR.html>
2492pub type PFN_vkCreateVideoSessionKHR = unsafe extern "system" fn(
2493    _device: Device,
2494    _create_info: *const VideoSessionCreateInfoKHR,
2495    _allocator: *const AllocationCallbacks,
2496    _video_session: *mut VideoSessionKHR,
2497) -> Result;
2498
2499/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateVideoSessionParametersKHR.html>
2500pub type PFN_vkCreateVideoSessionParametersKHR = unsafe extern "system" fn(
2501    _device: Device,
2502    _create_info: *const VideoSessionParametersCreateInfoKHR,
2503    _allocator: *const AllocationCallbacks,
2504    _video_session_parameters: *mut VideoSessionParametersKHR,
2505) -> Result;
2506
2507/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateWaylandSurfaceKHR.html>
2508pub type PFN_vkCreateWaylandSurfaceKHR = unsafe extern "system" fn(
2509    _instance: Instance,
2510    _create_info: *const WaylandSurfaceCreateInfoKHR,
2511    _allocator: *const AllocationCallbacks,
2512    _surface: *mut SurfaceKHR,
2513) -> Result;
2514
2515/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateWin32SurfaceKHR.html>
2516pub type PFN_vkCreateWin32SurfaceKHR = unsafe extern "system" fn(
2517    _instance: Instance,
2518    _create_info: *const Win32SurfaceCreateInfoKHR,
2519    _allocator: *const AllocationCallbacks,
2520    _surface: *mut SurfaceKHR,
2521) -> Result;
2522
2523/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateXcbSurfaceKHR.html>
2524pub type PFN_vkCreateXcbSurfaceKHR = unsafe extern "system" fn(
2525    _instance: Instance,
2526    _create_info: *const XcbSurfaceCreateInfoKHR,
2527    _allocator: *const AllocationCallbacks,
2528    _surface: *mut SurfaceKHR,
2529) -> Result;
2530
2531/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkCreateXlibSurfaceKHR.html>
2532pub type PFN_vkCreateXlibSurfaceKHR = unsafe extern "system" fn(
2533    _instance: Instance,
2534    _create_info: *const XlibSurfaceCreateInfoKHR,
2535    _allocator: *const AllocationCallbacks,
2536    _surface: *mut SurfaceKHR,
2537) -> Result;
2538
2539/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDebugMarkerSetObjectNameEXT.html>
2540pub type PFN_vkDebugMarkerSetObjectNameEXT = unsafe extern "system" fn(
2541    _device: Device,
2542    _name_info: *const DebugMarkerObjectNameInfoEXT,
2543) -> Result;
2544
2545/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDebugMarkerSetObjectTagEXT.html>
2546pub type PFN_vkDebugMarkerSetObjectTagEXT = unsafe extern "system" fn(
2547    _device: Device,
2548    _tag_info: *const DebugMarkerObjectTagInfoEXT,
2549) -> Result;
2550
2551/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDebugReportMessageEXT.html>
2552pub type PFN_vkDebugReportMessageEXT = unsafe extern "system" fn(
2553    _instance: Instance,
2554    _flags: DebugReportFlagsEXT,
2555    _object_type: DebugReportObjectTypeEXT,
2556    _object: u64,
2557    _location: usize,
2558    _message_code: i32,
2559    _layer_prefix: *const c_char,
2560    _message: *const c_char,
2561);
2562
2563/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDeferredOperationJoinKHR.html>
2564pub type PFN_vkDeferredOperationJoinKHR =
2565    unsafe extern "system" fn(_device: Device, _operation: DeferredOperationKHR) -> Result;
2566
2567/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyAccelerationStructureKHR.html>
2568pub type PFN_vkDestroyAccelerationStructureKHR = unsafe extern "system" fn(
2569    _device: Device,
2570    _acceleration_structure: AccelerationStructureKHR,
2571    _allocator: *const AllocationCallbacks,
2572);
2573
2574/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyAccelerationStructureNV.html>
2575pub type PFN_vkDestroyAccelerationStructureNV = unsafe extern "system" fn(
2576    _device: Device,
2577    _acceleration_structure: AccelerationStructureNV,
2578    _allocator: *const AllocationCallbacks,
2579);
2580
2581/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyBuffer.html>
2582pub type PFN_vkDestroyBuffer = unsafe extern "system" fn(
2583    _device: Device,
2584    _buffer: Buffer,
2585    _allocator: *const AllocationCallbacks,
2586);
2587
2588/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyBufferCollectionFUCHSIA.html>
2589pub type PFN_vkDestroyBufferCollectionFUCHSIA = unsafe extern "system" fn(
2590    _device: Device,
2591    _collection: BufferCollectionFUCHSIA,
2592    _allocator: *const AllocationCallbacks,
2593);
2594
2595/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyBufferView.html>
2596pub type PFN_vkDestroyBufferView = unsafe extern "system" fn(
2597    _device: Device,
2598    _buffer_view: BufferView,
2599    _allocator: *const AllocationCallbacks,
2600);
2601
2602/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyCommandPool.html>
2603pub type PFN_vkDestroyCommandPool = unsafe extern "system" fn(
2604    _device: Device,
2605    _command_pool: CommandPool,
2606    _allocator: *const AllocationCallbacks,
2607);
2608
2609/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyCuFunctionNVX.html>
2610pub type PFN_vkDestroyCuFunctionNVX = unsafe extern "system" fn(
2611    _device: Device,
2612    _function: CuFunctionNVX,
2613    _allocator: *const AllocationCallbacks,
2614);
2615
2616/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyCuModuleNVX.html>
2617pub type PFN_vkDestroyCuModuleNVX = unsafe extern "system" fn(
2618    _device: Device,
2619    _module: CuModuleNVX,
2620    _allocator: *const AllocationCallbacks,
2621);
2622
2623/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyCudaFunctionNV.html>
2624pub type PFN_vkDestroyCudaFunctionNV = unsafe extern "system" fn(
2625    _device: Device,
2626    _function: CudaFunctionNV,
2627    _allocator: *const AllocationCallbacks,
2628);
2629
2630/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyCudaModuleNV.html>
2631pub type PFN_vkDestroyCudaModuleNV = unsafe extern "system" fn(
2632    _device: Device,
2633    _module: CudaModuleNV,
2634    _allocator: *const AllocationCallbacks,
2635);
2636
2637/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDebugReportCallbackEXT.html>
2638pub type PFN_vkDestroyDebugReportCallbackEXT = unsafe extern "system" fn(
2639    _instance: Instance,
2640    _callback: DebugReportCallbackEXT,
2641    _allocator: *const AllocationCallbacks,
2642);
2643
2644/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDebugUtilsMessengerEXT.html>
2645pub type PFN_vkDestroyDebugUtilsMessengerEXT = unsafe extern "system" fn(
2646    _instance: Instance,
2647    _messenger: DebugUtilsMessengerEXT,
2648    _allocator: *const AllocationCallbacks,
2649);
2650
2651/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDeferredOperationKHR.html>
2652pub type PFN_vkDestroyDeferredOperationKHR = unsafe extern "system" fn(
2653    _device: Device,
2654    _operation: DeferredOperationKHR,
2655    _allocator: *const AllocationCallbacks,
2656);
2657
2658/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDescriptorPool.html>
2659pub type PFN_vkDestroyDescriptorPool = unsafe extern "system" fn(
2660    _device: Device,
2661    _descriptor_pool: DescriptorPool,
2662    _allocator: *const AllocationCallbacks,
2663);
2664
2665/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDescriptorSetLayout.html>
2666pub type PFN_vkDestroyDescriptorSetLayout = unsafe extern "system" fn(
2667    _device: Device,
2668    _descriptor_set_layout: DescriptorSetLayout,
2669    _allocator: *const AllocationCallbacks,
2670);
2671
2672/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDescriptorUpdateTemplate.html>
2673pub type PFN_vkDestroyDescriptorUpdateTemplate = unsafe extern "system" fn(
2674    _device: Device,
2675    _descriptor_update_template: DescriptorUpdateTemplate,
2676    _allocator: *const AllocationCallbacks,
2677);
2678
2679/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDescriptorUpdateTemplateKHR.html>
2680pub type PFN_vkDestroyDescriptorUpdateTemplateKHR = PFN_vkDestroyDescriptorUpdateTemplate;
2681
2682/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyDevice.html>
2683pub type PFN_vkDestroyDevice =
2684    unsafe extern "system" fn(_device: Device, _allocator: *const AllocationCallbacks);
2685
2686/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyEvent.html>
2687pub type PFN_vkDestroyEvent = unsafe extern "system" fn(
2688    _device: Device,
2689    _event: Event,
2690    _allocator: *const AllocationCallbacks,
2691);
2692
2693/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyFence.html>
2694pub type PFN_vkDestroyFence = unsafe extern "system" fn(
2695    _device: Device,
2696    _fence: Fence,
2697    _allocator: *const AllocationCallbacks,
2698);
2699
2700/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyFramebuffer.html>
2701pub type PFN_vkDestroyFramebuffer = unsafe extern "system" fn(
2702    _device: Device,
2703    _framebuffer: Framebuffer,
2704    _allocator: *const AllocationCallbacks,
2705);
2706
2707/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyImage.html>
2708pub type PFN_vkDestroyImage = unsafe extern "system" fn(
2709    _device: Device,
2710    _image: Image,
2711    _allocator: *const AllocationCallbacks,
2712);
2713
2714/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyImageView.html>
2715pub type PFN_vkDestroyImageView = unsafe extern "system" fn(
2716    _device: Device,
2717    _image_view: ImageView,
2718    _allocator: *const AllocationCallbacks,
2719);
2720
2721/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyIndirectCommandsLayoutEXT.html>
2722pub type PFN_vkDestroyIndirectCommandsLayoutEXT = unsafe extern "system" fn(
2723    _device: Device,
2724    _indirect_commands_layout: IndirectCommandsLayoutEXT,
2725    _allocator: *const AllocationCallbacks,
2726);
2727
2728/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyIndirectCommandsLayoutNV.html>
2729pub type PFN_vkDestroyIndirectCommandsLayoutNV = unsafe extern "system" fn(
2730    _device: Device,
2731    _indirect_commands_layout: IndirectCommandsLayoutNV,
2732    _allocator: *const AllocationCallbacks,
2733);
2734
2735/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyIndirectExecutionSetEXT.html>
2736pub type PFN_vkDestroyIndirectExecutionSetEXT = unsafe extern "system" fn(
2737    _device: Device,
2738    _indirect_execution_set: IndirectExecutionSetEXT,
2739    _allocator: *const AllocationCallbacks,
2740);
2741
2742/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyInstance.html>
2743pub type PFN_vkDestroyInstance =
2744    unsafe extern "system" fn(_instance: Instance, _allocator: *const AllocationCallbacks);
2745
2746/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyMicromapEXT.html>
2747pub type PFN_vkDestroyMicromapEXT = unsafe extern "system" fn(
2748    _device: Device,
2749    _micromap: MicromapEXT,
2750    _allocator: *const AllocationCallbacks,
2751);
2752
2753/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyOpticalFlowSessionNV.html>
2754pub type PFN_vkDestroyOpticalFlowSessionNV = unsafe extern "system" fn(
2755    _device: Device,
2756    _session: OpticalFlowSessionNV,
2757    _allocator: *const AllocationCallbacks,
2758);
2759
2760/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPipeline.html>
2761pub type PFN_vkDestroyPipeline = unsafe extern "system" fn(
2762    _device: Device,
2763    _pipeline: Pipeline,
2764    _allocator: *const AllocationCallbacks,
2765);
2766
2767/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPipelineBinaryKHR.html>
2768pub type PFN_vkDestroyPipelineBinaryKHR = unsafe extern "system" fn(
2769    _device: Device,
2770    _pipeline_binary: PipelineBinaryKHR,
2771    _allocator: *const AllocationCallbacks,
2772);
2773
2774/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPipelineCache.html>
2775pub type PFN_vkDestroyPipelineCache = unsafe extern "system" fn(
2776    _device: Device,
2777    _pipeline_cache: PipelineCache,
2778    _allocator: *const AllocationCallbacks,
2779);
2780
2781/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPipelineLayout.html>
2782pub type PFN_vkDestroyPipelineLayout = unsafe extern "system" fn(
2783    _device: Device,
2784    _pipeline_layout: PipelineLayout,
2785    _allocator: *const AllocationCallbacks,
2786);
2787
2788/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPrivateDataSlot.html>
2789pub type PFN_vkDestroyPrivateDataSlot = unsafe extern "system" fn(
2790    _device: Device,
2791    _private_data_slot: PrivateDataSlot,
2792    _allocator: *const AllocationCallbacks,
2793);
2794
2795/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyPrivateDataSlotEXT.html>
2796pub type PFN_vkDestroyPrivateDataSlotEXT = PFN_vkDestroyPrivateDataSlot;
2797
2798/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyQueryPool.html>
2799pub type PFN_vkDestroyQueryPool = unsafe extern "system" fn(
2800    _device: Device,
2801    _query_pool: QueryPool,
2802    _allocator: *const AllocationCallbacks,
2803);
2804
2805/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyRenderPass.html>
2806pub type PFN_vkDestroyRenderPass = unsafe extern "system" fn(
2807    _device: Device,
2808    _render_pass: RenderPass,
2809    _allocator: *const AllocationCallbacks,
2810);
2811
2812/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySampler.html>
2813pub type PFN_vkDestroySampler = unsafe extern "system" fn(
2814    _device: Device,
2815    _sampler: Sampler,
2816    _allocator: *const AllocationCallbacks,
2817);
2818
2819/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySamplerYcbcrConversion.html>
2820pub type PFN_vkDestroySamplerYcbcrConversion = unsafe extern "system" fn(
2821    _device: Device,
2822    _ycbcr_conversion: SamplerYcbcrConversion,
2823    _allocator: *const AllocationCallbacks,
2824);
2825
2826/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySamplerYcbcrConversionKHR.html>
2827pub type PFN_vkDestroySamplerYcbcrConversionKHR = PFN_vkDestroySamplerYcbcrConversion;
2828
2829/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySemaphore.html>
2830pub type PFN_vkDestroySemaphore = unsafe extern "system" fn(
2831    _device: Device,
2832    _semaphore: Semaphore,
2833    _allocator: *const AllocationCallbacks,
2834);
2835
2836/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySemaphoreSciSyncPoolNV.html>
2837pub type PFN_vkDestroySemaphoreSciSyncPoolNV = unsafe extern "system" fn(
2838    _device: Device,
2839    _semaphore_pool: SemaphoreSciSyncPoolNV,
2840    _allocator: *const AllocationCallbacks,
2841);
2842
2843/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyShaderEXT.html>
2844pub type PFN_vkDestroyShaderEXT = unsafe extern "system" fn(
2845    _device: Device,
2846    _shader: ShaderEXT,
2847    _allocator: *const AllocationCallbacks,
2848);
2849
2850/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyShaderModule.html>
2851pub type PFN_vkDestroyShaderModule = unsafe extern "system" fn(
2852    _device: Device,
2853    _shader_module: ShaderModule,
2854    _allocator: *const AllocationCallbacks,
2855);
2856
2857/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySurfaceKHR.html>
2858pub type PFN_vkDestroySurfaceKHR = unsafe extern "system" fn(
2859    _instance: Instance,
2860    _surface: SurfaceKHR,
2861    _allocator: *const AllocationCallbacks,
2862);
2863
2864/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroySwapchainKHR.html>
2865pub type PFN_vkDestroySwapchainKHR = unsafe extern "system" fn(
2866    _device: Device,
2867    _swapchain: SwapchainKHR,
2868    _allocator: *const AllocationCallbacks,
2869);
2870
2871/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyValidationCacheEXT.html>
2872pub type PFN_vkDestroyValidationCacheEXT = unsafe extern "system" fn(
2873    _device: Device,
2874    _validation_cache: ValidationCacheEXT,
2875    _allocator: *const AllocationCallbacks,
2876);
2877
2878/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyVideoSessionKHR.html>
2879pub type PFN_vkDestroyVideoSessionKHR = unsafe extern "system" fn(
2880    _device: Device,
2881    _video_session: VideoSessionKHR,
2882    _allocator: *const AllocationCallbacks,
2883);
2884
2885/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDestroyVideoSessionParametersKHR.html>
2886pub type PFN_vkDestroyVideoSessionParametersKHR = unsafe extern "system" fn(
2887    _device: Device,
2888    _video_session_parameters: VideoSessionParametersKHR,
2889    _allocator: *const AllocationCallbacks,
2890);
2891
2892/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDeviceWaitIdle.html>
2893pub type PFN_vkDeviceWaitIdle = unsafe extern "system" fn(_device: Device) -> Result;
2894
2895/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkDisplayPowerControlEXT.html>
2896pub type PFN_vkDisplayPowerControlEXT = unsafe extern "system" fn(
2897    _device: Device,
2898    _display: DisplayKHR,
2899    _display_power_info: *const DisplayPowerInfoEXT,
2900) -> Result;
2901
2902/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEndCommandBuffer.html>
2903pub type PFN_vkEndCommandBuffer =
2904    unsafe extern "system" fn(_command_buffer: CommandBuffer) -> Result;
2905
2906/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumerateDeviceExtensionProperties.html>
2907pub type PFN_vkEnumerateDeviceExtensionProperties = unsafe extern "system" fn(
2908    _physical_device: PhysicalDevice,
2909    _layer_name: *const c_char,
2910    _property_count: *mut u32,
2911    _properties: *mut ExtensionProperties,
2912) -> Result;
2913
2914/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumerateDeviceLayerProperties.html>
2915pub type PFN_vkEnumerateDeviceLayerProperties = unsafe extern "system" fn(
2916    _physical_device: PhysicalDevice,
2917    _property_count: *mut u32,
2918    _properties: *mut LayerProperties,
2919) -> Result;
2920
2921/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumerateInstanceExtensionProperties.html>
2922pub type PFN_vkEnumerateInstanceExtensionProperties = unsafe extern "system" fn(
2923    _layer_name: *const c_char,
2924    _property_count: *mut u32,
2925    _properties: *mut ExtensionProperties,
2926) -> Result;
2927
2928/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumerateInstanceLayerProperties.html>
2929pub type PFN_vkEnumerateInstanceLayerProperties = unsafe extern "system" fn(
2930    _property_count: *mut u32,
2931    _properties: *mut LayerProperties,
2932) -> Result;
2933
2934/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumerateInstanceVersion.html>
2935pub type PFN_vkEnumerateInstanceVersion =
2936    unsafe extern "system" fn(_api_version: *mut u32) -> Result;
2937
2938/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumeratePhysicalDeviceGroups.html>
2939pub type PFN_vkEnumeratePhysicalDeviceGroups = unsafe extern "system" fn(
2940    _instance: Instance,
2941    _physical_device_group_count: *mut u32,
2942    _physical_device_group_properties: *mut PhysicalDeviceGroupProperties,
2943) -> Result;
2944
2945/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumeratePhysicalDeviceGroupsKHR.html>
2946pub type PFN_vkEnumeratePhysicalDeviceGroupsKHR = PFN_vkEnumeratePhysicalDeviceGroups;
2947
2948/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR.html>
2949pub type PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR =
2950    unsafe extern "system" fn(
2951        _physical_device: PhysicalDevice,
2952        _queue_family_index: u32,
2953        _counter_count: *mut u32,
2954        _counters: *mut PerformanceCounterKHR,
2955        _counter_descriptions: *mut PerformanceCounterDescriptionKHR,
2956    ) -> Result;
2957
2958/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkEnumeratePhysicalDevices.html>
2959pub type PFN_vkEnumeratePhysicalDevices = unsafe extern "system" fn(
2960    _instance: Instance,
2961    _physical_device_count: *mut u32,
2962    _physical_devices: *mut PhysicalDevice,
2963) -> Result;
2964
2965/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkExportMetalObjectsEXT.html>
2966pub type PFN_vkExportMetalObjectsEXT =
2967    unsafe extern "system" fn(_device: Device, _metal_objects_info: *mut ExportMetalObjectsInfoEXT);
2968
2969/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkFlushMappedMemoryRanges.html>
2970pub type PFN_vkFlushMappedMemoryRanges = unsafe extern "system" fn(
2971    _device: Device,
2972    _memory_range_count: u32,
2973    _memory_ranges: *const MappedMemoryRange,
2974) -> Result;
2975
2976/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkFreeCommandBuffers.html>
2977pub type PFN_vkFreeCommandBuffers = unsafe extern "system" fn(
2978    _device: Device,
2979    _command_pool: CommandPool,
2980    _command_buffer_count: u32,
2981    _command_buffers: *const CommandBuffer,
2982);
2983
2984/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkFreeDescriptorSets.html>
2985pub type PFN_vkFreeDescriptorSets = unsafe extern "system" fn(
2986    _device: Device,
2987    _descriptor_pool: DescriptorPool,
2988    _descriptor_set_count: u32,
2989    _descriptor_sets: *const DescriptorSet,
2990) -> Result;
2991
2992/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkFreeMemory.html>
2993pub type PFN_vkFreeMemory = unsafe extern "system" fn(
2994    _device: Device,
2995    _memory: DeviceMemory,
2996    _allocator: *const AllocationCallbacks,
2997);
2998
2999/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAccelerationStructureBuildSizesKHR.html>
3000pub type PFN_vkGetAccelerationStructureBuildSizesKHR = unsafe extern "system" fn(
3001    _device: Device,
3002    _build_type: AccelerationStructureBuildTypeKHR,
3003    _build_info: *const AccelerationStructureBuildGeometryInfoKHR,
3004    _max_primitive_counts: *const u32,
3005    _size_info: *mut AccelerationStructureBuildSizesInfoKHR,
3006);
3007
3008/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAccelerationStructureDeviceAddressKHR.html>
3009pub type PFN_vkGetAccelerationStructureDeviceAddressKHR =
3010    unsafe extern "system" fn(
3011        _device: Device,
3012        _info: *const AccelerationStructureDeviceAddressInfoKHR,
3013    ) -> DeviceAddress;
3014
3015/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAccelerationStructureHandleNV.html>
3016pub type PFN_vkGetAccelerationStructureHandleNV = unsafe extern "system" fn(
3017    _device: Device,
3018    _acceleration_structure: AccelerationStructureNV,
3019    _data_size: usize,
3020    _data: *mut c_void,
3021) -> Result;
3022
3023/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html>
3024pub type PFN_vkGetAccelerationStructureMemoryRequirementsNV = unsafe extern "system" fn(
3025    _device: Device,
3026    _info: *const AccelerationStructureMemoryRequirementsInfoNV,
3027    _memory_requirements: *mut MemoryRequirements2KHR,
3028);
3029
3030/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT.html>
3031pub type PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT =
3032    unsafe extern "system" fn(
3033        _device: Device,
3034        _info: *const AccelerationStructureCaptureDescriptorDataInfoEXT,
3035        _data: *mut c_void,
3036    ) -> Result;
3037
3038/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetAndroidHardwareBufferPropertiesANDROID.html>
3039pub type PFN_vkGetAndroidHardwareBufferPropertiesANDROID = unsafe extern "system" fn(
3040    _device: Device,
3041    _buffer: *const AHardwareBuffer,
3042    _properties: *mut AndroidHardwareBufferPropertiesANDROID,
3043) -> Result;
3044
3045/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferCollectionPropertiesFUCHSIA.html>
3046pub type PFN_vkGetBufferCollectionPropertiesFUCHSIA = unsafe extern "system" fn(
3047    _device: Device,
3048    _collection: BufferCollectionFUCHSIA,
3049    _properties: *mut BufferCollectionPropertiesFUCHSIA,
3050) -> Result;
3051
3052/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferDeviceAddress.html>
3053pub type PFN_vkGetBufferDeviceAddress = unsafe extern "system" fn(
3054    _device: Device,
3055    _info: *const BufferDeviceAddressInfo,
3056) -> DeviceAddress;
3057
3058/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferDeviceAddressEXT.html>
3059pub type PFN_vkGetBufferDeviceAddressEXT = PFN_vkGetBufferDeviceAddress;
3060
3061/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferDeviceAddressKHR.html>
3062pub type PFN_vkGetBufferDeviceAddressKHR = PFN_vkGetBufferDeviceAddress;
3063
3064/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferMemoryRequirements.html>
3065pub type PFN_vkGetBufferMemoryRequirements = unsafe extern "system" fn(
3066    _device: Device,
3067    _buffer: Buffer,
3068    _memory_requirements: *mut MemoryRequirements,
3069);
3070
3071/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferMemoryRequirements2.html>
3072pub type PFN_vkGetBufferMemoryRequirements2 = unsafe extern "system" fn(
3073    _device: Device,
3074    _info: *const BufferMemoryRequirementsInfo2,
3075    _memory_requirements: *mut MemoryRequirements2,
3076);
3077
3078/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferMemoryRequirements2KHR.html>
3079pub type PFN_vkGetBufferMemoryRequirements2KHR = PFN_vkGetBufferMemoryRequirements2;
3080
3081/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferOpaqueCaptureAddress.html>
3082pub type PFN_vkGetBufferOpaqueCaptureAddress =
3083    unsafe extern "system" fn(_device: Device, _info: *const BufferDeviceAddressInfo) -> u64;
3084
3085/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferOpaqueCaptureAddressKHR.html>
3086pub type PFN_vkGetBufferOpaqueCaptureAddressKHR = PFN_vkGetBufferOpaqueCaptureAddress;
3087
3088/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetBufferOpaqueCaptureDescriptorDataEXT.html>
3089pub type PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT = unsafe extern "system" fn(
3090    _device: Device,
3091    _info: *const BufferCaptureDescriptorDataInfoEXT,
3092    _data: *mut c_void,
3093) -> Result;
3094
3095/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetCalibratedTimestampsEXT.html>
3096pub type PFN_vkGetCalibratedTimestampsEXT = PFN_vkGetCalibratedTimestampsKHR;
3097
3098/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetCalibratedTimestampsKHR.html>
3099pub type PFN_vkGetCalibratedTimestampsKHR = unsafe extern "system" fn(
3100    _device: Device,
3101    _timestamp_count: u32,
3102    _timestamp_infos: *const CalibratedTimestampInfoKHR,
3103    _timestamps: *mut u64,
3104    _max_deviation: *mut u64,
3105) -> Result;
3106
3107/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetClusterAccelerationStructureBuildSizesNV.html>
3108pub type PFN_vkGetClusterAccelerationStructureBuildSizesNV = unsafe extern "system" fn(
3109    _device: Device,
3110    _info: *const ClusterAccelerationStructureInputInfoNV,
3111    _size_info: *mut AccelerationStructureBuildSizesInfoKHR,
3112);
3113
3114/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetCudaModuleCacheNV.html>
3115pub type PFN_vkGetCudaModuleCacheNV = unsafe extern "system" fn(
3116    _device: Device,
3117    _module: CudaModuleNV,
3118    _cache_size: *mut usize,
3119    _cache_data: *mut c_void,
3120) -> Result;
3121
3122/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeferredOperationMaxConcurrencyKHR.html>
3123pub type PFN_vkGetDeferredOperationMaxConcurrencyKHR =
3124    unsafe extern "system" fn(_device: Device, _operation: DeferredOperationKHR) -> u32;
3125
3126/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeferredOperationResultKHR.html>
3127pub type PFN_vkGetDeferredOperationResultKHR =
3128    unsafe extern "system" fn(_device: Device, _operation: DeferredOperationKHR) -> Result;
3129
3130/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorEXT.html>
3131pub type PFN_vkGetDescriptorEXT = unsafe extern "system" fn(
3132    _device: Device,
3133    _descriptor_info: *const DescriptorGetInfoEXT,
3134    _data_size: usize,
3135    _descriptor: *mut c_void,
3136);
3137
3138/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetHostMappingVALVE.html>
3139pub type PFN_vkGetDescriptorSetHostMappingVALVE = unsafe extern "system" fn(
3140    _device: Device,
3141    _descriptor_set: DescriptorSet,
3142    _data: *mut *mut c_void,
3143);
3144
3145/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetLayoutBindingOffsetEXT.html>
3146pub type PFN_vkGetDescriptorSetLayoutBindingOffsetEXT = unsafe extern "system" fn(
3147    _device: Device,
3148    _layout: DescriptorSetLayout,
3149    _binding: u32,
3150    _offset: *mut DeviceSize,
3151);
3152
3153/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetLayoutHostMappingInfoVALVE.html>
3154pub type PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE = unsafe extern "system" fn(
3155    _device: Device,
3156    _binding_reference: *const DescriptorSetBindingReferenceVALVE,
3157    _host_mapping: *mut DescriptorSetLayoutHostMappingInfoVALVE,
3158);
3159
3160/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetLayoutSizeEXT.html>
3161pub type PFN_vkGetDescriptorSetLayoutSizeEXT = unsafe extern "system" fn(
3162    _device: Device,
3163    _layout: DescriptorSetLayout,
3164    _layout_size_in_bytes: *mut DeviceSize,
3165);
3166
3167/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetLayoutSupport.html>
3168pub type PFN_vkGetDescriptorSetLayoutSupport = unsafe extern "system" fn(
3169    _device: Device,
3170    _create_info: *const DescriptorSetLayoutCreateInfo,
3171    _support: *mut DescriptorSetLayoutSupport,
3172);
3173
3174/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDescriptorSetLayoutSupportKHR.html>
3175pub type PFN_vkGetDescriptorSetLayoutSupportKHR = PFN_vkGetDescriptorSetLayoutSupport;
3176
3177/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceAccelerationStructureCompatibilityKHR.html>
3178pub type PFN_vkGetDeviceAccelerationStructureCompatibilityKHR = unsafe extern "system" fn(
3179    _device: Device,
3180    _version_info: *const AccelerationStructureVersionInfoKHR,
3181    _compatibility: *mut AccelerationStructureCompatibilityKHR,
3182);
3183
3184/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceBufferMemoryRequirements.html>
3185pub type PFN_vkGetDeviceBufferMemoryRequirements = unsafe extern "system" fn(
3186    _device: Device,
3187    _info: *const DeviceBufferMemoryRequirements,
3188    _memory_requirements: *mut MemoryRequirements2,
3189);
3190
3191/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceBufferMemoryRequirementsKHR.html>
3192pub type PFN_vkGetDeviceBufferMemoryRequirementsKHR = PFN_vkGetDeviceBufferMemoryRequirements;
3193
3194/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceFaultInfoEXT.html>
3195pub type PFN_vkGetDeviceFaultInfoEXT = unsafe extern "system" fn(
3196    _device: Device,
3197    _fault_counts: *mut DeviceFaultCountsEXT,
3198    _fault_info: *mut DeviceFaultInfoEXT,
3199) -> Result;
3200
3201/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceGroupPeerMemoryFeatures.html>
3202pub type PFN_vkGetDeviceGroupPeerMemoryFeatures = unsafe extern "system" fn(
3203    _device: Device,
3204    _heap_index: u32,
3205    _local_device_index: u32,
3206    _remote_device_index: u32,
3207    _peer_memory_features: *mut PeerMemoryFeatureFlags,
3208);
3209
3210/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceGroupPeerMemoryFeaturesKHR.html>
3211pub type PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR = PFN_vkGetDeviceGroupPeerMemoryFeatures;
3212
3213/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceGroupPresentCapabilitiesKHR.html>
3214pub type PFN_vkGetDeviceGroupPresentCapabilitiesKHR = unsafe extern "system" fn(
3215    _device: Device,
3216    _device_group_present_capabilities: *mut DeviceGroupPresentCapabilitiesKHR,
3217) -> Result;
3218
3219/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceGroupSurfacePresentModes2EXT.html>
3220pub type PFN_vkGetDeviceGroupSurfacePresentModes2EXT = unsafe extern "system" fn(
3221    _device: Device,
3222    _surface_info: *const PhysicalDeviceSurfaceInfo2KHR,
3223    _modes: *mut DeviceGroupPresentModeFlagsKHR,
3224) -> Result;
3225
3226/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceGroupSurfacePresentModesKHR.html>
3227pub type PFN_vkGetDeviceGroupSurfacePresentModesKHR = unsafe extern "system" fn(
3228    _device: Device,
3229    _surface: SurfaceKHR,
3230    _modes: *mut DeviceGroupPresentModeFlagsKHR,
3231) -> Result;
3232
3233/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageMemoryRequirements.html>
3234pub type PFN_vkGetDeviceImageMemoryRequirements = unsafe extern "system" fn(
3235    _device: Device,
3236    _info: *const DeviceImageMemoryRequirements,
3237    _memory_requirements: *mut MemoryRequirements2,
3238);
3239
3240/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageMemoryRequirementsKHR.html>
3241pub type PFN_vkGetDeviceImageMemoryRequirementsKHR = PFN_vkGetDeviceImageMemoryRequirements;
3242
3243/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageSparseMemoryRequirements.html>
3244pub type PFN_vkGetDeviceImageSparseMemoryRequirements = unsafe extern "system" fn(
3245    _device: Device,
3246    _info: *const DeviceImageMemoryRequirements,
3247    _sparse_memory_requirement_count: *mut u32,
3248    _sparse_memory_requirements: *mut SparseImageMemoryRequirements2,
3249);
3250
3251/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageSparseMemoryRequirementsKHR.html>
3252pub type PFN_vkGetDeviceImageSparseMemoryRequirementsKHR =
3253    PFN_vkGetDeviceImageSparseMemoryRequirements;
3254
3255/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageSubresourceLayout.html>
3256pub type PFN_vkGetDeviceImageSubresourceLayout = unsafe extern "system" fn(
3257    _device: Device,
3258    _info: *const DeviceImageSubresourceInfo,
3259    _layout: *mut SubresourceLayout2,
3260);
3261
3262/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceImageSubresourceLayoutKHR.html>
3263pub type PFN_vkGetDeviceImageSubresourceLayoutKHR = PFN_vkGetDeviceImageSubresourceLayout;
3264
3265/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceMemoryCommitment.html>
3266pub type PFN_vkGetDeviceMemoryCommitment = unsafe extern "system" fn(
3267    _device: Device,
3268    _memory: DeviceMemory,
3269    _committed_memory_in_bytes: *mut DeviceSize,
3270);
3271
3272/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceMemoryOpaqueCaptureAddress.html>
3273pub type PFN_vkGetDeviceMemoryOpaqueCaptureAddress = unsafe extern "system" fn(
3274    _device: Device,
3275    _info: *const DeviceMemoryOpaqueCaptureAddressInfo,
3276) -> u64;
3277
3278/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceMemoryOpaqueCaptureAddressKHR.html>
3279pub type PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR = PFN_vkGetDeviceMemoryOpaqueCaptureAddress;
3280
3281/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceMicromapCompatibilityEXT.html>
3282pub type PFN_vkGetDeviceMicromapCompatibilityEXT = unsafe extern "system" fn(
3283    _device: Device,
3284    _version_info: *const MicromapVersionInfoEXT,
3285    _compatibility: *mut AccelerationStructureCompatibilityKHR,
3286);
3287
3288/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceProcAddr.html>
3289pub type PFN_vkGetDeviceProcAddr =
3290    unsafe extern "system" fn(_device: Device, _name: *const c_char) -> PFN_vkVoidFunction;
3291
3292/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceQueue.html>
3293pub type PFN_vkGetDeviceQueue = unsafe extern "system" fn(
3294    _device: Device,
3295    _queue_family_index: u32,
3296    _queue_index: u32,
3297    _queue: *mut Queue,
3298);
3299
3300/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceQueue2.html>
3301pub type PFN_vkGetDeviceQueue2 = unsafe extern "system" fn(
3302    _device: Device,
3303    _queue_info: *const DeviceQueueInfo2,
3304    _queue: *mut Queue,
3305);
3306
3307/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI.html>
3308pub type PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = unsafe extern "system" fn(
3309    _device: Device,
3310    _renderpass: RenderPass,
3311    _max_workgroup_size: *mut Extent2D,
3312) -> Result;
3313
3314/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDisplayModeProperties2KHR.html>
3315pub type PFN_vkGetDisplayModeProperties2KHR = unsafe extern "system" fn(
3316    _physical_device: PhysicalDevice,
3317    _display: DisplayKHR,
3318    _property_count: *mut u32,
3319    _properties: *mut DisplayModeProperties2KHR,
3320) -> Result;
3321
3322/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDisplayModePropertiesKHR.html>
3323pub type PFN_vkGetDisplayModePropertiesKHR = unsafe extern "system" fn(
3324    _physical_device: PhysicalDevice,
3325    _display: DisplayKHR,
3326    _property_count: *mut u32,
3327    _properties: *mut DisplayModePropertiesKHR,
3328) -> Result;
3329
3330/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDisplayPlaneCapabilities2KHR.html>
3331pub type PFN_vkGetDisplayPlaneCapabilities2KHR = unsafe extern "system" fn(
3332    _physical_device: PhysicalDevice,
3333    _display_plane_info: *const DisplayPlaneInfo2KHR,
3334    _capabilities: *mut DisplayPlaneCapabilities2KHR,
3335) -> Result;
3336
3337/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDisplayPlaneCapabilitiesKHR.html>
3338pub type PFN_vkGetDisplayPlaneCapabilitiesKHR = unsafe extern "system" fn(
3339    _physical_device: PhysicalDevice,
3340    _mode: DisplayModeKHR,
3341    _plane_index: u32,
3342    _capabilities: *mut DisplayPlaneCapabilitiesKHR,
3343) -> Result;
3344
3345/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDisplayPlaneSupportedDisplaysKHR.html>
3346pub type PFN_vkGetDisplayPlaneSupportedDisplaysKHR = unsafe extern "system" fn(
3347    _physical_device: PhysicalDevice,
3348    _plane_index: u32,
3349    _display_count: *mut u32,
3350    _displays: *mut DisplayKHR,
3351) -> Result;
3352
3353/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDrmDisplayEXT.html>
3354pub type PFN_vkGetDrmDisplayEXT = unsafe extern "system" fn(
3355    _physical_device: PhysicalDevice,
3356    _drm_fd: i32,
3357    _connector_id: u32,
3358    _display: *mut DisplayKHR,
3359) -> Result;
3360
3361/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetDynamicRenderingTilePropertiesQCOM.html>
3362pub type PFN_vkGetDynamicRenderingTilePropertiesQCOM = unsafe extern "system" fn(
3363    _device: Device,
3364    _rendering_info: *const RenderingInfo,
3365    _properties: *mut TilePropertiesQCOM,
3366) -> Result;
3367
3368/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetEncodedVideoSessionParametersKHR.html>
3369pub type PFN_vkGetEncodedVideoSessionParametersKHR = unsafe extern "system" fn(
3370    _device: Device,
3371    _video_session_parameters_info: *const VideoEncodeSessionParametersGetInfoKHR,
3372    _feedback_info: *mut VideoEncodeSessionParametersFeedbackInfoKHR,
3373    _data_size: *mut usize,
3374    _data: *mut c_void,
3375) -> Result;
3376
3377/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetEventStatus.html>
3378pub type PFN_vkGetEventStatus = unsafe extern "system" fn(_device: Device, _event: Event) -> Result;
3379
3380/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetExecutionGraphPipelineNodeIndexAMDX.html>
3381pub type PFN_vkGetExecutionGraphPipelineNodeIndexAMDX = unsafe extern "system" fn(
3382    _device: Device,
3383    _execution_graph: Pipeline,
3384    _node_info: *const PipelineShaderStageNodeCreateInfoAMDX,
3385    _node_index: *mut u32,
3386) -> Result;
3387
3388/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetExecutionGraphPipelineScratchSizeAMDX.html>
3389pub type PFN_vkGetExecutionGraphPipelineScratchSizeAMDX = unsafe extern "system" fn(
3390    _device: Device,
3391    _execution_graph: Pipeline,
3392    _size_info: *mut ExecutionGraphPipelineScratchSizeAMDX,
3393) -> Result;
3394
3395/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFenceFdKHR.html>
3396pub type PFN_vkGetFenceFdKHR = unsafe extern "system" fn(
3397    _device: Device,
3398    _get_fd_info: *const FenceGetFdInfoKHR,
3399    _fd: *mut c_int,
3400) -> Result;
3401
3402/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFenceSciSyncFenceNV.html>
3403pub type PFN_vkGetFenceSciSyncFenceNV = unsafe extern "system" fn(
3404    _device: Device,
3405    _get_sci_sync_handle_info: *const FenceGetSciSyncInfoNV,
3406    _handle: *mut c_void,
3407) -> Result;
3408
3409/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFenceSciSyncObjNV.html>
3410pub type PFN_vkGetFenceSciSyncObjNV = unsafe extern "system" fn(
3411    _device: Device,
3412    _get_sci_sync_handle_info: *const FenceGetSciSyncInfoNV,
3413    _handle: *mut c_void,
3414) -> Result;
3415
3416/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFenceStatus.html>
3417pub type PFN_vkGetFenceStatus = unsafe extern "system" fn(_device: Device, _fence: Fence) -> Result;
3418
3419/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFenceWin32HandleKHR.html>
3420pub type PFN_vkGetFenceWin32HandleKHR = unsafe extern "system" fn(
3421    _device: Device,
3422    _get_win32_handle_info: *const FenceGetWin32HandleInfoKHR,
3423    _handle: *mut HANDLE,
3424) -> Result;
3425
3426/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetFramebufferTilePropertiesQCOM.html>
3427pub type PFN_vkGetFramebufferTilePropertiesQCOM = unsafe extern "system" fn(
3428    _device: Device,
3429    _framebuffer: Framebuffer,
3430    _properties_count: *mut u32,
3431    _properties: *mut TilePropertiesQCOM,
3432) -> Result;
3433
3434/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetGeneratedCommandsMemoryRequirementsEXT.html>
3435pub type PFN_vkGetGeneratedCommandsMemoryRequirementsEXT = unsafe extern "system" fn(
3436    _device: Device,
3437    _info: *const GeneratedCommandsMemoryRequirementsInfoEXT,
3438    _memory_requirements: *mut MemoryRequirements2,
3439);
3440
3441/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetGeneratedCommandsMemoryRequirementsNV.html>
3442pub type PFN_vkGetGeneratedCommandsMemoryRequirementsNV = unsafe extern "system" fn(
3443    _device: Device,
3444    _info: *const GeneratedCommandsMemoryRequirementsInfoNV,
3445    _memory_requirements: *mut MemoryRequirements2,
3446);
3447
3448/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageDrmFormatModifierPropertiesEXT.html>
3449pub type PFN_vkGetImageDrmFormatModifierPropertiesEXT = unsafe extern "system" fn(
3450    _device: Device,
3451    _image: Image,
3452    _properties: *mut ImageDrmFormatModifierPropertiesEXT,
3453) -> Result;
3454
3455/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageMemoryRequirements.html>
3456pub type PFN_vkGetImageMemoryRequirements = unsafe extern "system" fn(
3457    _device: Device,
3458    _image: Image,
3459    _memory_requirements: *mut MemoryRequirements,
3460);
3461
3462/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageMemoryRequirements2.html>
3463pub type PFN_vkGetImageMemoryRequirements2 = unsafe extern "system" fn(
3464    _device: Device,
3465    _info: *const ImageMemoryRequirementsInfo2,
3466    _memory_requirements: *mut MemoryRequirements2,
3467);
3468
3469/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageMemoryRequirements2KHR.html>
3470pub type PFN_vkGetImageMemoryRequirements2KHR = PFN_vkGetImageMemoryRequirements2;
3471
3472/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageOpaqueCaptureDescriptorDataEXT.html>
3473pub type PFN_vkGetImageOpaqueCaptureDescriptorDataEXT = unsafe extern "system" fn(
3474    _device: Device,
3475    _info: *const ImageCaptureDescriptorDataInfoEXT,
3476    _data: *mut c_void,
3477) -> Result;
3478
3479/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSparseMemoryRequirements.html>
3480pub type PFN_vkGetImageSparseMemoryRequirements = unsafe extern "system" fn(
3481    _device: Device,
3482    _image: Image,
3483    _sparse_memory_requirement_count: *mut u32,
3484    _sparse_memory_requirements: *mut SparseImageMemoryRequirements,
3485);
3486
3487/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSparseMemoryRequirements2.html>
3488pub type PFN_vkGetImageSparseMemoryRequirements2 = unsafe extern "system" fn(
3489    _device: Device,
3490    _info: *const ImageSparseMemoryRequirementsInfo2,
3491    _sparse_memory_requirement_count: *mut u32,
3492    _sparse_memory_requirements: *mut SparseImageMemoryRequirements2,
3493);
3494
3495/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSparseMemoryRequirements2KHR.html>
3496pub type PFN_vkGetImageSparseMemoryRequirements2KHR = PFN_vkGetImageSparseMemoryRequirements2;
3497
3498/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSubresourceLayout.html>
3499pub type PFN_vkGetImageSubresourceLayout = unsafe extern "system" fn(
3500    _device: Device,
3501    _image: Image,
3502    _subresource: *const ImageSubresource,
3503    _layout: *mut SubresourceLayout,
3504);
3505
3506/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSubresourceLayout2.html>
3507pub type PFN_vkGetImageSubresourceLayout2 = unsafe extern "system" fn(
3508    _device: Device,
3509    _image: Image,
3510    _subresource: *const ImageSubresource2,
3511    _layout: *mut SubresourceLayout2,
3512);
3513
3514/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSubresourceLayout2EXT.html>
3515pub type PFN_vkGetImageSubresourceLayout2EXT = PFN_vkGetImageSubresourceLayout2;
3516
3517/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageSubresourceLayout2KHR.html>
3518pub type PFN_vkGetImageSubresourceLayout2KHR = PFN_vkGetImageSubresourceLayout2;
3519
3520/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageViewAddressNVX.html>
3521pub type PFN_vkGetImageViewAddressNVX = unsafe extern "system" fn(
3522    _device: Device,
3523    _image_view: ImageView,
3524    _properties: *mut ImageViewAddressPropertiesNVX,
3525) -> Result;
3526
3527/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageViewHandle64NVX.html>
3528pub type PFN_vkGetImageViewHandle64NVX =
3529    unsafe extern "system" fn(_device: Device, _info: *const ImageViewHandleInfoNVX) -> u64;
3530
3531/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageViewHandleNVX.html>
3532pub type PFN_vkGetImageViewHandleNVX =
3533    unsafe extern "system" fn(_device: Device, _info: *const ImageViewHandleInfoNVX) -> u32;
3534
3535/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetImageViewOpaqueCaptureDescriptorDataEXT.html>
3536pub type PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT = unsafe extern "system" fn(
3537    _device: Device,
3538    _info: *const ImageViewCaptureDescriptorDataInfoEXT,
3539    _data: *mut c_void,
3540) -> Result;
3541
3542/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetInstanceProcAddr.html>
3543pub type PFN_vkGetInstanceProcAddr =
3544    unsafe extern "system" fn(_instance: Instance, _name: *const c_char) -> PFN_vkVoidFunction;
3545
3546/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetLatencyTimingsNV.html>
3547pub type PFN_vkGetLatencyTimingsNV = unsafe extern "system" fn(
3548    _device: Device,
3549    _swapchain: SwapchainKHR,
3550    _latency_marker_info: *mut GetLatencyMarkerInfoNV,
3551);
3552
3553/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryAndroidHardwareBufferANDROID.html>
3554pub type PFN_vkGetMemoryAndroidHardwareBufferANDROID = unsafe extern "system" fn(
3555    _device: Device,
3556    _info: *const MemoryGetAndroidHardwareBufferInfoANDROID,
3557    _buffer: *mut *mut AHardwareBuffer,
3558) -> Result;
3559
3560/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryFdKHR.html>
3561pub type PFN_vkGetMemoryFdKHR = unsafe extern "system" fn(
3562    _device: Device,
3563    _get_fd_info: *const MemoryGetFdInfoKHR,
3564    _fd: *mut c_int,
3565) -> Result;
3566
3567/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryFdPropertiesKHR.html>
3568pub type PFN_vkGetMemoryFdPropertiesKHR = unsafe extern "system" fn(
3569    _device: Device,
3570    _handle_type: ExternalMemoryHandleTypeFlags,
3571    _fd: c_int,
3572    _memory_fd_properties: *mut MemoryFdPropertiesKHR,
3573) -> Result;
3574
3575/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryHostPointerPropertiesEXT.html>
3576pub type PFN_vkGetMemoryHostPointerPropertiesEXT = unsafe extern "system" fn(
3577    _device: Device,
3578    _handle_type: ExternalMemoryHandleTypeFlags,
3579    _host_pointer: *const c_void,
3580    _memory_host_pointer_properties: *mut MemoryHostPointerPropertiesEXT,
3581) -> Result;
3582
3583/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryMetalHandleEXT.html>
3584pub type PFN_vkGetMemoryMetalHandleEXT = unsafe extern "system" fn(
3585    _device: Device,
3586    _get_metal_handle_info: *const MemoryGetMetalHandleInfoEXT,
3587    _handle: *mut *mut c_void,
3588) -> Result;
3589
3590/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryMetalHandlePropertiesEXT.html>
3591pub type PFN_vkGetMemoryMetalHandlePropertiesEXT = unsafe extern "system" fn(
3592    _device: Device,
3593    _handle_type: ExternalMemoryHandleTypeFlags,
3594    _handle: *const c_void,
3595    _memory_metal_handle_properties: *mut MemoryMetalHandlePropertiesEXT,
3596) -> Result;
3597
3598/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryRemoteAddressNV.html>
3599pub type PFN_vkGetMemoryRemoteAddressNV = unsafe extern "system" fn(
3600    _device: Device,
3601    _memory_get_remote_address_info: *const MemoryGetRemoteAddressInfoNV,
3602    _address: *mut RemoteAddressNV,
3603) -> Result;
3604
3605/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemorySciBufNV.html>
3606pub type PFN_vkGetMemorySciBufNV = unsafe extern "system" fn(
3607    _device: Device,
3608    _get_sci_buf_info: *const MemoryGetSciBufInfoNV,
3609    _handle: *mut NvSciBufObj,
3610) -> Result;
3611
3612/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryWin32HandleKHR.html>
3613pub type PFN_vkGetMemoryWin32HandleKHR = unsafe extern "system" fn(
3614    _device: Device,
3615    _get_win32_handle_info: *const MemoryGetWin32HandleInfoKHR,
3616    _handle: *mut HANDLE,
3617) -> Result;
3618
3619/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryWin32HandleNV.html>
3620pub type PFN_vkGetMemoryWin32HandleNV = unsafe extern "system" fn(
3621    _device: Device,
3622    _memory: DeviceMemory,
3623    _handle_type: ExternalMemoryHandleTypeFlagsNV,
3624    _handle: *mut HANDLE,
3625) -> Result;
3626
3627/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryWin32HandlePropertiesKHR.html>
3628pub type PFN_vkGetMemoryWin32HandlePropertiesKHR = unsafe extern "system" fn(
3629    _device: Device,
3630    _handle_type: ExternalMemoryHandleTypeFlags,
3631    _handle: HANDLE,
3632    _memory_win32_handle_properties: *mut MemoryWin32HandlePropertiesKHR,
3633) -> Result;
3634
3635/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryZirconHandleFUCHSIA.html>
3636pub type PFN_vkGetMemoryZirconHandleFUCHSIA = unsafe extern "system" fn(
3637    _device: Device,
3638    _get_zircon_handle_info: *const MemoryGetZirconHandleInfoFUCHSIA,
3639    _zircon_handle: *mut zx_handle_t,
3640) -> Result;
3641
3642/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMemoryZirconHandlePropertiesFUCHSIA.html>
3643pub type PFN_vkGetMemoryZirconHandlePropertiesFUCHSIA = unsafe extern "system" fn(
3644    _device: Device,
3645    _handle_type: ExternalMemoryHandleTypeFlags,
3646    _zircon_handle: zx_handle_t,
3647    _memory_zircon_handle_properties: *mut MemoryZirconHandlePropertiesFUCHSIA,
3648) -> Result;
3649
3650/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetMicromapBuildSizesEXT.html>
3651pub type PFN_vkGetMicromapBuildSizesEXT = unsafe extern "system" fn(
3652    _device: Device,
3653    _build_type: AccelerationStructureBuildTypeKHR,
3654    _build_info: *const MicromapBuildInfoEXT,
3655    _size_info: *mut MicromapBuildSizesInfoEXT,
3656);
3657
3658/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPartitionedAccelerationStructuresBuildSizesNV.html>
3659pub type PFN_vkGetPartitionedAccelerationStructuresBuildSizesNV = unsafe extern "system" fn(
3660    _device: Device,
3661    _info: *const PartitionedAccelerationStructureInstancesInputNV,
3662    _size_info: *mut AccelerationStructureBuildSizesInfoKHR,
3663);
3664
3665/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPastPresentationTimingGOOGLE.html>
3666pub type PFN_vkGetPastPresentationTimingGOOGLE = unsafe extern "system" fn(
3667    _device: Device,
3668    _swapchain: SwapchainKHR,
3669    _presentation_timing_count: *mut u32,
3670    _presentation_timings: *mut PastPresentationTimingGOOGLE,
3671) -> Result;
3672
3673/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPerformanceParameterINTEL.html>
3674pub type PFN_vkGetPerformanceParameterINTEL = unsafe extern "system" fn(
3675    _device: Device,
3676    _parameter: PerformanceParameterTypeINTEL,
3677    _value: *mut PerformanceValueINTEL,
3678) -> Result;
3679
3680/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCalibrateableTimeDomainsEXT.html>
3681pub type PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT =
3682    PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsKHR;
3683
3684/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCalibrateableTimeDomainsKHR.html>
3685pub type PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsKHR = unsafe extern "system" fn(
3686    _physical_device: PhysicalDevice,
3687    _time_domain_count: *mut u32,
3688    _time_domains: *mut TimeDomainKHR,
3689) -> Result;
3690
3691/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixFlexibleDimensionsPropertiesNV.html>
3692pub type PFN_vkGetPhysicalDeviceCooperativeMatrixFlexibleDimensionsPropertiesNV =
3693    unsafe extern "system" fn(
3694        _physical_device: PhysicalDevice,
3695        _property_count: *mut u32,
3696        _properties: *mut CooperativeMatrixFlexibleDimensionsPropertiesNV,
3697    ) -> Result;
3698
3699/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR.html>
3700pub type PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR =
3701    unsafe extern "system" fn(
3702        _physical_device: PhysicalDevice,
3703        _property_count: *mut u32,
3704        _properties: *mut CooperativeMatrixPropertiesKHR,
3705    ) -> Result;
3706
3707/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeMatrixPropertiesNV.html>
3708pub type PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV = unsafe extern "system" fn(
3709    _physical_device: PhysicalDevice,
3710    _property_count: *mut u32,
3711    _properties: *mut CooperativeMatrixPropertiesNV,
3712)
3713    -> Result;
3714
3715/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceCooperativeVectorPropertiesNV.html>
3716pub type PFN_vkGetPhysicalDeviceCooperativeVectorPropertiesNV = unsafe extern "system" fn(
3717    _physical_device: PhysicalDevice,
3718    _property_count: *mut u32,
3719    _properties: *mut CooperativeVectorPropertiesNV,
3720)
3721    -> Result;
3722
3723/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceDirectFBPresentationSupportEXT.html>
3724pub type PFN_vkGetPhysicalDeviceDirectFBPresentationSupportEXT =
3725    unsafe extern "system" fn(
3726        _physical_device: PhysicalDevice,
3727        _queue_family_index: u32,
3728        _dfb: *mut IDirectFB,
3729    ) -> Bool32;
3730
3731/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceDisplayPlaneProperties2KHR.html>
3732pub type PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR = unsafe extern "system" fn(
3733    _physical_device: PhysicalDevice,
3734    _property_count: *mut u32,
3735    _properties: *mut DisplayPlaneProperties2KHR,
3736) -> Result;
3737
3738/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.html>
3739pub type PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR = unsafe extern "system" fn(
3740    _physical_device: PhysicalDevice,
3741    _property_count: *mut u32,
3742    _properties: *mut DisplayPlanePropertiesKHR,
3743) -> Result;
3744
3745/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceDisplayProperties2KHR.html>
3746pub type PFN_vkGetPhysicalDeviceDisplayProperties2KHR = unsafe extern "system" fn(
3747    _physical_device: PhysicalDevice,
3748    _property_count: *mut u32,
3749    _properties: *mut DisplayProperties2KHR,
3750) -> Result;
3751
3752/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceDisplayPropertiesKHR.html>
3753pub type PFN_vkGetPhysicalDeviceDisplayPropertiesKHR = unsafe extern "system" fn(
3754    _physical_device: PhysicalDevice,
3755    _property_count: *mut u32,
3756    _properties: *mut DisplayPropertiesKHR,
3757) -> Result;
3758
3759/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalBufferProperties.html>
3760pub type PFN_vkGetPhysicalDeviceExternalBufferProperties = unsafe extern "system" fn(
3761    _physical_device: PhysicalDevice,
3762    _external_buffer_info: *const PhysicalDeviceExternalBufferInfo,
3763    _external_buffer_properties: *mut ExternalBufferProperties,
3764);
3765
3766/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalBufferPropertiesKHR.html>
3767pub type PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR =
3768    PFN_vkGetPhysicalDeviceExternalBufferProperties;
3769
3770/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalFenceProperties.html>
3771pub type PFN_vkGetPhysicalDeviceExternalFenceProperties = unsafe extern "system" fn(
3772    _physical_device: PhysicalDevice,
3773    _external_fence_info: *const PhysicalDeviceExternalFenceInfo,
3774    _external_fence_properties: *mut ExternalFenceProperties,
3775);
3776
3777/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalFencePropertiesKHR.html>
3778pub type PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR =
3779    PFN_vkGetPhysicalDeviceExternalFenceProperties;
3780
3781/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalImageFormatPropertiesNV.html>
3782pub type PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV =
3783    unsafe extern "system" fn(
3784        _physical_device: PhysicalDevice,
3785        _format: Format,
3786        _type_: ImageType,
3787        _tiling: ImageTiling,
3788        _usage: ImageUsageFlags,
3789        _flags: ImageCreateFlags,
3790        _external_handle_type: ExternalMemoryHandleTypeFlagsNV,
3791        _external_image_format_properties: *mut ExternalImageFormatPropertiesNV,
3792    ) -> Result;
3793
3794/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV.html>
3795pub type PFN_vkGetPhysicalDeviceExternalMemorySciBufPropertiesNV =
3796    unsafe extern "system" fn(
3797        _physical_device: PhysicalDevice,
3798        _handle_type: ExternalMemoryHandleTypeFlags,
3799        _handle: NvSciBufObj,
3800        _memory_sci_buf_properties: *mut MemorySciBufPropertiesNV,
3801    ) -> Result;
3802
3803/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalSemaphoreProperties.html>
3804pub type PFN_vkGetPhysicalDeviceExternalSemaphoreProperties = unsafe extern "system" fn(
3805    _physical_device: PhysicalDevice,
3806    _external_semaphore_info: *const PhysicalDeviceExternalSemaphoreInfo,
3807    _external_semaphore_properties: *mut ExternalSemaphoreProperties,
3808);
3809
3810/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceExternalSemaphorePropertiesKHR.html>
3811pub type PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR =
3812    PFN_vkGetPhysicalDeviceExternalSemaphoreProperties;
3813
3814/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFeatures.html>
3815pub type PFN_vkGetPhysicalDeviceFeatures = unsafe extern "system" fn(
3816    _physical_device: PhysicalDevice,
3817    _features: *mut PhysicalDeviceFeatures,
3818);
3819
3820/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFeatures2.html>
3821pub type PFN_vkGetPhysicalDeviceFeatures2 = unsafe extern "system" fn(
3822    _physical_device: PhysicalDevice,
3823    _features: *mut PhysicalDeviceFeatures2,
3824);
3825
3826/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFeatures2KHR.html>
3827pub type PFN_vkGetPhysicalDeviceFeatures2KHR = PFN_vkGetPhysicalDeviceFeatures2;
3828
3829/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFormatProperties.html>
3830pub type PFN_vkGetPhysicalDeviceFormatProperties = unsafe extern "system" fn(
3831    _physical_device: PhysicalDevice,
3832    _format: Format,
3833    _format_properties: *mut FormatProperties,
3834);
3835
3836/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFormatProperties2.html>
3837pub type PFN_vkGetPhysicalDeviceFormatProperties2 = unsafe extern "system" fn(
3838    _physical_device: PhysicalDevice,
3839    _format: Format,
3840    _format_properties: *mut FormatProperties2,
3841);
3842
3843/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFormatProperties2KHR.html>
3844pub type PFN_vkGetPhysicalDeviceFormatProperties2KHR = PFN_vkGetPhysicalDeviceFormatProperties2;
3845
3846/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceFragmentShadingRatesKHR.html>
3847pub type PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR = unsafe extern "system" fn(
3848    _physical_device: PhysicalDevice,
3849    _fragment_shading_rate_count: *mut u32,
3850    _fragment_shading_rates: *mut PhysicalDeviceFragmentShadingRateKHR,
3851) -> Result;
3852
3853/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceImageFormatProperties.html>
3854pub type PFN_vkGetPhysicalDeviceImageFormatProperties = unsafe extern "system" fn(
3855    _physical_device: PhysicalDevice,
3856    _format: Format,
3857    _type_: ImageType,
3858    _tiling: ImageTiling,
3859    _usage: ImageUsageFlags,
3860    _flags: ImageCreateFlags,
3861    _image_format_properties: *mut ImageFormatProperties,
3862) -> Result;
3863
3864/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceImageFormatProperties2.html>
3865pub type PFN_vkGetPhysicalDeviceImageFormatProperties2 = unsafe extern "system" fn(
3866    _physical_device: PhysicalDevice,
3867    _image_format_info: *const PhysicalDeviceImageFormatInfo2,
3868    _image_format_properties: *mut ImageFormatProperties2,
3869) -> Result;
3870
3871/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceImageFormatProperties2KHR.html>
3872pub type PFN_vkGetPhysicalDeviceImageFormatProperties2KHR =
3873    PFN_vkGetPhysicalDeviceImageFormatProperties2;
3874
3875/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceMemoryProperties.html>
3876pub type PFN_vkGetPhysicalDeviceMemoryProperties = unsafe extern "system" fn(
3877    _physical_device: PhysicalDevice,
3878    _memory_properties: *mut PhysicalDeviceMemoryProperties,
3879);
3880
3881/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceMemoryProperties2.html>
3882pub type PFN_vkGetPhysicalDeviceMemoryProperties2 = unsafe extern "system" fn(
3883    _physical_device: PhysicalDevice,
3884    _memory_properties: *mut PhysicalDeviceMemoryProperties2,
3885);
3886
3887/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceMemoryProperties2KHR.html>
3888pub type PFN_vkGetPhysicalDeviceMemoryProperties2KHR = PFN_vkGetPhysicalDeviceMemoryProperties2;
3889
3890/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceMultisamplePropertiesEXT.html>
3891pub type PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT = unsafe extern "system" fn(
3892    _physical_device: PhysicalDevice,
3893    _samples: SampleCountFlags,
3894    _multisample_properties: *mut MultisamplePropertiesEXT,
3895);
3896
3897/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceOpticalFlowImageFormatsNV.html>
3898pub type PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV = unsafe extern "system" fn(
3899    _physical_device: PhysicalDevice,
3900    _optical_flow_image_format_info: *const OpticalFlowImageFormatInfoNV,
3901    _format_count: *mut u32,
3902    _image_format_properties: *mut OpticalFlowImageFormatPropertiesNV,
3903) -> Result;
3904
3905/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDevicePresentRectanglesKHR.html>
3906pub type PFN_vkGetPhysicalDevicePresentRectanglesKHR = unsafe extern "system" fn(
3907    _physical_device: PhysicalDevice,
3908    _surface: SurfaceKHR,
3909    _rect_count: *mut u32,
3910    _rects: *mut Rect2D,
3911) -> Result;
3912
3913/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceProperties.html>
3914pub type PFN_vkGetPhysicalDeviceProperties = unsafe extern "system" fn(
3915    _physical_device: PhysicalDevice,
3916    _properties: *mut PhysicalDeviceProperties,
3917);
3918
3919/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceProperties2.html>
3920pub type PFN_vkGetPhysicalDeviceProperties2 = unsafe extern "system" fn(
3921    _physical_device: PhysicalDevice,
3922    _properties: *mut PhysicalDeviceProperties2,
3923);
3924
3925/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceProperties2KHR.html>
3926pub type PFN_vkGetPhysicalDeviceProperties2KHR = PFN_vkGetPhysicalDeviceProperties2;
3927
3928/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR.html>
3929pub type PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR =
3930    unsafe extern "system" fn(
3931        _physical_device: PhysicalDevice,
3932        _performance_query_create_info: *const QueryPoolPerformanceCreateInfoKHR,
3933        _num_passes: *mut u32,
3934    );
3935
3936/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html>
3937pub type PFN_vkGetPhysicalDeviceQueueFamilyProperties = unsafe extern "system" fn(
3938    _physical_device: PhysicalDevice,
3939    _queue_family_property_count: *mut u32,
3940    _queue_family_properties: *mut QueueFamilyProperties,
3941);
3942
3943/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyProperties2.html>
3944pub type PFN_vkGetPhysicalDeviceQueueFamilyProperties2 = unsafe extern "system" fn(
3945    _physical_device: PhysicalDevice,
3946    _queue_family_property_count: *mut u32,
3947    _queue_family_properties: *mut QueueFamilyProperties2,
3948);
3949
3950/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceQueueFamilyProperties2KHR.html>
3951pub type PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR =
3952    PFN_vkGetPhysicalDeviceQueueFamilyProperties2;
3953
3954/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceRefreshableObjectTypesKHR.html>
3955pub type PFN_vkGetPhysicalDeviceRefreshableObjectTypesKHR = unsafe extern "system" fn(
3956    _physical_device: PhysicalDevice,
3957    _refreshable_object_type_count: *mut u32,
3958    _refreshable_object_types: *mut ObjectType,
3959) -> Result;
3960
3961/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSciBufAttributesNV.html>
3962pub type PFN_vkGetPhysicalDeviceSciBufAttributesNV = unsafe extern "system" fn(
3963    _physical_device: PhysicalDevice,
3964    _attributes: NvSciBufAttrList,
3965) -> Result;
3966
3967/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSciSyncAttributesNV.html>
3968pub type PFN_vkGetPhysicalDeviceSciSyncAttributesNV = unsafe extern "system" fn(
3969    _physical_device: PhysicalDevice,
3970    _sci_sync_attributes_info: *const SciSyncAttributesInfoNV,
3971    _attributes: NvSciSyncAttrList,
3972) -> Result;
3973
3974/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceScreenPresentationSupportQNX.html>
3975pub type PFN_vkGetPhysicalDeviceScreenPresentationSupportQNX = unsafe extern "system" fn(
3976    _physical_device: PhysicalDevice,
3977    _queue_family_index: u32,
3978    _window: *mut _screen_window,
3979) -> Bool32;
3980
3981/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html>
3982pub type PFN_vkGetPhysicalDeviceSparseImageFormatProperties = unsafe extern "system" fn(
3983    _physical_device: PhysicalDevice,
3984    _format: Format,
3985    _type_: ImageType,
3986    _samples: SampleCountFlags,
3987    _usage: ImageUsageFlags,
3988    _tiling: ImageTiling,
3989    _property_count: *mut u32,
3990    _properties: *mut SparseImageFormatProperties,
3991);
3992
3993/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2.html>
3994pub type PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 = unsafe extern "system" fn(
3995    _physical_device: PhysicalDevice,
3996    _format_info: *const PhysicalDeviceSparseImageFormatInfo2,
3997    _property_count: *mut u32,
3998    _properties: *mut SparseImageFormatProperties2,
3999);
4000
4001/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSparseImageFormatProperties2KHR.html>
4002pub type PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR =
4003    PFN_vkGetPhysicalDeviceSparseImageFormatProperties2;
4004
4005/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV.html>
4006pub type PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV =
4007    unsafe extern "system" fn(
4008        _physical_device: PhysicalDevice,
4009        _combination_count: *mut u32,
4010        _combinations: *mut FramebufferMixedSamplesCombinationNV,
4011    ) -> Result;
4012
4013/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceCapabilities2EXT.html>
4014pub type PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT = unsafe extern "system" fn(
4015    _physical_device: PhysicalDevice,
4016    _surface: SurfaceKHR,
4017    _surface_capabilities: *mut SurfaceCapabilities2EXT,
4018) -> Result;
4019
4020/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceCapabilities2KHR.html>
4021pub type PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR = unsafe extern "system" fn(
4022    _physical_device: PhysicalDevice,
4023    _surface_info: *const PhysicalDeviceSurfaceInfo2KHR,
4024    _surface_capabilities: *mut SurfaceCapabilities2KHR,
4025) -> Result;
4026
4027/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.html>
4028pub type PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR = unsafe extern "system" fn(
4029    _physical_device: PhysicalDevice,
4030    _surface: SurfaceKHR,
4031    _surface_capabilities: *mut SurfaceCapabilitiesKHR,
4032) -> Result;
4033
4034/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceFormats2KHR.html>
4035pub type PFN_vkGetPhysicalDeviceSurfaceFormats2KHR = unsafe extern "system" fn(
4036    _physical_device: PhysicalDevice,
4037    _surface_info: *const PhysicalDeviceSurfaceInfo2KHR,
4038    _surface_format_count: *mut u32,
4039    _surface_formats: *mut SurfaceFormat2KHR,
4040) -> Result;
4041
4042/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceFormatsKHR.html>
4043pub type PFN_vkGetPhysicalDeviceSurfaceFormatsKHR = unsafe extern "system" fn(
4044    _physical_device: PhysicalDevice,
4045    _surface: SurfaceKHR,
4046    _surface_format_count: *mut u32,
4047    _surface_formats: *mut SurfaceFormatKHR,
4048) -> Result;
4049
4050/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfacePresentModes2EXT.html>
4051pub type PFN_vkGetPhysicalDeviceSurfacePresentModes2EXT = unsafe extern "system" fn(
4052    _physical_device: PhysicalDevice,
4053    _surface_info: *const PhysicalDeviceSurfaceInfo2KHR,
4054    _present_mode_count: *mut u32,
4055    _present_modes: *mut PresentModeKHR,
4056) -> Result;
4057
4058/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfacePresentModesKHR.html>
4059pub type PFN_vkGetPhysicalDeviceSurfacePresentModesKHR = unsafe extern "system" fn(
4060    _physical_device: PhysicalDevice,
4061    _surface: SurfaceKHR,
4062    _present_mode_count: *mut u32,
4063    _present_modes: *mut PresentModeKHR,
4064) -> Result;
4065
4066/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceSurfaceSupportKHR.html>
4067pub type PFN_vkGetPhysicalDeviceSurfaceSupportKHR = unsafe extern "system" fn(
4068    _physical_device: PhysicalDevice,
4069    _queue_family_index: u32,
4070    _surface: SurfaceKHR,
4071    _supported: *mut Bool32,
4072) -> Result;
4073
4074/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceToolProperties.html>
4075pub type PFN_vkGetPhysicalDeviceToolProperties = unsafe extern "system" fn(
4076    _physical_device: PhysicalDevice,
4077    _tool_count: *mut u32,
4078    _tool_properties: *mut PhysicalDeviceToolProperties,
4079) -> Result;
4080
4081/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceToolPropertiesEXT.html>
4082pub type PFN_vkGetPhysicalDeviceToolPropertiesEXT = PFN_vkGetPhysicalDeviceToolProperties;
4083
4084/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceVideoCapabilitiesKHR.html>
4085pub type PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR = unsafe extern "system" fn(
4086    _physical_device: PhysicalDevice,
4087    _video_profile: *const VideoProfileInfoKHR,
4088    _capabilities: *mut VideoCapabilitiesKHR,
4089) -> Result;
4090
4091/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR.html>
4092pub type PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR =
4093    unsafe extern "system" fn(
4094        _physical_device: PhysicalDevice,
4095        _quality_level_info: *const PhysicalDeviceVideoEncodeQualityLevelInfoKHR,
4096        _quality_level_properties: *mut VideoEncodeQualityLevelPropertiesKHR,
4097    ) -> Result;
4098
4099/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceVideoFormatPropertiesKHR.html>
4100pub type PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR = unsafe extern "system" fn(
4101    _physical_device: PhysicalDevice,
4102    _video_format_info: *const PhysicalDeviceVideoFormatInfoKHR,
4103    _video_format_property_count: *mut u32,
4104    _video_format_properties: *mut VideoFormatPropertiesKHR,
4105) -> Result;
4106
4107/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceWaylandPresentationSupportKHR.html>
4108pub type PFN_vkGetPhysicalDeviceWaylandPresentationSupportKHR = unsafe extern "system" fn(
4109    _physical_device: PhysicalDevice,
4110    _queue_family_index: u32,
4111    _display: *mut wl_display,
4112)
4113    -> Bool32;
4114
4115/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceWin32PresentationSupportKHR.html>
4116pub type PFN_vkGetPhysicalDeviceWin32PresentationSupportKHR =
4117    unsafe extern "system" fn(_physical_device: PhysicalDevice, _queue_family_index: u32) -> Bool32;
4118
4119/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceXcbPresentationSupportKHR.html>
4120pub type PFN_vkGetPhysicalDeviceXcbPresentationSupportKHR = unsafe extern "system" fn(
4121    _physical_device: PhysicalDevice,
4122    _queue_family_index: u32,
4123    _connection: *mut xcb_connection_t,
4124    _visual_id: xcb_visualid_t,
4125) -> Bool32;
4126
4127/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPhysicalDeviceXlibPresentationSupportKHR.html>
4128pub type PFN_vkGetPhysicalDeviceXlibPresentationSupportKHR = unsafe extern "system" fn(
4129    _physical_device: PhysicalDevice,
4130    _queue_family_index: u32,
4131    _dpy: *mut Display,
4132    _visual_id: VisualID,
4133) -> Bool32;
4134
4135/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineBinaryDataKHR.html>
4136pub type PFN_vkGetPipelineBinaryDataKHR = unsafe extern "system" fn(
4137    _device: Device,
4138    _info: *const PipelineBinaryDataInfoKHR,
4139    _pipeline_binary_key: *mut PipelineBinaryKeyKHR,
4140    _pipeline_binary_data_size: *mut usize,
4141    _pipeline_binary_data: *mut c_void,
4142) -> Result;
4143
4144/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineCacheData.html>
4145pub type PFN_vkGetPipelineCacheData = unsafe extern "system" fn(
4146    _device: Device,
4147    _pipeline_cache: PipelineCache,
4148    _data_size: *mut usize,
4149    _data: *mut c_void,
4150) -> Result;
4151
4152/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineExecutableInternalRepresentationsKHR.html>
4153pub type PFN_vkGetPipelineExecutableInternalRepresentationsKHR =
4154    unsafe extern "system" fn(
4155        _device: Device,
4156        _executable_info: *const PipelineExecutableInfoKHR,
4157        _internal_representation_count: *mut u32,
4158        _internal_representations: *mut PipelineExecutableInternalRepresentationKHR,
4159    ) -> Result;
4160
4161/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineExecutablePropertiesKHR.html>
4162pub type PFN_vkGetPipelineExecutablePropertiesKHR = unsafe extern "system" fn(
4163    _device: Device,
4164    _pipeline_info: *const PipelineInfoKHR,
4165    _executable_count: *mut u32,
4166    _properties: *mut PipelineExecutablePropertiesKHR,
4167) -> Result;
4168
4169/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineExecutableStatisticsKHR.html>
4170pub type PFN_vkGetPipelineExecutableStatisticsKHR = unsafe extern "system" fn(
4171    _device: Device,
4172    _executable_info: *const PipelineExecutableInfoKHR,
4173    _statistic_count: *mut u32,
4174    _statistics: *mut PipelineExecutableStatisticKHR,
4175) -> Result;
4176
4177/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineIndirectDeviceAddressNV.html>
4178pub type PFN_vkGetPipelineIndirectDeviceAddressNV = unsafe extern "system" fn(
4179    _device: Device,
4180    _info: *const PipelineIndirectDeviceAddressInfoNV,
4181) -> DeviceAddress;
4182
4183/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineIndirectMemoryRequirementsNV.html>
4184pub type PFN_vkGetPipelineIndirectMemoryRequirementsNV = unsafe extern "system" fn(
4185    _device: Device,
4186    _create_info: *const ComputePipelineCreateInfo,
4187    _memory_requirements: *mut MemoryRequirements2,
4188);
4189
4190/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelineKeyKHR.html>
4191pub type PFN_vkGetPipelineKeyKHR = unsafe extern "system" fn(
4192    _device: Device,
4193    _pipeline_create_info: *const PipelineCreateInfoKHR,
4194    _pipeline_key: *mut PipelineBinaryKeyKHR,
4195) -> Result;
4196
4197/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPipelinePropertiesEXT.html>
4198pub type PFN_vkGetPipelinePropertiesEXT = unsafe extern "system" fn(
4199    _device: Device,
4200    _pipeline_info: *const PipelineInfoEXT,
4201    _pipeline_properties: *mut BaseOutStructure,
4202) -> Result;
4203
4204/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPrivateData.html>
4205pub type PFN_vkGetPrivateData = unsafe extern "system" fn(
4206    _device: Device,
4207    _object_type: ObjectType,
4208    _object_handle: u64,
4209    _private_data_slot: PrivateDataSlot,
4210    _data: *mut u64,
4211);
4212
4213/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetPrivateDataEXT.html>
4214pub type PFN_vkGetPrivateDataEXT = PFN_vkGetPrivateData;
4215
4216/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetQueryPoolResults.html>
4217pub type PFN_vkGetQueryPoolResults = unsafe extern "system" fn(
4218    _device: Device,
4219    _query_pool: QueryPool,
4220    _first_query: u32,
4221    _query_count: u32,
4222    _data_size: usize,
4223    _data: *mut c_void,
4224    _stride: DeviceSize,
4225    _flags: QueryResultFlags,
4226) -> Result;
4227
4228/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetQueueCheckpointData2NV.html>
4229pub type PFN_vkGetQueueCheckpointData2NV = unsafe extern "system" fn(
4230    _queue: Queue,
4231    _checkpoint_data_count: *mut u32,
4232    _checkpoint_data: *mut CheckpointData2NV,
4233);
4234
4235/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetQueueCheckpointDataNV.html>
4236pub type PFN_vkGetQueueCheckpointDataNV = unsafe extern "system" fn(
4237    _queue: Queue,
4238    _checkpoint_data_count: *mut u32,
4239    _checkpoint_data: *mut CheckpointDataNV,
4240);
4241
4242/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRandROutputDisplayEXT.html>
4243pub type PFN_vkGetRandROutputDisplayEXT = unsafe extern "system" fn(
4244    _physical_device: PhysicalDevice,
4245    _dpy: *mut Display,
4246    _rr_output: RROutput,
4247    _display: *mut DisplayKHR,
4248) -> Result;
4249
4250/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRayTracingCaptureReplayShaderGroupHandlesKHR.html>
4251pub type PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR =
4252    unsafe extern "system" fn(
4253        _device: Device,
4254        _pipeline: Pipeline,
4255        _first_group: u32,
4256        _group_count: u32,
4257        _data_size: usize,
4258        _data: *mut c_void,
4259    ) -> Result;
4260
4261/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRayTracingShaderGroupHandlesKHR.html>
4262pub type PFN_vkGetRayTracingShaderGroupHandlesKHR = unsafe extern "system" fn(
4263    _device: Device,
4264    _pipeline: Pipeline,
4265    _first_group: u32,
4266    _group_count: u32,
4267    _data_size: usize,
4268    _data: *mut c_void,
4269) -> Result;
4270
4271/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRayTracingShaderGroupHandlesNV.html>
4272pub type PFN_vkGetRayTracingShaderGroupHandlesNV = PFN_vkGetRayTracingShaderGroupHandlesKHR;
4273
4274/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRayTracingShaderGroupStackSizeKHR.html>
4275pub type PFN_vkGetRayTracingShaderGroupStackSizeKHR = unsafe extern "system" fn(
4276    _device: Device,
4277    _pipeline: Pipeline,
4278    _group: u32,
4279    _group_shader: ShaderGroupShaderKHR,
4280) -> DeviceSize;
4281
4282/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRefreshCycleDurationGOOGLE.html>
4283pub type PFN_vkGetRefreshCycleDurationGOOGLE = unsafe extern "system" fn(
4284    _device: Device,
4285    _swapchain: SwapchainKHR,
4286    _display_timing_properties: *mut RefreshCycleDurationGOOGLE,
4287) -> Result;
4288
4289/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRenderAreaGranularity.html>
4290pub type PFN_vkGetRenderAreaGranularity = unsafe extern "system" fn(
4291    _device: Device,
4292    _render_pass: RenderPass,
4293    _granularity: *mut Extent2D,
4294);
4295
4296/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRenderingAreaGranularity.html>
4297pub type PFN_vkGetRenderingAreaGranularity = unsafe extern "system" fn(
4298    _device: Device,
4299    _rendering_area_info: *const RenderingAreaInfo,
4300    _granularity: *mut Extent2D,
4301);
4302
4303/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetRenderingAreaGranularityKHR.html>
4304pub type PFN_vkGetRenderingAreaGranularityKHR = PFN_vkGetRenderingAreaGranularity;
4305
4306/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSamplerOpaqueCaptureDescriptorDataEXT.html>
4307pub type PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT = unsafe extern "system" fn(
4308    _device: Device,
4309    _info: *const SamplerCaptureDescriptorDataInfoEXT,
4310    _data: *mut c_void,
4311) -> Result;
4312
4313/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetScreenBufferPropertiesQNX.html>
4314pub type PFN_vkGetScreenBufferPropertiesQNX = unsafe extern "system" fn(
4315    _device: Device,
4316    _buffer: *const _screen_buffer,
4317    _properties: *mut ScreenBufferPropertiesQNX,
4318) -> Result;
4319
4320/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreCounterValue.html>
4321pub type PFN_vkGetSemaphoreCounterValue =
4322    unsafe extern "system" fn(_device: Device, _semaphore: Semaphore, _value: *mut u64) -> Result;
4323
4324/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreCounterValueKHR.html>
4325pub type PFN_vkGetSemaphoreCounterValueKHR = PFN_vkGetSemaphoreCounterValue;
4326
4327/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreFdKHR.html>
4328pub type PFN_vkGetSemaphoreFdKHR = unsafe extern "system" fn(
4329    _device: Device,
4330    _get_fd_info: *const SemaphoreGetFdInfoKHR,
4331    _fd: *mut c_int,
4332) -> Result;
4333
4334/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreSciSyncObjNV.html>
4335pub type PFN_vkGetSemaphoreSciSyncObjNV = unsafe extern "system" fn(
4336    _device: Device,
4337    _get_sci_sync_info: *const SemaphoreGetSciSyncInfoNV,
4338    _handle: *mut c_void,
4339) -> Result;
4340
4341/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreWin32HandleKHR.html>
4342pub type PFN_vkGetSemaphoreWin32HandleKHR = unsafe extern "system" fn(
4343    _device: Device,
4344    _get_win32_handle_info: *const SemaphoreGetWin32HandleInfoKHR,
4345    _handle: *mut HANDLE,
4346) -> Result;
4347
4348/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSemaphoreZirconHandleFUCHSIA.html>
4349pub type PFN_vkGetSemaphoreZirconHandleFUCHSIA = unsafe extern "system" fn(
4350    _device: Device,
4351    _get_zircon_handle_info: *const SemaphoreGetZirconHandleInfoFUCHSIA,
4352    _zircon_handle: *mut zx_handle_t,
4353) -> Result;
4354
4355/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetShaderBinaryDataEXT.html>
4356pub type PFN_vkGetShaderBinaryDataEXT = unsafe extern "system" fn(
4357    _device: Device,
4358    _shader: ShaderEXT,
4359    _data_size: *mut usize,
4360    _data: *mut c_void,
4361) -> Result;
4362
4363/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetShaderInfoAMD.html>
4364pub type PFN_vkGetShaderInfoAMD = unsafe extern "system" fn(
4365    _device: Device,
4366    _pipeline: Pipeline,
4367    _shader_stage: ShaderStageFlags,
4368    _info_type: ShaderInfoTypeAMD,
4369    _info_size: *mut usize,
4370    _info: *mut c_void,
4371) -> Result;
4372
4373/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetShaderModuleCreateInfoIdentifierEXT.html>
4374pub type PFN_vkGetShaderModuleCreateInfoIdentifierEXT = unsafe extern "system" fn(
4375    _device: Device,
4376    _create_info: *const ShaderModuleCreateInfo,
4377    _identifier: *mut ShaderModuleIdentifierEXT,
4378);
4379
4380/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetShaderModuleIdentifierEXT.html>
4381pub type PFN_vkGetShaderModuleIdentifierEXT = unsafe extern "system" fn(
4382    _device: Device,
4383    _shader_module: ShaderModule,
4384    _identifier: *mut ShaderModuleIdentifierEXT,
4385);
4386
4387/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSwapchainCounterEXT.html>
4388pub type PFN_vkGetSwapchainCounterEXT = unsafe extern "system" fn(
4389    _device: Device,
4390    _swapchain: SwapchainKHR,
4391    _counter: SurfaceCounterFlagsEXT,
4392    _counter_value: *mut u64,
4393) -> Result;
4394
4395/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSwapchainImagesKHR.html>
4396pub type PFN_vkGetSwapchainImagesKHR = unsafe extern "system" fn(
4397    _device: Device,
4398    _swapchain: SwapchainKHR,
4399    _swapchain_image_count: *mut u32,
4400    _swapchain_images: *mut Image,
4401) -> Result;
4402
4403/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetSwapchainStatusKHR.html>
4404pub type PFN_vkGetSwapchainStatusKHR =
4405    unsafe extern "system" fn(_device: Device, _swapchain: SwapchainKHR) -> Result;
4406
4407/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetValidationCacheDataEXT.html>
4408pub type PFN_vkGetValidationCacheDataEXT = unsafe extern "system" fn(
4409    _device: Device,
4410    _validation_cache: ValidationCacheEXT,
4411    _data_size: *mut usize,
4412    _data: *mut c_void,
4413) -> Result;
4414
4415/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetVideoSessionMemoryRequirementsKHR.html>
4416pub type PFN_vkGetVideoSessionMemoryRequirementsKHR = unsafe extern "system" fn(
4417    _device: Device,
4418    _video_session: VideoSessionKHR,
4419    _memory_requirements_count: *mut u32,
4420    _memory_requirements: *mut VideoSessionMemoryRequirementsKHR,
4421) -> Result;
4422
4423/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkGetWinrtDisplayNV.html>
4424pub type PFN_vkGetWinrtDisplayNV = unsafe extern "system" fn(
4425    _physical_device: PhysicalDevice,
4426    _device_relative_id: u32,
4427    _display: *mut DisplayKHR,
4428) -> Result;
4429
4430/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportFenceFdKHR.html>
4431pub type PFN_vkImportFenceFdKHR = unsafe extern "system" fn(
4432    _device: Device,
4433    _import_fence_fd_info: *const ImportFenceFdInfoKHR,
4434) -> Result;
4435
4436/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportFenceSciSyncFenceNV.html>
4437pub type PFN_vkImportFenceSciSyncFenceNV = unsafe extern "system" fn(
4438    _device: Device,
4439    _import_fence_sci_sync_info: *const ImportFenceSciSyncInfoNV,
4440) -> Result;
4441
4442/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportFenceSciSyncObjNV.html>
4443pub type PFN_vkImportFenceSciSyncObjNV = unsafe extern "system" fn(
4444    _device: Device,
4445    _import_fence_sci_sync_info: *const ImportFenceSciSyncInfoNV,
4446) -> Result;
4447
4448/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportFenceWin32HandleKHR.html>
4449pub type PFN_vkImportFenceWin32HandleKHR = unsafe extern "system" fn(
4450    _device: Device,
4451    _import_fence_win32_handle_info: *const ImportFenceWin32HandleInfoKHR,
4452) -> Result;
4453
4454/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportSemaphoreFdKHR.html>
4455pub type PFN_vkImportSemaphoreFdKHR = unsafe extern "system" fn(
4456    _device: Device,
4457    _import_semaphore_fd_info: *const ImportSemaphoreFdInfoKHR,
4458) -> Result;
4459
4460/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportSemaphoreSciSyncObjNV.html>
4461pub type PFN_vkImportSemaphoreSciSyncObjNV = unsafe extern "system" fn(
4462    _device: Device,
4463    _import_semaphore_sci_sync_info: *const ImportSemaphoreSciSyncInfoNV,
4464) -> Result;
4465
4466/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportSemaphoreWin32HandleKHR.html>
4467pub type PFN_vkImportSemaphoreWin32HandleKHR = unsafe extern "system" fn(
4468    _device: Device,
4469    _import_semaphore_win32_handle_info: *const ImportSemaphoreWin32HandleInfoKHR,
4470) -> Result;
4471
4472/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkImportSemaphoreZirconHandleFUCHSIA.html>
4473pub type PFN_vkImportSemaphoreZirconHandleFUCHSIA = unsafe extern "system" fn(
4474    _device: Device,
4475    _import_semaphore_zircon_handle_info: *const ImportSemaphoreZirconHandleInfoFUCHSIA,
4476) -> Result;
4477
4478/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkInitializePerformanceApiINTEL.html>
4479pub type PFN_vkInitializePerformanceApiINTEL = unsafe extern "system" fn(
4480    _device: Device,
4481    _initialize_info: *const InitializePerformanceApiInfoINTEL,
4482) -> Result;
4483
4484/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkInvalidateMappedMemoryRanges.html>
4485pub type PFN_vkInvalidateMappedMemoryRanges = unsafe extern "system" fn(
4486    _device: Device,
4487    _memory_range_count: u32,
4488    _memory_ranges: *const MappedMemoryRange,
4489) -> Result;
4490
4491/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkLatencySleepNV.html>
4492pub type PFN_vkLatencySleepNV = unsafe extern "system" fn(
4493    _device: Device,
4494    _swapchain: SwapchainKHR,
4495    _sleep_info: *const LatencySleepInfoNV,
4496) -> Result;
4497
4498/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkMapMemory.html>
4499pub type PFN_vkMapMemory = unsafe extern "system" fn(
4500    _device: Device,
4501    _memory: DeviceMemory,
4502    _offset: DeviceSize,
4503    _size: DeviceSize,
4504    _flags: MemoryMapFlags,
4505    _data: *mut *mut c_void,
4506) -> Result;
4507
4508/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkMapMemory2.html>
4509pub type PFN_vkMapMemory2 = unsafe extern "system" fn(
4510    _device: Device,
4511    _memory_map_info: *const MemoryMapInfo,
4512    _data: *mut *mut c_void,
4513) -> Result;
4514
4515/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkMapMemory2KHR.html>
4516pub type PFN_vkMapMemory2KHR = PFN_vkMapMemory2;
4517
4518/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkMergePipelineCaches.html>
4519pub type PFN_vkMergePipelineCaches = unsafe extern "system" fn(
4520    _device: Device,
4521    _dst_cache: PipelineCache,
4522    _src_cache_count: u32,
4523    _src_caches: *const PipelineCache,
4524) -> Result;
4525
4526/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkMergeValidationCachesEXT.html>
4527pub type PFN_vkMergeValidationCachesEXT = unsafe extern "system" fn(
4528    _device: Device,
4529    _dst_cache: ValidationCacheEXT,
4530    _src_cache_count: u32,
4531    _src_caches: *const ValidationCacheEXT,
4532) -> Result;
4533
4534/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueBeginDebugUtilsLabelEXT.html>
4535pub type PFN_vkQueueBeginDebugUtilsLabelEXT =
4536    unsafe extern "system" fn(_queue: Queue, _label_info: *const DebugUtilsLabelEXT);
4537
4538/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueBindSparse.html>
4539pub type PFN_vkQueueBindSparse = unsafe extern "system" fn(
4540    _queue: Queue,
4541    _bind_info_count: u32,
4542    _bind_info: *const BindSparseInfo,
4543    _fence: Fence,
4544) -> Result;
4545
4546/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueEndDebugUtilsLabelEXT.html>
4547pub type PFN_vkQueueEndDebugUtilsLabelEXT = unsafe extern "system" fn(_queue: Queue);
4548
4549/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueInsertDebugUtilsLabelEXT.html>
4550pub type PFN_vkQueueInsertDebugUtilsLabelEXT =
4551    unsafe extern "system" fn(_queue: Queue, _label_info: *const DebugUtilsLabelEXT);
4552
4553/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueNotifyOutOfBandNV.html>
4554pub type PFN_vkQueueNotifyOutOfBandNV =
4555    unsafe extern "system" fn(_queue: Queue, _queue_type_info: *const OutOfBandQueueTypeInfoNV);
4556
4557/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueuePresentKHR.html>
4558pub type PFN_vkQueuePresentKHR =
4559    unsafe extern "system" fn(_queue: Queue, _present_info: *const PresentInfoKHR) -> Result;
4560
4561/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueSetPerformanceConfigurationINTEL.html>
4562pub type PFN_vkQueueSetPerformanceConfigurationINTEL = unsafe extern "system" fn(
4563    _queue: Queue,
4564    _configuration: PerformanceConfigurationINTEL,
4565) -> Result;
4566
4567/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueSubmit.html>
4568pub type PFN_vkQueueSubmit = unsafe extern "system" fn(
4569    _queue: Queue,
4570    _submit_count: u32,
4571    _submits: *const SubmitInfo,
4572    _fence: Fence,
4573) -> Result;
4574
4575/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueSubmit2.html>
4576pub type PFN_vkQueueSubmit2 = unsafe extern "system" fn(
4577    _queue: Queue,
4578    _submit_count: u32,
4579    _submits: *const SubmitInfo2,
4580    _fence: Fence,
4581) -> Result;
4582
4583/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueSubmit2KHR.html>
4584pub type PFN_vkQueueSubmit2KHR = PFN_vkQueueSubmit2;
4585
4586/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkQueueWaitIdle.html>
4587pub type PFN_vkQueueWaitIdle = unsafe extern "system" fn(_queue: Queue) -> Result;
4588
4589/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkRegisterDeviceEventEXT.html>
4590pub type PFN_vkRegisterDeviceEventEXT = unsafe extern "system" fn(
4591    _device: Device,
4592    _device_event_info: *const DeviceEventInfoEXT,
4593    _allocator: *const AllocationCallbacks,
4594    _fence: *mut Fence,
4595) -> Result;
4596
4597/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkRegisterDisplayEventEXT.html>
4598pub type PFN_vkRegisterDisplayEventEXT = unsafe extern "system" fn(
4599    _device: Device,
4600    _display: DisplayKHR,
4601    _display_event_info: *const DisplayEventInfoEXT,
4602    _allocator: *const AllocationCallbacks,
4603    _fence: *mut Fence,
4604) -> Result;
4605
4606/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleaseCapturedPipelineDataKHR.html>
4607pub type PFN_vkReleaseCapturedPipelineDataKHR = unsafe extern "system" fn(
4608    _device: Device,
4609    _info: *const ReleaseCapturedPipelineDataInfoKHR,
4610    _allocator: *const AllocationCallbacks,
4611) -> Result;
4612
4613/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleaseDisplayEXT.html>
4614pub type PFN_vkReleaseDisplayEXT =
4615    unsafe extern "system" fn(_physical_device: PhysicalDevice, _display: DisplayKHR) -> Result;
4616
4617/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleaseFullScreenExclusiveModeEXT.html>
4618pub type PFN_vkReleaseFullScreenExclusiveModeEXT =
4619    unsafe extern "system" fn(_device: Device, _swapchain: SwapchainKHR) -> Result;
4620
4621/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleasePerformanceConfigurationINTEL.html>
4622pub type PFN_vkReleasePerformanceConfigurationINTEL = unsafe extern "system" fn(
4623    _device: Device,
4624    _configuration: PerformanceConfigurationINTEL,
4625) -> Result;
4626
4627/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleaseProfilingLockKHR.html>
4628pub type PFN_vkReleaseProfilingLockKHR = unsafe extern "system" fn(_device: Device);
4629
4630/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkReleaseSwapchainImagesEXT.html>
4631pub type PFN_vkReleaseSwapchainImagesEXT = unsafe extern "system" fn(
4632    _device: Device,
4633    _release_info: *const ReleaseSwapchainImagesInfoEXT,
4634) -> Result;
4635
4636/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetCommandBuffer.html>
4637pub type PFN_vkResetCommandBuffer = unsafe extern "system" fn(
4638    _command_buffer: CommandBuffer,
4639    _flags: CommandBufferResetFlags,
4640) -> Result;
4641
4642/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetCommandPool.html>
4643pub type PFN_vkResetCommandPool = unsafe extern "system" fn(
4644    _device: Device,
4645    _command_pool: CommandPool,
4646    _flags: CommandPoolResetFlags,
4647) -> Result;
4648
4649/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetDescriptorPool.html>
4650pub type PFN_vkResetDescriptorPool = unsafe extern "system" fn(
4651    _device: Device,
4652    _descriptor_pool: DescriptorPool,
4653    _flags: DescriptorPoolResetFlags,
4654) -> Result;
4655
4656/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetEvent.html>
4657pub type PFN_vkResetEvent = unsafe extern "system" fn(_device: Device, _event: Event) -> Result;
4658
4659/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetFences.html>
4660pub type PFN_vkResetFences =
4661    unsafe extern "system" fn(_device: Device, _fence_count: u32, _fences: *const Fence) -> Result;
4662
4663/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetQueryPool.html>
4664pub type PFN_vkResetQueryPool = unsafe extern "system" fn(
4665    _device: Device,
4666    _query_pool: QueryPool,
4667    _first_query: u32,
4668    _query_count: u32,
4669);
4670
4671/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkResetQueryPoolEXT.html>
4672pub type PFN_vkResetQueryPoolEXT = PFN_vkResetQueryPool;
4673
4674/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetBufferCollectionBufferConstraintsFUCHSIA.html>
4675pub type PFN_vkSetBufferCollectionBufferConstraintsFUCHSIA = unsafe extern "system" fn(
4676    _device: Device,
4677    _collection: BufferCollectionFUCHSIA,
4678    _buffer_constraints_info: *const BufferConstraintsInfoFUCHSIA,
4679) -> Result;
4680
4681/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetBufferCollectionImageConstraintsFUCHSIA.html>
4682pub type PFN_vkSetBufferCollectionImageConstraintsFUCHSIA = unsafe extern "system" fn(
4683    _device: Device,
4684    _collection: BufferCollectionFUCHSIA,
4685    _image_constraints_info: *const ImageConstraintsInfoFUCHSIA,
4686) -> Result;
4687
4688/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetDebugUtilsObjectNameEXT.html>
4689pub type PFN_vkSetDebugUtilsObjectNameEXT = unsafe extern "system" fn(
4690    _device: Device,
4691    _name_info: *const DebugUtilsObjectNameInfoEXT,
4692) -> Result;
4693
4694/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetDebugUtilsObjectTagEXT.html>
4695pub type PFN_vkSetDebugUtilsObjectTagEXT = unsafe extern "system" fn(
4696    _device: Device,
4697    _tag_info: *const DebugUtilsObjectTagInfoEXT,
4698) -> Result;
4699
4700/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetDeviceMemoryPriorityEXT.html>
4701pub type PFN_vkSetDeviceMemoryPriorityEXT =
4702    unsafe extern "system" fn(_device: Device, _memory: DeviceMemory, _priority: f32);
4703
4704/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetEvent.html>
4705pub type PFN_vkSetEvent = unsafe extern "system" fn(_device: Device, _event: Event) -> Result;
4706
4707/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetHdrMetadataEXT.html>
4708pub type PFN_vkSetHdrMetadataEXT = unsafe extern "system" fn(
4709    _device: Device,
4710    _swapchain_count: u32,
4711    _swapchains: *const SwapchainKHR,
4712    _metadata: *const HdrMetadataEXT,
4713);
4714
4715/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetLatencyMarkerNV.html>
4716pub type PFN_vkSetLatencyMarkerNV = unsafe extern "system" fn(
4717    _device: Device,
4718    _swapchain: SwapchainKHR,
4719    _latency_marker_info: *const SetLatencyMarkerInfoNV,
4720);
4721
4722/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetLatencySleepModeNV.html>
4723pub type PFN_vkSetLatencySleepModeNV = unsafe extern "system" fn(
4724    _device: Device,
4725    _swapchain: SwapchainKHR,
4726    _sleep_mode_info: *const LatencySleepModeInfoNV,
4727) -> Result;
4728
4729/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetLocalDimmingAMD.html>
4730pub type PFN_vkSetLocalDimmingAMD = unsafe extern "system" fn(
4731    _device: Device,
4732    _swap_chain: SwapchainKHR,
4733    _local_dimming_enable: Bool32,
4734);
4735
4736/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetPrivateData.html>
4737pub type PFN_vkSetPrivateData = unsafe extern "system" fn(
4738    _device: Device,
4739    _object_type: ObjectType,
4740    _object_handle: u64,
4741    _private_data_slot: PrivateDataSlot,
4742    _data: u64,
4743) -> Result;
4744
4745/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSetPrivateDataEXT.html>
4746pub type PFN_vkSetPrivateDataEXT = PFN_vkSetPrivateData;
4747
4748/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSignalSemaphore.html>
4749pub type PFN_vkSignalSemaphore =
4750    unsafe extern "system" fn(_device: Device, _signal_info: *const SemaphoreSignalInfo) -> Result;
4751
4752/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSignalSemaphoreKHR.html>
4753pub type PFN_vkSignalSemaphoreKHR = PFN_vkSignalSemaphore;
4754
4755/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkSubmitDebugUtilsMessageEXT.html>
4756pub type PFN_vkSubmitDebugUtilsMessageEXT = unsafe extern "system" fn(
4757    _instance: Instance,
4758    _message_severity: DebugUtilsMessageSeverityFlagsEXT,
4759    _message_types: DebugUtilsMessageTypeFlagsEXT,
4760    _callback_data: *const DebugUtilsMessengerCallbackDataEXT,
4761);
4762
4763/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkTransitionImageLayout.html>
4764pub type PFN_vkTransitionImageLayout = unsafe extern "system" fn(
4765    _device: Device,
4766    _transition_count: u32,
4767    _transitions: *const HostImageLayoutTransitionInfo,
4768) -> Result;
4769
4770/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkTransitionImageLayoutEXT.html>
4771pub type PFN_vkTransitionImageLayoutEXT = PFN_vkTransitionImageLayout;
4772
4773/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkTrimCommandPool.html>
4774pub type PFN_vkTrimCommandPool = unsafe extern "system" fn(
4775    _device: Device,
4776    _command_pool: CommandPool,
4777    _flags: CommandPoolTrimFlags,
4778);
4779
4780/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkTrimCommandPoolKHR.html>
4781pub type PFN_vkTrimCommandPoolKHR = PFN_vkTrimCommandPool;
4782
4783/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUninitializePerformanceApiINTEL.html>
4784pub type PFN_vkUninitializePerformanceApiINTEL = unsafe extern "system" fn(_device: Device);
4785
4786/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUnmapMemory.html>
4787pub type PFN_vkUnmapMemory = unsafe extern "system" fn(_device: Device, _memory: DeviceMemory);
4788
4789/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUnmapMemory2.html>
4790pub type PFN_vkUnmapMemory2 = unsafe extern "system" fn(
4791    _device: Device,
4792    _memory_unmap_info: *const MemoryUnmapInfo,
4793) -> Result;
4794
4795/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUnmapMemory2KHR.html>
4796pub type PFN_vkUnmapMemory2KHR = PFN_vkUnmapMemory2;
4797
4798/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateDescriptorSetWithTemplate.html>
4799pub type PFN_vkUpdateDescriptorSetWithTemplate = unsafe extern "system" fn(
4800    _device: Device,
4801    _descriptor_set: DescriptorSet,
4802    _descriptor_update_template: DescriptorUpdateTemplate,
4803    _data: *const c_void,
4804);
4805
4806/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateDescriptorSetWithTemplateKHR.html>
4807pub type PFN_vkUpdateDescriptorSetWithTemplateKHR = PFN_vkUpdateDescriptorSetWithTemplate;
4808
4809/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateDescriptorSets.html>
4810pub type PFN_vkUpdateDescriptorSets = unsafe extern "system" fn(
4811    _device: Device,
4812    _descriptor_write_count: u32,
4813    _descriptor_writes: *const WriteDescriptorSet,
4814    _descriptor_copy_count: u32,
4815    _descriptor_copies: *const CopyDescriptorSet,
4816);
4817
4818/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateIndirectExecutionSetPipelineEXT.html>
4819pub type PFN_vkUpdateIndirectExecutionSetPipelineEXT = unsafe extern "system" fn(
4820    _device: Device,
4821    _indirect_execution_set: IndirectExecutionSetEXT,
4822    _execution_set_write_count: u32,
4823    _execution_set_writes: *const WriteIndirectExecutionSetPipelineEXT,
4824);
4825
4826/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateIndirectExecutionSetShaderEXT.html>
4827pub type PFN_vkUpdateIndirectExecutionSetShaderEXT = unsafe extern "system" fn(
4828    _device: Device,
4829    _indirect_execution_set: IndirectExecutionSetEXT,
4830    _execution_set_write_count: u32,
4831    _execution_set_writes: *const WriteIndirectExecutionSetShaderEXT,
4832);
4833
4834/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkUpdateVideoSessionParametersKHR.html>
4835pub type PFN_vkUpdateVideoSessionParametersKHR = unsafe extern "system" fn(
4836    _device: Device,
4837    _video_session_parameters: VideoSessionParametersKHR,
4838    _update_info: *const VideoSessionParametersUpdateInfoKHR,
4839) -> Result;
4840
4841/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWaitForFences.html>
4842pub type PFN_vkWaitForFences = unsafe extern "system" fn(
4843    _device: Device,
4844    _fence_count: u32,
4845    _fences: *const Fence,
4846    _wait_all: Bool32,
4847    _timeout: u64,
4848) -> Result;
4849
4850/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWaitForPresentKHR.html>
4851pub type PFN_vkWaitForPresentKHR = unsafe extern "system" fn(
4852    _device: Device,
4853    _swapchain: SwapchainKHR,
4854    _present_id: u64,
4855    _timeout: u64,
4856) -> Result;
4857
4858/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWaitSemaphores.html>
4859pub type PFN_vkWaitSemaphores = unsafe extern "system" fn(
4860    _device: Device,
4861    _wait_info: *const SemaphoreWaitInfo,
4862    _timeout: u64,
4863) -> Result;
4864
4865/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWaitSemaphoresKHR.html>
4866pub type PFN_vkWaitSemaphoresKHR = PFN_vkWaitSemaphores;
4867
4868/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWriteAccelerationStructuresPropertiesKHR.html>
4869pub type PFN_vkWriteAccelerationStructuresPropertiesKHR = unsafe extern "system" fn(
4870    _device: Device,
4871    _acceleration_structure_count: u32,
4872    _acceleration_structures: *const AccelerationStructureKHR,
4873    _query_type: QueryType,
4874    _data_size: usize,
4875    _data: *mut c_void,
4876    _stride: usize,
4877) -> Result;
4878
4879/// <https://www.khronos.org/registry/vulkan/specs/latest/man/html/vkWriteMicromapsPropertiesEXT.html>
4880pub type PFN_vkWriteMicromapsPropertiesEXT = unsafe extern "system" fn(
4881    _device: Device,
4882    _micromap_count: u32,
4883    _micromaps: *const MicromapEXT,
4884    _query_type: QueryType,
4885    _data_size: usize,
4886    _data: *mut c_void,
4887    _stride: usize,
4888) -> Result;