1 /**
2  * Dlang vulkan type definitions
3  *
4  * Copyright: Copyright 2015-2016 The Khronos Group Inc.; Copyright 2016 Alex Parrill, Peter Particle.
5  * License:   $(https://opensource.org/licenses/MIT, MIT License).
6  * Authors: Copyright 2016 Alex Parrill, Peter Particle
7  */
8 module erupted.types;
9 
10 import std.bitmanip : bitfields;
11 
12 nothrow @nogc:
13 
14 // defined in vk_platform.h
15 alias uint8_t   = ubyte;
16 alias uint16_t  = ushort;
17 alias uint32_t  = uint;
18 alias uint64_t  = ulong;
19 alias int8_t    = byte;
20 alias int16_t   = short;
21 alias int32_t   = int;
22 alias int64_t   = long;
23 
24 
25 enum VK_NULL_HANDLE = null;
26 
27 enum VK_DEFINE_HANDLE( string name ) = "struct " ~ name ~ "_handle; alias " ~ name ~ " = " ~ name ~ "_handle*;";
28 
29 version( X86_64 ) {
30     alias VK_DEFINE_NON_DISPATCHABLE_HANDLE( string name ) = VK_DEFINE_HANDLE!name;
31     enum VK_NULL_ND_HANDLE = null;
32 } else {
33     enum VK_DEFINE_NON_DISPATCHABLE_HANDLE( string name ) = "alias " ~ name ~ " = ulong;";
34     enum VK_NULL_ND_HANDLE = 0uL;
35 }
36 
37 
38 deprecated( "These defines have been derecated, use VK_MAKE_API_VERSION and VK_API_ variants instead!" ) {
39     // version functions / macros
40     pure {
41         uint VK_MAKE_VERSION( uint major, uint minor, uint patch ) { return ( major << 22 ) | ( minor << 12 ) | ( patch ); }
42         uint VK_VERSION_MAJOR( uint ver ) { return ver >> 22; }
43         uint VK_VERSION_MINOR( uint ver ) { return ( ver >> 12 ) & 0x3ff; }
44         uint VK_VERSION_PATCH( uint ver ) { return ver & 0xfff; }
45     }
46 }
47 
48 // version functions / macros
49 pure {
50     uint VK_MAKE_API_VERSION( uint variant, uint major, uint minor, uint patch ) { return ( variant << 29 ) | ( major << 22 ) | ( minor << 12 ) | ( patch ); }
51     uint VK_API_VERSION_VARIANT( uint ver ) { return ver >> 29; }
52     uint VK_API_VERSION_MAJOR( uint ver ) { return ( ver >> 22 ) & 0x7F; }
53     uint VK_API_VERSION_MINOR( uint ver ) { return ( ver >> 12 ) & 0x3FF; }
54     uint VK_API_VERSION_PATCH( uint ver ) { return ver & 0xFFF; }
55 }
56 
57 // Vulkan 1.0 version number
58 enum VK_API_VERSION_1_0 = VK_MAKE_API_VERSION( 0, 1, 0, 0 );  // Patch version should always be set to 0
59 
60 // Linkage of debug and allocation callbacks
61 extern( System ):
62 
63 // Version of this file (corresponding c header)
64 enum VK_HEADER_VERSION = 219;
65 
66 // Complete version of this file (corresponding c header)
67 enum VK_HEADER_VERSION_COMPLETE = VK_MAKE_API_VERSION( 0, 1, 3, VK_HEADER_VERSION );
68 
69 
70 // - VK_VERSION_1_0 -
71 enum VK_VERSION_1_0 = 1;
72 
73 alias VkBool32 = uint32_t;
74 alias VkDeviceAddress = uint64_t;
75 alias VkDeviceSize = uint64_t;
76 alias VkFlags = uint32_t;
77 alias VkSampleMask = uint32_t;
78 
79 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkBuffer} );
80 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkImage} );
81 mixin( VK_DEFINE_HANDLE!q{VkInstance} );
82 mixin( VK_DEFINE_HANDLE!q{VkPhysicalDevice} );
83 mixin( VK_DEFINE_HANDLE!q{VkDevice} );
84 mixin( VK_DEFINE_HANDLE!q{VkQueue} );
85 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkSemaphore} );
86 mixin( VK_DEFINE_HANDLE!q{VkCommandBuffer} );
87 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkFence} );
88 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDeviceMemory} );
89 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkEvent} );
90 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkQueryPool} );
91 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkBufferView} );
92 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkImageView} );
93 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkShaderModule} );
94 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkPipelineCache} );
95 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkPipelineLayout} );
96 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkPipeline} );
97 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkRenderPass} );
98 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDescriptorSetLayout} );
99 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkSampler} );
100 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDescriptorSet} );
101 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDescriptorPool} );
102 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkFramebuffer} );
103 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkCommandPool} );
104 
105 enum VK_ATTACHMENT_UNUSED = (~0U);
106 enum VK_FALSE = 0;
107 enum VK_LOD_CLAMP_NONE = 1000.0F;
108 enum VK_QUEUE_FAMILY_IGNORED = (~0U);
109 enum VK_REMAINING_ARRAY_LAYERS = (~0U);
110 enum VK_REMAINING_MIP_LEVELS = (~0U);
111 enum VK_SUBPASS_EXTERNAL = (~0U);
112 enum VK_TRUE = 1;
113 enum VK_WHOLE_SIZE = (~0UL);
114 enum VK_MAX_MEMORY_TYPES = 32;
115 enum VK_MAX_PHYSICAL_DEVICE_NAME_SIZE = 256;
116 enum VK_UUID_SIZE = 16;
117 enum VK_MAX_EXTENSION_NAME_SIZE = 256;
118 enum VK_MAX_DESCRIPTION_SIZE = 256;
119 enum VK_MAX_MEMORY_HEAPS = 16;
120 
121 enum VkResult {
122     VK_SUCCESS                                                   = 0,
123     VK_NOT_READY                                                 = 1,
124     VK_TIMEOUT                                                   = 2,
125     VK_EVENT_SET                                                 = 3,
126     VK_EVENT_RESET                                               = 4,
127     VK_INCOMPLETE                                                = 5,
128     VK_ERROR_OUT_OF_HOST_MEMORY                                  = -1,
129     VK_ERROR_OUT_OF_DEVICE_MEMORY                                = -2,
130     VK_ERROR_INITIALIZATION_FAILED                               = -3,
131     VK_ERROR_DEVICE_LOST                                         = -4,
132     VK_ERROR_MEMORY_MAP_FAILED                                   = -5,
133     VK_ERROR_LAYER_NOT_PRESENT                                   = -6,
134     VK_ERROR_EXTENSION_NOT_PRESENT                               = -7,
135     VK_ERROR_FEATURE_NOT_PRESENT                                 = -8,
136     VK_ERROR_INCOMPATIBLE_DRIVER                                 = -9,
137     VK_ERROR_TOO_MANY_OBJECTS                                    = -10,
138     VK_ERROR_FORMAT_NOT_SUPPORTED                                = -11,
139     VK_ERROR_FRAGMENTED_POOL                                     = -12,
140     VK_ERROR_UNKNOWN                                             = -13,
141     VK_ERROR_OUT_OF_POOL_MEMORY                                  = -1000069000,
142     VK_ERROR_INVALID_EXTERNAL_HANDLE                             = -1000072003,
143     VK_ERROR_FRAGMENTATION                                       = -1000161000,
144     VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS                      = -1000257000,
145     VK_PIPELINE_COMPILE_REQUIRED                                 = 1000297000,
146     VK_ERROR_SURFACE_LOST_KHR                                    = -1000000000,
147     VK_ERROR_NATIVE_WINDOW_IN_USE_KHR                            = -1000000001,
148     VK_SUBOPTIMAL_KHR                                            = 1000001003,
149     VK_ERROR_OUT_OF_DATE_KHR                                     = -1000001004,
150     VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                            = -1000003001,
151     VK_ERROR_VALIDATION_FAILED_EXT                               = -1000011001,
152     VK_ERROR_INVALID_SHADER_NV                                   = -1000012000,
153     VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR                       = -1000023000,
154     VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR              = -1000023001,
155     VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR           = -1000023002,
156     VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR              = -1000023003,
157     VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR               = -1000023004,
158     VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR                 = -1000023005,
159     VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT        = -1000158000,
160     VK_ERROR_NOT_PERMITTED_KHR                                   = -1000174001,
161     VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT                 = -1000255000,
162     VK_THREAD_IDLE_KHR                                           = 1000268000,
163     VK_THREAD_DONE_KHR                                           = 1000268001,
164     VK_OPERATION_DEFERRED_KHR                                    = 1000268002,
165     VK_OPERATION_NOT_DEFERRED_KHR                                = 1000268003,
166     VK_ERROR_COMPRESSION_EXHAUSTED_EXT                           = -1000338000,
167     VK_ERROR_OUT_OF_POOL_MEMORY_KHR                              = VK_ERROR_OUT_OF_POOL_MEMORY,
168     VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR                         = VK_ERROR_INVALID_EXTERNAL_HANDLE,
169     VK_ERROR_FRAGMENTATION_EXT                                   = VK_ERROR_FRAGMENTATION,
170     VK_ERROR_NOT_PERMITTED_EXT                                   = VK_ERROR_NOT_PERMITTED_KHR,
171     VK_ERROR_INVALID_DEVICE_ADDRESS_EXT                          = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
172     VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR                  = VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS,
173     VK_PIPELINE_COMPILE_REQUIRED_EXT                             = VK_PIPELINE_COMPILE_REQUIRED,
174     VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT                       = VK_PIPELINE_COMPILE_REQUIRED,
175     VK_RESULT_BEGIN_RANGE                                        = VK_ERROR_UNKNOWN,
176     VK_RESULT_END_RANGE                                          = VK_INCOMPLETE,
177     VK_RESULT_RANGE_SIZE                                         = VK_INCOMPLETE - VK_ERROR_UNKNOWN + 1,
178     VK_RESULT_MAX_ENUM                                           = 0x7FFFFFFF
179 }
180 
181 enum VK_SUCCESS                                                  = VkResult.VK_SUCCESS;
182 enum VK_NOT_READY                                                = VkResult.VK_NOT_READY;
183 enum VK_TIMEOUT                                                  = VkResult.VK_TIMEOUT;
184 enum VK_EVENT_SET                                                = VkResult.VK_EVENT_SET;
185 enum VK_EVENT_RESET                                              = VkResult.VK_EVENT_RESET;
186 enum VK_INCOMPLETE                                               = VkResult.VK_INCOMPLETE;
187 enum VK_ERROR_OUT_OF_HOST_MEMORY                                 = VkResult.VK_ERROR_OUT_OF_HOST_MEMORY;
188 enum VK_ERROR_OUT_OF_DEVICE_MEMORY                               = VkResult.VK_ERROR_OUT_OF_DEVICE_MEMORY;
189 enum VK_ERROR_INITIALIZATION_FAILED                              = VkResult.VK_ERROR_INITIALIZATION_FAILED;
190 enum VK_ERROR_DEVICE_LOST                                        = VkResult.VK_ERROR_DEVICE_LOST;
191 enum VK_ERROR_MEMORY_MAP_FAILED                                  = VkResult.VK_ERROR_MEMORY_MAP_FAILED;
192 enum VK_ERROR_LAYER_NOT_PRESENT                                  = VkResult.VK_ERROR_LAYER_NOT_PRESENT;
193 enum VK_ERROR_EXTENSION_NOT_PRESENT                              = VkResult.VK_ERROR_EXTENSION_NOT_PRESENT;
194 enum VK_ERROR_FEATURE_NOT_PRESENT                                = VkResult.VK_ERROR_FEATURE_NOT_PRESENT;
195 enum VK_ERROR_INCOMPATIBLE_DRIVER                                = VkResult.VK_ERROR_INCOMPATIBLE_DRIVER;
196 enum VK_ERROR_TOO_MANY_OBJECTS                                   = VkResult.VK_ERROR_TOO_MANY_OBJECTS;
197 enum VK_ERROR_FORMAT_NOT_SUPPORTED                               = VkResult.VK_ERROR_FORMAT_NOT_SUPPORTED;
198 enum VK_ERROR_FRAGMENTED_POOL                                    = VkResult.VK_ERROR_FRAGMENTED_POOL;
199 enum VK_ERROR_UNKNOWN                                            = VkResult.VK_ERROR_UNKNOWN;
200 enum VK_ERROR_OUT_OF_POOL_MEMORY                                 = VkResult.VK_ERROR_OUT_OF_POOL_MEMORY;
201 enum VK_ERROR_INVALID_EXTERNAL_HANDLE                            = VkResult.VK_ERROR_INVALID_EXTERNAL_HANDLE;
202 enum VK_ERROR_FRAGMENTATION                                      = VkResult.VK_ERROR_FRAGMENTATION;
203 enum VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS                     = VkResult.VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS;
204 enum VK_PIPELINE_COMPILE_REQUIRED                                = VkResult.VK_PIPELINE_COMPILE_REQUIRED;
205 enum VK_ERROR_SURFACE_LOST_KHR                                   = VkResult.VK_ERROR_SURFACE_LOST_KHR;
206 enum VK_ERROR_NATIVE_WINDOW_IN_USE_KHR                           = VkResult.VK_ERROR_NATIVE_WINDOW_IN_USE_KHR;
207 enum VK_SUBOPTIMAL_KHR                                           = VkResult.VK_SUBOPTIMAL_KHR;
208 enum VK_ERROR_OUT_OF_DATE_KHR                                    = VkResult.VK_ERROR_OUT_OF_DATE_KHR;
209 enum VK_ERROR_INCOMPATIBLE_DISPLAY_KHR                           = VkResult.VK_ERROR_INCOMPATIBLE_DISPLAY_KHR;
210 enum VK_ERROR_VALIDATION_FAILED_EXT                              = VkResult.VK_ERROR_VALIDATION_FAILED_EXT;
211 enum VK_ERROR_INVALID_SHADER_NV                                  = VkResult.VK_ERROR_INVALID_SHADER_NV;
212 enum VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR                      = VkResult.VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR;
213 enum VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR             = VkResult.VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR;
214 enum VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR          = VkResult.VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR;
215 enum VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR             = VkResult.VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR;
216 enum VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR              = VkResult.VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR;
217 enum VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR                = VkResult.VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR;
218 enum VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT       = VkResult.VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT;
219 enum VK_ERROR_NOT_PERMITTED_KHR                                  = VkResult.VK_ERROR_NOT_PERMITTED_KHR;
220 enum VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT                = VkResult.VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT;
221 enum VK_THREAD_IDLE_KHR                                          = VkResult.VK_THREAD_IDLE_KHR;
222 enum VK_THREAD_DONE_KHR                                          = VkResult.VK_THREAD_DONE_KHR;
223 enum VK_OPERATION_DEFERRED_KHR                                   = VkResult.VK_OPERATION_DEFERRED_KHR;
224 enum VK_OPERATION_NOT_DEFERRED_KHR                               = VkResult.VK_OPERATION_NOT_DEFERRED_KHR;
225 enum VK_ERROR_COMPRESSION_EXHAUSTED_EXT                          = VkResult.VK_ERROR_COMPRESSION_EXHAUSTED_EXT;
226 enum VK_ERROR_OUT_OF_POOL_MEMORY_KHR                             = VkResult.VK_ERROR_OUT_OF_POOL_MEMORY_KHR;
227 enum VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR                        = VkResult.VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR;
228 enum VK_ERROR_FRAGMENTATION_EXT                                  = VkResult.VK_ERROR_FRAGMENTATION_EXT;
229 enum VK_ERROR_NOT_PERMITTED_EXT                                  = VkResult.VK_ERROR_NOT_PERMITTED_EXT;
230 enum VK_ERROR_INVALID_DEVICE_ADDRESS_EXT                         = VkResult.VK_ERROR_INVALID_DEVICE_ADDRESS_EXT;
231 enum VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR                 = VkResult.VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR;
232 enum VK_PIPELINE_COMPILE_REQUIRED_EXT                            = VkResult.VK_PIPELINE_COMPILE_REQUIRED_EXT;
233 enum VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT                      = VkResult.VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT;
234 enum VK_RESULT_BEGIN_RANGE                                       = VkResult.VK_RESULT_BEGIN_RANGE;
235 enum VK_RESULT_END_RANGE                                         = VkResult.VK_RESULT_END_RANGE;
236 enum VK_RESULT_RANGE_SIZE                                        = VkResult.VK_RESULT_RANGE_SIZE;
237 enum VK_RESULT_MAX_ENUM                                          = VkResult.VK_RESULT_MAX_ENUM;
238 
239 enum VkStructureType {
240     VK_STRUCTURE_TYPE_APPLICATION_INFO                                                           = 0,
241     VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                                                       = 1,
242     VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO                                                   = 2,
243     VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO                                                         = 3,
244     VK_STRUCTURE_TYPE_SUBMIT_INFO                                                                = 4,
245     VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO                                                       = 5,
246     VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE                                                        = 6,
247     VK_STRUCTURE_TYPE_BIND_SPARSE_INFO                                                           = 7,
248     VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                                                          = 8,
249     VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                                                      = 9,
250     VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                                                          = 10,
251     VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                                                     = 11,
252     VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                                                         = 12,
253     VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO                                                    = 13,
254     VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                                                          = 14,
255     VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                                                     = 15,
256     VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO                                                  = 16,
257     VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO                                                 = 17,
258     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO                                          = 18,
259     VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO                                    = 19,
260     VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO                                  = 20,
261     VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO                                    = 21,
262     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO                                        = 22,
263     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO                                   = 23,
264     VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO                                     = 24,
265     VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO                                   = 25,
266     VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO                                     = 26,
267     VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO                                         = 27,
268     VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO                                              = 28,
269     VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO                                               = 29,
270     VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO                                                = 30,
271     VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                                                        = 31,
272     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO                                          = 32,
273     VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO                                                = 33,
274     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO                                               = 34,
275     VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                                                       = 35,
276     VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                                                        = 36,
277     VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO                                                    = 37,
278     VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO                                                    = 38,
279     VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO                                                   = 39,
280     VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO                                               = 40,
281     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO                                            = 41,
282     VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO                                                  = 42,
283     VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO                                                     = 43,
284     VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                                                      = 44,
285     VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                                                       = 45,
286     VK_STRUCTURE_TYPE_MEMORY_BARRIER                                                             = 46,
287     VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO                                                = 47,
288     VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO                                                  = 48,
289     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES                                        = 1000094000,
290     VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO                                                    = 1000157000,
291     VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO                                                     = 1000157001,
292     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES                                     = 1000083000,
293     VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS                                              = 1000127000,
294     VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO                                             = 1000127001,
295     VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO                                                 = 1000060000,
296     VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO                                        = 1000060003,
297     VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO                                     = 1000060004,
298     VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO                                                   = 1000060005,
299     VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO                                              = 1000060006,
300     VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO                                       = 1000060013,
301     VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO                                        = 1000060014,
302     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES                                           = 1000070000,
303     VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO                                            = 1000070001,
304     VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2                                          = 1000146000,
305     VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2                                           = 1000146001,
306     VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2                                    = 1000146002,
307     VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2                                                      = 1000146003,
308     VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2                                         = 1000146004,
309     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2                                                 = 1000059000,
310     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2                                               = 1000059001,
311     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2                                                        = 1000059002,
312     VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2                                                  = 1000059003,
313     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2                                        = 1000059004,
314     VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2                                                  = 1000059005,
315     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2                                        = 1000059006,
316     VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2                                           = 1000059007,
317     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2                                 = 1000059008,
318     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES                                  = 1000117000,
319     VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO                            = 1000117001,
320     VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO                                               = 1000117002,
321     VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO                      = 1000117003,
322     VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO                                          = 1000053000,
323     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES                                         = 1000053001,
324     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES                                       = 1000053002,
325     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES                                 = 1000120000,
326     VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO                                                      = 1000145000,
327     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES                                  = 1000145001,
328     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES                                = 1000145002,
329     VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2                                                        = 1000145003,
330     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO                                       = 1000156000,
331     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO                                              = 1000156001,
332     VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO                                               = 1000156002,
333     VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO                                       = 1000156003,
334     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES                          = 1000156004,
335     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES                           = 1000156005,
336     VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO                                     = 1000085000,
337     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO                                 = 1000071000,
338     VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES                                           = 1000071001,
339     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO                                       = 1000071002,
340     VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES                                                 = 1000071003,
341     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES                                              = 1000071004,
342     VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO                                         = 1000072000,
343     VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO                                          = 1000072001,
344     VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO                                                = 1000072002,
345     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO                                        = 1000112000,
346     VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES                                                  = 1000112001,
347     VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO                                                   = 1000113000,
348     VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO                                               = 1000077000,
349     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO                                    = 1000076000,
350     VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES                                              = 1000076001,
351     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES                                   = 1000168000,
352     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT                                              = 1000168001,
353     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES                            = 1000063000,
354     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES                                        = 49,
355     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES                                      = 50,
356     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES                                        = 51,
357     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES                                      = 52,
358     VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO                                              = 1000147000,
359     VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2                                                   = 1000109000,
360     VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2                                                     = 1000109001,
361     VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2                                                      = 1000109002,
362     VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2                                                       = 1000109003,
363     VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2                                                  = 1000109004,
364     VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO                                                         = 1000109005,
365     VK_STRUCTURE_TYPE_SUBPASS_END_INFO                                                           = 1000109006,
366     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES                                      = 1000177000,
367     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES                                          = 1000196000,
368     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES                               = 1000180000,
369     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES                               = 1000082000,
370     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES                                  = 1000197000,
371     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO                            = 1000161000,
372     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES                               = 1000161001,
373     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES                             = 1000161002,
374     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO                     = 1000161003,
375     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT                    = 1000161004,
376     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES                           = 1000199000,
377     VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE                                  = 1000199001,
378     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES                               = 1000221000,
379     VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO                                            = 1000246000,
380     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES                           = 1000130000,
381     VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO                                         = 1000130001,
382     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES                               = 1000211000,
383     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES                             = 1000108000,
384     VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO                                        = 1000108001,
385     VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO                                          = 1000108002,
386     VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO                                          = 1000108003,
387     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES                    = 1000253000,
388     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES                    = 1000175000,
389     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES                    = 1000241000,
390     VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT                                        = 1000241001,
391     VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT                                      = 1000241002,
392     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES                                  = 1000261000,
393     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES                                = 1000207000,
394     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES                              = 1000207001,
395     VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO                                                 = 1000207002,
396     VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO                                             = 1000207003,
397     VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO                                                        = 1000207004,
398     VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO                                                      = 1000207005,
399     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES                             = 1000257000,
400     VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO                                                 = 1000244001,
401     VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO                                  = 1000257002,
402     VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO                                = 1000257003,
403     VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO                                  = 1000257004,
404     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES                                        = 53,
405     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES                                      = 54,
406     VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO                                     = 1000192000,
407     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES                       = 1000215000,
408     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES                                            = 1000245000,
409     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES                = 1000276000,
410     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES                                      = 1000295000,
411     VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO                                            = 1000295001,
412     VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO                                              = 1000295002,
413     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES                   = 1000297000,
414     VK_STRUCTURE_TYPE_MEMORY_BARRIER_2                                                           = 1000314000,
415     VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2                                                    = 1000314001,
416     VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2                                                     = 1000314002,
417     VK_STRUCTURE_TYPE_DEPENDENCY_INFO                                                            = 1000314003,
418     VK_STRUCTURE_TYPE_SUBMIT_INFO_2                                                              = 1000314004,
419     VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO                                                      = 1000314005,
420     VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO                                                 = 1000314006,
421     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES                                 = 1000314007,
422     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES                  = 1000325000,
423     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES                                  = 1000335000,
424     VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2                                                         = 1000337000,
425     VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2                                                          = 1000337001,
426     VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2                                                = 1000337002,
427     VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2                                                = 1000337003,
428     VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2                                                          = 1000337004,
429     VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2                                                       = 1000337005,
430     VK_STRUCTURE_TYPE_BUFFER_COPY_2                                                              = 1000337006,
431     VK_STRUCTURE_TYPE_IMAGE_COPY_2                                                               = 1000337007,
432     VK_STRUCTURE_TYPE_IMAGE_BLIT_2                                                               = 1000337008,
433     VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2                                                        = 1000337009,
434     VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2                                                            = 1000337010,
435     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES                           = 1000225000,
436     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO                   = 1000225001,
437     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES                             = 1000225002,
438     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES                              = 1000138000,
439     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES                            = 1000138001,
440     VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK                                  = 1000138002,
441     VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO                           = 1000138003,
442     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES                      = 1000066000,
443     VK_STRUCTURE_TYPE_RENDERING_INFO                                                             = 1000044000,
444     VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO                                                  = 1000044001,
445     VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO                                             = 1000044002,
446     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES                                 = 1000044003,
447     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO                                  = 1000044004,
448     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES                        = 1000280000,
449     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES                      = 1000280001,
450     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES                          = 1000281001,
451     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3                                                        = 1000360000,
452     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES                                     = 1000413000,
453     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES                                   = 1000413001,
454     VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS                                          = 1000413002,
455     VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS                                           = 1000413003,
456     VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR                                                  = 1000001000,
457     VK_STRUCTURE_TYPE_PRESENT_INFO_KHR                                                           = 1000001001,
458     VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR                                      = 1000060007,
459     VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR                                            = 1000060008,
460     VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR                                       = 1000060009,
461     VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR                                                = 1000060010,
462     VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR                                              = 1000060011,
463     VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR                                     = 1000060012,
464     VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR                                               = 1000002000,
465     VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR                                            = 1000002001,
466     VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR                                                   = 1000003000,
467     VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR                                               = 1000004000,
468     VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR                                                = 1000005000,
469     VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR                                            = 1000006000,
470     VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR                                            = 1000008000,
471     VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR                                              = 1000009000,
472     VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT                                      = 1000011000,
473     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD                       = 1000018000,
474     VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT                                          = 1000022000,
475     VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT                                           = 1000022001,
476     VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT                                               = 1000022002,
477     VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR                                                          = 1000023000,
478     VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR                                                     = 1000023001,
479     VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR                                                 = 1000023002,
480     VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR                                            = 1000023003,
481     VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR                                                      = 1000023004,
482     VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR                                              = 1000023005,
483     VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR                                   = 1000023006,
484     VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR                                   = 1000023007,
485     VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR                                                = 1000023008,
486     VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR                                                  = 1000023009,
487     VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR                                              = 1000023010,
488     VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR                                                   = 1000023011,
489     VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR                                        = 1000023012,
490     VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR                                                         = 1000023013,
491     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR                                      = 1000023014,
492     VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR                                                = 1000023015,
493     VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_2_KHR                          = 1000023016,
494     VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR                                                      = 1000024000,
495     VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR                                              = 1000024001,
496     VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV                                  = 1000026000,
497     VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV                                 = 1000026001,
498     VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV                               = 1000026002,
499     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT                            = 1000028000,
500     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT                          = 1000028001,
501     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT                        = 1000028002,
502     VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX                                                  = 1000029000,
503     VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX                                                = 1000029001,
504     VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX                                                         = 1000029002,
505     VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX                                                 = 1000030000,
506     VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX                                          = 1000030001,
507     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT                                         = 1000038000,
508     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT                       = 1000038001,
509     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT                          = 1000038002,
510     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT                                       = 1000038003,
511     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT                                        = 1000038004,
512     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT                                           = 1000038005,
513     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT                              = 1000038006,
514     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT                                              = 1000038007,
515     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT                                    = 1000038008,
516     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT                              = 1000038009,
517     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_EXT                                      = 1000038010,
518     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT                                         = 1000039000,
519     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT                       = 1000039001,
520     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT                          = 1000039002,
521     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT                                       = 1000039003,
522     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT                                        = 1000039004,
523     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_EXT                                   = 1000039005,
524     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT                              = 1000039006,
525     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT                                              = 1000039007,
526     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT                                      = 1000039008,
527     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT                                    = 1000039009,
528     VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT                              = 1000039010,
529     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT                                         = 1000040000,
530     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT                                         = 1000040001,
531     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT                                                  = 1000040002,
532     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT                                              = 1000040003,
533     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT                       = 1000040004,
534     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT                          = 1000040005,
535     VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT                                        = 1000040006,
536     VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD                                   = 1000041000,
537     VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR                        = 1000044006,
538     VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT                         = 1000044007,
539     VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD                                           = 1000044008,
540     VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX                                     = 1000044009,
541     VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP                                  = 1000049000,
542     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV                           = 1000050000,
543     VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV                                       = 1000056000,
544     VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV                                             = 1000056001,
545     VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV                                         = 1000057000,
546     VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV                                         = 1000057001,
547     VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV                                  = 1000058000,
548     VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT                                                       = 1000061000,
549     VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN                                                  = 1000062000,
550     VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT                                            = 1000067000,
551     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT                                   = 1000067001,
552     VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                        = 1000073000,
553     VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                        = 1000073001,
554     VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR                                         = 1000073002,
555     VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR                                           = 1000073003,
556     VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR                                                  = 1000074000,
557     VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR                                                   = 1000074001,
558     VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR                                                     = 1000074002,
559     VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR                                 = 1000075000,
560     VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR                                     = 1000078000,
561     VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR                                     = 1000078001,
562     VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR                                                = 1000078002,
563     VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR                                        = 1000078003,
564     VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR                                               = 1000079000,
565     VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR                                                  = 1000079001,
566     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR                             = 1000080000,
567     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT                  = 1000081000,
568     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT                         = 1000081001,
569     VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT                                       = 1000081002,
570     VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR                                                        = 1000084000,
571     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV                           = 1000087000,
572     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT                                                 = 1000090000,
573     VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT                                                     = 1000091000,
574     VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT                                                      = 1000091001,
575     VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT                                                     = 1000091002,
576     VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT                                          = 1000091003,
577     VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE                                                  = 1000092000,
578     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX               = 1000097000,
579     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV                             = 1000098000,
580     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT                           = 1000099000,
581     VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT                           = 1000099001,
582     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT                  = 1000101000,
583     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT                  = 1000101001,
584     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT                             = 1000102000,
585     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT                    = 1000102001,
586     VK_STRUCTURE_TYPE_HDR_METADATA_EXT                                                           = 1000105000,
587     VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR                                    = 1000111000,
588     VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR                                         = 1000114000,
589     VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR                                         = 1000114001,
590     VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR                                            = 1000114002,
591     VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR                                                   = 1000115000,
592     VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR                                                      = 1000115001,
593     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR                             = 1000116000,
594     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR                           = 1000116001,
595     VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR                                     = 1000116002,
596     VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR                                          = 1000116003,
597     VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR                                            = 1000116004,
598     VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR                                                    = 1000116005,
599     VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR                                        = 1000116006,
600     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR                                         = 1000119000,
601     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR                                                 = 1000119001,
602     VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR                                                       = 1000119002,
603     VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR                                                   = 1000121000,
604     VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR                                             = 1000121001,
605     VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR                                              = 1000121002,
606     VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR                                                   = 1000121003,
607     VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR                                           = 1000121004,
608     VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK                                                = 1000122000,
609     VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK                                              = 1000123000,
610     VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT                                           = 1000128000,
611     VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT                                            = 1000128001,
612     VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT                                                      = 1000128002,
613     VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT                                    = 1000128003,
614     VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT                                      = 1000128004,
615     VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID                                      = 1000129000,
616     VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID                                 = 1000129001,
617     VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID                          = 1000129002,
618     VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID                                = 1000129003,
619     VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID                            = 1000129004,
620     VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID                                                    = 1000129005,
621     VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID                        = 1000129006,
622     VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT                                                  = 1000143000,
623     VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT                                = 1000143001,
624     VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT                            = 1000143002,
625     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT                            = 1000143003,
626     VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT                                                 = 1000143004,
627     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT                      = 1000148000,
628     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT                    = 1000148001,
629     VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT                        = 1000148002,
630     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV                            = 1000149000,
631     VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR                            = 1000150007,
632     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR                             = 1000150000,
633     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR                             = 1000150002,
634     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR                             = 1000150003,
635     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR                         = 1000150004,
636     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR                         = 1000150005,
637     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR                                        = 1000150006,
638     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR                                    = 1000150009,
639     VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR                                       = 1000150010,
640     VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR                             = 1000150011,
641     VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR                             = 1000150012,
642     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR                        = 1000150013,
643     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR                      = 1000150014,
644     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR                                     = 1000150017,
645     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR                                = 1000150020,
646     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR                          = 1000347000,
647     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR                        = 1000347001,
648     VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR                                       = 1000150015,
649     VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR                                   = 1000150016,
650     VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR                             = 1000150018,
651     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR                                     = 1000348013,
652     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV                          = 1000152000,
653     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV                             = 1000154000,
654     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV                           = 1000154001,
655     VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT                                    = 1000158000,
656     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT                         = 1000158002,
657     VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT                             = 1000158003,
658     VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT                         = 1000158004,
659     VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT                                   = 1000158005,
660     VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT                                  = 1000158006,
661     VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT                                           = 1000160000,
662     VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT                             = 1000160001,
663     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR                            = 1000163000,
664     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR                          = 1000163001,
665     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV                  = 1000164000,
666     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV                             = 1000164001,
667     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV                           = 1000164002,
668     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV                 = 1000164005,
669     VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV                                        = 1000165000,
670     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV                                      = 1000165001,
671     VK_STRUCTURE_TYPE_GEOMETRY_NV                                                                = 1000165003,
672     VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV                                                      = 1000165004,
673     VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV                                                           = 1000165005,
674     VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV                                 = 1000165006,
675     VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV                             = 1000165007,
676     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV                         = 1000165008,
677     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV                                  = 1000165009,
678     VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV                                    = 1000165011,
679     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV                                             = 1000165012,
680     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV                   = 1000166000,
681     VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV                 = 1000166001,
682     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT                           = 1000170000,
683     VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT                        = 1000170001,
684     VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT                                        = 1000178000,
685     VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT                                         = 1000178001,
686     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT                        = 1000178002,
687     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR                                  = 1000181000,
688     VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD                                  = 1000183000,
689     VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT                                              = 1000184000,
690     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD                                 = 1000185000,
691     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT                                         = 1000187000,
692     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT                       = 1000187001,
693     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT                          = 1000187002,
694     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT                                              = 1000187003,
695     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT                                         = 1000187004,
696     VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT                                        = 1000187005,
697     VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR                               = 1000174000,
698     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR                         = 1000388000,
699     VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR                                = 1000388001,
700     VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD                               = 1000189000,
701     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT                    = 1000190000,
702     VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT                        = 1000190001,
703     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT                      = 1000190002,
704     VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP                                                    = 1000191000,
705     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV                     = 1000201000,
706     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV                                    = 1000202000,
707     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV                                  = 1000202001,
708     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV                         = 1000204000,
709     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV                   = 1000205000,
710     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV                              = 1000205002,
711     VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV                                                         = 1000206000,
712     VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV                                      = 1000206001,
713     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL                  = 1000209000,
714     VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL                             = 1000210000,
715     VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL                                      = 1000210001,
716     VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL                                              = 1000210002,
717     VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL                                       = 1000210003,
718     VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL                                            = 1000210004,
719     VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL                               = 1000210005,
720     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT                                = 1000212000,
721     VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD                                = 1000213000,
722     VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD                               = 1000213001,
723     VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA                                      = 1000214000,
724     VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT                                              = 1000217000,
725     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT                          = 1000218000,
726     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT                        = 1000218001,
727     VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT                           = 1000218002,
728     VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR                                  = 1000226000,
729     VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR                       = 1000226001,
730     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR                       = 1000226002,
731     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR                         = 1000226003,
732     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR                                  = 1000226004,
733     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD                               = 1000227000,
734     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD                               = 1000229000,
735     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT                     = 1000234000,
736     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT                               = 1000237000,
737     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT                               = 1000238000,
738     VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT                                          = 1000238001,
739     VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR                                         = 1000239000,
740     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV            = 1000240000,
741     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT                         = 1000244000,
742     VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT                                      = 1000244002,
743     VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT                                                    = 1000247000,
744     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR                                  = 1000248000,
745     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV                             = 1000249000,
746     VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV                                           = 1000249001,
747     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV                           = 1000249002,
748     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV                        = 1000250000,
749     VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV                           = 1000250001,
750     VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV                                   = 1000250002,
751     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT                     = 1000251000,
752     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT                            = 1000252000,
753     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT                              = 1000254000,
754     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT              = 1000254001,
755     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT                            = 1000254002,
756     VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT                                     = 1000255000,
757     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT                             = 1000255002,
758     VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT                               = 1000255001,
759     VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT                                           = 1000256000,
760     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT                            = 1000259000,
761     VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT                          = 1000259001,
762     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT                          = 1000259002,
763     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT                           = 1000260000,
764     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT                              = 1000265000,
765     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT                        = 1000267000,
766     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR                = 1000269000,
767     VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR                                                          = 1000269001,
768     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR                                         = 1000269002,
769     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR                                               = 1000269003,
770     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR                                          = 1000269004,
771     VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR                            = 1000269005,
772     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT                         = 1000273000,
773     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV                    = 1000277000,
774     VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV                                       = 1000277001,
775     VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV                             = 1000277002,
776     VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV                                          = 1000277003,
777     VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV                                    = 1000277004,
778     VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV                                                 = 1000277005,
779     VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV                             = 1000277006,
780     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV                      = 1000277007,
781     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV                     = 1000278000,
782     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV                        = 1000278001,
783     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT                        = 1000281000,
784     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM                 = 1000282000,
785     VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM                                      = 1000282001,
786     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT                          = 1000284000,
787     VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT                                = 1000284001,
788     VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT                                     = 1000284002,
789     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT                                  = 1000286000,
790     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT                                = 1000286001,
791     VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT                                = 1000287000,
792     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT                         = 1000287001,
793     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT                           = 1000287002,
794     VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR                                           = 1000290000,
795     VK_STRUCTURE_TYPE_PRESENT_ID_KHR                                                             = 1000294000,
796     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR                                    = 1000294001,
797     VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR                                                      = 1000299000,
798     VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR                                         = 1000299001,
799     VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR                                   = 1000299002,
800     VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR                                              = 1000299003,
801     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV                             = 1000300000,
802     VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV                                   = 1000300001,
803     VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT                                        = 1000311000,
804     VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT                                              = 1000311001,
805     VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT                                               = 1000311002,
806     VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT                                        = 1000311003,
807     VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT                                               = 1000311004,
808     VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT                                               = 1000311005,
809     VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT                                              = 1000311006,
810     VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT                                              = 1000311007,
811     VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT                                           = 1000311008,
812     VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT                                           = 1000311009,
813     VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT                                         = 1000311010,
814     VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT                                         = 1000311011,
815     VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV                                    = 1000314008,
816     VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV                                                       = 1000314009,
817     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT                     = 1000320000,
818     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT                   = 1000320001,
819     VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT                                  = 1000320002,
820     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD          = 1000321000,
821     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR                   = 1000203000,
822     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR                 = 1000322000,
823     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR          = 1000323000,
824     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV                  = 1000326000,
825     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV                    = 1000326001,
826     VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV                   = 1000326002,
827     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV                   = 1000327000,
828     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV                        = 1000327001,
829     VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV                                      = 1000327002,
830     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT                     = 1000330000,
831     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT                        = 1000332000,
832     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT                      = 1000332001,
833     VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM                                           = 1000333000,
834     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR              = 1000336000,
835     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT                     = 1000338000,
836     VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT                                              = 1000338001,
837     VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT                                                   = 1000338002,
838     VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT                                                    = 1000338003,
839     VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT                                           = 1000338004,
840     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT                                  = 1000340000,
841     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM         = 1000342000,
842     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT                              = 1000344000,
843     VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT                                           = 1000346000,
844     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE                     = 1000351000,
845     VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE                                  = 1000351002,
846     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT                    = 1000352000,
847     VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT                                     = 1000352001,
848     VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT                                   = 1000352002,
849     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT                                         = 1000353000,
850     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT                            = 1000355000,
851     VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT                       = 1000355001,
852     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT               = 1000356000,
853     VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA                                   = 1000364000,
854     VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA                                    = 1000364001,
855     VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA                                      = 1000364002,
856     VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA                                = 1000365000,
857     VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA                                   = 1000365001,
858     VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA                                      = 1000366000,
859     VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA                                    = 1000366001,
860     VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA                                = 1000366002,
861     VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA                                       = 1000366003,
862     VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA                                            = 1000366004,
863     VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA                               = 1000366005,
864     VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA                                             = 1000366006,
865     VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA                                      = 1000366007,
866     VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA                                                 = 1000366008,
867     VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA                                 = 1000366009,
868     VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI                                = 1000369000,
869     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI                            = 1000369001,
870     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI                          = 1000369002,
871     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI                            = 1000370000,
872     VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV                                          = 1000371000,
873     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV                           = 1000371001,
874     VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT                                         = 1000372000,
875     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT                           = 1000372001,
876     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT         = 1000376000,
877     VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT                                      = 1000376001,
878     VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT                             = 1000376002,
879     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT                      = 1000377000,
880     VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX                                             = 1000378000,
881     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT                            = 1000381000,
882     VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT                                       = 1000381001,
883     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT                    = 1000382000,
884     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR                     = 1000386000,
885     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT                            = 1000391000,
886     VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT                                         = 1000391001,
887     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT                                    = 1000392000,
888     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT                                  = 1000392001,
889     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT                           = 1000393000,
890     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT                          = 1000411000,
891     VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT                     = 1000411001,
892     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT                  = 1000412000,
893     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE                 = 1000420000,
894     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE                                     = 1000420001,
895     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE                              = 1000420002,
896     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT                         = 1000422000,
897     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM                  = 1000425000,
898     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM                = 1000425001,
899     VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM                          = 1000425002,
900     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV                        = 1000430000,
901     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT           = 1000437000,
902     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT                        = 1000458000,
903     VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT                                           = 1000458001,
904     VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT                              = 1000458002,
905     VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT                               = 1000458003,
906     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT                      = 1000462000,
907     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT                    = 1000462001,
908     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT                    = 1000462002,
909     VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT                                               = 1000462003,
910     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES                                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
911     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES,
912     VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT                                               = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT,
913     VK_STRUCTURE_TYPE_RENDERING_INFO_KHR                                                         = VK_STRUCTURE_TYPE_RENDERING_INFO,
914     VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR                                              = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO,
915     VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR                                         = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO,
916     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES,
917     VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR                              = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO,
918     VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV                                            = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD,
919     VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR                                      = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO,
920     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR                                     = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES,
921     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR                                   = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES,
922     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR                                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2,
923     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR                                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2,
924     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR                                                    = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2,
925     VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR                                              = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2,
926     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR                                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2,
927     VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR                                              = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2,
928     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR                                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2,
929     VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR                                       = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2,
930     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2,
931     VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR                                             = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO,
932     VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR                                    = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO,
933     VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR                                 = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO,
934     VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR                                               = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO,
935     VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR                                          = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO,
936     VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR                                   = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO,
937     VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR                                    = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO,
938     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES,
939     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR                                       = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES,
940     VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR                                        = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO,
941     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO,
942     VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR                                       = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES,
943     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR                                   = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO,
944     VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR                                             = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES,
945     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR                                          = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES,
946     VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR                                     = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO,
947     VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR                                      = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO,
948     VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR                                            = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO,
949     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR                                = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO,
950     VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR                                          = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES,
951     VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR                                           = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO,
952     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
953     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR                                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES,
954     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR                                 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES,
955     VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR                                 = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO,
956     VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT                                                  = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT,
957     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES,
958     VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR                                    = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO,
959     VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR                                      = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO,
960     VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR                                      = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO,
961     VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR                                               = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2,
962     VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR                                                 = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2,
963     VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR                                                  = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2,
964     VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR                                                   = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2,
965     VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR                                              = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2,
966     VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR                                                     = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO,
967     VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR                                                       = VK_STRUCTURE_TYPE_SUBPASS_END_INFO,
968     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR                                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO,
969     VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR                                              = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES,
970     VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR                                               = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO,
971     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR                              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES,
972     VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR                        = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO,
973     VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR                                           = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO,
974     VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR                  = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO,
975     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES,
976     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR                              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR,
977     VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR                                          = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS,
978     VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR                                         = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO,
979     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT                       = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES,
980     VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT                                     = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO,
981     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT                          = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES,
982     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT                        = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES,
983     VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT                              = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK,
984     VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT                       = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO,
985     VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR                                      = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2,
986     VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR                                       = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2,
987     VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR                                = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2,
988     VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR                                                  = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2,
989     VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR                                     = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2,
990     VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR                                          = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO,
991     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR                                   = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO,
992     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR                                          = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO,
993     VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR                                           = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO,
994     VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR                                   = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO,
995     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR                      = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES,
996     VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR                       = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES,
997     VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR                                                = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO,
998     VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR                                                 = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO,
999     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT                        = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO,
1000     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES,
1001     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES,
1002     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT                 = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO,
1003     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT                = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT,
1004     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR                               = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES,
1005     VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR                                          = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT,
1006     VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT                               = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR,
1007     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR                = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES,
1008     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR                                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES,
1009     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES,
1010     VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT                                 = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO,
1011     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR                                      = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES,
1012     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR                              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES,
1013     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR                       = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES,
1014     VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR                              = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE,
1015     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR,
1016     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR                            = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES,
1017     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR                          = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES,
1018     VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR                                             = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO,
1019     VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR                                         = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO,
1020     VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR                                                    = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO,
1021     VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR                                                  = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO,
1022     VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL                                               = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL,
1023     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES,
1024     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR                   = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES,
1025     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT                           = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES,
1026     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT                       = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES,
1027     VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT               = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO,
1028     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES,
1029     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR                = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES,
1030     VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR                                    = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT,
1031     VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR                                  = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT,
1032     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT                                = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT,
1033     VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT                                             = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
1034     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT                                        = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES,
1035     VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT                                        = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO,
1036     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR                = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES,
1037     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES,
1038     VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR                                             = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO,
1039     VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR                              = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO,
1040     VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR                            = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO,
1041     VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR                              = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO,
1042     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT                              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES,
1043     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT            = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES,
1044     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR                    = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES,
1045     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES,
1046     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT                      = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES,
1047     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT                                  = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES,
1048     VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT                                        = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO,
1049     VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT                                          = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO,
1050     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT               = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES,
1051     VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR                                                       = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2,
1052     VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR                                                = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2,
1053     VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR                                                 = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2,
1054     VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR                                                        = VK_STRUCTURE_TYPE_DEPENDENCY_INFO,
1055     VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR                                                          = VK_STRUCTURE_TYPE_SUBMIT_INFO_2,
1056     VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR                                                  = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO,
1057     VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR                                             = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO,
1058     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR                             = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES,
1059     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES,
1060     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT                              = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES,
1061     VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR                                                     = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2,
1062     VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR                                                      = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2,
1063     VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR                                            = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2,
1064     VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR                                            = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2,
1065     VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR                                                      = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2,
1066     VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR                                                   = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2,
1067     VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR                                                          = VK_STRUCTURE_TYPE_BUFFER_COPY_2,
1068     VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR                                                           = VK_STRUCTURE_TYPE_IMAGE_COPY_2,
1069     VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR                                                           = VK_STRUCTURE_TYPE_IMAGE_BLIT_2,
1070     VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR                                                    = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2,
1071     VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR                                                        = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2,
1072     VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR                                                    = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3,
1073     VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT                                                          = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR,
1074     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT                         = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR,
1075     VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT                                = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR,
1076     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR                                 = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES,
1077     VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR                               = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES,
1078     VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR                                      = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS,
1079     VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR                                       = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS,
1080     VK_STRUCTURE_TYPE_BEGIN_RANGE                                                                = VK_STRUCTURE_TYPE_APPLICATION_INFO,
1081     VK_STRUCTURE_TYPE_END_RANGE                                                                  = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO,
1082     VK_STRUCTURE_TYPE_RANGE_SIZE                                                                 = VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO - VK_STRUCTURE_TYPE_APPLICATION_INFO + 1,
1083     VK_STRUCTURE_TYPE_MAX_ENUM                                                                   = 0x7FFFFFFF
1084 }
1085 
1086 enum VK_STRUCTURE_TYPE_APPLICATION_INFO                                                          = VkStructureType.VK_STRUCTURE_TYPE_APPLICATION_INFO;
1087 enum VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO                                                      = VkStructureType.VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
1088 enum VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO                                                  = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO;
1089 enum VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO                                                        = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO;
1090 enum VK_STRUCTURE_TYPE_SUBMIT_INFO                                                               = VkStructureType.VK_STRUCTURE_TYPE_SUBMIT_INFO;
1091 enum VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO                                                      = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO;
1092 enum VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE                                                       = VkStructureType.VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE;
1093 enum VK_STRUCTURE_TYPE_BIND_SPARSE_INFO                                                          = VkStructureType.VK_STRUCTURE_TYPE_BIND_SPARSE_INFO;
1094 enum VK_STRUCTURE_TYPE_FENCE_CREATE_INFO                                                         = VkStructureType.VK_STRUCTURE_TYPE_FENCE_CREATE_INFO;
1095 enum VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO                                                     = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO;
1096 enum VK_STRUCTURE_TYPE_EVENT_CREATE_INFO                                                         = VkStructureType.VK_STRUCTURE_TYPE_EVENT_CREATE_INFO;
1097 enum VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO                                                    = VkStructureType.VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO;
1098 enum VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO                                                        = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
1099 enum VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO                                                   = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO;
1100 enum VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO                                                         = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO;
1101 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO                                                    = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO;
1102 enum VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO                                                 = VkStructureType.VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO;
1103 enum VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO                                                = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO;
1104 enum VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO;
1105 enum VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO                                   = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO;
1106 enum VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO                                 = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO;
1107 enum VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO                                   = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO;
1108 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO                                       = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO;
1109 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO                                  = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO;
1110 enum VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO                                    = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO;
1111 enum VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO                                  = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO;
1112 enum VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO                                    = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO;
1113 enum VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO                                        = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO;
1114 enum VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO                                             = VkStructureType.VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO;
1115 enum VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO;
1116 enum VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO                                               = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO;
1117 enum VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO                                                       = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO;
1118 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO;
1119 enum VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO                                               = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO;
1120 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO;
1121 enum VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET                                                      = VkStructureType.VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET;
1122 enum VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET                                                       = VkStructureType.VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET;
1123 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO                                                   = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
1124 enum VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO                                                   = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO;
1125 enum VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO                                                  = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO;
1126 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO;
1127 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO                                           = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO;
1128 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO                                                 = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO;
1129 enum VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO                                                    = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO;
1130 enum VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER                                                     = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER;
1131 enum VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER                                                      = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;
1132 enum VK_STRUCTURE_TYPE_MEMORY_BARRIER                                                            = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_BARRIER;
1133 enum VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO                                               = VkStructureType.VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO;
1134 enum VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO                                                 = VkStructureType.VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO;
1135 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES;
1136 enum VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO                                                   = VkStructureType.VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO;
1137 enum VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO                                                    = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO;
1138 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES                                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES;
1139 enum VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS                                             = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
1140 enum VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO                                            = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
1141 enum VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO                                                = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO;
1142 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO                                       = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO;
1143 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO                                    = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO;
1144 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO                                                  = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO;
1145 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO                                             = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO;
1146 enum VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO                                      = VkStructureType.VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO;
1147 enum VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO                                       = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO;
1148 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES                                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES;
1149 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO                                           = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO;
1150 enum VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2                                         = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2;
1151 enum VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2                                          = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2;
1152 enum VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2                                   = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2;
1153 enum VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2                                                     = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
1154 enum VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2                                        = VkStructureType.VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2;
1155 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2                                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
1156 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2                                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2;
1157 enum VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2                                                       = VkStructureType.VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2;
1158 enum VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2                                                 = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2;
1159 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2;
1160 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2                                                 = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2;
1161 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2;
1162 enum VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2                                          = VkStructureType.VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2;
1163 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2;
1164 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES;
1165 enum VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO                           = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO;
1166 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO;
1167 enum VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO                     = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO;
1168 enum VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO;
1169 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES                                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES;
1170 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES                                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES;
1171 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES;
1172 enum VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO                                                     = VkStructureType.VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO;
1173 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES;
1174 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES;
1175 enum VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2                                                       = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2;
1176 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO                                      = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO;
1177 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO                                             = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO;
1178 enum VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO;
1179 enum VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO                                      = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO;
1180 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES;
1181 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES                          = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES;
1182 enum VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO                                    = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO;
1183 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO;
1184 enum VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES                                          = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES;
1185 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO                                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO;
1186 enum VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES                                                = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES;
1187 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES                                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES;
1188 enum VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO                                        = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO;
1189 enum VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO;
1190 enum VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO                                               = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO;
1191 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO;
1192 enum VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES                                                 = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES;
1193 enum VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO                                                  = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO;
1194 enum VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO                                              = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO;
1195 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO;
1196 enum VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES                                             = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES;
1197 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES                                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES;
1198 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT                                             = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT;
1199 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES;
1200 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES;
1201 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES;
1202 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES;
1203 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES;
1204 enum VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO                                             = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO;
1205 enum VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2                                                  = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2;
1206 enum VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2                                                    = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2;
1207 enum VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2                                                     = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2;
1208 enum VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2                                                      = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2;
1209 enum VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2                                                 = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2;
1210 enum VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO                                                        = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO;
1211 enum VK_STRUCTURE_TYPE_SUBPASS_END_INFO                                                          = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_END_INFO;
1212 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES;
1213 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES                                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES;
1214 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES;
1215 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES;
1216 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES;
1217 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO                           = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO;
1218 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES;
1219 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES;
1220 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO                    = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO;
1221 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT                   = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT;
1222 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES;
1223 enum VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE                                 = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE;
1224 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES;
1225 enum VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO                                           = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO;
1226 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES;
1227 enum VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO                                        = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO;
1228 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES;
1229 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES;
1230 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO                                       = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO;
1231 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO;
1232 enum VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO                                         = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO;
1233 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES;
1234 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES;
1235 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES;
1236 enum VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT                                       = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT;
1237 enum VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT                                     = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT;
1238 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES;
1239 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES;
1240 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES;
1241 enum VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO                                                = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO;
1242 enum VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO                                            = VkStructureType.VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO;
1243 enum VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO                                                       = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO;
1244 enum VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO                                                     = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO;
1245 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES;
1246 enum VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO                                                = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO;
1247 enum VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO                                 = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO;
1248 enum VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO                               = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO;
1249 enum VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO                                 = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO;
1250 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES;
1251 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES;
1252 enum VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO                                    = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO;
1253 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES;
1254 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES                                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES;
1255 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES;
1256 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES;
1257 enum VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO                                           = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO;
1258 enum VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO                                             = VkStructureType.VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO;
1259 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES;
1260 enum VK_STRUCTURE_TYPE_MEMORY_BARRIER_2                                                          = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_BARRIER_2;
1261 enum VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2                                                   = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2;
1262 enum VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2                                                    = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2;
1263 enum VK_STRUCTURE_TYPE_DEPENDENCY_INFO                                                           = VkStructureType.VK_STRUCTURE_TYPE_DEPENDENCY_INFO;
1264 enum VK_STRUCTURE_TYPE_SUBMIT_INFO_2                                                             = VkStructureType.VK_STRUCTURE_TYPE_SUBMIT_INFO_2;
1265 enum VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO                                                     = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO;
1266 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO                                                = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO;
1267 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES;
1268 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES;
1269 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES;
1270 enum VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2                                                        = VkStructureType.VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2;
1271 enum VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2                                                         = VkStructureType.VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2;
1272 enum VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2                                               = VkStructureType.VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2;
1273 enum VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2                                               = VkStructureType.VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2;
1274 enum VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2                                                         = VkStructureType.VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2;
1275 enum VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2                                                      = VkStructureType.VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2;
1276 enum VK_STRUCTURE_TYPE_BUFFER_COPY_2                                                             = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COPY_2;
1277 enum VK_STRUCTURE_TYPE_IMAGE_COPY_2                                                              = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_COPY_2;
1278 enum VK_STRUCTURE_TYPE_IMAGE_BLIT_2                                                              = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_BLIT_2;
1279 enum VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2                                                       = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2;
1280 enum VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2                                                           = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2;
1281 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES;
1282 enum VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO                  = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO;
1283 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES;
1284 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES;
1285 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES;
1286 enum VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK                                 = VkStructureType.VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK;
1287 enum VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO                          = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO;
1288 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES;
1289 enum VK_STRUCTURE_TYPE_RENDERING_INFO                                                            = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_INFO;
1290 enum VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO                                                 = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO;
1291 enum VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO                                            = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO;
1292 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES;
1293 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO                                 = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO;
1294 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES;
1295 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES;
1296 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES;
1297 enum VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3                                                       = VkStructureType.VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3;
1298 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES                                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES;
1299 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES                                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES;
1300 enum VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS                                         = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS;
1301 enum VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS                                          = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS;
1302 enum VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR;
1303 enum VK_STRUCTURE_TYPE_PRESENT_INFO_KHR                                                          = VkStructureType.VK_STRUCTURE_TYPE_PRESENT_INFO_KHR;
1304 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR;
1305 enum VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR;
1306 enum VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR;
1307 enum VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR;
1308 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR;
1309 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR;
1310 enum VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR;
1311 enum VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR;
1312 enum VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR;
1313 enum VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR;
1314 enum VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR;
1315 enum VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR;
1316 enum VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR;
1317 enum VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR;
1318 enum VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT;
1319 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD                      = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD;
1320 enum VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT                                         = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT;
1321 enum VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT;
1322 enum VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT;
1323 enum VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR                                                         = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_PROFILE_KHR;
1324 enum VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR                                                    = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR;
1325 enum VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR                                                = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_KHR;
1326 enum VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_GET_MEMORY_PROPERTIES_KHR;
1327 enum VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_BIND_MEMORY_KHR;
1328 enum VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR;
1329 enum VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR;
1330 enum VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR;
1331 enum VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR;
1332 enum VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR;
1333 enum VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR;
1334 enum VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_KHR;
1335 enum VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_QUEUE_FAMILY_PROPERTIES_2_KHR;
1336 enum VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR                                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_PROFILES_KHR;
1337 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR;
1338 enum VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR;
1339 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_2_KHR                         = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_2_KHR;
1340 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR;
1341 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR;
1342 enum VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV                                 = VkStructureType.VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV;
1343 enum VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV                                = VkStructureType.VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV;
1344 enum VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV                              = VkStructureType.VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV;
1345 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT;
1346 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT;
1347 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT;
1348 enum VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX                                                 = VkStructureType.VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX;
1349 enum VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX                                               = VkStructureType.VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX;
1350 enum VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX                                                        = VkStructureType.VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX;
1351 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX                                                = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX;
1352 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX                                         = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX;
1353 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_EXT;
1354 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT;
1355 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT;
1356 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT                                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_VCL_FRAME_INFO_EXT;
1357 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_EXT;
1358 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_EXT;
1359 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_EMIT_PICTURE_PARAMETERS_EXT;
1360 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_EXT;
1361 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT                                   = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_EXT;
1362 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_EXT;
1363 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_REFERENCE_LISTS_EXT;
1364 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_EXT;
1365 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT;
1366 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT;
1367 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT                                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_VCL_FRAME_INFO_EXT;
1368 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_EXT;
1369 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_EXT                                  = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_EXT;
1370 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_EMIT_PICTURE_PARAMETERS_EXT;
1371 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_EXT;
1372 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_REFERENCE_LISTS_EXT;
1373 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT                                   = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_EXT;
1374 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_EXT;
1375 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_EXT;
1376 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_EXT;
1377 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT                                                 = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_MVC_EXT;
1378 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_EXT;
1379 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_EXT;
1380 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_EXT;
1381 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_EXT;
1382 enum VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD                                  = VkStructureType.VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD;
1383 enum VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR                       = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR;
1384 enum VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT;
1385 enum VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD                                          = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD;
1386 enum VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX                                    = VkStructureType.VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX;
1387 enum VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP                                 = VkStructureType.VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP;
1388 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV;
1389 enum VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV                                      = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV;
1390 enum VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV                                            = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV;
1391 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV                                        = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV;
1392 enum VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV                                        = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV;
1393 enum VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV                                 = VkStructureType.VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV;
1394 enum VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT                                                      = VkStructureType.VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT;
1395 enum VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN                                                 = VkStructureType.VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN;
1396 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT                                           = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT;
1397 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT                                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT;
1398 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR;
1399 enum VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR;
1400 enum VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR;
1401 enum VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR;
1402 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR;
1403 enum VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR;
1404 enum VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR                                                    = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR;
1405 enum VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR                                = VkStructureType.VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR;
1406 enum VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR;
1407 enum VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR;
1408 enum VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR;
1409 enum VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR;
1410 enum VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR;
1411 enum VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR;
1412 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR;
1413 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT                 = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT;
1414 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT;
1415 enum VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT                                      = VkStructureType.VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT;
1416 enum VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR                                                       = VkStructureType.VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR;
1417 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV;
1418 enum VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT                                                = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT;
1419 enum VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT                                                    = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT;
1420 enum VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT                                                     = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT;
1421 enum VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT                                                    = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT;
1422 enum VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT                                         = VkStructureType.VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT;
1423 enum VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE                                                 = VkStructureType.VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE;
1424 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX;
1425 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV                            = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV;
1426 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT;
1427 enum VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT;
1428 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT;
1429 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT                 = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT;
1430 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT;
1431 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT;
1432 enum VK_STRUCTURE_TYPE_HDR_METADATA_EXT                                                          = VkStructureType.VK_STRUCTURE_TYPE_HDR_METADATA_EXT;
1433 enum VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR;
1434 enum VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR;
1435 enum VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR;
1436 enum VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR;
1437 enum VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR;
1438 enum VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR;
1439 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR;
1440 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR;
1441 enum VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR;
1442 enum VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR;
1443 enum VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR;
1444 enum VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR                                                   = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR;
1445 enum VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR;
1446 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR;
1447 enum VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR                                                = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR;
1448 enum VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR                                                      = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR;
1449 enum VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR;
1450 enum VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR;
1451 enum VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR;
1452 enum VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR;
1453 enum VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR;
1454 enum VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK                                               = VkStructureType.VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK;
1455 enum VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK                                             = VkStructureType.VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK;
1456 enum VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT;
1457 enum VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT                                           = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT;
1458 enum VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT                                                     = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT;
1459 enum VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT                                   = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT;
1460 enum VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT;
1461 enum VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID                                     = VkStructureType.VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID;
1462 enum VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID                                = VkStructureType.VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID;
1463 enum VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID                         = VkStructureType.VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID;
1464 enum VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID                               = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID;
1465 enum VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID                           = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID;
1466 enum VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID                                                   = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID;
1467 enum VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID                       = VkStructureType.VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID;
1468 enum VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT                                                 = VkStructureType.VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT;
1469 enum VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT;
1470 enum VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT;
1471 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT;
1472 enum VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT                                                = VkStructureType.VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT;
1473 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT;
1474 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT;
1475 enum VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT;
1476 enum VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV                           = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV;
1477 enum VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR                           = VkStructureType.VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR;
1478 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR;
1479 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR;
1480 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR;
1481 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR;
1482 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR;
1483 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR;
1484 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR;
1485 enum VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR;
1486 enum VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR;
1487 enum VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR;
1488 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR;
1489 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR;
1490 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR;
1491 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR                               = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR;
1492 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR;
1493 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR;
1494 enum VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR;
1495 enum VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR;
1496 enum VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR;
1497 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR;
1498 enum VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV;
1499 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV;
1500 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV;
1501 enum VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT                                   = VkStructureType.VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT;
1502 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT;
1503 enum VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT                            = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT;
1504 enum VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT;
1505 enum VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT                                  = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT;
1506 enum VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT;
1507 enum VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT;
1508 enum VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT                            = VkStructureType.VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT;
1509 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_FEATURES_KHR;
1510 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PORTABILITY_SUBSET_PROPERTIES_KHR;
1511 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV                 = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV;
1512 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV;
1513 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV;
1514 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV                = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV;
1515 enum VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV                                       = VkStructureType.VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV;
1516 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV                                     = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV;
1517 enum VK_STRUCTURE_TYPE_GEOMETRY_NV                                                               = VkStructureType.VK_STRUCTURE_TYPE_GEOMETRY_NV;
1518 enum VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV                                                     = VkStructureType.VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV;
1519 enum VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV                                                          = VkStructureType.VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV;
1520 enum VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV                                = VkStructureType.VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV;
1521 enum VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV                            = VkStructureType.VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV;
1522 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV                        = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV;
1523 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV;
1524 enum VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV                                   = VkStructureType.VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV;
1525 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV                                            = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV;
1526 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV;
1527 enum VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV                = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV;
1528 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT;
1529 enum VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT;
1530 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT;
1531 enum VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT;
1532 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT;
1533 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR;
1534 enum VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD                                 = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD;
1535 enum VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT;
1536 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD;
1537 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_EXT;
1538 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_EXT;
1539 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_EXT;
1540 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_EXT;
1541 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_EXT;
1542 enum VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_EXT;
1543 enum VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR                              = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR;
1544 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR;
1545 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR                               = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR;
1546 enum VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD                              = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD;
1547 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT;
1548 enum VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT;
1549 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT;
1550 enum VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP                                                   = VkStructureType.VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP;
1551 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV;
1552 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV;
1553 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV;
1554 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV;
1555 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV                  = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV;
1556 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV;
1557 enum VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV                                                        = VkStructureType.VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV;
1558 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV                                     = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV;
1559 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL;
1560 enum VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL                            = VkStructureType.VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL;
1561 enum VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL                                     = VkStructureType.VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL;
1562 enum VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL                                             = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL;
1563 enum VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL                                      = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL;
1564 enum VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL                                           = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL;
1565 enum VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL                              = VkStructureType.VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL;
1566 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT;
1567 enum VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD                               = VkStructureType.VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD;
1568 enum VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD                              = VkStructureType.VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD;
1569 enum VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA                                     = VkStructureType.VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA;
1570 enum VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT;
1571 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT;
1572 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT;
1573 enum VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT;
1574 enum VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR;
1575 enum VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR                      = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR;
1576 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR;
1577 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR;
1578 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR;
1579 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD;
1580 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD;
1581 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT;
1582 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT;
1583 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT;
1584 enum VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT                                         = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT;
1585 enum VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR;
1586 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV;
1587 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT;
1588 enum VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT;
1589 enum VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT                                                   = VkStructureType.VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT;
1590 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR;
1591 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV;
1592 enum VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV                                          = VkStructureType.VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV;
1593 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV;
1594 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV;
1595 enum VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV;
1596 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV                                  = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV;
1597 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT;
1598 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT;
1599 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT;
1600 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT             = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT;
1601 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT;
1602 enum VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT                                    = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT;
1603 enum VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT                            = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT;
1604 enum VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT                              = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT;
1605 enum VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT;
1606 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT;
1607 enum VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT;
1608 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT;
1609 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT;
1610 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT;
1611 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT;
1612 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR;
1613 enum VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR                                                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR;
1614 enum VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR;
1615 enum VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR;
1616 enum VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR;
1617 enum VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR                           = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR;
1618 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT;
1619 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV;
1620 enum VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV                                      = VkStructureType.VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV;
1621 enum VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV                            = VkStructureType.VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV;
1622 enum VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV                                         = VkStructureType.VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV;
1623 enum VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV                                   = VkStructureType.VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV;
1624 enum VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV                                                = VkStructureType.VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV;
1625 enum VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV                            = VkStructureType.VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV;
1626 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV;
1627 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV;
1628 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV                       = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV;
1629 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT;
1630 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM                = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM;
1631 enum VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM                                     = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM;
1632 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT;
1633 enum VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT;
1634 enum VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT                                    = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT;
1635 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT;
1636 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT;
1637 enum VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT;
1638 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT;
1639 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT;
1640 enum VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR;
1641 enum VK_STRUCTURE_TYPE_PRESENT_ID_KHR                                                            = VkStructureType.VK_STRUCTURE_TYPE_PRESENT_ID_KHR;
1642 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR;
1643 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR;
1644 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR;
1645 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR;
1646 enum VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR;
1647 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV;
1648 enum VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV                                  = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV;
1649 enum VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT;
1650 enum VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT;
1651 enum VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT;
1652 enum VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT;
1653 enum VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT;
1654 enum VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT;
1655 enum VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT;
1656 enum VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT;
1657 enum VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT;
1658 enum VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT;
1659 enum VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT;
1660 enum VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT;
1661 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV                                   = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV;
1662 enum VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV                                                      = VkStructureType.VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV;
1663 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT;
1664 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT;
1665 enum VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT;
1666 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD;
1667 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR;
1668 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR;
1669 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR;
1670 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV;
1671 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV;
1672 enum VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV                  = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV;
1673 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV                  = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV;
1674 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV;
1675 enum VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV                                     = VkStructureType.VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV;
1676 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT;
1677 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT;
1678 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT;
1679 enum VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM                                          = VkStructureType.VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM;
1680 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR;
1681 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT;
1682 enum VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT                                             = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT;
1683 enum VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT                                                  = VkStructureType.VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT;
1684 enum VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT                                                   = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT;
1685 enum VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT;
1686 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT;
1687 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM;
1688 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT;
1689 enum VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT;
1690 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE;
1691 enum VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE                                 = VkStructureType.VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE;
1692 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT;
1693 enum VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT                                    = VkStructureType.VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT;
1694 enum VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT                                  = VkStructureType.VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT;
1695 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT;
1696 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT;
1697 enum VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT;
1698 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT;
1699 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA                                  = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA;
1700 enum VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA                                   = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA;
1701 enum VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA                                     = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA;
1702 enum VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA                               = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA;
1703 enum VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA                                  = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA;
1704 enum VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA                                     = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA;
1705 enum VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA                                   = VkStructureType.VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA;
1706 enum VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA                               = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA;
1707 enum VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA                                      = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA;
1708 enum VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA                                           = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA;
1709 enum VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA                              = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA;
1710 enum VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA                                            = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA;
1711 enum VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA                                     = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA;
1712 enum VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA                                                = VkStructureType.VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA;
1713 enum VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA                                = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA;
1714 enum VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI                               = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI;
1715 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI;
1716 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI;
1717 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI;
1718 enum VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV                                         = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV;
1719 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV;
1720 enum VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT;
1721 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT;
1722 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT;
1723 enum VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT                                     = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT;
1724 enum VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT                            = VkStructureType.VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT;
1725 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT;
1726 enum VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX                                            = VkStructureType.VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX;
1727 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT;
1728 enum VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT                                      = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT;
1729 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT;
1730 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR;
1731 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT;
1732 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT                                        = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT;
1733 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT;
1734 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT;
1735 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT;
1736 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT;
1737 enum VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT                    = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT;
1738 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT;
1739 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE;
1740 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE                                    = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE;
1741 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE                             = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE;
1742 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT;
1743 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM;
1744 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM;
1745 enum VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM                         = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM;
1746 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV;
1747 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT;
1748 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
1749 enum VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT                                          = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT;
1750 enum VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT;
1751 enum VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT                              = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT;
1752 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT;
1753 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT;
1754 enum VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT                   = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT;
1755 enum VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT;
1756 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES;
1757 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES;
1758 enum VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT                                              = VkStructureType.VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT;
1759 enum VK_STRUCTURE_TYPE_RENDERING_INFO_KHR                                                        = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_INFO_KHR;
1760 enum VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR;
1761 enum VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR;
1762 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR;
1763 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR;
1764 enum VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV                                           = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV;
1765 enum VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR;
1766 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR;
1767 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR;
1768 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR;
1769 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR;
1770 enum VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR                                                   = VkStructureType.VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR;
1771 enum VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR;
1772 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR;
1773 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR;
1774 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR;
1775 enum VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR;
1776 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR;
1777 enum VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR;
1778 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR;
1779 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR                                = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR;
1780 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR;
1781 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR;
1782 enum VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR;
1783 enum VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR;
1784 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT;
1785 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR;
1786 enum VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR                                       = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR;
1787 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR;
1788 enum VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR;
1789 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR;
1790 enum VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR;
1791 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR;
1792 enum VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR;
1793 enum VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR;
1794 enum VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR;
1795 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR;
1796 enum VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR;
1797 enum VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR;
1798 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR;
1799 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR;
1800 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR;
1801 enum VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR                                = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR;
1802 enum VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT                                                 = VkStructureType.VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT;
1803 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR;
1804 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR;
1805 enum VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR;
1806 enum VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR;
1807 enum VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR;
1808 enum VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR                                                = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR;
1809 enum VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR;
1810 enum VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR;
1811 enum VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR;
1812 enum VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR                                                    = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR;
1813 enum VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR                                                      = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR;
1814 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR;
1815 enum VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR                                             = VkStructureType.VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR;
1816 enum VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR                                              = VkStructureType.VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR;
1817 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR;
1818 enum VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR                       = VkStructureType.VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR;
1819 enum VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR;
1820 enum VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR                 = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR;
1821 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR;
1822 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR;
1823 enum VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR;
1824 enum VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR;
1825 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT;
1826 enum VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT                                    = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT;
1827 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT;
1828 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT;
1829 enum VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT;
1830 enum VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT;
1831 enum VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR;
1832 enum VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR;
1833 enum VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR                               = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR;
1834 enum VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR;
1835 enum VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR                                    = VkStructureType.VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR;
1836 enum VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR;
1837 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR;
1838 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR;
1839 enum VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR                                          = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR;
1840 enum VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR                                  = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR;
1841 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR;
1842 enum VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR                      = VkStructureType.VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR;
1843 enum VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR;
1844 enum VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR                                                = VkStructureType.VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR;
1845 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT                       = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT;
1846 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT;
1847 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT;
1848 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT                = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT;
1849 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT               = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT;
1850 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR;
1851 enum VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR                                         = VkStructureType.VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR;
1852 enum VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT                              = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT;
1853 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR;
1854 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR;
1855 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR;
1856 enum VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT                                = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT;
1857 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR;
1858 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR;
1859 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR;
1860 enum VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR;
1861 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV;
1862 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR                           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR;
1863 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR                         = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR;
1864 enum VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR;
1865 enum VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR                                        = VkStructureType.VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR;
1866 enum VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR                                                   = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR;
1867 enum VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR;
1868 enum VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL                                              = VkStructureType.VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL;
1869 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR;
1870 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR                  = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR;
1871 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT                          = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT;
1872 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT                      = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT;
1873 enum VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT              = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT;
1874 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT;
1875 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR;
1876 enum VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR                                   = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR;
1877 enum VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR                                 = VkStructureType.VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR;
1878 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT;
1879 enum VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT                                            = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT;
1880 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT;
1881 enum VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT;
1882 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR               = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR;
1883 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR;
1884 enum VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR;
1885 enum VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR;
1886 enum VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR                           = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR;
1887 enum VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR                             = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR;
1888 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT;
1889 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT           = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT;
1890 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR                   = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR;
1891 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR;
1892 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT                     = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT;
1893 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT                                 = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT;
1894 enum VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT                                       = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT;
1895 enum VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT                                         = VkStructureType.VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT;
1896 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT;
1897 enum VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR                                                      = VkStructureType.VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR;
1898 enum VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR                                               = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR;
1899 enum VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR                                                = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR;
1900 enum VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR                                                       = VkStructureType.VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR;
1901 enum VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR                                                         = VkStructureType.VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR;
1902 enum VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR                                                 = VkStructureType.VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR;
1903 enum VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR                                            = VkStructureType.VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR;
1904 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR                            = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR;
1905 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR;
1906 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT                             = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT;
1907 enum VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR                                                    = VkStructureType.VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR;
1908 enum VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR;
1909 enum VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR;
1910 enum VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR                                           = VkStructureType.VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR;
1911 enum VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR                                                     = VkStructureType.VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR;
1912 enum VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR                                                  = VkStructureType.VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR;
1913 enum VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR                                                         = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR;
1914 enum VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR                                                          = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR;
1915 enum VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR                                                          = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR;
1916 enum VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR                                                   = VkStructureType.VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR;
1917 enum VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR                                                       = VkStructureType.VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR;
1918 enum VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR                                                   = VkStructureType.VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR;
1919 enum VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT                                                         = VkStructureType.VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT;
1920 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT                        = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT;
1921 enum VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT                               = VkStructureType.VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT;
1922 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR                                = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR;
1923 enum VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR                              = VkStructureType.VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR;
1924 enum VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR                                     = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR;
1925 enum VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR                                      = VkStructureType.VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR;
1926 enum VK_STRUCTURE_TYPE_BEGIN_RANGE                                                               = VkStructureType.VK_STRUCTURE_TYPE_BEGIN_RANGE;
1927 enum VK_STRUCTURE_TYPE_END_RANGE                                                                 = VkStructureType.VK_STRUCTURE_TYPE_END_RANGE;
1928 enum VK_STRUCTURE_TYPE_RANGE_SIZE                                                                = VkStructureType.VK_STRUCTURE_TYPE_RANGE_SIZE;
1929 enum VK_STRUCTURE_TYPE_MAX_ENUM                                                                  = VkStructureType.VK_STRUCTURE_TYPE_MAX_ENUM;
1930 
1931 enum VkPipelineCacheHeaderVersion {
1932     VK_PIPELINE_CACHE_HEADER_VERSION_ONE                 = 1,
1933     VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE         = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,
1934     VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE           = VK_PIPELINE_CACHE_HEADER_VERSION_ONE,
1935     VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE          = VK_PIPELINE_CACHE_HEADER_VERSION_ONE - VK_PIPELINE_CACHE_HEADER_VERSION_ONE + 1,
1936     VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM            = 0x7FFFFFFF
1937 }
1938 
1939 enum VK_PIPELINE_CACHE_HEADER_VERSION_ONE                = VkPipelineCacheHeaderVersion.VK_PIPELINE_CACHE_HEADER_VERSION_ONE;
1940 enum VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE        = VkPipelineCacheHeaderVersion.VK_PIPELINE_CACHE_HEADER_VERSION_BEGIN_RANGE;
1941 enum VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE          = VkPipelineCacheHeaderVersion.VK_PIPELINE_CACHE_HEADER_VERSION_END_RANGE;
1942 enum VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE         = VkPipelineCacheHeaderVersion.VK_PIPELINE_CACHE_HEADER_VERSION_RANGE_SIZE;
1943 enum VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM           = VkPipelineCacheHeaderVersion.VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM;
1944 
1945 enum VkImageLayout {
1946     VK_IMAGE_LAYOUT_UNDEFINED                                            = 0,
1947     VK_IMAGE_LAYOUT_GENERAL                                              = 1,
1948     VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL                             = 2,
1949     VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL                     = 3,
1950     VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL                      = 4,
1951     VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL                             = 5,
1952     VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL                                 = 6,
1953     VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL                                 = 7,
1954     VK_IMAGE_LAYOUT_PREINITIALIZED                                       = 8,
1955     VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL           = 1000117000,
1956     VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL           = 1000117001,
1957     VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL                             = 1000241000,
1958     VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL                              = 1000241001,
1959     VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL                           = 1000241002,
1960     VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL                            = 1000241003,
1961     VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL                                    = 1000314000,
1962     VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL                                   = 1000314001,
1963     VK_IMAGE_LAYOUT_PRESENT_SRC_KHR                                      = 1000001002,
1964     VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR                                 = 1000024000,
1965     VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR                                 = 1000024001,
1966     VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR                                 = 1000024002,
1967     VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR                                   = 1000111000,
1968     VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT                     = 1000218000,
1969     VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR         = 1000164003,
1970     VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR                                 = 1000299000,
1971     VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR                                 = 1000299001,
1972     VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR                                 = 1000299002,
1973     VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR       = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL,
1974     VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR       = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL,
1975     VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV                              = VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR,
1976     VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR                         = VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL,
1977     VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR                          = VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL,
1978     VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR                       = VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL,
1979     VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR                        = VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL,
1980     VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR                                = VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL,
1981     VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR                               = VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL,
1982     VK_IMAGE_LAYOUT_BEGIN_RANGE                                          = VK_IMAGE_LAYOUT_UNDEFINED,
1983     VK_IMAGE_LAYOUT_END_RANGE                                            = VK_IMAGE_LAYOUT_PREINITIALIZED,
1984     VK_IMAGE_LAYOUT_RANGE_SIZE                                           = VK_IMAGE_LAYOUT_PREINITIALIZED - VK_IMAGE_LAYOUT_UNDEFINED + 1,
1985     VK_IMAGE_LAYOUT_MAX_ENUM                                             = 0x7FFFFFFF
1986 }
1987 
1988 enum VK_IMAGE_LAYOUT_UNDEFINED                                           = VkImageLayout.VK_IMAGE_LAYOUT_UNDEFINED;
1989 enum VK_IMAGE_LAYOUT_GENERAL                                             = VkImageLayout.VK_IMAGE_LAYOUT_GENERAL;
1990 enum VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL                            = VkImageLayout.VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL;
1991 enum VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL                    = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
1992 enum VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL                     = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL;
1993 enum VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL                            = VkImageLayout.VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL;
1994 enum VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL                                = VkImageLayout.VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL;
1995 enum VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL                                = VkImageLayout.VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL;
1996 enum VK_IMAGE_LAYOUT_PREINITIALIZED                                      = VkImageLayout.VK_IMAGE_LAYOUT_PREINITIALIZED;
1997 enum VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL          = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL;
1998 enum VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL          = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL;
1999 enum VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL                            = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL;
2000 enum VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL                             = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL;
2001 enum VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL                          = VkImageLayout.VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL;
2002 enum VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL                           = VkImageLayout.VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL;
2003 enum VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL                                   = VkImageLayout.VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL;
2004 enum VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL                                  = VkImageLayout.VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL;
2005 enum VK_IMAGE_LAYOUT_PRESENT_SRC_KHR                                     = VkImageLayout.VK_IMAGE_LAYOUT_PRESENT_SRC_KHR;
2006 enum VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR;
2007 enum VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR;
2008 enum VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR;
2009 enum VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR                                  = VkImageLayout.VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR;
2010 enum VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT                    = VkImageLayout.VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT;
2011 enum VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR        = VkImageLayout.VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR;
2012 enum VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR;
2013 enum VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR;
2014 enum VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR                                = VkImageLayout.VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR;
2015 enum VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR      = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR;
2016 enum VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR      = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR;
2017 enum VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV                             = VkImageLayout.VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV;
2018 enum VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR                        = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR;
2019 enum VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR                         = VkImageLayout.VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR;
2020 enum VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR                      = VkImageLayout.VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR;
2021 enum VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR                       = VkImageLayout.VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR;
2022 enum VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR                               = VkImageLayout.VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR;
2023 enum VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR                              = VkImageLayout.VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR;
2024 enum VK_IMAGE_LAYOUT_BEGIN_RANGE                                         = VkImageLayout.VK_IMAGE_LAYOUT_BEGIN_RANGE;
2025 enum VK_IMAGE_LAYOUT_END_RANGE                                           = VkImageLayout.VK_IMAGE_LAYOUT_END_RANGE;
2026 enum VK_IMAGE_LAYOUT_RANGE_SIZE                                          = VkImageLayout.VK_IMAGE_LAYOUT_RANGE_SIZE;
2027 enum VK_IMAGE_LAYOUT_MAX_ENUM                                            = VkImageLayout.VK_IMAGE_LAYOUT_MAX_ENUM;
2028 
2029 enum VkObjectType {
2030     VK_OBJECT_TYPE_UNKNOWN                               = 0,
2031     VK_OBJECT_TYPE_INSTANCE                              = 1,
2032     VK_OBJECT_TYPE_PHYSICAL_DEVICE                       = 2,
2033     VK_OBJECT_TYPE_DEVICE                                = 3,
2034     VK_OBJECT_TYPE_QUEUE                                 = 4,
2035     VK_OBJECT_TYPE_SEMAPHORE                             = 5,
2036     VK_OBJECT_TYPE_COMMAND_BUFFER                        = 6,
2037     VK_OBJECT_TYPE_FENCE                                 = 7,
2038     VK_OBJECT_TYPE_DEVICE_MEMORY                         = 8,
2039     VK_OBJECT_TYPE_BUFFER                                = 9,
2040     VK_OBJECT_TYPE_IMAGE                                 = 10,
2041     VK_OBJECT_TYPE_EVENT                                 = 11,
2042     VK_OBJECT_TYPE_QUERY_POOL                            = 12,
2043     VK_OBJECT_TYPE_BUFFER_VIEW                           = 13,
2044     VK_OBJECT_TYPE_IMAGE_VIEW                            = 14,
2045     VK_OBJECT_TYPE_SHADER_MODULE                         = 15,
2046     VK_OBJECT_TYPE_PIPELINE_CACHE                        = 16,
2047     VK_OBJECT_TYPE_PIPELINE_LAYOUT                       = 17,
2048     VK_OBJECT_TYPE_RENDER_PASS                           = 18,
2049     VK_OBJECT_TYPE_PIPELINE                              = 19,
2050     VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT                 = 20,
2051     VK_OBJECT_TYPE_SAMPLER                               = 21,
2052     VK_OBJECT_TYPE_DESCRIPTOR_POOL                       = 22,
2053     VK_OBJECT_TYPE_DESCRIPTOR_SET                        = 23,
2054     VK_OBJECT_TYPE_FRAMEBUFFER                           = 24,
2055     VK_OBJECT_TYPE_COMMAND_POOL                          = 25,
2056     VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION              = 1000156000,
2057     VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE            = 1000085000,
2058     VK_OBJECT_TYPE_PRIVATE_DATA_SLOT                     = 1000295000,
2059     VK_OBJECT_TYPE_SURFACE_KHR                           = 1000000000,
2060     VK_OBJECT_TYPE_SWAPCHAIN_KHR                         = 1000001000,
2061     VK_OBJECT_TYPE_DISPLAY_KHR                           = 1000002000,
2062     VK_OBJECT_TYPE_DISPLAY_MODE_KHR                      = 1000002001,
2063     VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT             = 1000011000,
2064     VK_OBJECT_TYPE_VIDEO_SESSION_KHR                     = 1000023000,
2065     VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR          = 1000023001,
2066     VK_OBJECT_TYPE_CU_MODULE_NVX                         = 1000029000,
2067     VK_OBJECT_TYPE_CU_FUNCTION_NVX                       = 1000029001,
2068     VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT             = 1000128000,
2069     VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR            = 1000150000,
2070     VK_OBJECT_TYPE_VALIDATION_CACHE_EXT                  = 1000160000,
2071     VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV             = 1000165000,
2072     VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL       = 1000210000,
2073     VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR                = 1000268000,
2074     VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV           = 1000277000,
2075     VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA             = 1000366000,
2076     VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR        = VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE,
2077     VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR          = VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION,
2078     VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT                 = VK_OBJECT_TYPE_PRIVATE_DATA_SLOT,
2079     VK_OBJECT_TYPE_BEGIN_RANGE                           = VK_OBJECT_TYPE_UNKNOWN,
2080     VK_OBJECT_TYPE_END_RANGE                             = VK_OBJECT_TYPE_COMMAND_POOL,
2081     VK_OBJECT_TYPE_RANGE_SIZE                            = VK_OBJECT_TYPE_COMMAND_POOL - VK_OBJECT_TYPE_UNKNOWN + 1,
2082     VK_OBJECT_TYPE_MAX_ENUM                              = 0x7FFFFFFF
2083 }
2084 
2085 enum VK_OBJECT_TYPE_UNKNOWN                              = VkObjectType.VK_OBJECT_TYPE_UNKNOWN;
2086 enum VK_OBJECT_TYPE_INSTANCE                             = VkObjectType.VK_OBJECT_TYPE_INSTANCE;
2087 enum VK_OBJECT_TYPE_PHYSICAL_DEVICE                      = VkObjectType.VK_OBJECT_TYPE_PHYSICAL_DEVICE;
2088 enum VK_OBJECT_TYPE_DEVICE                               = VkObjectType.VK_OBJECT_TYPE_DEVICE;
2089 enum VK_OBJECT_TYPE_QUEUE                                = VkObjectType.VK_OBJECT_TYPE_QUEUE;
2090 enum VK_OBJECT_TYPE_SEMAPHORE                            = VkObjectType.VK_OBJECT_TYPE_SEMAPHORE;
2091 enum VK_OBJECT_TYPE_COMMAND_BUFFER                       = VkObjectType.VK_OBJECT_TYPE_COMMAND_BUFFER;
2092 enum VK_OBJECT_TYPE_FENCE                                = VkObjectType.VK_OBJECT_TYPE_FENCE;
2093 enum VK_OBJECT_TYPE_DEVICE_MEMORY                        = VkObjectType.VK_OBJECT_TYPE_DEVICE_MEMORY;
2094 enum VK_OBJECT_TYPE_BUFFER                               = VkObjectType.VK_OBJECT_TYPE_BUFFER;
2095 enum VK_OBJECT_TYPE_IMAGE                                = VkObjectType.VK_OBJECT_TYPE_IMAGE;
2096 enum VK_OBJECT_TYPE_EVENT                                = VkObjectType.VK_OBJECT_TYPE_EVENT;
2097 enum VK_OBJECT_TYPE_QUERY_POOL                           = VkObjectType.VK_OBJECT_TYPE_QUERY_POOL;
2098 enum VK_OBJECT_TYPE_BUFFER_VIEW                          = VkObjectType.VK_OBJECT_TYPE_BUFFER_VIEW;
2099 enum VK_OBJECT_TYPE_IMAGE_VIEW                           = VkObjectType.VK_OBJECT_TYPE_IMAGE_VIEW;
2100 enum VK_OBJECT_TYPE_SHADER_MODULE                        = VkObjectType.VK_OBJECT_TYPE_SHADER_MODULE;
2101 enum VK_OBJECT_TYPE_PIPELINE_CACHE                       = VkObjectType.VK_OBJECT_TYPE_PIPELINE_CACHE;
2102 enum VK_OBJECT_TYPE_PIPELINE_LAYOUT                      = VkObjectType.VK_OBJECT_TYPE_PIPELINE_LAYOUT;
2103 enum VK_OBJECT_TYPE_RENDER_PASS                          = VkObjectType.VK_OBJECT_TYPE_RENDER_PASS;
2104 enum VK_OBJECT_TYPE_PIPELINE                             = VkObjectType.VK_OBJECT_TYPE_PIPELINE;
2105 enum VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT                = VkObjectType.VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT;
2106 enum VK_OBJECT_TYPE_SAMPLER                              = VkObjectType.VK_OBJECT_TYPE_SAMPLER;
2107 enum VK_OBJECT_TYPE_DESCRIPTOR_POOL                      = VkObjectType.VK_OBJECT_TYPE_DESCRIPTOR_POOL;
2108 enum VK_OBJECT_TYPE_DESCRIPTOR_SET                       = VkObjectType.VK_OBJECT_TYPE_DESCRIPTOR_SET;
2109 enum VK_OBJECT_TYPE_FRAMEBUFFER                          = VkObjectType.VK_OBJECT_TYPE_FRAMEBUFFER;
2110 enum VK_OBJECT_TYPE_COMMAND_POOL                         = VkObjectType.VK_OBJECT_TYPE_COMMAND_POOL;
2111 enum VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION             = VkObjectType.VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION;
2112 enum VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE           = VkObjectType.VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE;
2113 enum VK_OBJECT_TYPE_PRIVATE_DATA_SLOT                    = VkObjectType.VK_OBJECT_TYPE_PRIVATE_DATA_SLOT;
2114 enum VK_OBJECT_TYPE_SURFACE_KHR                          = VkObjectType.VK_OBJECT_TYPE_SURFACE_KHR;
2115 enum VK_OBJECT_TYPE_SWAPCHAIN_KHR                        = VkObjectType.VK_OBJECT_TYPE_SWAPCHAIN_KHR;
2116 enum VK_OBJECT_TYPE_DISPLAY_KHR                          = VkObjectType.VK_OBJECT_TYPE_DISPLAY_KHR;
2117 enum VK_OBJECT_TYPE_DISPLAY_MODE_KHR                     = VkObjectType.VK_OBJECT_TYPE_DISPLAY_MODE_KHR;
2118 enum VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT            = VkObjectType.VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT;
2119 enum VK_OBJECT_TYPE_VIDEO_SESSION_KHR                    = VkObjectType.VK_OBJECT_TYPE_VIDEO_SESSION_KHR;
2120 enum VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR         = VkObjectType.VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR;
2121 enum VK_OBJECT_TYPE_CU_MODULE_NVX                        = VkObjectType.VK_OBJECT_TYPE_CU_MODULE_NVX;
2122 enum VK_OBJECT_TYPE_CU_FUNCTION_NVX                      = VkObjectType.VK_OBJECT_TYPE_CU_FUNCTION_NVX;
2123 enum VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT            = VkObjectType.VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT;
2124 enum VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR           = VkObjectType.VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR;
2125 enum VK_OBJECT_TYPE_VALIDATION_CACHE_EXT                 = VkObjectType.VK_OBJECT_TYPE_VALIDATION_CACHE_EXT;
2126 enum VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV            = VkObjectType.VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV;
2127 enum VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL      = VkObjectType.VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL;
2128 enum VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR               = VkObjectType.VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR;
2129 enum VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV          = VkObjectType.VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV;
2130 enum VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA            = VkObjectType.VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA;
2131 enum VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR       = VkObjectType.VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR;
2132 enum VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR         = VkObjectType.VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR;
2133 enum VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT                = VkObjectType.VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT;
2134 enum VK_OBJECT_TYPE_BEGIN_RANGE                          = VkObjectType.VK_OBJECT_TYPE_BEGIN_RANGE;
2135 enum VK_OBJECT_TYPE_END_RANGE                            = VkObjectType.VK_OBJECT_TYPE_END_RANGE;
2136 enum VK_OBJECT_TYPE_RANGE_SIZE                           = VkObjectType.VK_OBJECT_TYPE_RANGE_SIZE;
2137 enum VK_OBJECT_TYPE_MAX_ENUM                             = VkObjectType.VK_OBJECT_TYPE_MAX_ENUM;
2138 
2139 enum VkVendorId {
2140     VK_VENDOR_ID_VIV             = 0x10001,
2141     VK_VENDOR_ID_VSI             = 0x10002,
2142     VK_VENDOR_ID_KAZAN           = 0x10003,
2143     VK_VENDOR_ID_CODEPLAY        = 0x10004,
2144     VK_VENDOR_ID_MESA            = 0x10005,
2145     VK_VENDOR_ID_POCL            = 0x10006,
2146     VK_VENDOR_ID_BEGIN_RANGE     = VK_VENDOR_ID_VIV,
2147     VK_VENDOR_ID_END_RANGE       = VK_VENDOR_ID_POCL,
2148     VK_VENDOR_ID_RANGE_SIZE      = VK_VENDOR_ID_POCL - VK_VENDOR_ID_VIV + 1,
2149     VK_VENDOR_ID_MAX_ENUM        = 0x7FFFFFFF
2150 }
2151 
2152 enum VK_VENDOR_ID_VIV            = VkVendorId.VK_VENDOR_ID_VIV;
2153 enum VK_VENDOR_ID_VSI            = VkVendorId.VK_VENDOR_ID_VSI;
2154 enum VK_VENDOR_ID_KAZAN          = VkVendorId.VK_VENDOR_ID_KAZAN;
2155 enum VK_VENDOR_ID_CODEPLAY       = VkVendorId.VK_VENDOR_ID_CODEPLAY;
2156 enum VK_VENDOR_ID_MESA           = VkVendorId.VK_VENDOR_ID_MESA;
2157 enum VK_VENDOR_ID_POCL           = VkVendorId.VK_VENDOR_ID_POCL;
2158 enum VK_VENDOR_ID_BEGIN_RANGE    = VkVendorId.VK_VENDOR_ID_BEGIN_RANGE;
2159 enum VK_VENDOR_ID_END_RANGE      = VkVendorId.VK_VENDOR_ID_END_RANGE;
2160 enum VK_VENDOR_ID_RANGE_SIZE     = VkVendorId.VK_VENDOR_ID_RANGE_SIZE;
2161 enum VK_VENDOR_ID_MAX_ENUM       = VkVendorId.VK_VENDOR_ID_MAX_ENUM;
2162 
2163 enum VkSystemAllocationScope {
2164     VK_SYSTEM_ALLOCATION_SCOPE_COMMAND           = 0,
2165     VK_SYSTEM_ALLOCATION_SCOPE_OBJECT            = 1,
2166     VK_SYSTEM_ALLOCATION_SCOPE_CACHE             = 2,
2167     VK_SYSTEM_ALLOCATION_SCOPE_DEVICE            = 3,
2168     VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE          = 4,
2169     VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE       = VK_SYSTEM_ALLOCATION_SCOPE_COMMAND,
2170     VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE         = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE,
2171     VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE        = VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE - VK_SYSTEM_ALLOCATION_SCOPE_COMMAND + 1,
2172     VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM          = 0x7FFFFFFF
2173 }
2174 
2175 enum VK_SYSTEM_ALLOCATION_SCOPE_COMMAND          = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_COMMAND;
2176 enum VK_SYSTEM_ALLOCATION_SCOPE_OBJECT           = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_OBJECT;
2177 enum VK_SYSTEM_ALLOCATION_SCOPE_CACHE            = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_CACHE;
2178 enum VK_SYSTEM_ALLOCATION_SCOPE_DEVICE           = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_DEVICE;
2179 enum VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE         = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE;
2180 enum VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE      = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_BEGIN_RANGE;
2181 enum VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE        = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_END_RANGE;
2182 enum VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE       = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_RANGE_SIZE;
2183 enum VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM         = VkSystemAllocationScope.VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM;
2184 
2185 enum VkInternalAllocationType {
2186     VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE       = 0,
2187     VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE      = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,
2188     VK_INTERNAL_ALLOCATION_TYPE_END_RANGE        = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE,
2189     VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE       = VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE - VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE + 1,
2190     VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM         = 0x7FFFFFFF
2191 }
2192 
2193 enum VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE      = VkInternalAllocationType.VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE;
2194 enum VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE     = VkInternalAllocationType.VK_INTERNAL_ALLOCATION_TYPE_BEGIN_RANGE;
2195 enum VK_INTERNAL_ALLOCATION_TYPE_END_RANGE       = VkInternalAllocationType.VK_INTERNAL_ALLOCATION_TYPE_END_RANGE;
2196 enum VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE      = VkInternalAllocationType.VK_INTERNAL_ALLOCATION_TYPE_RANGE_SIZE;
2197 enum VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM        = VkInternalAllocationType.VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM;
2198 
2199 enum VkFormat {
2200     VK_FORMAT_UNDEFINED                                          = 0,
2201     VK_FORMAT_R4G4_UNORM_PACK8                                   = 1,
2202     VK_FORMAT_R4G4B4A4_UNORM_PACK16                              = 2,
2203     VK_FORMAT_B4G4R4A4_UNORM_PACK16                              = 3,
2204     VK_FORMAT_R5G6B5_UNORM_PACK16                                = 4,
2205     VK_FORMAT_B5G6R5_UNORM_PACK16                                = 5,
2206     VK_FORMAT_R5G5B5A1_UNORM_PACK16                              = 6,
2207     VK_FORMAT_B5G5R5A1_UNORM_PACK16                              = 7,
2208     VK_FORMAT_A1R5G5B5_UNORM_PACK16                              = 8,
2209     VK_FORMAT_R8_UNORM                                           = 9,
2210     VK_FORMAT_R8_SNORM                                           = 10,
2211     VK_FORMAT_R8_USCALED                                         = 11,
2212     VK_FORMAT_R8_SSCALED                                         = 12,
2213     VK_FORMAT_R8_UINT                                            = 13,
2214     VK_FORMAT_R8_SINT                                            = 14,
2215     VK_FORMAT_R8_SRGB                                            = 15,
2216     VK_FORMAT_R8G8_UNORM                                         = 16,
2217     VK_FORMAT_R8G8_SNORM                                         = 17,
2218     VK_FORMAT_R8G8_USCALED                                       = 18,
2219     VK_FORMAT_R8G8_SSCALED                                       = 19,
2220     VK_FORMAT_R8G8_UINT                                          = 20,
2221     VK_FORMAT_R8G8_SINT                                          = 21,
2222     VK_FORMAT_R8G8_SRGB                                          = 22,
2223     VK_FORMAT_R8G8B8_UNORM                                       = 23,
2224     VK_FORMAT_R8G8B8_SNORM                                       = 24,
2225     VK_FORMAT_R8G8B8_USCALED                                     = 25,
2226     VK_FORMAT_R8G8B8_SSCALED                                     = 26,
2227     VK_FORMAT_R8G8B8_UINT                                        = 27,
2228     VK_FORMAT_R8G8B8_SINT                                        = 28,
2229     VK_FORMAT_R8G8B8_SRGB                                        = 29,
2230     VK_FORMAT_B8G8R8_UNORM                                       = 30,
2231     VK_FORMAT_B8G8R8_SNORM                                       = 31,
2232     VK_FORMAT_B8G8R8_USCALED                                     = 32,
2233     VK_FORMAT_B8G8R8_SSCALED                                     = 33,
2234     VK_FORMAT_B8G8R8_UINT                                        = 34,
2235     VK_FORMAT_B8G8R8_SINT                                        = 35,
2236     VK_FORMAT_B8G8R8_SRGB                                        = 36,
2237     VK_FORMAT_R8G8B8A8_UNORM                                     = 37,
2238     VK_FORMAT_R8G8B8A8_SNORM                                     = 38,
2239     VK_FORMAT_R8G8B8A8_USCALED                                   = 39,
2240     VK_FORMAT_R8G8B8A8_SSCALED                                   = 40,
2241     VK_FORMAT_R8G8B8A8_UINT                                      = 41,
2242     VK_FORMAT_R8G8B8A8_SINT                                      = 42,
2243     VK_FORMAT_R8G8B8A8_SRGB                                      = 43,
2244     VK_FORMAT_B8G8R8A8_UNORM                                     = 44,
2245     VK_FORMAT_B8G8R8A8_SNORM                                     = 45,
2246     VK_FORMAT_B8G8R8A8_USCALED                                   = 46,
2247     VK_FORMAT_B8G8R8A8_SSCALED                                   = 47,
2248     VK_FORMAT_B8G8R8A8_UINT                                      = 48,
2249     VK_FORMAT_B8G8R8A8_SINT                                      = 49,
2250     VK_FORMAT_B8G8R8A8_SRGB                                      = 50,
2251     VK_FORMAT_A8B8G8R8_UNORM_PACK32                              = 51,
2252     VK_FORMAT_A8B8G8R8_SNORM_PACK32                              = 52,
2253     VK_FORMAT_A8B8G8R8_USCALED_PACK32                            = 53,
2254     VK_FORMAT_A8B8G8R8_SSCALED_PACK32                            = 54,
2255     VK_FORMAT_A8B8G8R8_UINT_PACK32                               = 55,
2256     VK_FORMAT_A8B8G8R8_SINT_PACK32                               = 56,
2257     VK_FORMAT_A8B8G8R8_SRGB_PACK32                               = 57,
2258     VK_FORMAT_A2R10G10B10_UNORM_PACK32                           = 58,
2259     VK_FORMAT_A2R10G10B10_SNORM_PACK32                           = 59,
2260     VK_FORMAT_A2R10G10B10_USCALED_PACK32                         = 60,
2261     VK_FORMAT_A2R10G10B10_SSCALED_PACK32                         = 61,
2262     VK_FORMAT_A2R10G10B10_UINT_PACK32                            = 62,
2263     VK_FORMAT_A2R10G10B10_SINT_PACK32                            = 63,
2264     VK_FORMAT_A2B10G10R10_UNORM_PACK32                           = 64,
2265     VK_FORMAT_A2B10G10R10_SNORM_PACK32                           = 65,
2266     VK_FORMAT_A2B10G10R10_USCALED_PACK32                         = 66,
2267     VK_FORMAT_A2B10G10R10_SSCALED_PACK32                         = 67,
2268     VK_FORMAT_A2B10G10R10_UINT_PACK32                            = 68,
2269     VK_FORMAT_A2B10G10R10_SINT_PACK32                            = 69,
2270     VK_FORMAT_R16_UNORM                                          = 70,
2271     VK_FORMAT_R16_SNORM                                          = 71,
2272     VK_FORMAT_R16_USCALED                                        = 72,
2273     VK_FORMAT_R16_SSCALED                                        = 73,
2274     VK_FORMAT_R16_UINT                                           = 74,
2275     VK_FORMAT_R16_SINT                                           = 75,
2276     VK_FORMAT_R16_SFLOAT                                         = 76,
2277     VK_FORMAT_R16G16_UNORM                                       = 77,
2278     VK_FORMAT_R16G16_SNORM                                       = 78,
2279     VK_FORMAT_R16G16_USCALED                                     = 79,
2280     VK_FORMAT_R16G16_SSCALED                                     = 80,
2281     VK_FORMAT_R16G16_UINT                                        = 81,
2282     VK_FORMAT_R16G16_SINT                                        = 82,
2283     VK_FORMAT_R16G16_SFLOAT                                      = 83,
2284     VK_FORMAT_R16G16B16_UNORM                                    = 84,
2285     VK_FORMAT_R16G16B16_SNORM                                    = 85,
2286     VK_FORMAT_R16G16B16_USCALED                                  = 86,
2287     VK_FORMAT_R16G16B16_SSCALED                                  = 87,
2288     VK_FORMAT_R16G16B16_UINT                                     = 88,
2289     VK_FORMAT_R16G16B16_SINT                                     = 89,
2290     VK_FORMAT_R16G16B16_SFLOAT                                   = 90,
2291     VK_FORMAT_R16G16B16A16_UNORM                                 = 91,
2292     VK_FORMAT_R16G16B16A16_SNORM                                 = 92,
2293     VK_FORMAT_R16G16B16A16_USCALED                               = 93,
2294     VK_FORMAT_R16G16B16A16_SSCALED                               = 94,
2295     VK_FORMAT_R16G16B16A16_UINT                                  = 95,
2296     VK_FORMAT_R16G16B16A16_SINT                                  = 96,
2297     VK_FORMAT_R16G16B16A16_SFLOAT                                = 97,
2298     VK_FORMAT_R32_UINT                                           = 98,
2299     VK_FORMAT_R32_SINT                                           = 99,
2300     VK_FORMAT_R32_SFLOAT                                         = 100,
2301     VK_FORMAT_R32G32_UINT                                        = 101,
2302     VK_FORMAT_R32G32_SINT                                        = 102,
2303     VK_FORMAT_R32G32_SFLOAT                                      = 103,
2304     VK_FORMAT_R32G32B32_UINT                                     = 104,
2305     VK_FORMAT_R32G32B32_SINT                                     = 105,
2306     VK_FORMAT_R32G32B32_SFLOAT                                   = 106,
2307     VK_FORMAT_R32G32B32A32_UINT                                  = 107,
2308     VK_FORMAT_R32G32B32A32_SINT                                  = 108,
2309     VK_FORMAT_R32G32B32A32_SFLOAT                                = 109,
2310     VK_FORMAT_R64_UINT                                           = 110,
2311     VK_FORMAT_R64_SINT                                           = 111,
2312     VK_FORMAT_R64_SFLOAT                                         = 112,
2313     VK_FORMAT_R64G64_UINT                                        = 113,
2314     VK_FORMAT_R64G64_SINT                                        = 114,
2315     VK_FORMAT_R64G64_SFLOAT                                      = 115,
2316     VK_FORMAT_R64G64B64_UINT                                     = 116,
2317     VK_FORMAT_R64G64B64_SINT                                     = 117,
2318     VK_FORMAT_R64G64B64_SFLOAT                                   = 118,
2319     VK_FORMAT_R64G64B64A64_UINT                                  = 119,
2320     VK_FORMAT_R64G64B64A64_SINT                                  = 120,
2321     VK_FORMAT_R64G64B64A64_SFLOAT                                = 121,
2322     VK_FORMAT_B10G11R11_UFLOAT_PACK32                            = 122,
2323     VK_FORMAT_E5B9G9R9_UFLOAT_PACK32                             = 123,
2324     VK_FORMAT_D16_UNORM                                          = 124,
2325     VK_FORMAT_X8_D24_UNORM_PACK32                                = 125,
2326     VK_FORMAT_D32_SFLOAT                                         = 126,
2327     VK_FORMAT_S8_UINT                                            = 127,
2328     VK_FORMAT_D16_UNORM_S8_UINT                                  = 128,
2329     VK_FORMAT_D24_UNORM_S8_UINT                                  = 129,
2330     VK_FORMAT_D32_SFLOAT_S8_UINT                                 = 130,
2331     VK_FORMAT_BC1_RGB_UNORM_BLOCK                                = 131,
2332     VK_FORMAT_BC1_RGB_SRGB_BLOCK                                 = 132,
2333     VK_FORMAT_BC1_RGBA_UNORM_BLOCK                               = 133,
2334     VK_FORMAT_BC1_RGBA_SRGB_BLOCK                                = 134,
2335     VK_FORMAT_BC2_UNORM_BLOCK                                    = 135,
2336     VK_FORMAT_BC2_SRGB_BLOCK                                     = 136,
2337     VK_FORMAT_BC3_UNORM_BLOCK                                    = 137,
2338     VK_FORMAT_BC3_SRGB_BLOCK                                     = 138,
2339     VK_FORMAT_BC4_UNORM_BLOCK                                    = 139,
2340     VK_FORMAT_BC4_SNORM_BLOCK                                    = 140,
2341     VK_FORMAT_BC5_UNORM_BLOCK                                    = 141,
2342     VK_FORMAT_BC5_SNORM_BLOCK                                    = 142,
2343     VK_FORMAT_BC6H_UFLOAT_BLOCK                                  = 143,
2344     VK_FORMAT_BC6H_SFLOAT_BLOCK                                  = 144,
2345     VK_FORMAT_BC7_UNORM_BLOCK                                    = 145,
2346     VK_FORMAT_BC7_SRGB_BLOCK                                     = 146,
2347     VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK                            = 147,
2348     VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK                             = 148,
2349     VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK                          = 149,
2350     VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK                           = 150,
2351     VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK                          = 151,
2352     VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK                           = 152,
2353     VK_FORMAT_EAC_R11_UNORM_BLOCK                                = 153,
2354     VK_FORMAT_EAC_R11_SNORM_BLOCK                                = 154,
2355     VK_FORMAT_EAC_R11G11_UNORM_BLOCK                             = 155,
2356     VK_FORMAT_EAC_R11G11_SNORM_BLOCK                             = 156,
2357     VK_FORMAT_ASTC_4x4_UNORM_BLOCK                               = 157,
2358     VK_FORMAT_ASTC_4x4_SRGB_BLOCK                                = 158,
2359     VK_FORMAT_ASTC_5x4_UNORM_BLOCK                               = 159,
2360     VK_FORMAT_ASTC_5x4_SRGB_BLOCK                                = 160,
2361     VK_FORMAT_ASTC_5x5_UNORM_BLOCK                               = 161,
2362     VK_FORMAT_ASTC_5x5_SRGB_BLOCK                                = 162,
2363     VK_FORMAT_ASTC_6x5_UNORM_BLOCK                               = 163,
2364     VK_FORMAT_ASTC_6x5_SRGB_BLOCK                                = 164,
2365     VK_FORMAT_ASTC_6x6_UNORM_BLOCK                               = 165,
2366     VK_FORMAT_ASTC_6x6_SRGB_BLOCK                                = 166,
2367     VK_FORMAT_ASTC_8x5_UNORM_BLOCK                               = 167,
2368     VK_FORMAT_ASTC_8x5_SRGB_BLOCK                                = 168,
2369     VK_FORMAT_ASTC_8x6_UNORM_BLOCK                               = 169,
2370     VK_FORMAT_ASTC_8x6_SRGB_BLOCK                                = 170,
2371     VK_FORMAT_ASTC_8x8_UNORM_BLOCK                               = 171,
2372     VK_FORMAT_ASTC_8x8_SRGB_BLOCK                                = 172,
2373     VK_FORMAT_ASTC_10x5_UNORM_BLOCK                              = 173,
2374     VK_FORMAT_ASTC_10x5_SRGB_BLOCK                               = 174,
2375     VK_FORMAT_ASTC_10x6_UNORM_BLOCK                              = 175,
2376     VK_FORMAT_ASTC_10x6_SRGB_BLOCK                               = 176,
2377     VK_FORMAT_ASTC_10x8_UNORM_BLOCK                              = 177,
2378     VK_FORMAT_ASTC_10x8_SRGB_BLOCK                               = 178,
2379     VK_FORMAT_ASTC_10x10_UNORM_BLOCK                             = 179,
2380     VK_FORMAT_ASTC_10x10_SRGB_BLOCK                              = 180,
2381     VK_FORMAT_ASTC_12x10_UNORM_BLOCK                             = 181,
2382     VK_FORMAT_ASTC_12x10_SRGB_BLOCK                              = 182,
2383     VK_FORMAT_ASTC_12x12_UNORM_BLOCK                             = 183,
2384     VK_FORMAT_ASTC_12x12_SRGB_BLOCK                              = 184,
2385     VK_FORMAT_G8B8G8R8_422_UNORM                                 = 1000156000,
2386     VK_FORMAT_B8G8R8G8_422_UNORM                                 = 1000156001,
2387     VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM                          = 1000156002,
2388     VK_FORMAT_G8_B8R8_2PLANE_420_UNORM                           = 1000156003,
2389     VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM                          = 1000156004,
2390     VK_FORMAT_G8_B8R8_2PLANE_422_UNORM                           = 1000156005,
2391     VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM                          = 1000156006,
2392     VK_FORMAT_R10X6_UNORM_PACK16                                 = 1000156007,
2393     VK_FORMAT_R10X6G10X6_UNORM_2PACK16                           = 1000156008,
2394     VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16                 = 1000156009,
2395     VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16             = 1000156010,
2396     VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16             = 1000156011,
2397     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16         = 1000156012,
2398     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16          = 1000156013,
2399     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16         = 1000156014,
2400     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16          = 1000156015,
2401     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16         = 1000156016,
2402     VK_FORMAT_R12X4_UNORM_PACK16                                 = 1000156017,
2403     VK_FORMAT_R12X4G12X4_UNORM_2PACK16                           = 1000156018,
2404     VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16                 = 1000156019,
2405     VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16             = 1000156020,
2406     VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16             = 1000156021,
2407     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16         = 1000156022,
2408     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16          = 1000156023,
2409     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16         = 1000156024,
2410     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16          = 1000156025,
2411     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16         = 1000156026,
2412     VK_FORMAT_G16B16G16R16_422_UNORM                             = 1000156027,
2413     VK_FORMAT_B16G16R16G16_422_UNORM                             = 1000156028,
2414     VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM                       = 1000156029,
2415     VK_FORMAT_G16_B16R16_2PLANE_420_UNORM                        = 1000156030,
2416     VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM                       = 1000156031,
2417     VK_FORMAT_G16_B16R16_2PLANE_422_UNORM                        = 1000156032,
2418     VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM                       = 1000156033,
2419     VK_FORMAT_G8_B8R8_2PLANE_444_UNORM                           = 1000330000,
2420     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16          = 1000330001,
2421     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16          = 1000330002,
2422     VK_FORMAT_G16_B16R16_2PLANE_444_UNORM                        = 1000330003,
2423     VK_FORMAT_A4R4G4B4_UNORM_PACK16                              = 1000340000,
2424     VK_FORMAT_A4B4G4R4_UNORM_PACK16                              = 1000340001,
2425     VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK                              = 1000066000,
2426     VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK                              = 1000066001,
2427     VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK                              = 1000066002,
2428     VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK                              = 1000066003,
2429     VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK                              = 1000066004,
2430     VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK                              = 1000066005,
2431     VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK                              = 1000066006,
2432     VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK                              = 1000066007,
2433     VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK                             = 1000066008,
2434     VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK                             = 1000066009,
2435     VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK                             = 1000066010,
2436     VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK                            = 1000066011,
2437     VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK                            = 1000066012,
2438     VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK                            = 1000066013,
2439     VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG                        = 1000054000,
2440     VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG                        = 1000054001,
2441     VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG                        = 1000054002,
2442     VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG                        = 1000054003,
2443     VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG                         = 1000054004,
2444     VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG                         = 1000054005,
2445     VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG                         = 1000054006,
2446     VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG                         = 1000054007,
2447     VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK,
2448     VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK,
2449     VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK,
2450     VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK,
2451     VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK,
2452     VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK,
2453     VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK,
2454     VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT                          = VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK,
2455     VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT                         = VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK,
2456     VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT                         = VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK,
2457     VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT                         = VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK,
2458     VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT                        = VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK,
2459     VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT                        = VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK,
2460     VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT                        = VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK,
2461     VK_FORMAT_G8B8G8R8_422_UNORM_KHR                             = VK_FORMAT_G8B8G8R8_422_UNORM,
2462     VK_FORMAT_B8G8R8G8_422_UNORM_KHR                             = VK_FORMAT_B8G8R8G8_422_UNORM,
2463     VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR                      = VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM,
2464     VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR                       = VK_FORMAT_G8_B8R8_2PLANE_420_UNORM,
2465     VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR                      = VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM,
2466     VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR                       = VK_FORMAT_G8_B8R8_2PLANE_422_UNORM,
2467     VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR                      = VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM,
2468     VK_FORMAT_R10X6_UNORM_PACK16_KHR                             = VK_FORMAT_R10X6_UNORM_PACK16,
2469     VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR                       = VK_FORMAT_R10X6G10X6_UNORM_2PACK16,
2470     VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR             = VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16,
2471     VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR         = VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16,
2472     VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR         = VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16,
2473     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR     = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16,
2474     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR      = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16,
2475     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR     = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16,
2476     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR      = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16,
2477     VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR     = VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16,
2478     VK_FORMAT_R12X4_UNORM_PACK16_KHR                             = VK_FORMAT_R12X4_UNORM_PACK16,
2479     VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR                       = VK_FORMAT_R12X4G12X4_UNORM_2PACK16,
2480     VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR             = VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16,
2481     VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR         = VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16,
2482     VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR         = VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16,
2483     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR     = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16,
2484     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR      = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16,
2485     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR     = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16,
2486     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR      = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16,
2487     VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR     = VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16,
2488     VK_FORMAT_G16B16G16R16_422_UNORM_KHR                         = VK_FORMAT_G16B16G16R16_422_UNORM,
2489     VK_FORMAT_B16G16R16G16_422_UNORM_KHR                         = VK_FORMAT_B16G16R16G16_422_UNORM,
2490     VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR                   = VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM,
2491     VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR                    = VK_FORMAT_G16_B16R16_2PLANE_420_UNORM,
2492     VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR                   = VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM,
2493     VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR                    = VK_FORMAT_G16_B16R16_2PLANE_422_UNORM,
2494     VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR                   = VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM,
2495     VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT                       = VK_FORMAT_G8_B8R8_2PLANE_444_UNORM,
2496     VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT      = VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16,
2497     VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT      = VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16,
2498     VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT                    = VK_FORMAT_G16_B16R16_2PLANE_444_UNORM,
2499     VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT                          = VK_FORMAT_A4R4G4B4_UNORM_PACK16,
2500     VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT                          = VK_FORMAT_A4B4G4R4_UNORM_PACK16,
2501     VK_FORMAT_BEGIN_RANGE                                        = VK_FORMAT_UNDEFINED,
2502     VK_FORMAT_END_RANGE                                          = VK_FORMAT_ASTC_12x12_SRGB_BLOCK,
2503     VK_FORMAT_RANGE_SIZE                                         = VK_FORMAT_ASTC_12x12_SRGB_BLOCK - VK_FORMAT_UNDEFINED + 1,
2504     VK_FORMAT_MAX_ENUM                                           = 0x7FFFFFFF
2505 }
2506 
2507 enum VK_FORMAT_UNDEFINED                                         = VkFormat.VK_FORMAT_UNDEFINED;
2508 enum VK_FORMAT_R4G4_UNORM_PACK8                                  = VkFormat.VK_FORMAT_R4G4_UNORM_PACK8;
2509 enum VK_FORMAT_R4G4B4A4_UNORM_PACK16                             = VkFormat.VK_FORMAT_R4G4B4A4_UNORM_PACK16;
2510 enum VK_FORMAT_B4G4R4A4_UNORM_PACK16                             = VkFormat.VK_FORMAT_B4G4R4A4_UNORM_PACK16;
2511 enum VK_FORMAT_R5G6B5_UNORM_PACK16                               = VkFormat.VK_FORMAT_R5G6B5_UNORM_PACK16;
2512 enum VK_FORMAT_B5G6R5_UNORM_PACK16                               = VkFormat.VK_FORMAT_B5G6R5_UNORM_PACK16;
2513 enum VK_FORMAT_R5G5B5A1_UNORM_PACK16                             = VkFormat.VK_FORMAT_R5G5B5A1_UNORM_PACK16;
2514 enum VK_FORMAT_B5G5R5A1_UNORM_PACK16                             = VkFormat.VK_FORMAT_B5G5R5A1_UNORM_PACK16;
2515 enum VK_FORMAT_A1R5G5B5_UNORM_PACK16                             = VkFormat.VK_FORMAT_A1R5G5B5_UNORM_PACK16;
2516 enum VK_FORMAT_R8_UNORM                                          = VkFormat.VK_FORMAT_R8_UNORM;
2517 enum VK_FORMAT_R8_SNORM                                          = VkFormat.VK_FORMAT_R8_SNORM;
2518 enum VK_FORMAT_R8_USCALED                                        = VkFormat.VK_FORMAT_R8_USCALED;
2519 enum VK_FORMAT_R8_SSCALED                                        = VkFormat.VK_FORMAT_R8_SSCALED;
2520 enum VK_FORMAT_R8_UINT                                           = VkFormat.VK_FORMAT_R8_UINT;
2521 enum VK_FORMAT_R8_SINT                                           = VkFormat.VK_FORMAT_R8_SINT;
2522 enum VK_FORMAT_R8_SRGB                                           = VkFormat.VK_FORMAT_R8_SRGB;
2523 enum VK_FORMAT_R8G8_UNORM                                        = VkFormat.VK_FORMAT_R8G8_UNORM;
2524 enum VK_FORMAT_R8G8_SNORM                                        = VkFormat.VK_FORMAT_R8G8_SNORM;
2525 enum VK_FORMAT_R8G8_USCALED                                      = VkFormat.VK_FORMAT_R8G8_USCALED;
2526 enum VK_FORMAT_R8G8_SSCALED                                      = VkFormat.VK_FORMAT_R8G8_SSCALED;
2527 enum VK_FORMAT_R8G8_UINT                                         = VkFormat.VK_FORMAT_R8G8_UINT;
2528 enum VK_FORMAT_R8G8_SINT                                         = VkFormat.VK_FORMAT_R8G8_SINT;
2529 enum VK_FORMAT_R8G8_SRGB                                         = VkFormat.VK_FORMAT_R8G8_SRGB;
2530 enum VK_FORMAT_R8G8B8_UNORM                                      = VkFormat.VK_FORMAT_R8G8B8_UNORM;
2531 enum VK_FORMAT_R8G8B8_SNORM                                      = VkFormat.VK_FORMAT_R8G8B8_SNORM;
2532 enum VK_FORMAT_R8G8B8_USCALED                                    = VkFormat.VK_FORMAT_R8G8B8_USCALED;
2533 enum VK_FORMAT_R8G8B8_SSCALED                                    = VkFormat.VK_FORMAT_R8G8B8_SSCALED;
2534 enum VK_FORMAT_R8G8B8_UINT                                       = VkFormat.VK_FORMAT_R8G8B8_UINT;
2535 enum VK_FORMAT_R8G8B8_SINT                                       = VkFormat.VK_FORMAT_R8G8B8_SINT;
2536 enum VK_FORMAT_R8G8B8_SRGB                                       = VkFormat.VK_FORMAT_R8G8B8_SRGB;
2537 enum VK_FORMAT_B8G8R8_UNORM                                      = VkFormat.VK_FORMAT_B8G8R8_UNORM;
2538 enum VK_FORMAT_B8G8R8_SNORM                                      = VkFormat.VK_FORMAT_B8G8R8_SNORM;
2539 enum VK_FORMAT_B8G8R8_USCALED                                    = VkFormat.VK_FORMAT_B8G8R8_USCALED;
2540 enum VK_FORMAT_B8G8R8_SSCALED                                    = VkFormat.VK_FORMAT_B8G8R8_SSCALED;
2541 enum VK_FORMAT_B8G8R8_UINT                                       = VkFormat.VK_FORMAT_B8G8R8_UINT;
2542 enum VK_FORMAT_B8G8R8_SINT                                       = VkFormat.VK_FORMAT_B8G8R8_SINT;
2543 enum VK_FORMAT_B8G8R8_SRGB                                       = VkFormat.VK_FORMAT_B8G8R8_SRGB;
2544 enum VK_FORMAT_R8G8B8A8_UNORM                                    = VkFormat.VK_FORMAT_R8G8B8A8_UNORM;
2545 enum VK_FORMAT_R8G8B8A8_SNORM                                    = VkFormat.VK_FORMAT_R8G8B8A8_SNORM;
2546 enum VK_FORMAT_R8G8B8A8_USCALED                                  = VkFormat.VK_FORMAT_R8G8B8A8_USCALED;
2547 enum VK_FORMAT_R8G8B8A8_SSCALED                                  = VkFormat.VK_FORMAT_R8G8B8A8_SSCALED;
2548 enum VK_FORMAT_R8G8B8A8_UINT                                     = VkFormat.VK_FORMAT_R8G8B8A8_UINT;
2549 enum VK_FORMAT_R8G8B8A8_SINT                                     = VkFormat.VK_FORMAT_R8G8B8A8_SINT;
2550 enum VK_FORMAT_R8G8B8A8_SRGB                                     = VkFormat.VK_FORMAT_R8G8B8A8_SRGB;
2551 enum VK_FORMAT_B8G8R8A8_UNORM                                    = VkFormat.VK_FORMAT_B8G8R8A8_UNORM;
2552 enum VK_FORMAT_B8G8R8A8_SNORM                                    = VkFormat.VK_FORMAT_B8G8R8A8_SNORM;
2553 enum VK_FORMAT_B8G8R8A8_USCALED                                  = VkFormat.VK_FORMAT_B8G8R8A8_USCALED;
2554 enum VK_FORMAT_B8G8R8A8_SSCALED                                  = VkFormat.VK_FORMAT_B8G8R8A8_SSCALED;
2555 enum VK_FORMAT_B8G8R8A8_UINT                                     = VkFormat.VK_FORMAT_B8G8R8A8_UINT;
2556 enum VK_FORMAT_B8G8R8A8_SINT                                     = VkFormat.VK_FORMAT_B8G8R8A8_SINT;
2557 enum VK_FORMAT_B8G8R8A8_SRGB                                     = VkFormat.VK_FORMAT_B8G8R8A8_SRGB;
2558 enum VK_FORMAT_A8B8G8R8_UNORM_PACK32                             = VkFormat.VK_FORMAT_A8B8G8R8_UNORM_PACK32;
2559 enum VK_FORMAT_A8B8G8R8_SNORM_PACK32                             = VkFormat.VK_FORMAT_A8B8G8R8_SNORM_PACK32;
2560 enum VK_FORMAT_A8B8G8R8_USCALED_PACK32                           = VkFormat.VK_FORMAT_A8B8G8R8_USCALED_PACK32;
2561 enum VK_FORMAT_A8B8G8R8_SSCALED_PACK32                           = VkFormat.VK_FORMAT_A8B8G8R8_SSCALED_PACK32;
2562 enum VK_FORMAT_A8B8G8R8_UINT_PACK32                              = VkFormat.VK_FORMAT_A8B8G8R8_UINT_PACK32;
2563 enum VK_FORMAT_A8B8G8R8_SINT_PACK32                              = VkFormat.VK_FORMAT_A8B8G8R8_SINT_PACK32;
2564 enum VK_FORMAT_A8B8G8R8_SRGB_PACK32                              = VkFormat.VK_FORMAT_A8B8G8R8_SRGB_PACK32;
2565 enum VK_FORMAT_A2R10G10B10_UNORM_PACK32                          = VkFormat.VK_FORMAT_A2R10G10B10_UNORM_PACK32;
2566 enum VK_FORMAT_A2R10G10B10_SNORM_PACK32                          = VkFormat.VK_FORMAT_A2R10G10B10_SNORM_PACK32;
2567 enum VK_FORMAT_A2R10G10B10_USCALED_PACK32                        = VkFormat.VK_FORMAT_A2R10G10B10_USCALED_PACK32;
2568 enum VK_FORMAT_A2R10G10B10_SSCALED_PACK32                        = VkFormat.VK_FORMAT_A2R10G10B10_SSCALED_PACK32;
2569 enum VK_FORMAT_A2R10G10B10_UINT_PACK32                           = VkFormat.VK_FORMAT_A2R10G10B10_UINT_PACK32;
2570 enum VK_FORMAT_A2R10G10B10_SINT_PACK32                           = VkFormat.VK_FORMAT_A2R10G10B10_SINT_PACK32;
2571 enum VK_FORMAT_A2B10G10R10_UNORM_PACK32                          = VkFormat.VK_FORMAT_A2B10G10R10_UNORM_PACK32;
2572 enum VK_FORMAT_A2B10G10R10_SNORM_PACK32                          = VkFormat.VK_FORMAT_A2B10G10R10_SNORM_PACK32;
2573 enum VK_FORMAT_A2B10G10R10_USCALED_PACK32                        = VkFormat.VK_FORMAT_A2B10G10R10_USCALED_PACK32;
2574 enum VK_FORMAT_A2B10G10R10_SSCALED_PACK32                        = VkFormat.VK_FORMAT_A2B10G10R10_SSCALED_PACK32;
2575 enum VK_FORMAT_A2B10G10R10_UINT_PACK32                           = VkFormat.VK_FORMAT_A2B10G10R10_UINT_PACK32;
2576 enum VK_FORMAT_A2B10G10R10_SINT_PACK32                           = VkFormat.VK_FORMAT_A2B10G10R10_SINT_PACK32;
2577 enum VK_FORMAT_R16_UNORM                                         = VkFormat.VK_FORMAT_R16_UNORM;
2578 enum VK_FORMAT_R16_SNORM                                         = VkFormat.VK_FORMAT_R16_SNORM;
2579 enum VK_FORMAT_R16_USCALED                                       = VkFormat.VK_FORMAT_R16_USCALED;
2580 enum VK_FORMAT_R16_SSCALED                                       = VkFormat.VK_FORMAT_R16_SSCALED;
2581 enum VK_FORMAT_R16_UINT                                          = VkFormat.VK_FORMAT_R16_UINT;
2582 enum VK_FORMAT_R16_SINT                                          = VkFormat.VK_FORMAT_R16_SINT;
2583 enum VK_FORMAT_R16_SFLOAT                                        = VkFormat.VK_FORMAT_R16_SFLOAT;
2584 enum VK_FORMAT_R16G16_UNORM                                      = VkFormat.VK_FORMAT_R16G16_UNORM;
2585 enum VK_FORMAT_R16G16_SNORM                                      = VkFormat.VK_FORMAT_R16G16_SNORM;
2586 enum VK_FORMAT_R16G16_USCALED                                    = VkFormat.VK_FORMAT_R16G16_USCALED;
2587 enum VK_FORMAT_R16G16_SSCALED                                    = VkFormat.VK_FORMAT_R16G16_SSCALED;
2588 enum VK_FORMAT_R16G16_UINT                                       = VkFormat.VK_FORMAT_R16G16_UINT;
2589 enum VK_FORMAT_R16G16_SINT                                       = VkFormat.VK_FORMAT_R16G16_SINT;
2590 enum VK_FORMAT_R16G16_SFLOAT                                     = VkFormat.VK_FORMAT_R16G16_SFLOAT;
2591 enum VK_FORMAT_R16G16B16_UNORM                                   = VkFormat.VK_FORMAT_R16G16B16_UNORM;
2592 enum VK_FORMAT_R16G16B16_SNORM                                   = VkFormat.VK_FORMAT_R16G16B16_SNORM;
2593 enum VK_FORMAT_R16G16B16_USCALED                                 = VkFormat.VK_FORMAT_R16G16B16_USCALED;
2594 enum VK_FORMAT_R16G16B16_SSCALED                                 = VkFormat.VK_FORMAT_R16G16B16_SSCALED;
2595 enum VK_FORMAT_R16G16B16_UINT                                    = VkFormat.VK_FORMAT_R16G16B16_UINT;
2596 enum VK_FORMAT_R16G16B16_SINT                                    = VkFormat.VK_FORMAT_R16G16B16_SINT;
2597 enum VK_FORMAT_R16G16B16_SFLOAT                                  = VkFormat.VK_FORMAT_R16G16B16_SFLOAT;
2598 enum VK_FORMAT_R16G16B16A16_UNORM                                = VkFormat.VK_FORMAT_R16G16B16A16_UNORM;
2599 enum VK_FORMAT_R16G16B16A16_SNORM                                = VkFormat.VK_FORMAT_R16G16B16A16_SNORM;
2600 enum VK_FORMAT_R16G16B16A16_USCALED                              = VkFormat.VK_FORMAT_R16G16B16A16_USCALED;
2601 enum VK_FORMAT_R16G16B16A16_SSCALED                              = VkFormat.VK_FORMAT_R16G16B16A16_SSCALED;
2602 enum VK_FORMAT_R16G16B16A16_UINT                                 = VkFormat.VK_FORMAT_R16G16B16A16_UINT;
2603 enum VK_FORMAT_R16G16B16A16_SINT                                 = VkFormat.VK_FORMAT_R16G16B16A16_SINT;
2604 enum VK_FORMAT_R16G16B16A16_SFLOAT                               = VkFormat.VK_FORMAT_R16G16B16A16_SFLOAT;
2605 enum VK_FORMAT_R32_UINT                                          = VkFormat.VK_FORMAT_R32_UINT;
2606 enum VK_FORMAT_R32_SINT                                          = VkFormat.VK_FORMAT_R32_SINT;
2607 enum VK_FORMAT_R32_SFLOAT                                        = VkFormat.VK_FORMAT_R32_SFLOAT;
2608 enum VK_FORMAT_R32G32_UINT                                       = VkFormat.VK_FORMAT_R32G32_UINT;
2609 enum VK_FORMAT_R32G32_SINT                                       = VkFormat.VK_FORMAT_R32G32_SINT;
2610 enum VK_FORMAT_R32G32_SFLOAT                                     = VkFormat.VK_FORMAT_R32G32_SFLOAT;
2611 enum VK_FORMAT_R32G32B32_UINT                                    = VkFormat.VK_FORMAT_R32G32B32_UINT;
2612 enum VK_FORMAT_R32G32B32_SINT                                    = VkFormat.VK_FORMAT_R32G32B32_SINT;
2613 enum VK_FORMAT_R32G32B32_SFLOAT                                  = VkFormat.VK_FORMAT_R32G32B32_SFLOAT;
2614 enum VK_FORMAT_R32G32B32A32_UINT                                 = VkFormat.VK_FORMAT_R32G32B32A32_UINT;
2615 enum VK_FORMAT_R32G32B32A32_SINT                                 = VkFormat.VK_FORMAT_R32G32B32A32_SINT;
2616 enum VK_FORMAT_R32G32B32A32_SFLOAT                               = VkFormat.VK_FORMAT_R32G32B32A32_SFLOAT;
2617 enum VK_FORMAT_R64_UINT                                          = VkFormat.VK_FORMAT_R64_UINT;
2618 enum VK_FORMAT_R64_SINT                                          = VkFormat.VK_FORMAT_R64_SINT;
2619 enum VK_FORMAT_R64_SFLOAT                                        = VkFormat.VK_FORMAT_R64_SFLOAT;
2620 enum VK_FORMAT_R64G64_UINT                                       = VkFormat.VK_FORMAT_R64G64_UINT;
2621 enum VK_FORMAT_R64G64_SINT                                       = VkFormat.VK_FORMAT_R64G64_SINT;
2622 enum VK_FORMAT_R64G64_SFLOAT                                     = VkFormat.VK_FORMAT_R64G64_SFLOAT;
2623 enum VK_FORMAT_R64G64B64_UINT                                    = VkFormat.VK_FORMAT_R64G64B64_UINT;
2624 enum VK_FORMAT_R64G64B64_SINT                                    = VkFormat.VK_FORMAT_R64G64B64_SINT;
2625 enum VK_FORMAT_R64G64B64_SFLOAT                                  = VkFormat.VK_FORMAT_R64G64B64_SFLOAT;
2626 enum VK_FORMAT_R64G64B64A64_UINT                                 = VkFormat.VK_FORMAT_R64G64B64A64_UINT;
2627 enum VK_FORMAT_R64G64B64A64_SINT                                 = VkFormat.VK_FORMAT_R64G64B64A64_SINT;
2628 enum VK_FORMAT_R64G64B64A64_SFLOAT                               = VkFormat.VK_FORMAT_R64G64B64A64_SFLOAT;
2629 enum VK_FORMAT_B10G11R11_UFLOAT_PACK32                           = VkFormat.VK_FORMAT_B10G11R11_UFLOAT_PACK32;
2630 enum VK_FORMAT_E5B9G9R9_UFLOAT_PACK32                            = VkFormat.VK_FORMAT_E5B9G9R9_UFLOAT_PACK32;
2631 enum VK_FORMAT_D16_UNORM                                         = VkFormat.VK_FORMAT_D16_UNORM;
2632 enum VK_FORMAT_X8_D24_UNORM_PACK32                               = VkFormat.VK_FORMAT_X8_D24_UNORM_PACK32;
2633 enum VK_FORMAT_D32_SFLOAT                                        = VkFormat.VK_FORMAT_D32_SFLOAT;
2634 enum VK_FORMAT_S8_UINT                                           = VkFormat.VK_FORMAT_S8_UINT;
2635 enum VK_FORMAT_D16_UNORM_S8_UINT                                 = VkFormat.VK_FORMAT_D16_UNORM_S8_UINT;
2636 enum VK_FORMAT_D24_UNORM_S8_UINT                                 = VkFormat.VK_FORMAT_D24_UNORM_S8_UINT;
2637 enum VK_FORMAT_D32_SFLOAT_S8_UINT                                = VkFormat.VK_FORMAT_D32_SFLOAT_S8_UINT;
2638 enum VK_FORMAT_BC1_RGB_UNORM_BLOCK                               = VkFormat.VK_FORMAT_BC1_RGB_UNORM_BLOCK;
2639 enum VK_FORMAT_BC1_RGB_SRGB_BLOCK                                = VkFormat.VK_FORMAT_BC1_RGB_SRGB_BLOCK;
2640 enum VK_FORMAT_BC1_RGBA_UNORM_BLOCK                              = VkFormat.VK_FORMAT_BC1_RGBA_UNORM_BLOCK;
2641 enum VK_FORMAT_BC1_RGBA_SRGB_BLOCK                               = VkFormat.VK_FORMAT_BC1_RGBA_SRGB_BLOCK;
2642 enum VK_FORMAT_BC2_UNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC2_UNORM_BLOCK;
2643 enum VK_FORMAT_BC2_SRGB_BLOCK                                    = VkFormat.VK_FORMAT_BC2_SRGB_BLOCK;
2644 enum VK_FORMAT_BC3_UNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC3_UNORM_BLOCK;
2645 enum VK_FORMAT_BC3_SRGB_BLOCK                                    = VkFormat.VK_FORMAT_BC3_SRGB_BLOCK;
2646 enum VK_FORMAT_BC4_UNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC4_UNORM_BLOCK;
2647 enum VK_FORMAT_BC4_SNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC4_SNORM_BLOCK;
2648 enum VK_FORMAT_BC5_UNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC5_UNORM_BLOCK;
2649 enum VK_FORMAT_BC5_SNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC5_SNORM_BLOCK;
2650 enum VK_FORMAT_BC6H_UFLOAT_BLOCK                                 = VkFormat.VK_FORMAT_BC6H_UFLOAT_BLOCK;
2651 enum VK_FORMAT_BC6H_SFLOAT_BLOCK                                 = VkFormat.VK_FORMAT_BC6H_SFLOAT_BLOCK;
2652 enum VK_FORMAT_BC7_UNORM_BLOCK                                   = VkFormat.VK_FORMAT_BC7_UNORM_BLOCK;
2653 enum VK_FORMAT_BC7_SRGB_BLOCK                                    = VkFormat.VK_FORMAT_BC7_SRGB_BLOCK;
2654 enum VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK                           = VkFormat.VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK;
2655 enum VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK                            = VkFormat.VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK;
2656 enum VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK                         = VkFormat.VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK;
2657 enum VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK                          = VkFormat.VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK;
2658 enum VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK                         = VkFormat.VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK;
2659 enum VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK                          = VkFormat.VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK;
2660 enum VK_FORMAT_EAC_R11_UNORM_BLOCK                               = VkFormat.VK_FORMAT_EAC_R11_UNORM_BLOCK;
2661 enum VK_FORMAT_EAC_R11_SNORM_BLOCK                               = VkFormat.VK_FORMAT_EAC_R11_SNORM_BLOCK;
2662 enum VK_FORMAT_EAC_R11G11_UNORM_BLOCK                            = VkFormat.VK_FORMAT_EAC_R11G11_UNORM_BLOCK;
2663 enum VK_FORMAT_EAC_R11G11_SNORM_BLOCK                            = VkFormat.VK_FORMAT_EAC_R11G11_SNORM_BLOCK;
2664 enum VK_FORMAT_ASTC_4x4_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_4x4_UNORM_BLOCK;
2665 enum VK_FORMAT_ASTC_4x4_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_4x4_SRGB_BLOCK;
2666 enum VK_FORMAT_ASTC_5x4_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_5x4_UNORM_BLOCK;
2667 enum VK_FORMAT_ASTC_5x4_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_5x4_SRGB_BLOCK;
2668 enum VK_FORMAT_ASTC_5x5_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_5x5_UNORM_BLOCK;
2669 enum VK_FORMAT_ASTC_5x5_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_5x5_SRGB_BLOCK;
2670 enum VK_FORMAT_ASTC_6x5_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_6x5_UNORM_BLOCK;
2671 enum VK_FORMAT_ASTC_6x5_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_6x5_SRGB_BLOCK;
2672 enum VK_FORMAT_ASTC_6x6_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_6x6_UNORM_BLOCK;
2673 enum VK_FORMAT_ASTC_6x6_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_6x6_SRGB_BLOCK;
2674 enum VK_FORMAT_ASTC_8x5_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_8x5_UNORM_BLOCK;
2675 enum VK_FORMAT_ASTC_8x5_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_8x5_SRGB_BLOCK;
2676 enum VK_FORMAT_ASTC_8x6_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_8x6_UNORM_BLOCK;
2677 enum VK_FORMAT_ASTC_8x6_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_8x6_SRGB_BLOCK;
2678 enum VK_FORMAT_ASTC_8x8_UNORM_BLOCK                              = VkFormat.VK_FORMAT_ASTC_8x8_UNORM_BLOCK;
2679 enum VK_FORMAT_ASTC_8x8_SRGB_BLOCK                               = VkFormat.VK_FORMAT_ASTC_8x8_SRGB_BLOCK;
2680 enum VK_FORMAT_ASTC_10x5_UNORM_BLOCK                             = VkFormat.VK_FORMAT_ASTC_10x5_UNORM_BLOCK;
2681 enum VK_FORMAT_ASTC_10x5_SRGB_BLOCK                              = VkFormat.VK_FORMAT_ASTC_10x5_SRGB_BLOCK;
2682 enum VK_FORMAT_ASTC_10x6_UNORM_BLOCK                             = VkFormat.VK_FORMAT_ASTC_10x6_UNORM_BLOCK;
2683 enum VK_FORMAT_ASTC_10x6_SRGB_BLOCK                              = VkFormat.VK_FORMAT_ASTC_10x6_SRGB_BLOCK;
2684 enum VK_FORMAT_ASTC_10x8_UNORM_BLOCK                             = VkFormat.VK_FORMAT_ASTC_10x8_UNORM_BLOCK;
2685 enum VK_FORMAT_ASTC_10x8_SRGB_BLOCK                              = VkFormat.VK_FORMAT_ASTC_10x8_SRGB_BLOCK;
2686 enum VK_FORMAT_ASTC_10x10_UNORM_BLOCK                            = VkFormat.VK_FORMAT_ASTC_10x10_UNORM_BLOCK;
2687 enum VK_FORMAT_ASTC_10x10_SRGB_BLOCK                             = VkFormat.VK_FORMAT_ASTC_10x10_SRGB_BLOCK;
2688 enum VK_FORMAT_ASTC_12x10_UNORM_BLOCK                            = VkFormat.VK_FORMAT_ASTC_12x10_UNORM_BLOCK;
2689 enum VK_FORMAT_ASTC_12x10_SRGB_BLOCK                             = VkFormat.VK_FORMAT_ASTC_12x10_SRGB_BLOCK;
2690 enum VK_FORMAT_ASTC_12x12_UNORM_BLOCK                            = VkFormat.VK_FORMAT_ASTC_12x12_UNORM_BLOCK;
2691 enum VK_FORMAT_ASTC_12x12_SRGB_BLOCK                             = VkFormat.VK_FORMAT_ASTC_12x12_SRGB_BLOCK;
2692 enum VK_FORMAT_G8B8G8R8_422_UNORM                                = VkFormat.VK_FORMAT_G8B8G8R8_422_UNORM;
2693 enum VK_FORMAT_B8G8R8G8_422_UNORM                                = VkFormat.VK_FORMAT_B8G8R8G8_422_UNORM;
2694 enum VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM                         = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM;
2695 enum VK_FORMAT_G8_B8R8_2PLANE_420_UNORM                          = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_420_UNORM;
2696 enum VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM                         = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM;
2697 enum VK_FORMAT_G8_B8R8_2PLANE_422_UNORM                          = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_422_UNORM;
2698 enum VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM                         = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM;
2699 enum VK_FORMAT_R10X6_UNORM_PACK16                                = VkFormat.VK_FORMAT_R10X6_UNORM_PACK16;
2700 enum VK_FORMAT_R10X6G10X6_UNORM_2PACK16                          = VkFormat.VK_FORMAT_R10X6G10X6_UNORM_2PACK16;
2701 enum VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16                = VkFormat.VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16;
2702 enum VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16            = VkFormat.VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16;
2703 enum VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16            = VkFormat.VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16;
2704 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16        = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16;
2705 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16         = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16;
2706 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16        = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16;
2707 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16         = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16;
2708 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16        = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16;
2709 enum VK_FORMAT_R12X4_UNORM_PACK16                                = VkFormat.VK_FORMAT_R12X4_UNORM_PACK16;
2710 enum VK_FORMAT_R12X4G12X4_UNORM_2PACK16                          = VkFormat.VK_FORMAT_R12X4G12X4_UNORM_2PACK16;
2711 enum VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16                = VkFormat.VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16;
2712 enum VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16            = VkFormat.VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16;
2713 enum VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16            = VkFormat.VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16;
2714 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16        = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16;
2715 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16         = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16;
2716 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16        = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16;
2717 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16         = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16;
2718 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16        = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16;
2719 enum VK_FORMAT_G16B16G16R16_422_UNORM                            = VkFormat.VK_FORMAT_G16B16G16R16_422_UNORM;
2720 enum VK_FORMAT_B16G16R16G16_422_UNORM                            = VkFormat.VK_FORMAT_B16G16R16G16_422_UNORM;
2721 enum VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM                      = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM;
2722 enum VK_FORMAT_G16_B16R16_2PLANE_420_UNORM                       = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_420_UNORM;
2723 enum VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM                      = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM;
2724 enum VK_FORMAT_G16_B16R16_2PLANE_422_UNORM                       = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_422_UNORM;
2725 enum VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM                      = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM;
2726 enum VK_FORMAT_G8_B8R8_2PLANE_444_UNORM                          = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_444_UNORM;
2727 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16         = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16;
2728 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16         = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16;
2729 enum VK_FORMAT_G16_B16R16_2PLANE_444_UNORM                       = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_444_UNORM;
2730 enum VK_FORMAT_A4R4G4B4_UNORM_PACK16                             = VkFormat.VK_FORMAT_A4R4G4B4_UNORM_PACK16;
2731 enum VK_FORMAT_A4B4G4R4_UNORM_PACK16                             = VkFormat.VK_FORMAT_A4B4G4R4_UNORM_PACK16;
2732 enum VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK;
2733 enum VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK;
2734 enum VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK;
2735 enum VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK;
2736 enum VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK;
2737 enum VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK;
2738 enum VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK;
2739 enum VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK                             = VkFormat.VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK;
2740 enum VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK                            = VkFormat.VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK;
2741 enum VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK                            = VkFormat.VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK;
2742 enum VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK                            = VkFormat.VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK;
2743 enum VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK                           = VkFormat.VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK;
2744 enum VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK                           = VkFormat.VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK;
2745 enum VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK                           = VkFormat.VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK;
2746 enum VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG                       = VkFormat.VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG;
2747 enum VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG                       = VkFormat.VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG;
2748 enum VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG                       = VkFormat.VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG;
2749 enum VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG                       = VkFormat.VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG;
2750 enum VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG                        = VkFormat.VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG;
2751 enum VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG                        = VkFormat.VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG;
2752 enum VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG                        = VkFormat.VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG;
2753 enum VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG                        = VkFormat.VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG;
2754 enum VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT;
2755 enum VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT;
2756 enum VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT;
2757 enum VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT;
2758 enum VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT;
2759 enum VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT;
2760 enum VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT;
2761 enum VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT                         = VkFormat.VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT;
2762 enum VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT                        = VkFormat.VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT;
2763 enum VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT                        = VkFormat.VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT;
2764 enum VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT                        = VkFormat.VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT;
2765 enum VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT                       = VkFormat.VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT;
2766 enum VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT                       = VkFormat.VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT;
2767 enum VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT                       = VkFormat.VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT;
2768 enum VK_FORMAT_G8B8G8R8_422_UNORM_KHR                            = VkFormat.VK_FORMAT_G8B8G8R8_422_UNORM_KHR;
2769 enum VK_FORMAT_B8G8R8G8_422_UNORM_KHR                            = VkFormat.VK_FORMAT_B8G8R8G8_422_UNORM_KHR;
2770 enum VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR                     = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR;
2771 enum VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR                      = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR;
2772 enum VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR                     = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR;
2773 enum VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR                      = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR;
2774 enum VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR                     = VkFormat.VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR;
2775 enum VK_FORMAT_R10X6_UNORM_PACK16_KHR                            = VkFormat.VK_FORMAT_R10X6_UNORM_PACK16_KHR;
2776 enum VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR                      = VkFormat.VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR;
2777 enum VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR            = VkFormat.VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR;
2778 enum VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR        = VkFormat.VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR;
2779 enum VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR        = VkFormat.VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR;
2780 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR;
2781 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR     = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR;
2782 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR;
2783 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR     = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR;
2784 enum VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR;
2785 enum VK_FORMAT_R12X4_UNORM_PACK16_KHR                            = VkFormat.VK_FORMAT_R12X4_UNORM_PACK16_KHR;
2786 enum VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR                      = VkFormat.VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR;
2787 enum VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR            = VkFormat.VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR;
2788 enum VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR        = VkFormat.VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR;
2789 enum VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR        = VkFormat.VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR;
2790 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR;
2791 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR     = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR;
2792 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR;
2793 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR     = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR;
2794 enum VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR    = VkFormat.VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR;
2795 enum VK_FORMAT_G16B16G16R16_422_UNORM_KHR                        = VkFormat.VK_FORMAT_G16B16G16R16_422_UNORM_KHR;
2796 enum VK_FORMAT_B16G16R16G16_422_UNORM_KHR                        = VkFormat.VK_FORMAT_B16G16R16G16_422_UNORM_KHR;
2797 enum VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR                  = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR;
2798 enum VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR                   = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR;
2799 enum VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR                  = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR;
2800 enum VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR                   = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR;
2801 enum VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR                  = VkFormat.VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR;
2802 enum VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT                      = VkFormat.VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT;
2803 enum VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT     = VkFormat.VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT;
2804 enum VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT     = VkFormat.VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT;
2805 enum VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT                   = VkFormat.VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT;
2806 enum VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT                         = VkFormat.VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT;
2807 enum VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT                         = VkFormat.VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT;
2808 enum VK_FORMAT_BEGIN_RANGE                                       = VkFormat.VK_FORMAT_BEGIN_RANGE;
2809 enum VK_FORMAT_END_RANGE                                         = VkFormat.VK_FORMAT_END_RANGE;
2810 enum VK_FORMAT_RANGE_SIZE                                        = VkFormat.VK_FORMAT_RANGE_SIZE;
2811 enum VK_FORMAT_MAX_ENUM                                          = VkFormat.VK_FORMAT_MAX_ENUM;
2812 
2813 enum VkImageTiling {
2814     VK_IMAGE_TILING_OPTIMAL                      = 0,
2815     VK_IMAGE_TILING_LINEAR                       = 1,
2816     VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT      = 1000158000,
2817     VK_IMAGE_TILING_BEGIN_RANGE                  = VK_IMAGE_TILING_OPTIMAL,
2818     VK_IMAGE_TILING_END_RANGE                    = VK_IMAGE_TILING_LINEAR,
2819     VK_IMAGE_TILING_RANGE_SIZE                   = VK_IMAGE_TILING_LINEAR - VK_IMAGE_TILING_OPTIMAL + 1,
2820     VK_IMAGE_TILING_MAX_ENUM                     = 0x7FFFFFFF
2821 }
2822 
2823 enum VK_IMAGE_TILING_OPTIMAL                     = VkImageTiling.VK_IMAGE_TILING_OPTIMAL;
2824 enum VK_IMAGE_TILING_LINEAR                      = VkImageTiling.VK_IMAGE_TILING_LINEAR;
2825 enum VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT     = VkImageTiling.VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT;
2826 enum VK_IMAGE_TILING_BEGIN_RANGE                 = VkImageTiling.VK_IMAGE_TILING_BEGIN_RANGE;
2827 enum VK_IMAGE_TILING_END_RANGE                   = VkImageTiling.VK_IMAGE_TILING_END_RANGE;
2828 enum VK_IMAGE_TILING_RANGE_SIZE                  = VkImageTiling.VK_IMAGE_TILING_RANGE_SIZE;
2829 enum VK_IMAGE_TILING_MAX_ENUM                    = VkImageTiling.VK_IMAGE_TILING_MAX_ENUM;
2830 
2831 enum VkImageType {
2832     VK_IMAGE_TYPE_1D             = 0,
2833     VK_IMAGE_TYPE_2D             = 1,
2834     VK_IMAGE_TYPE_3D             = 2,
2835     VK_IMAGE_TYPE_BEGIN_RANGE    = VK_IMAGE_TYPE_1D,
2836     VK_IMAGE_TYPE_END_RANGE      = VK_IMAGE_TYPE_3D,
2837     VK_IMAGE_TYPE_RANGE_SIZE     = VK_IMAGE_TYPE_3D - VK_IMAGE_TYPE_1D + 1,
2838     VK_IMAGE_TYPE_MAX_ENUM       = 0x7FFFFFFF
2839 }
2840 
2841 enum VK_IMAGE_TYPE_1D            = VkImageType.VK_IMAGE_TYPE_1D;
2842 enum VK_IMAGE_TYPE_2D            = VkImageType.VK_IMAGE_TYPE_2D;
2843 enum VK_IMAGE_TYPE_3D            = VkImageType.VK_IMAGE_TYPE_3D;
2844 enum VK_IMAGE_TYPE_BEGIN_RANGE   = VkImageType.VK_IMAGE_TYPE_BEGIN_RANGE;
2845 enum VK_IMAGE_TYPE_END_RANGE     = VkImageType.VK_IMAGE_TYPE_END_RANGE;
2846 enum VK_IMAGE_TYPE_RANGE_SIZE    = VkImageType.VK_IMAGE_TYPE_RANGE_SIZE;
2847 enum VK_IMAGE_TYPE_MAX_ENUM      = VkImageType.VK_IMAGE_TYPE_MAX_ENUM;
2848 
2849 enum VkPhysicalDeviceType {
2850     VK_PHYSICAL_DEVICE_TYPE_OTHER                = 0,
2851     VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU       = 1,
2852     VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU         = 2,
2853     VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU          = 3,
2854     VK_PHYSICAL_DEVICE_TYPE_CPU                  = 4,
2855     VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE          = VK_PHYSICAL_DEVICE_TYPE_OTHER,
2856     VK_PHYSICAL_DEVICE_TYPE_END_RANGE            = VK_PHYSICAL_DEVICE_TYPE_CPU,
2857     VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE           = VK_PHYSICAL_DEVICE_TYPE_CPU - VK_PHYSICAL_DEVICE_TYPE_OTHER + 1,
2858     VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM             = 0x7FFFFFFF
2859 }
2860 
2861 enum VK_PHYSICAL_DEVICE_TYPE_OTHER               = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_OTHER;
2862 enum VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU      = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU;
2863 enum VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU        = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU;
2864 enum VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU         = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU;
2865 enum VK_PHYSICAL_DEVICE_TYPE_CPU                 = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_CPU;
2866 enum VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE         = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_BEGIN_RANGE;
2867 enum VK_PHYSICAL_DEVICE_TYPE_END_RANGE           = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_END_RANGE;
2868 enum VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE          = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_RANGE_SIZE;
2869 enum VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM            = VkPhysicalDeviceType.VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM;
2870 
2871 enum VkQueryType {
2872     VK_QUERY_TYPE_OCCLUSION                                                              = 0,
2873     VK_QUERY_TYPE_PIPELINE_STATISTICS                                                    = 1,
2874     VK_QUERY_TYPE_TIMESTAMP                                                              = 2,
2875     VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR                                                 = 1000023000,
2876     VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                                          = 1000028004,
2877     VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                                  = 1000116000,
2878     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR                              = 1000150000,
2879     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR                          = 1000150001,
2880     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV                               = 1000165000,
2881     VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL                                                = 1000210000,
2882     VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR                                = 1000299000,
2883     VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT                                               = 1000382000,
2884     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR         = 1000386000,
2885     VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR                                        = 1000386001,
2886     VK_QUERY_TYPE_BEGIN_RANGE                                                            = VK_QUERY_TYPE_OCCLUSION,
2887     VK_QUERY_TYPE_END_RANGE                                                              = VK_QUERY_TYPE_TIMESTAMP,
2888     VK_QUERY_TYPE_RANGE_SIZE                                                             = VK_QUERY_TYPE_TIMESTAMP - VK_QUERY_TYPE_OCCLUSION + 1,
2889     VK_QUERY_TYPE_MAX_ENUM                                                               = 0x7FFFFFFF
2890 }
2891 
2892 enum VK_QUERY_TYPE_OCCLUSION                                                             = VkQueryType.VK_QUERY_TYPE_OCCLUSION;
2893 enum VK_QUERY_TYPE_PIPELINE_STATISTICS                                                   = VkQueryType.VK_QUERY_TYPE_PIPELINE_STATISTICS;
2894 enum VK_QUERY_TYPE_TIMESTAMP                                                             = VkQueryType.VK_QUERY_TYPE_TIMESTAMP;
2895 enum VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR                                                = VkQueryType.VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR;
2896 enum VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT                                         = VkQueryType.VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT;
2897 enum VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR                                                 = VkQueryType.VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR;
2898 enum VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR                             = VkQueryType.VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR;
2899 enum VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR                         = VkQueryType.VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR;
2900 enum VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV                              = VkQueryType.VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV;
2901 enum VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL                                               = VkQueryType.VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL;
2902 enum VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR                               = VkQueryType.VK_QUERY_TYPE_VIDEO_ENCODE_BITSTREAM_BUFFER_RANGE_KHR;
2903 enum VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT                                              = VkQueryType.VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT;
2904 enum VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR        = VkQueryType.VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR;
2905 enum VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR                                       = VkQueryType.VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR;
2906 enum VK_QUERY_TYPE_BEGIN_RANGE                                                           = VkQueryType.VK_QUERY_TYPE_BEGIN_RANGE;
2907 enum VK_QUERY_TYPE_END_RANGE                                                             = VkQueryType.VK_QUERY_TYPE_END_RANGE;
2908 enum VK_QUERY_TYPE_RANGE_SIZE                                                            = VkQueryType.VK_QUERY_TYPE_RANGE_SIZE;
2909 enum VK_QUERY_TYPE_MAX_ENUM                                                              = VkQueryType.VK_QUERY_TYPE_MAX_ENUM;
2910 
2911 enum VkSharingMode {
2912     VK_SHARING_MODE_EXCLUSIVE    = 0,
2913     VK_SHARING_MODE_CONCURRENT   = 1,
2914     VK_SHARING_MODE_BEGIN_RANGE  = VK_SHARING_MODE_EXCLUSIVE,
2915     VK_SHARING_MODE_END_RANGE    = VK_SHARING_MODE_CONCURRENT,
2916     VK_SHARING_MODE_RANGE_SIZE   = VK_SHARING_MODE_CONCURRENT - VK_SHARING_MODE_EXCLUSIVE + 1,
2917     VK_SHARING_MODE_MAX_ENUM     = 0x7FFFFFFF
2918 }
2919 
2920 enum VK_SHARING_MODE_EXCLUSIVE   = VkSharingMode.VK_SHARING_MODE_EXCLUSIVE;
2921 enum VK_SHARING_MODE_CONCURRENT  = VkSharingMode.VK_SHARING_MODE_CONCURRENT;
2922 enum VK_SHARING_MODE_BEGIN_RANGE = VkSharingMode.VK_SHARING_MODE_BEGIN_RANGE;
2923 enum VK_SHARING_MODE_END_RANGE   = VkSharingMode.VK_SHARING_MODE_END_RANGE;
2924 enum VK_SHARING_MODE_RANGE_SIZE  = VkSharingMode.VK_SHARING_MODE_RANGE_SIZE;
2925 enum VK_SHARING_MODE_MAX_ENUM    = VkSharingMode.VK_SHARING_MODE_MAX_ENUM;
2926 
2927 enum VkComponentSwizzle {
2928     VK_COMPONENT_SWIZZLE_IDENTITY        = 0,
2929     VK_COMPONENT_SWIZZLE_ZERO            = 1,
2930     VK_COMPONENT_SWIZZLE_ONE             = 2,
2931     VK_COMPONENT_SWIZZLE_R               = 3,
2932     VK_COMPONENT_SWIZZLE_G               = 4,
2933     VK_COMPONENT_SWIZZLE_B               = 5,
2934     VK_COMPONENT_SWIZZLE_A               = 6,
2935     VK_COMPONENT_SWIZZLE_BEGIN_RANGE     = VK_COMPONENT_SWIZZLE_IDENTITY,
2936     VK_COMPONENT_SWIZZLE_END_RANGE       = VK_COMPONENT_SWIZZLE_A,
2937     VK_COMPONENT_SWIZZLE_RANGE_SIZE      = VK_COMPONENT_SWIZZLE_A - VK_COMPONENT_SWIZZLE_IDENTITY + 1,
2938     VK_COMPONENT_SWIZZLE_MAX_ENUM        = 0x7FFFFFFF
2939 }
2940 
2941 enum VK_COMPONENT_SWIZZLE_IDENTITY       = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_IDENTITY;
2942 enum VK_COMPONENT_SWIZZLE_ZERO           = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_ZERO;
2943 enum VK_COMPONENT_SWIZZLE_ONE            = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_ONE;
2944 enum VK_COMPONENT_SWIZZLE_R              = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_R;
2945 enum VK_COMPONENT_SWIZZLE_G              = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_G;
2946 enum VK_COMPONENT_SWIZZLE_B              = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_B;
2947 enum VK_COMPONENT_SWIZZLE_A              = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_A;
2948 enum VK_COMPONENT_SWIZZLE_BEGIN_RANGE    = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_BEGIN_RANGE;
2949 enum VK_COMPONENT_SWIZZLE_END_RANGE      = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_END_RANGE;
2950 enum VK_COMPONENT_SWIZZLE_RANGE_SIZE     = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_RANGE_SIZE;
2951 enum VK_COMPONENT_SWIZZLE_MAX_ENUM       = VkComponentSwizzle.VK_COMPONENT_SWIZZLE_MAX_ENUM;
2952 
2953 enum VkImageViewType {
2954     VK_IMAGE_VIEW_TYPE_1D                = 0,
2955     VK_IMAGE_VIEW_TYPE_2D                = 1,
2956     VK_IMAGE_VIEW_TYPE_3D                = 2,
2957     VK_IMAGE_VIEW_TYPE_CUBE              = 3,
2958     VK_IMAGE_VIEW_TYPE_1D_ARRAY          = 4,
2959     VK_IMAGE_VIEW_TYPE_2D_ARRAY          = 5,
2960     VK_IMAGE_VIEW_TYPE_CUBE_ARRAY        = 6,
2961     VK_IMAGE_VIEW_TYPE_BEGIN_RANGE       = VK_IMAGE_VIEW_TYPE_1D,
2962     VK_IMAGE_VIEW_TYPE_END_RANGE         = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY,
2963     VK_IMAGE_VIEW_TYPE_RANGE_SIZE        = VK_IMAGE_VIEW_TYPE_CUBE_ARRAY - VK_IMAGE_VIEW_TYPE_1D + 1,
2964     VK_IMAGE_VIEW_TYPE_MAX_ENUM          = 0x7FFFFFFF
2965 }
2966 
2967 enum VK_IMAGE_VIEW_TYPE_1D               = VkImageViewType.VK_IMAGE_VIEW_TYPE_1D;
2968 enum VK_IMAGE_VIEW_TYPE_2D               = VkImageViewType.VK_IMAGE_VIEW_TYPE_2D;
2969 enum VK_IMAGE_VIEW_TYPE_3D               = VkImageViewType.VK_IMAGE_VIEW_TYPE_3D;
2970 enum VK_IMAGE_VIEW_TYPE_CUBE             = VkImageViewType.VK_IMAGE_VIEW_TYPE_CUBE;
2971 enum VK_IMAGE_VIEW_TYPE_1D_ARRAY         = VkImageViewType.VK_IMAGE_VIEW_TYPE_1D_ARRAY;
2972 enum VK_IMAGE_VIEW_TYPE_2D_ARRAY         = VkImageViewType.VK_IMAGE_VIEW_TYPE_2D_ARRAY;
2973 enum VK_IMAGE_VIEW_TYPE_CUBE_ARRAY       = VkImageViewType.VK_IMAGE_VIEW_TYPE_CUBE_ARRAY;
2974 enum VK_IMAGE_VIEW_TYPE_BEGIN_RANGE      = VkImageViewType.VK_IMAGE_VIEW_TYPE_BEGIN_RANGE;
2975 enum VK_IMAGE_VIEW_TYPE_END_RANGE        = VkImageViewType.VK_IMAGE_VIEW_TYPE_END_RANGE;
2976 enum VK_IMAGE_VIEW_TYPE_RANGE_SIZE       = VkImageViewType.VK_IMAGE_VIEW_TYPE_RANGE_SIZE;
2977 enum VK_IMAGE_VIEW_TYPE_MAX_ENUM         = VkImageViewType.VK_IMAGE_VIEW_TYPE_MAX_ENUM;
2978 
2979 enum VkBlendFactor {
2980     VK_BLEND_FACTOR_ZERO                         = 0,
2981     VK_BLEND_FACTOR_ONE                          = 1,
2982     VK_BLEND_FACTOR_SRC_COLOR                    = 2,
2983     VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR          = 3,
2984     VK_BLEND_FACTOR_DST_COLOR                    = 4,
2985     VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR          = 5,
2986     VK_BLEND_FACTOR_SRC_ALPHA                    = 6,
2987     VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA          = 7,
2988     VK_BLEND_FACTOR_DST_ALPHA                    = 8,
2989     VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA          = 9,
2990     VK_BLEND_FACTOR_CONSTANT_COLOR               = 10,
2991     VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR     = 11,
2992     VK_BLEND_FACTOR_CONSTANT_ALPHA               = 12,
2993     VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA     = 13,
2994     VK_BLEND_FACTOR_SRC_ALPHA_SATURATE           = 14,
2995     VK_BLEND_FACTOR_SRC1_COLOR                   = 15,
2996     VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR         = 16,
2997     VK_BLEND_FACTOR_SRC1_ALPHA                   = 17,
2998     VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA         = 18,
2999     VK_BLEND_FACTOR_BEGIN_RANGE                  = VK_BLEND_FACTOR_ZERO,
3000     VK_BLEND_FACTOR_END_RANGE                    = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA,
3001     VK_BLEND_FACTOR_RANGE_SIZE                   = VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA - VK_BLEND_FACTOR_ZERO + 1,
3002     VK_BLEND_FACTOR_MAX_ENUM                     = 0x7FFFFFFF
3003 }
3004 
3005 enum VK_BLEND_FACTOR_ZERO                        = VkBlendFactor.VK_BLEND_FACTOR_ZERO;
3006 enum VK_BLEND_FACTOR_ONE                         = VkBlendFactor.VK_BLEND_FACTOR_ONE;
3007 enum VK_BLEND_FACTOR_SRC_COLOR                   = VkBlendFactor.VK_BLEND_FACTOR_SRC_COLOR;
3008 enum VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR         = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR;
3009 enum VK_BLEND_FACTOR_DST_COLOR                   = VkBlendFactor.VK_BLEND_FACTOR_DST_COLOR;
3010 enum VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR         = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR;
3011 enum VK_BLEND_FACTOR_SRC_ALPHA                   = VkBlendFactor.VK_BLEND_FACTOR_SRC_ALPHA;
3012 enum VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA         = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA;
3013 enum VK_BLEND_FACTOR_DST_ALPHA                   = VkBlendFactor.VK_BLEND_FACTOR_DST_ALPHA;
3014 enum VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA         = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA;
3015 enum VK_BLEND_FACTOR_CONSTANT_COLOR              = VkBlendFactor.VK_BLEND_FACTOR_CONSTANT_COLOR;
3016 enum VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR    = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR;
3017 enum VK_BLEND_FACTOR_CONSTANT_ALPHA              = VkBlendFactor.VK_BLEND_FACTOR_CONSTANT_ALPHA;
3018 enum VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA    = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA;
3019 enum VK_BLEND_FACTOR_SRC_ALPHA_SATURATE          = VkBlendFactor.VK_BLEND_FACTOR_SRC_ALPHA_SATURATE;
3020 enum VK_BLEND_FACTOR_SRC1_COLOR                  = VkBlendFactor.VK_BLEND_FACTOR_SRC1_COLOR;
3021 enum VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR        = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR;
3022 enum VK_BLEND_FACTOR_SRC1_ALPHA                  = VkBlendFactor.VK_BLEND_FACTOR_SRC1_ALPHA;
3023 enum VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA        = VkBlendFactor.VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA;
3024 enum VK_BLEND_FACTOR_BEGIN_RANGE                 = VkBlendFactor.VK_BLEND_FACTOR_BEGIN_RANGE;
3025 enum VK_BLEND_FACTOR_END_RANGE                   = VkBlendFactor.VK_BLEND_FACTOR_END_RANGE;
3026 enum VK_BLEND_FACTOR_RANGE_SIZE                  = VkBlendFactor.VK_BLEND_FACTOR_RANGE_SIZE;
3027 enum VK_BLEND_FACTOR_MAX_ENUM                    = VkBlendFactor.VK_BLEND_FACTOR_MAX_ENUM;
3028 
3029 enum VkBlendOp {
3030     VK_BLEND_OP_ADD                      = 0,
3031     VK_BLEND_OP_SUBTRACT                 = 1,
3032     VK_BLEND_OP_REVERSE_SUBTRACT         = 2,
3033     VK_BLEND_OP_MIN                      = 3,
3034     VK_BLEND_OP_MAX                      = 4,
3035     VK_BLEND_OP_ZERO_EXT                 = 1000148000,
3036     VK_BLEND_OP_SRC_EXT                  = 1000148001,
3037     VK_BLEND_OP_DST_EXT                  = 1000148002,
3038     VK_BLEND_OP_SRC_OVER_EXT             = 1000148003,
3039     VK_BLEND_OP_DST_OVER_EXT             = 1000148004,
3040     VK_BLEND_OP_SRC_IN_EXT               = 1000148005,
3041     VK_BLEND_OP_DST_IN_EXT               = 1000148006,
3042     VK_BLEND_OP_SRC_OUT_EXT              = 1000148007,
3043     VK_BLEND_OP_DST_OUT_EXT              = 1000148008,
3044     VK_BLEND_OP_SRC_ATOP_EXT             = 1000148009,
3045     VK_BLEND_OP_DST_ATOP_EXT             = 1000148010,
3046     VK_BLEND_OP_XOR_EXT                  = 1000148011,
3047     VK_BLEND_OP_MULTIPLY_EXT             = 1000148012,
3048     VK_BLEND_OP_SCREEN_EXT               = 1000148013,
3049     VK_BLEND_OP_OVERLAY_EXT              = 1000148014,
3050     VK_BLEND_OP_DARKEN_EXT               = 1000148015,
3051     VK_BLEND_OP_LIGHTEN_EXT              = 1000148016,
3052     VK_BLEND_OP_COLORDODGE_EXT           = 1000148017,
3053     VK_BLEND_OP_COLORBURN_EXT            = 1000148018,
3054     VK_BLEND_OP_HARDLIGHT_EXT            = 1000148019,
3055     VK_BLEND_OP_SOFTLIGHT_EXT            = 1000148020,
3056     VK_BLEND_OP_DIFFERENCE_EXT           = 1000148021,
3057     VK_BLEND_OP_EXCLUSION_EXT            = 1000148022,
3058     VK_BLEND_OP_INVERT_EXT               = 1000148023,
3059     VK_BLEND_OP_INVERT_RGB_EXT           = 1000148024,
3060     VK_BLEND_OP_LINEARDODGE_EXT          = 1000148025,
3061     VK_BLEND_OP_LINEARBURN_EXT           = 1000148026,
3062     VK_BLEND_OP_VIVIDLIGHT_EXT           = 1000148027,
3063     VK_BLEND_OP_LINEARLIGHT_EXT          = 1000148028,
3064     VK_BLEND_OP_PINLIGHT_EXT             = 1000148029,
3065     VK_BLEND_OP_HARDMIX_EXT              = 1000148030,
3066     VK_BLEND_OP_HSL_HUE_EXT              = 1000148031,
3067     VK_BLEND_OP_HSL_SATURATION_EXT       = 1000148032,
3068     VK_BLEND_OP_HSL_COLOR_EXT            = 1000148033,
3069     VK_BLEND_OP_HSL_LUMINOSITY_EXT       = 1000148034,
3070     VK_BLEND_OP_PLUS_EXT                 = 1000148035,
3071     VK_BLEND_OP_PLUS_CLAMPED_EXT         = 1000148036,
3072     VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT   = 1000148037,
3073     VK_BLEND_OP_PLUS_DARKER_EXT          = 1000148038,
3074     VK_BLEND_OP_MINUS_EXT                = 1000148039,
3075     VK_BLEND_OP_MINUS_CLAMPED_EXT        = 1000148040,
3076     VK_BLEND_OP_CONTRAST_EXT             = 1000148041,
3077     VK_BLEND_OP_INVERT_OVG_EXT           = 1000148042,
3078     VK_BLEND_OP_RED_EXT                  = 1000148043,
3079     VK_BLEND_OP_GREEN_EXT                = 1000148044,
3080     VK_BLEND_OP_BLUE_EXT                 = 1000148045,
3081     VK_BLEND_OP_BEGIN_RANGE              = VK_BLEND_OP_ADD,
3082     VK_BLEND_OP_END_RANGE                = VK_BLEND_OP_MAX,
3083     VK_BLEND_OP_RANGE_SIZE               = VK_BLEND_OP_MAX - VK_BLEND_OP_ADD + 1,
3084     VK_BLEND_OP_MAX_ENUM                 = 0x7FFFFFFF
3085 }
3086 
3087 enum VK_BLEND_OP_ADD                     = VkBlendOp.VK_BLEND_OP_ADD;
3088 enum VK_BLEND_OP_SUBTRACT                = VkBlendOp.VK_BLEND_OP_SUBTRACT;
3089 enum VK_BLEND_OP_REVERSE_SUBTRACT        = VkBlendOp.VK_BLEND_OP_REVERSE_SUBTRACT;
3090 enum VK_BLEND_OP_MIN                     = VkBlendOp.VK_BLEND_OP_MIN;
3091 enum VK_BLEND_OP_MAX                     = VkBlendOp.VK_BLEND_OP_MAX;
3092 enum VK_BLEND_OP_ZERO_EXT                = VkBlendOp.VK_BLEND_OP_ZERO_EXT;
3093 enum VK_BLEND_OP_SRC_EXT                 = VkBlendOp.VK_BLEND_OP_SRC_EXT;
3094 enum VK_BLEND_OP_DST_EXT                 = VkBlendOp.VK_BLEND_OP_DST_EXT;
3095 enum VK_BLEND_OP_SRC_OVER_EXT            = VkBlendOp.VK_BLEND_OP_SRC_OVER_EXT;
3096 enum VK_BLEND_OP_DST_OVER_EXT            = VkBlendOp.VK_BLEND_OP_DST_OVER_EXT;
3097 enum VK_BLEND_OP_SRC_IN_EXT              = VkBlendOp.VK_BLEND_OP_SRC_IN_EXT;
3098 enum VK_BLEND_OP_DST_IN_EXT              = VkBlendOp.VK_BLEND_OP_DST_IN_EXT;
3099 enum VK_BLEND_OP_SRC_OUT_EXT             = VkBlendOp.VK_BLEND_OP_SRC_OUT_EXT;
3100 enum VK_BLEND_OP_DST_OUT_EXT             = VkBlendOp.VK_BLEND_OP_DST_OUT_EXT;
3101 enum VK_BLEND_OP_SRC_ATOP_EXT            = VkBlendOp.VK_BLEND_OP_SRC_ATOP_EXT;
3102 enum VK_BLEND_OP_DST_ATOP_EXT            = VkBlendOp.VK_BLEND_OP_DST_ATOP_EXT;
3103 enum VK_BLEND_OP_XOR_EXT                 = VkBlendOp.VK_BLEND_OP_XOR_EXT;
3104 enum VK_BLEND_OP_MULTIPLY_EXT            = VkBlendOp.VK_BLEND_OP_MULTIPLY_EXT;
3105 enum VK_BLEND_OP_SCREEN_EXT              = VkBlendOp.VK_BLEND_OP_SCREEN_EXT;
3106 enum VK_BLEND_OP_OVERLAY_EXT             = VkBlendOp.VK_BLEND_OP_OVERLAY_EXT;
3107 enum VK_BLEND_OP_DARKEN_EXT              = VkBlendOp.VK_BLEND_OP_DARKEN_EXT;
3108 enum VK_BLEND_OP_LIGHTEN_EXT             = VkBlendOp.VK_BLEND_OP_LIGHTEN_EXT;
3109 enum VK_BLEND_OP_COLORDODGE_EXT          = VkBlendOp.VK_BLEND_OP_COLORDODGE_EXT;
3110 enum VK_BLEND_OP_COLORBURN_EXT           = VkBlendOp.VK_BLEND_OP_COLORBURN_EXT;
3111 enum VK_BLEND_OP_HARDLIGHT_EXT           = VkBlendOp.VK_BLEND_OP_HARDLIGHT_EXT;
3112 enum VK_BLEND_OP_SOFTLIGHT_EXT           = VkBlendOp.VK_BLEND_OP_SOFTLIGHT_EXT;
3113 enum VK_BLEND_OP_DIFFERENCE_EXT          = VkBlendOp.VK_BLEND_OP_DIFFERENCE_EXT;
3114 enum VK_BLEND_OP_EXCLUSION_EXT           = VkBlendOp.VK_BLEND_OP_EXCLUSION_EXT;
3115 enum VK_BLEND_OP_INVERT_EXT              = VkBlendOp.VK_BLEND_OP_INVERT_EXT;
3116 enum VK_BLEND_OP_INVERT_RGB_EXT          = VkBlendOp.VK_BLEND_OP_INVERT_RGB_EXT;
3117 enum VK_BLEND_OP_LINEARDODGE_EXT         = VkBlendOp.VK_BLEND_OP_LINEARDODGE_EXT;
3118 enum VK_BLEND_OP_LINEARBURN_EXT          = VkBlendOp.VK_BLEND_OP_LINEARBURN_EXT;
3119 enum VK_BLEND_OP_VIVIDLIGHT_EXT          = VkBlendOp.VK_BLEND_OP_VIVIDLIGHT_EXT;
3120 enum VK_BLEND_OP_LINEARLIGHT_EXT         = VkBlendOp.VK_BLEND_OP_LINEARLIGHT_EXT;
3121 enum VK_BLEND_OP_PINLIGHT_EXT            = VkBlendOp.VK_BLEND_OP_PINLIGHT_EXT;
3122 enum VK_BLEND_OP_HARDMIX_EXT             = VkBlendOp.VK_BLEND_OP_HARDMIX_EXT;
3123 enum VK_BLEND_OP_HSL_HUE_EXT             = VkBlendOp.VK_BLEND_OP_HSL_HUE_EXT;
3124 enum VK_BLEND_OP_HSL_SATURATION_EXT      = VkBlendOp.VK_BLEND_OP_HSL_SATURATION_EXT;
3125 enum VK_BLEND_OP_HSL_COLOR_EXT           = VkBlendOp.VK_BLEND_OP_HSL_COLOR_EXT;
3126 enum VK_BLEND_OP_HSL_LUMINOSITY_EXT      = VkBlendOp.VK_BLEND_OP_HSL_LUMINOSITY_EXT;
3127 enum VK_BLEND_OP_PLUS_EXT                = VkBlendOp.VK_BLEND_OP_PLUS_EXT;
3128 enum VK_BLEND_OP_PLUS_CLAMPED_EXT        = VkBlendOp.VK_BLEND_OP_PLUS_CLAMPED_EXT;
3129 enum VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT  = VkBlendOp.VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT;
3130 enum VK_BLEND_OP_PLUS_DARKER_EXT         = VkBlendOp.VK_BLEND_OP_PLUS_DARKER_EXT;
3131 enum VK_BLEND_OP_MINUS_EXT               = VkBlendOp.VK_BLEND_OP_MINUS_EXT;
3132 enum VK_BLEND_OP_MINUS_CLAMPED_EXT       = VkBlendOp.VK_BLEND_OP_MINUS_CLAMPED_EXT;
3133 enum VK_BLEND_OP_CONTRAST_EXT            = VkBlendOp.VK_BLEND_OP_CONTRAST_EXT;
3134 enum VK_BLEND_OP_INVERT_OVG_EXT          = VkBlendOp.VK_BLEND_OP_INVERT_OVG_EXT;
3135 enum VK_BLEND_OP_RED_EXT                 = VkBlendOp.VK_BLEND_OP_RED_EXT;
3136 enum VK_BLEND_OP_GREEN_EXT               = VkBlendOp.VK_BLEND_OP_GREEN_EXT;
3137 enum VK_BLEND_OP_BLUE_EXT                = VkBlendOp.VK_BLEND_OP_BLUE_EXT;
3138 enum VK_BLEND_OP_BEGIN_RANGE             = VkBlendOp.VK_BLEND_OP_BEGIN_RANGE;
3139 enum VK_BLEND_OP_END_RANGE               = VkBlendOp.VK_BLEND_OP_END_RANGE;
3140 enum VK_BLEND_OP_RANGE_SIZE              = VkBlendOp.VK_BLEND_OP_RANGE_SIZE;
3141 enum VK_BLEND_OP_MAX_ENUM                = VkBlendOp.VK_BLEND_OP_MAX_ENUM;
3142 
3143 enum VkCompareOp {
3144     VK_COMPARE_OP_NEVER                  = 0,
3145     VK_COMPARE_OP_LESS                   = 1,
3146     VK_COMPARE_OP_EQUAL                  = 2,
3147     VK_COMPARE_OP_LESS_OR_EQUAL          = 3,
3148     VK_COMPARE_OP_GREATER                = 4,
3149     VK_COMPARE_OP_NOT_EQUAL              = 5,
3150     VK_COMPARE_OP_GREATER_OR_EQUAL       = 6,
3151     VK_COMPARE_OP_ALWAYS                 = 7,
3152     VK_COMPARE_OP_BEGIN_RANGE            = VK_COMPARE_OP_NEVER,
3153     VK_COMPARE_OP_END_RANGE              = VK_COMPARE_OP_ALWAYS,
3154     VK_COMPARE_OP_RANGE_SIZE             = VK_COMPARE_OP_ALWAYS - VK_COMPARE_OP_NEVER + 1,
3155     VK_COMPARE_OP_MAX_ENUM               = 0x7FFFFFFF
3156 }
3157 
3158 enum VK_COMPARE_OP_NEVER                 = VkCompareOp.VK_COMPARE_OP_NEVER;
3159 enum VK_COMPARE_OP_LESS                  = VkCompareOp.VK_COMPARE_OP_LESS;
3160 enum VK_COMPARE_OP_EQUAL                 = VkCompareOp.VK_COMPARE_OP_EQUAL;
3161 enum VK_COMPARE_OP_LESS_OR_EQUAL         = VkCompareOp.VK_COMPARE_OP_LESS_OR_EQUAL;
3162 enum VK_COMPARE_OP_GREATER               = VkCompareOp.VK_COMPARE_OP_GREATER;
3163 enum VK_COMPARE_OP_NOT_EQUAL             = VkCompareOp.VK_COMPARE_OP_NOT_EQUAL;
3164 enum VK_COMPARE_OP_GREATER_OR_EQUAL      = VkCompareOp.VK_COMPARE_OP_GREATER_OR_EQUAL;
3165 enum VK_COMPARE_OP_ALWAYS                = VkCompareOp.VK_COMPARE_OP_ALWAYS;
3166 enum VK_COMPARE_OP_BEGIN_RANGE           = VkCompareOp.VK_COMPARE_OP_BEGIN_RANGE;
3167 enum VK_COMPARE_OP_END_RANGE             = VkCompareOp.VK_COMPARE_OP_END_RANGE;
3168 enum VK_COMPARE_OP_RANGE_SIZE            = VkCompareOp.VK_COMPARE_OP_RANGE_SIZE;
3169 enum VK_COMPARE_OP_MAX_ENUM              = VkCompareOp.VK_COMPARE_OP_MAX_ENUM;
3170 
3171 enum VkDynamicState {
3172     VK_DYNAMIC_STATE_VIEWPORT                                    = 0,
3173     VK_DYNAMIC_STATE_SCISSOR                                     = 1,
3174     VK_DYNAMIC_STATE_LINE_WIDTH                                  = 2,
3175     VK_DYNAMIC_STATE_DEPTH_BIAS                                  = 3,
3176     VK_DYNAMIC_STATE_BLEND_CONSTANTS                             = 4,
3177     VK_DYNAMIC_STATE_DEPTH_BOUNDS                                = 5,
3178     VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK                        = 6,
3179     VK_DYNAMIC_STATE_STENCIL_WRITE_MASK                          = 7,
3180     VK_DYNAMIC_STATE_STENCIL_REFERENCE                           = 8,
3181     VK_DYNAMIC_STATE_CULL_MODE                                   = 1000267000,
3182     VK_DYNAMIC_STATE_FRONT_FACE                                  = 1000267001,
3183     VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY                          = 1000267002,
3184     VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT                         = 1000267003,
3185     VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT                          = 1000267004,
3186     VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE                 = 1000267005,
3187     VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE                           = 1000267006,
3188     VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE                          = 1000267007,
3189     VK_DYNAMIC_STATE_DEPTH_COMPARE_OP                            = 1000267008,
3190     VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE                    = 1000267009,
3191     VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE                         = 1000267010,
3192     VK_DYNAMIC_STATE_STENCIL_OP                                  = 1000267011,
3193     VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE                   = 1000377001,
3194     VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE                           = 1000377002,
3195     VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE                    = 1000377004,
3196     VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV                       = 1000087000,
3197     VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT                       = 1000099000,
3198     VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT                        = 1000143000,
3199     VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR         = 1000347000,
3200     VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV            = 1000164004,
3201     VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV             = 1000164006,
3202     VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV                        = 1000205001,
3203     VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR                   = 1000226000,
3204     VK_DYNAMIC_STATE_LINE_STIPPLE_EXT                            = 1000259000,
3205     VK_DYNAMIC_STATE_VERTEX_INPUT_EXT                            = 1000352000,
3206     VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT                    = 1000377000,
3207     VK_DYNAMIC_STATE_LOGIC_OP_EXT                                = 1000377003,
3208     VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT                      = 1000381000,
3209     VK_DYNAMIC_STATE_CULL_MODE_EXT                               = VK_DYNAMIC_STATE_CULL_MODE,
3210     VK_DYNAMIC_STATE_FRONT_FACE_EXT                              = VK_DYNAMIC_STATE_FRONT_FACE,
3211     VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT                      = VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY,
3212     VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT                     = VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT,
3213     VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT                      = VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT,
3214     VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT             = VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE,
3215     VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT                       = VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE,
3216     VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT                      = VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE,
3217     VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT                        = VK_DYNAMIC_STATE_DEPTH_COMPARE_OP,
3218     VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT                = VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE,
3219     VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT                     = VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE,
3220     VK_DYNAMIC_STATE_STENCIL_OP_EXT                              = VK_DYNAMIC_STATE_STENCIL_OP,
3221     VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT               = VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE,
3222     VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT                       = VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE,
3223     VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT                = VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE,
3224     VK_DYNAMIC_STATE_BEGIN_RANGE                                 = VK_DYNAMIC_STATE_VIEWPORT,
3225     VK_DYNAMIC_STATE_END_RANGE                                   = VK_DYNAMIC_STATE_STENCIL_REFERENCE,
3226     VK_DYNAMIC_STATE_RANGE_SIZE                                  = VK_DYNAMIC_STATE_STENCIL_REFERENCE - VK_DYNAMIC_STATE_VIEWPORT + 1,
3227     VK_DYNAMIC_STATE_MAX_ENUM                                    = 0x7FFFFFFF
3228 }
3229 
3230 enum VK_DYNAMIC_STATE_VIEWPORT                                   = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT;
3231 enum VK_DYNAMIC_STATE_SCISSOR                                    = VkDynamicState.VK_DYNAMIC_STATE_SCISSOR;
3232 enum VK_DYNAMIC_STATE_LINE_WIDTH                                 = VkDynamicState.VK_DYNAMIC_STATE_LINE_WIDTH;
3233 enum VK_DYNAMIC_STATE_DEPTH_BIAS                                 = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BIAS;
3234 enum VK_DYNAMIC_STATE_BLEND_CONSTANTS                            = VkDynamicState.VK_DYNAMIC_STATE_BLEND_CONSTANTS;
3235 enum VK_DYNAMIC_STATE_DEPTH_BOUNDS                               = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BOUNDS;
3236 enum VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK                       = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK;
3237 enum VK_DYNAMIC_STATE_STENCIL_WRITE_MASK                         = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_WRITE_MASK;
3238 enum VK_DYNAMIC_STATE_STENCIL_REFERENCE                          = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_REFERENCE;
3239 enum VK_DYNAMIC_STATE_CULL_MODE                                  = VkDynamicState.VK_DYNAMIC_STATE_CULL_MODE;
3240 enum VK_DYNAMIC_STATE_FRONT_FACE                                 = VkDynamicState.VK_DYNAMIC_STATE_FRONT_FACE;
3241 enum VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY                         = VkDynamicState.VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY;
3242 enum VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT                        = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT;
3243 enum VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT                         = VkDynamicState.VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT;
3244 enum VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE                = VkDynamicState.VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE;
3245 enum VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE                          = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE;
3246 enum VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE                         = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE;
3247 enum VK_DYNAMIC_STATE_DEPTH_COMPARE_OP                           = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_COMPARE_OP;
3248 enum VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE                   = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE;
3249 enum VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE                        = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE;
3250 enum VK_DYNAMIC_STATE_STENCIL_OP                                 = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_OP;
3251 enum VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE                  = VkDynamicState.VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE;
3252 enum VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE                          = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE;
3253 enum VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE                   = VkDynamicState.VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE;
3254 enum VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV                      = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV;
3255 enum VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT                      = VkDynamicState.VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT;
3256 enum VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT                       = VkDynamicState.VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT;
3257 enum VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR        = VkDynamicState.VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR;
3258 enum VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV           = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV;
3259 enum VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV            = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV;
3260 enum VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV                       = VkDynamicState.VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV;
3261 enum VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR                  = VkDynamicState.VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR;
3262 enum VK_DYNAMIC_STATE_LINE_STIPPLE_EXT                           = VkDynamicState.VK_DYNAMIC_STATE_LINE_STIPPLE_EXT;
3263 enum VK_DYNAMIC_STATE_VERTEX_INPUT_EXT                           = VkDynamicState.VK_DYNAMIC_STATE_VERTEX_INPUT_EXT;
3264 enum VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT                   = VkDynamicState.VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT;
3265 enum VK_DYNAMIC_STATE_LOGIC_OP_EXT                               = VkDynamicState.VK_DYNAMIC_STATE_LOGIC_OP_EXT;
3266 enum VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT                     = VkDynamicState.VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT;
3267 enum VK_DYNAMIC_STATE_CULL_MODE_EXT                              = VkDynamicState.VK_DYNAMIC_STATE_CULL_MODE_EXT;
3268 enum VK_DYNAMIC_STATE_FRONT_FACE_EXT                             = VkDynamicState.VK_DYNAMIC_STATE_FRONT_FACE_EXT;
3269 enum VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT                     = VkDynamicState.VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT;
3270 enum VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT                    = VkDynamicState.VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT;
3271 enum VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT                     = VkDynamicState.VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT;
3272 enum VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT            = VkDynamicState.VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT;
3273 enum VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT                      = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT;
3274 enum VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT                     = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT;
3275 enum VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT                       = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT;
3276 enum VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT               = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT;
3277 enum VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT                    = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT;
3278 enum VK_DYNAMIC_STATE_STENCIL_OP_EXT                             = VkDynamicState.VK_DYNAMIC_STATE_STENCIL_OP_EXT;
3279 enum VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT              = VkDynamicState.VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT;
3280 enum VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT                      = VkDynamicState.VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT;
3281 enum VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT               = VkDynamicState.VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT;
3282 enum VK_DYNAMIC_STATE_BEGIN_RANGE                                = VkDynamicState.VK_DYNAMIC_STATE_BEGIN_RANGE;
3283 enum VK_DYNAMIC_STATE_END_RANGE                                  = VkDynamicState.VK_DYNAMIC_STATE_END_RANGE;
3284 enum VK_DYNAMIC_STATE_RANGE_SIZE                                 = VkDynamicState.VK_DYNAMIC_STATE_RANGE_SIZE;
3285 enum VK_DYNAMIC_STATE_MAX_ENUM                                   = VkDynamicState.VK_DYNAMIC_STATE_MAX_ENUM;
3286 
3287 enum VkFrontFace {
3288     VK_FRONT_FACE_COUNTER_CLOCKWISE      = 0,
3289     VK_FRONT_FACE_CLOCKWISE              = 1,
3290     VK_FRONT_FACE_BEGIN_RANGE            = VK_FRONT_FACE_COUNTER_CLOCKWISE,
3291     VK_FRONT_FACE_END_RANGE              = VK_FRONT_FACE_CLOCKWISE,
3292     VK_FRONT_FACE_RANGE_SIZE             = VK_FRONT_FACE_CLOCKWISE - VK_FRONT_FACE_COUNTER_CLOCKWISE + 1,
3293     VK_FRONT_FACE_MAX_ENUM               = 0x7FFFFFFF
3294 }
3295 
3296 enum VK_FRONT_FACE_COUNTER_CLOCKWISE     = VkFrontFace.VK_FRONT_FACE_COUNTER_CLOCKWISE;
3297 enum VK_FRONT_FACE_CLOCKWISE             = VkFrontFace.VK_FRONT_FACE_CLOCKWISE;
3298 enum VK_FRONT_FACE_BEGIN_RANGE           = VkFrontFace.VK_FRONT_FACE_BEGIN_RANGE;
3299 enum VK_FRONT_FACE_END_RANGE             = VkFrontFace.VK_FRONT_FACE_END_RANGE;
3300 enum VK_FRONT_FACE_RANGE_SIZE            = VkFrontFace.VK_FRONT_FACE_RANGE_SIZE;
3301 enum VK_FRONT_FACE_MAX_ENUM              = VkFrontFace.VK_FRONT_FACE_MAX_ENUM;
3302 
3303 enum VkVertexInputRate {
3304     VK_VERTEX_INPUT_RATE_VERTEX          = 0,
3305     VK_VERTEX_INPUT_RATE_INSTANCE        = 1,
3306     VK_VERTEX_INPUT_RATE_BEGIN_RANGE     = VK_VERTEX_INPUT_RATE_VERTEX,
3307     VK_VERTEX_INPUT_RATE_END_RANGE       = VK_VERTEX_INPUT_RATE_INSTANCE,
3308     VK_VERTEX_INPUT_RATE_RANGE_SIZE      = VK_VERTEX_INPUT_RATE_INSTANCE - VK_VERTEX_INPUT_RATE_VERTEX + 1,
3309     VK_VERTEX_INPUT_RATE_MAX_ENUM        = 0x7FFFFFFF
3310 }
3311 
3312 enum VK_VERTEX_INPUT_RATE_VERTEX         = VkVertexInputRate.VK_VERTEX_INPUT_RATE_VERTEX;
3313 enum VK_VERTEX_INPUT_RATE_INSTANCE       = VkVertexInputRate.VK_VERTEX_INPUT_RATE_INSTANCE;
3314 enum VK_VERTEX_INPUT_RATE_BEGIN_RANGE    = VkVertexInputRate.VK_VERTEX_INPUT_RATE_BEGIN_RANGE;
3315 enum VK_VERTEX_INPUT_RATE_END_RANGE      = VkVertexInputRate.VK_VERTEX_INPUT_RATE_END_RANGE;
3316 enum VK_VERTEX_INPUT_RATE_RANGE_SIZE     = VkVertexInputRate.VK_VERTEX_INPUT_RATE_RANGE_SIZE;
3317 enum VK_VERTEX_INPUT_RATE_MAX_ENUM       = VkVertexInputRate.VK_VERTEX_INPUT_RATE_MAX_ENUM;
3318 
3319 enum VkPrimitiveTopology {
3320     VK_PRIMITIVE_TOPOLOGY_POINT_LIST                     = 0,
3321     VK_PRIMITIVE_TOPOLOGY_LINE_LIST                      = 1,
3322     VK_PRIMITIVE_TOPOLOGY_LINE_STRIP                     = 2,
3323     VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST                  = 3,
3324     VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP                 = 4,
3325     VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN                   = 5,
3326     VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY       = 6,
3327     VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY      = 7,
3328     VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY   = 8,
3329     VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY  = 9,
3330     VK_PRIMITIVE_TOPOLOGY_PATCH_LIST                     = 10,
3331     VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE                    = VK_PRIMITIVE_TOPOLOGY_POINT_LIST,
3332     VK_PRIMITIVE_TOPOLOGY_END_RANGE                      = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST,
3333     VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE                     = VK_PRIMITIVE_TOPOLOGY_PATCH_LIST - VK_PRIMITIVE_TOPOLOGY_POINT_LIST + 1,
3334     VK_PRIMITIVE_TOPOLOGY_MAX_ENUM                       = 0x7FFFFFFF
3335 }
3336 
3337 enum VK_PRIMITIVE_TOPOLOGY_POINT_LIST                    = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_POINT_LIST;
3338 enum VK_PRIMITIVE_TOPOLOGY_LINE_LIST                     = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_LINE_LIST;
3339 enum VK_PRIMITIVE_TOPOLOGY_LINE_STRIP                    = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_LINE_STRIP;
3340 enum VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST                 = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST;
3341 enum VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP                = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP;
3342 enum VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN                  = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN;
3343 enum VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY      = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY;
3344 enum VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY     = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY;
3345 enum VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY  = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY;
3346 enum VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY;
3347 enum VK_PRIMITIVE_TOPOLOGY_PATCH_LIST                    = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_PATCH_LIST;
3348 enum VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE                   = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_BEGIN_RANGE;
3349 enum VK_PRIMITIVE_TOPOLOGY_END_RANGE                     = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_END_RANGE;
3350 enum VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE                    = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_RANGE_SIZE;
3351 enum VK_PRIMITIVE_TOPOLOGY_MAX_ENUM                      = VkPrimitiveTopology.VK_PRIMITIVE_TOPOLOGY_MAX_ENUM;
3352 
3353 enum VkPolygonMode {
3354     VK_POLYGON_MODE_FILL                 = 0,
3355     VK_POLYGON_MODE_LINE                 = 1,
3356     VK_POLYGON_MODE_POINT                = 2,
3357     VK_POLYGON_MODE_FILL_RECTANGLE_NV    = 1000153000,
3358     VK_POLYGON_MODE_BEGIN_RANGE          = VK_POLYGON_MODE_FILL,
3359     VK_POLYGON_MODE_END_RANGE            = VK_POLYGON_MODE_POINT,
3360     VK_POLYGON_MODE_RANGE_SIZE           = VK_POLYGON_MODE_POINT - VK_POLYGON_MODE_FILL + 1,
3361     VK_POLYGON_MODE_MAX_ENUM             = 0x7FFFFFFF
3362 }
3363 
3364 enum VK_POLYGON_MODE_FILL                = VkPolygonMode.VK_POLYGON_MODE_FILL;
3365 enum VK_POLYGON_MODE_LINE                = VkPolygonMode.VK_POLYGON_MODE_LINE;
3366 enum VK_POLYGON_MODE_POINT               = VkPolygonMode.VK_POLYGON_MODE_POINT;
3367 enum VK_POLYGON_MODE_FILL_RECTANGLE_NV   = VkPolygonMode.VK_POLYGON_MODE_FILL_RECTANGLE_NV;
3368 enum VK_POLYGON_MODE_BEGIN_RANGE         = VkPolygonMode.VK_POLYGON_MODE_BEGIN_RANGE;
3369 enum VK_POLYGON_MODE_END_RANGE           = VkPolygonMode.VK_POLYGON_MODE_END_RANGE;
3370 enum VK_POLYGON_MODE_RANGE_SIZE          = VkPolygonMode.VK_POLYGON_MODE_RANGE_SIZE;
3371 enum VK_POLYGON_MODE_MAX_ENUM            = VkPolygonMode.VK_POLYGON_MODE_MAX_ENUM;
3372 
3373 enum VkStencilOp {
3374     VK_STENCIL_OP_KEEP                   = 0,
3375     VK_STENCIL_OP_ZERO                   = 1,
3376     VK_STENCIL_OP_REPLACE                = 2,
3377     VK_STENCIL_OP_INCREMENT_AND_CLAMP    = 3,
3378     VK_STENCIL_OP_DECREMENT_AND_CLAMP    = 4,
3379     VK_STENCIL_OP_INVERT                 = 5,
3380     VK_STENCIL_OP_INCREMENT_AND_WRAP     = 6,
3381     VK_STENCIL_OP_DECREMENT_AND_WRAP     = 7,
3382     VK_STENCIL_OP_BEGIN_RANGE            = VK_STENCIL_OP_KEEP,
3383     VK_STENCIL_OP_END_RANGE              = VK_STENCIL_OP_DECREMENT_AND_WRAP,
3384     VK_STENCIL_OP_RANGE_SIZE             = VK_STENCIL_OP_DECREMENT_AND_WRAP - VK_STENCIL_OP_KEEP + 1,
3385     VK_STENCIL_OP_MAX_ENUM               = 0x7FFFFFFF
3386 }
3387 
3388 enum VK_STENCIL_OP_KEEP                  = VkStencilOp.VK_STENCIL_OP_KEEP;
3389 enum VK_STENCIL_OP_ZERO                  = VkStencilOp.VK_STENCIL_OP_ZERO;
3390 enum VK_STENCIL_OP_REPLACE               = VkStencilOp.VK_STENCIL_OP_REPLACE;
3391 enum VK_STENCIL_OP_INCREMENT_AND_CLAMP   = VkStencilOp.VK_STENCIL_OP_INCREMENT_AND_CLAMP;
3392 enum VK_STENCIL_OP_DECREMENT_AND_CLAMP   = VkStencilOp.VK_STENCIL_OP_DECREMENT_AND_CLAMP;
3393 enum VK_STENCIL_OP_INVERT                = VkStencilOp.VK_STENCIL_OP_INVERT;
3394 enum VK_STENCIL_OP_INCREMENT_AND_WRAP    = VkStencilOp.VK_STENCIL_OP_INCREMENT_AND_WRAP;
3395 enum VK_STENCIL_OP_DECREMENT_AND_WRAP    = VkStencilOp.VK_STENCIL_OP_DECREMENT_AND_WRAP;
3396 enum VK_STENCIL_OP_BEGIN_RANGE           = VkStencilOp.VK_STENCIL_OP_BEGIN_RANGE;
3397 enum VK_STENCIL_OP_END_RANGE             = VkStencilOp.VK_STENCIL_OP_END_RANGE;
3398 enum VK_STENCIL_OP_RANGE_SIZE            = VkStencilOp.VK_STENCIL_OP_RANGE_SIZE;
3399 enum VK_STENCIL_OP_MAX_ENUM              = VkStencilOp.VK_STENCIL_OP_MAX_ENUM;
3400 
3401 enum VkLogicOp {
3402     VK_LOGIC_OP_CLEAR            = 0,
3403     VK_LOGIC_OP_AND              = 1,
3404     VK_LOGIC_OP_AND_REVERSE      = 2,
3405     VK_LOGIC_OP_COPY             = 3,
3406     VK_LOGIC_OP_AND_INVERTED     = 4,
3407     VK_LOGIC_OP_NO_OP            = 5,
3408     VK_LOGIC_OP_XOR              = 6,
3409     VK_LOGIC_OP_OR               = 7,
3410     VK_LOGIC_OP_NOR              = 8,
3411     VK_LOGIC_OP_EQUIVALENT       = 9,
3412     VK_LOGIC_OP_INVERT           = 10,
3413     VK_LOGIC_OP_OR_REVERSE       = 11,
3414     VK_LOGIC_OP_COPY_INVERTED    = 12,
3415     VK_LOGIC_OP_OR_INVERTED      = 13,
3416     VK_LOGIC_OP_NAND             = 14,
3417     VK_LOGIC_OP_SET              = 15,
3418     VK_LOGIC_OP_BEGIN_RANGE      = VK_LOGIC_OP_CLEAR,
3419     VK_LOGIC_OP_END_RANGE        = VK_LOGIC_OP_SET,
3420     VK_LOGIC_OP_RANGE_SIZE       = VK_LOGIC_OP_SET - VK_LOGIC_OP_CLEAR + 1,
3421     VK_LOGIC_OP_MAX_ENUM         = 0x7FFFFFFF
3422 }
3423 
3424 enum VK_LOGIC_OP_CLEAR           = VkLogicOp.VK_LOGIC_OP_CLEAR;
3425 enum VK_LOGIC_OP_AND             = VkLogicOp.VK_LOGIC_OP_AND;
3426 enum VK_LOGIC_OP_AND_REVERSE     = VkLogicOp.VK_LOGIC_OP_AND_REVERSE;
3427 enum VK_LOGIC_OP_COPY            = VkLogicOp.VK_LOGIC_OP_COPY;
3428 enum VK_LOGIC_OP_AND_INVERTED    = VkLogicOp.VK_LOGIC_OP_AND_INVERTED;
3429 enum VK_LOGIC_OP_NO_OP           = VkLogicOp.VK_LOGIC_OP_NO_OP;
3430 enum VK_LOGIC_OP_XOR             = VkLogicOp.VK_LOGIC_OP_XOR;
3431 enum VK_LOGIC_OP_OR              = VkLogicOp.VK_LOGIC_OP_OR;
3432 enum VK_LOGIC_OP_NOR             = VkLogicOp.VK_LOGIC_OP_NOR;
3433 enum VK_LOGIC_OP_EQUIVALENT      = VkLogicOp.VK_LOGIC_OP_EQUIVALENT;
3434 enum VK_LOGIC_OP_INVERT          = VkLogicOp.VK_LOGIC_OP_INVERT;
3435 enum VK_LOGIC_OP_OR_REVERSE      = VkLogicOp.VK_LOGIC_OP_OR_REVERSE;
3436 enum VK_LOGIC_OP_COPY_INVERTED   = VkLogicOp.VK_LOGIC_OP_COPY_INVERTED;
3437 enum VK_LOGIC_OP_OR_INVERTED     = VkLogicOp.VK_LOGIC_OP_OR_INVERTED;
3438 enum VK_LOGIC_OP_NAND            = VkLogicOp.VK_LOGIC_OP_NAND;
3439 enum VK_LOGIC_OP_SET             = VkLogicOp.VK_LOGIC_OP_SET;
3440 enum VK_LOGIC_OP_BEGIN_RANGE     = VkLogicOp.VK_LOGIC_OP_BEGIN_RANGE;
3441 enum VK_LOGIC_OP_END_RANGE       = VkLogicOp.VK_LOGIC_OP_END_RANGE;
3442 enum VK_LOGIC_OP_RANGE_SIZE      = VkLogicOp.VK_LOGIC_OP_RANGE_SIZE;
3443 enum VK_LOGIC_OP_MAX_ENUM        = VkLogicOp.VK_LOGIC_OP_MAX_ENUM;
3444 
3445 enum VkBorderColor {
3446     VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK      = 0,
3447     VK_BORDER_COLOR_INT_TRANSPARENT_BLACK        = 1,
3448     VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK           = 2,
3449     VK_BORDER_COLOR_INT_OPAQUE_BLACK             = 3,
3450     VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE           = 4,
3451     VK_BORDER_COLOR_INT_OPAQUE_WHITE             = 5,
3452     VK_BORDER_COLOR_FLOAT_CUSTOM_EXT             = 1000287003,
3453     VK_BORDER_COLOR_INT_CUSTOM_EXT               = 1000287004,
3454     VK_BORDER_COLOR_BEGIN_RANGE                  = VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK,
3455     VK_BORDER_COLOR_END_RANGE                    = VK_BORDER_COLOR_INT_OPAQUE_WHITE,
3456     VK_BORDER_COLOR_RANGE_SIZE                   = VK_BORDER_COLOR_INT_OPAQUE_WHITE - VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK + 1,
3457     VK_BORDER_COLOR_MAX_ENUM                     = 0x7FFFFFFF
3458 }
3459 
3460 enum VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK     = VkBorderColor.VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK;
3461 enum VK_BORDER_COLOR_INT_TRANSPARENT_BLACK       = VkBorderColor.VK_BORDER_COLOR_INT_TRANSPARENT_BLACK;
3462 enum VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK          = VkBorderColor.VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK;
3463 enum VK_BORDER_COLOR_INT_OPAQUE_BLACK            = VkBorderColor.VK_BORDER_COLOR_INT_OPAQUE_BLACK;
3464 enum VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE          = VkBorderColor.VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE;
3465 enum VK_BORDER_COLOR_INT_OPAQUE_WHITE            = VkBorderColor.VK_BORDER_COLOR_INT_OPAQUE_WHITE;
3466 enum VK_BORDER_COLOR_FLOAT_CUSTOM_EXT            = VkBorderColor.VK_BORDER_COLOR_FLOAT_CUSTOM_EXT;
3467 enum VK_BORDER_COLOR_INT_CUSTOM_EXT              = VkBorderColor.VK_BORDER_COLOR_INT_CUSTOM_EXT;
3468 enum VK_BORDER_COLOR_BEGIN_RANGE                 = VkBorderColor.VK_BORDER_COLOR_BEGIN_RANGE;
3469 enum VK_BORDER_COLOR_END_RANGE                   = VkBorderColor.VK_BORDER_COLOR_END_RANGE;
3470 enum VK_BORDER_COLOR_RANGE_SIZE                  = VkBorderColor.VK_BORDER_COLOR_RANGE_SIZE;
3471 enum VK_BORDER_COLOR_MAX_ENUM                    = VkBorderColor.VK_BORDER_COLOR_MAX_ENUM;
3472 
3473 enum VkFilter {
3474     VK_FILTER_NEAREST            = 0,
3475     VK_FILTER_LINEAR             = 1,
3476     VK_FILTER_CUBIC_IMG          = 1000015000,
3477     VK_FILTER_CUBIC_EXT          = VK_FILTER_CUBIC_IMG,
3478     VK_FILTER_BEGIN_RANGE        = VK_FILTER_NEAREST,
3479     VK_FILTER_END_RANGE          = VK_FILTER_LINEAR,
3480     VK_FILTER_RANGE_SIZE         = VK_FILTER_LINEAR - VK_FILTER_NEAREST + 1,
3481     VK_FILTER_MAX_ENUM           = 0x7FFFFFFF
3482 }
3483 
3484 enum VK_FILTER_NEAREST           = VkFilter.VK_FILTER_NEAREST;
3485 enum VK_FILTER_LINEAR            = VkFilter.VK_FILTER_LINEAR;
3486 enum VK_FILTER_CUBIC_IMG         = VkFilter.VK_FILTER_CUBIC_IMG;
3487 enum VK_FILTER_CUBIC_EXT         = VkFilter.VK_FILTER_CUBIC_EXT;
3488 enum VK_FILTER_BEGIN_RANGE       = VkFilter.VK_FILTER_BEGIN_RANGE;
3489 enum VK_FILTER_END_RANGE         = VkFilter.VK_FILTER_END_RANGE;
3490 enum VK_FILTER_RANGE_SIZE        = VkFilter.VK_FILTER_RANGE_SIZE;
3491 enum VK_FILTER_MAX_ENUM          = VkFilter.VK_FILTER_MAX_ENUM;
3492 
3493 enum VkSamplerAddressMode {
3494     VK_SAMPLER_ADDRESS_MODE_REPEAT                       = 0,
3495     VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT              = 1,
3496     VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE                = 2,
3497     VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER              = 3,
3498     VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE         = 4,
3499     VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR     = VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE,
3500     VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE                  = VK_SAMPLER_ADDRESS_MODE_REPEAT,
3501     VK_SAMPLER_ADDRESS_MODE_END_RANGE                    = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER,
3502     VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE                   = VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER - VK_SAMPLER_ADDRESS_MODE_REPEAT + 1,
3503     VK_SAMPLER_ADDRESS_MODE_MAX_ENUM                     = 0x7FFFFFFF
3504 }
3505 
3506 enum VK_SAMPLER_ADDRESS_MODE_REPEAT                      = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_REPEAT;
3507 enum VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT             = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT;
3508 enum VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE               = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE;
3509 enum VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER             = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER;
3510 enum VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE        = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE;
3511 enum VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR    = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR;
3512 enum VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE                 = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_BEGIN_RANGE;
3513 enum VK_SAMPLER_ADDRESS_MODE_END_RANGE                   = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_END_RANGE;
3514 enum VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE                  = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_RANGE_SIZE;
3515 enum VK_SAMPLER_ADDRESS_MODE_MAX_ENUM                    = VkSamplerAddressMode.VK_SAMPLER_ADDRESS_MODE_MAX_ENUM;
3516 
3517 enum VkSamplerMipmapMode {
3518     VK_SAMPLER_MIPMAP_MODE_NEAREST       = 0,
3519     VK_SAMPLER_MIPMAP_MODE_LINEAR        = 1,
3520     VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE   = VK_SAMPLER_MIPMAP_MODE_NEAREST,
3521     VK_SAMPLER_MIPMAP_MODE_END_RANGE     = VK_SAMPLER_MIPMAP_MODE_LINEAR,
3522     VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE    = VK_SAMPLER_MIPMAP_MODE_LINEAR - VK_SAMPLER_MIPMAP_MODE_NEAREST + 1,
3523     VK_SAMPLER_MIPMAP_MODE_MAX_ENUM      = 0x7FFFFFFF
3524 }
3525 
3526 enum VK_SAMPLER_MIPMAP_MODE_NEAREST      = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_NEAREST;
3527 enum VK_SAMPLER_MIPMAP_MODE_LINEAR       = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_LINEAR;
3528 enum VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE  = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_BEGIN_RANGE;
3529 enum VK_SAMPLER_MIPMAP_MODE_END_RANGE    = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_END_RANGE;
3530 enum VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE   = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_RANGE_SIZE;
3531 enum VK_SAMPLER_MIPMAP_MODE_MAX_ENUM     = VkSamplerMipmapMode.VK_SAMPLER_MIPMAP_MODE_MAX_ENUM;
3532 
3533 enum VkDescriptorType {
3534     VK_DESCRIPTOR_TYPE_SAMPLER                           = 0,
3535     VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER            = 1,
3536     VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE                     = 2,
3537     VK_DESCRIPTOR_TYPE_STORAGE_IMAGE                     = 3,
3538     VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER              = 4,
3539     VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER              = 5,
3540     VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER                    = 6,
3541     VK_DESCRIPTOR_TYPE_STORAGE_BUFFER                    = 7,
3542     VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC            = 8,
3543     VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC            = 9,
3544     VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT                  = 10,
3545     VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK              = 1000138000,
3546     VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR        = 1000150000,
3547     VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV         = 1000165000,
3548     VK_DESCRIPTOR_TYPE_MUTABLE_VALVE                     = 1000351000,
3549     VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT          = VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK,
3550     VK_DESCRIPTOR_TYPE_BEGIN_RANGE                       = VK_DESCRIPTOR_TYPE_SAMPLER,
3551     VK_DESCRIPTOR_TYPE_END_RANGE                         = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT,
3552     VK_DESCRIPTOR_TYPE_RANGE_SIZE                        = VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT - VK_DESCRIPTOR_TYPE_SAMPLER + 1,
3553     VK_DESCRIPTOR_TYPE_MAX_ENUM                          = 0x7FFFFFFF
3554 }
3555 
3556 enum VK_DESCRIPTOR_TYPE_SAMPLER                          = VkDescriptorType.VK_DESCRIPTOR_TYPE_SAMPLER;
3557 enum VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER           = VkDescriptorType.VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER;
3558 enum VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE                    = VkDescriptorType.VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE;
3559 enum VK_DESCRIPTOR_TYPE_STORAGE_IMAGE                    = VkDescriptorType.VK_DESCRIPTOR_TYPE_STORAGE_IMAGE;
3560 enum VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER             = VkDescriptorType.VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER;
3561 enum VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER             = VkDescriptorType.VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER;
3562 enum VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER                   = VkDescriptorType.VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER;
3563 enum VK_DESCRIPTOR_TYPE_STORAGE_BUFFER                   = VkDescriptorType.VK_DESCRIPTOR_TYPE_STORAGE_BUFFER;
3564 enum VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC           = VkDescriptorType.VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC;
3565 enum VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC           = VkDescriptorType.VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC;
3566 enum VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT                 = VkDescriptorType.VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT;
3567 enum VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK             = VkDescriptorType.VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK;
3568 enum VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR       = VkDescriptorType.VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR;
3569 enum VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV        = VkDescriptorType.VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV;
3570 enum VK_DESCRIPTOR_TYPE_MUTABLE_VALVE                    = VkDescriptorType.VK_DESCRIPTOR_TYPE_MUTABLE_VALVE;
3571 enum VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT         = VkDescriptorType.VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT;
3572 enum VK_DESCRIPTOR_TYPE_BEGIN_RANGE                      = VkDescriptorType.VK_DESCRIPTOR_TYPE_BEGIN_RANGE;
3573 enum VK_DESCRIPTOR_TYPE_END_RANGE                        = VkDescriptorType.VK_DESCRIPTOR_TYPE_END_RANGE;
3574 enum VK_DESCRIPTOR_TYPE_RANGE_SIZE                       = VkDescriptorType.VK_DESCRIPTOR_TYPE_RANGE_SIZE;
3575 enum VK_DESCRIPTOR_TYPE_MAX_ENUM                         = VkDescriptorType.VK_DESCRIPTOR_TYPE_MAX_ENUM;
3576 
3577 enum VkAttachmentLoadOp {
3578     VK_ATTACHMENT_LOAD_OP_LOAD           = 0,
3579     VK_ATTACHMENT_LOAD_OP_CLEAR          = 1,
3580     VK_ATTACHMENT_LOAD_OP_DONT_CARE      = 2,
3581     VK_ATTACHMENT_LOAD_OP_NONE_EXT       = 1000400000,
3582     VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE    = VK_ATTACHMENT_LOAD_OP_LOAD,
3583     VK_ATTACHMENT_LOAD_OP_END_RANGE      = VK_ATTACHMENT_LOAD_OP_DONT_CARE,
3584     VK_ATTACHMENT_LOAD_OP_RANGE_SIZE     = VK_ATTACHMENT_LOAD_OP_DONT_CARE - VK_ATTACHMENT_LOAD_OP_LOAD + 1,
3585     VK_ATTACHMENT_LOAD_OP_MAX_ENUM       = 0x7FFFFFFF
3586 }
3587 
3588 enum VK_ATTACHMENT_LOAD_OP_LOAD          = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_LOAD;
3589 enum VK_ATTACHMENT_LOAD_OP_CLEAR         = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_CLEAR;
3590 enum VK_ATTACHMENT_LOAD_OP_DONT_CARE     = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_DONT_CARE;
3591 enum VK_ATTACHMENT_LOAD_OP_NONE_EXT      = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_NONE_EXT;
3592 enum VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE   = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_BEGIN_RANGE;
3593 enum VK_ATTACHMENT_LOAD_OP_END_RANGE     = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_END_RANGE;
3594 enum VK_ATTACHMENT_LOAD_OP_RANGE_SIZE    = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_RANGE_SIZE;
3595 enum VK_ATTACHMENT_LOAD_OP_MAX_ENUM      = VkAttachmentLoadOp.VK_ATTACHMENT_LOAD_OP_MAX_ENUM;
3596 
3597 enum VkAttachmentStoreOp {
3598     VK_ATTACHMENT_STORE_OP_STORE         = 0,
3599     VK_ATTACHMENT_STORE_OP_DONT_CARE     = 1,
3600     VK_ATTACHMENT_STORE_OP_NONE          = 1000301000,
3601     VK_ATTACHMENT_STORE_OP_NONE_KHR      = VK_ATTACHMENT_STORE_OP_NONE,
3602     VK_ATTACHMENT_STORE_OP_NONE_QCOM     = VK_ATTACHMENT_STORE_OP_NONE,
3603     VK_ATTACHMENT_STORE_OP_NONE_EXT      = VK_ATTACHMENT_STORE_OP_NONE,
3604     VK_ATTACHMENT_STORE_OP_BEGIN_RANGE   = VK_ATTACHMENT_STORE_OP_STORE,
3605     VK_ATTACHMENT_STORE_OP_END_RANGE     = VK_ATTACHMENT_STORE_OP_DONT_CARE,
3606     VK_ATTACHMENT_STORE_OP_RANGE_SIZE    = VK_ATTACHMENT_STORE_OP_DONT_CARE - VK_ATTACHMENT_STORE_OP_STORE + 1,
3607     VK_ATTACHMENT_STORE_OP_MAX_ENUM      = 0x7FFFFFFF
3608 }
3609 
3610 enum VK_ATTACHMENT_STORE_OP_STORE        = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_STORE;
3611 enum VK_ATTACHMENT_STORE_OP_DONT_CARE    = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_DONT_CARE;
3612 enum VK_ATTACHMENT_STORE_OP_NONE         = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_NONE;
3613 enum VK_ATTACHMENT_STORE_OP_NONE_KHR     = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_NONE_KHR;
3614 enum VK_ATTACHMENT_STORE_OP_NONE_QCOM    = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_NONE_QCOM;
3615 enum VK_ATTACHMENT_STORE_OP_NONE_EXT     = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_NONE_EXT;
3616 enum VK_ATTACHMENT_STORE_OP_BEGIN_RANGE  = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_BEGIN_RANGE;
3617 enum VK_ATTACHMENT_STORE_OP_END_RANGE    = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_END_RANGE;
3618 enum VK_ATTACHMENT_STORE_OP_RANGE_SIZE   = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_RANGE_SIZE;
3619 enum VK_ATTACHMENT_STORE_OP_MAX_ENUM     = VkAttachmentStoreOp.VK_ATTACHMENT_STORE_OP_MAX_ENUM;
3620 
3621 enum VkPipelineBindPoint {
3622     VK_PIPELINE_BIND_POINT_GRAPHICS                      = 0,
3623     VK_PIPELINE_BIND_POINT_COMPUTE                       = 1,
3624     VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR               = 1000165000,
3625     VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI        = 1000369003,
3626     VK_PIPELINE_BIND_POINT_RAY_TRACING_NV                = VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR,
3627     VK_PIPELINE_BIND_POINT_BEGIN_RANGE                   = VK_PIPELINE_BIND_POINT_GRAPHICS,
3628     VK_PIPELINE_BIND_POINT_END_RANGE                     = VK_PIPELINE_BIND_POINT_COMPUTE,
3629     VK_PIPELINE_BIND_POINT_RANGE_SIZE                    = VK_PIPELINE_BIND_POINT_COMPUTE - VK_PIPELINE_BIND_POINT_GRAPHICS + 1,
3630     VK_PIPELINE_BIND_POINT_MAX_ENUM                      = 0x7FFFFFFF
3631 }
3632 
3633 enum VK_PIPELINE_BIND_POINT_GRAPHICS                     = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_GRAPHICS;
3634 enum VK_PIPELINE_BIND_POINT_COMPUTE                      = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_COMPUTE;
3635 enum VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR              = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR;
3636 enum VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI       = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI;
3637 enum VK_PIPELINE_BIND_POINT_RAY_TRACING_NV               = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_RAY_TRACING_NV;
3638 enum VK_PIPELINE_BIND_POINT_BEGIN_RANGE                  = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_BEGIN_RANGE;
3639 enum VK_PIPELINE_BIND_POINT_END_RANGE                    = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_END_RANGE;
3640 enum VK_PIPELINE_BIND_POINT_RANGE_SIZE                   = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_RANGE_SIZE;
3641 enum VK_PIPELINE_BIND_POINT_MAX_ENUM                     = VkPipelineBindPoint.VK_PIPELINE_BIND_POINT_MAX_ENUM;
3642 
3643 enum VkCommandBufferLevel {
3644     VK_COMMAND_BUFFER_LEVEL_PRIMARY      = 0,
3645     VK_COMMAND_BUFFER_LEVEL_SECONDARY    = 1,
3646     VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE  = VK_COMMAND_BUFFER_LEVEL_PRIMARY,
3647     VK_COMMAND_BUFFER_LEVEL_END_RANGE    = VK_COMMAND_BUFFER_LEVEL_SECONDARY,
3648     VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE   = VK_COMMAND_BUFFER_LEVEL_SECONDARY - VK_COMMAND_BUFFER_LEVEL_PRIMARY + 1,
3649     VK_COMMAND_BUFFER_LEVEL_MAX_ENUM     = 0x7FFFFFFF
3650 }
3651 
3652 enum VK_COMMAND_BUFFER_LEVEL_PRIMARY     = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_PRIMARY;
3653 enum VK_COMMAND_BUFFER_LEVEL_SECONDARY   = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_SECONDARY;
3654 enum VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_BEGIN_RANGE;
3655 enum VK_COMMAND_BUFFER_LEVEL_END_RANGE   = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_END_RANGE;
3656 enum VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE  = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_RANGE_SIZE;
3657 enum VK_COMMAND_BUFFER_LEVEL_MAX_ENUM    = VkCommandBufferLevel.VK_COMMAND_BUFFER_LEVEL_MAX_ENUM;
3658 
3659 enum VkIndexType {
3660     VK_INDEX_TYPE_UINT16         = 0,
3661     VK_INDEX_TYPE_UINT32         = 1,
3662     VK_INDEX_TYPE_NONE_KHR       = 1000165000,
3663     VK_INDEX_TYPE_UINT8_EXT      = 1000265000,
3664     VK_INDEX_TYPE_NONE_NV        = VK_INDEX_TYPE_NONE_KHR,
3665     VK_INDEX_TYPE_BEGIN_RANGE    = VK_INDEX_TYPE_UINT16,
3666     VK_INDEX_TYPE_END_RANGE      = VK_INDEX_TYPE_UINT32,
3667     VK_INDEX_TYPE_RANGE_SIZE     = VK_INDEX_TYPE_UINT32 - VK_INDEX_TYPE_UINT16 + 1,
3668     VK_INDEX_TYPE_MAX_ENUM       = 0x7FFFFFFF
3669 }
3670 
3671 enum VK_INDEX_TYPE_UINT16        = VkIndexType.VK_INDEX_TYPE_UINT16;
3672 enum VK_INDEX_TYPE_UINT32        = VkIndexType.VK_INDEX_TYPE_UINT32;
3673 enum VK_INDEX_TYPE_NONE_KHR      = VkIndexType.VK_INDEX_TYPE_NONE_KHR;
3674 enum VK_INDEX_TYPE_UINT8_EXT     = VkIndexType.VK_INDEX_TYPE_UINT8_EXT;
3675 enum VK_INDEX_TYPE_NONE_NV       = VkIndexType.VK_INDEX_TYPE_NONE_NV;
3676 enum VK_INDEX_TYPE_BEGIN_RANGE   = VkIndexType.VK_INDEX_TYPE_BEGIN_RANGE;
3677 enum VK_INDEX_TYPE_END_RANGE     = VkIndexType.VK_INDEX_TYPE_END_RANGE;
3678 enum VK_INDEX_TYPE_RANGE_SIZE    = VkIndexType.VK_INDEX_TYPE_RANGE_SIZE;
3679 enum VK_INDEX_TYPE_MAX_ENUM      = VkIndexType.VK_INDEX_TYPE_MAX_ENUM;
3680 
3681 enum VkSubpassContents {
3682     VK_SUBPASS_CONTENTS_INLINE                           = 0,
3683     VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS        = 1,
3684     VK_SUBPASS_CONTENTS_BEGIN_RANGE                      = VK_SUBPASS_CONTENTS_INLINE,
3685     VK_SUBPASS_CONTENTS_END_RANGE                        = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS,
3686     VK_SUBPASS_CONTENTS_RANGE_SIZE                       = VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS - VK_SUBPASS_CONTENTS_INLINE + 1,
3687     VK_SUBPASS_CONTENTS_MAX_ENUM                         = 0x7FFFFFFF
3688 }
3689 
3690 enum VK_SUBPASS_CONTENTS_INLINE                          = VkSubpassContents.VK_SUBPASS_CONTENTS_INLINE;
3691 enum VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS       = VkSubpassContents.VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS;
3692 enum VK_SUBPASS_CONTENTS_BEGIN_RANGE                     = VkSubpassContents.VK_SUBPASS_CONTENTS_BEGIN_RANGE;
3693 enum VK_SUBPASS_CONTENTS_END_RANGE                       = VkSubpassContents.VK_SUBPASS_CONTENTS_END_RANGE;
3694 enum VK_SUBPASS_CONTENTS_RANGE_SIZE                      = VkSubpassContents.VK_SUBPASS_CONTENTS_RANGE_SIZE;
3695 enum VK_SUBPASS_CONTENTS_MAX_ENUM                        = VkSubpassContents.VK_SUBPASS_CONTENTS_MAX_ENUM;
3696 
3697 alias VkAccessFlags = VkFlags;
3698 enum VkAccessFlagBits : VkAccessFlags {
3699     VK_ACCESS_INDIRECT_COMMAND_READ_BIT                          = 0x00000001,
3700     VK_ACCESS_INDEX_READ_BIT                                     = 0x00000002,
3701     VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT                          = 0x00000004,
3702     VK_ACCESS_UNIFORM_READ_BIT                                   = 0x00000008,
3703     VK_ACCESS_INPUT_ATTACHMENT_READ_BIT                          = 0x00000010,
3704     VK_ACCESS_SHADER_READ_BIT                                    = 0x00000020,
3705     VK_ACCESS_SHADER_WRITE_BIT                                   = 0x00000040,
3706     VK_ACCESS_COLOR_ATTACHMENT_READ_BIT                          = 0x00000080,
3707     VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT                         = 0x00000100,
3708     VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT                  = 0x00000200,
3709     VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT                 = 0x00000400,
3710     VK_ACCESS_TRANSFER_READ_BIT                                  = 0x00000800,
3711     VK_ACCESS_TRANSFER_WRITE_BIT                                 = 0x00001000,
3712     VK_ACCESS_HOST_READ_BIT                                      = 0x00002000,
3713     VK_ACCESS_HOST_WRITE_BIT                                     = 0x00004000,
3714     VK_ACCESS_MEMORY_READ_BIT                                    = 0x00008000,
3715     VK_ACCESS_MEMORY_WRITE_BIT                                   = 0x00010000,
3716     VK_ACCESS_NONE                                               = 0,
3717     VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT                   = 0x02000000,
3718     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT            = 0x04000000,
3719     VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT           = 0x08000000,
3720     VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT                 = 0x00100000,
3721     VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT          = 0x00080000,
3722     VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR                = 0x00200000,
3723     VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR               = 0x00400000,
3724     VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT                  = 0x01000000,
3725     VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR      = 0x00800000,
3726     VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV                     = 0x00020000,
3727     VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV                    = 0x00040000,
3728     VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV                     = VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
3729     VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV                 = VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR,
3730     VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV                = VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
3731     VK_ACCESS_NONE_KHR                                           = VK_ACCESS_NONE,
3732     VK_ACCESS_FLAG_BITS_MAX_ENUM                                 = 0x7FFFFFFF
3733 }
3734 
3735 enum VK_ACCESS_INDIRECT_COMMAND_READ_BIT                         = VkAccessFlagBits.VK_ACCESS_INDIRECT_COMMAND_READ_BIT;
3736 enum VK_ACCESS_INDEX_READ_BIT                                    = VkAccessFlagBits.VK_ACCESS_INDEX_READ_BIT;
3737 enum VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT                         = VkAccessFlagBits.VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT;
3738 enum VK_ACCESS_UNIFORM_READ_BIT                                  = VkAccessFlagBits.VK_ACCESS_UNIFORM_READ_BIT;
3739 enum VK_ACCESS_INPUT_ATTACHMENT_READ_BIT                         = VkAccessFlagBits.VK_ACCESS_INPUT_ATTACHMENT_READ_BIT;
3740 enum VK_ACCESS_SHADER_READ_BIT                                   = VkAccessFlagBits.VK_ACCESS_SHADER_READ_BIT;
3741 enum VK_ACCESS_SHADER_WRITE_BIT                                  = VkAccessFlagBits.VK_ACCESS_SHADER_WRITE_BIT;
3742 enum VK_ACCESS_COLOR_ATTACHMENT_READ_BIT                         = VkAccessFlagBits.VK_ACCESS_COLOR_ATTACHMENT_READ_BIT;
3743 enum VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT                        = VkAccessFlagBits.VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT;
3744 enum VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT                 = VkAccessFlagBits.VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT;
3745 enum VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT                = VkAccessFlagBits.VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT;
3746 enum VK_ACCESS_TRANSFER_READ_BIT                                 = VkAccessFlagBits.VK_ACCESS_TRANSFER_READ_BIT;
3747 enum VK_ACCESS_TRANSFER_WRITE_BIT                                = VkAccessFlagBits.VK_ACCESS_TRANSFER_WRITE_BIT;
3748 enum VK_ACCESS_HOST_READ_BIT                                     = VkAccessFlagBits.VK_ACCESS_HOST_READ_BIT;
3749 enum VK_ACCESS_HOST_WRITE_BIT                                    = VkAccessFlagBits.VK_ACCESS_HOST_WRITE_BIT;
3750 enum VK_ACCESS_MEMORY_READ_BIT                                   = VkAccessFlagBits.VK_ACCESS_MEMORY_READ_BIT;
3751 enum VK_ACCESS_MEMORY_WRITE_BIT                                  = VkAccessFlagBits.VK_ACCESS_MEMORY_WRITE_BIT;
3752 enum VK_ACCESS_NONE                                              = VkAccessFlagBits.VK_ACCESS_NONE;
3753 enum VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT                  = VkAccessFlagBits.VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT;
3754 enum VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT           = VkAccessFlagBits.VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT;
3755 enum VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT          = VkAccessFlagBits.VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT;
3756 enum VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT                = VkAccessFlagBits.VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT;
3757 enum VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT         = VkAccessFlagBits.VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT;
3758 enum VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR               = VkAccessFlagBits.VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR;
3759 enum VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR              = VkAccessFlagBits.VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR;
3760 enum VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT                 = VkAccessFlagBits.VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT;
3761 enum VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR     = VkAccessFlagBits.VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR;
3762 enum VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV                    = VkAccessFlagBits.VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV;
3763 enum VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV                   = VkAccessFlagBits.VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV;
3764 enum VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV                    = VkAccessFlagBits.VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV;
3765 enum VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV                = VkAccessFlagBits.VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV;
3766 enum VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV               = VkAccessFlagBits.VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV;
3767 enum VK_ACCESS_NONE_KHR                                          = VkAccessFlagBits.VK_ACCESS_NONE_KHR;
3768 enum VK_ACCESS_FLAG_BITS_MAX_ENUM                                = VkAccessFlagBits.VK_ACCESS_FLAG_BITS_MAX_ENUM;
3769 
3770 alias VkImageAspectFlags = VkFlags;
3771 enum VkImageAspectFlagBits : VkImageAspectFlags {
3772     VK_IMAGE_ASPECT_COLOR_BIT                    = 0x00000001,
3773     VK_IMAGE_ASPECT_DEPTH_BIT                    = 0x00000002,
3774     VK_IMAGE_ASPECT_STENCIL_BIT                  = 0x00000004,
3775     VK_IMAGE_ASPECT_METADATA_BIT                 = 0x00000008,
3776     VK_IMAGE_ASPECT_PLANE_0_BIT                  = 0x00000010,
3777     VK_IMAGE_ASPECT_PLANE_1_BIT                  = 0x00000020,
3778     VK_IMAGE_ASPECT_PLANE_2_BIT                  = 0x00000040,
3779     VK_IMAGE_ASPECT_NONE                         = 0,
3780     VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT       = 0x00000080,
3781     VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT       = 0x00000100,
3782     VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT       = 0x00000200,
3783     VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT       = 0x00000400,
3784     VK_IMAGE_ASPECT_PLANE_0_BIT_KHR              = VK_IMAGE_ASPECT_PLANE_0_BIT,
3785     VK_IMAGE_ASPECT_PLANE_1_BIT_KHR              = VK_IMAGE_ASPECT_PLANE_1_BIT,
3786     VK_IMAGE_ASPECT_PLANE_2_BIT_KHR              = VK_IMAGE_ASPECT_PLANE_2_BIT,
3787     VK_IMAGE_ASPECT_NONE_KHR                     = VK_IMAGE_ASPECT_NONE,
3788     VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
3789 }
3790 
3791 enum VK_IMAGE_ASPECT_COLOR_BIT                   = VkImageAspectFlagBits.VK_IMAGE_ASPECT_COLOR_BIT;
3792 enum VK_IMAGE_ASPECT_DEPTH_BIT                   = VkImageAspectFlagBits.VK_IMAGE_ASPECT_DEPTH_BIT;
3793 enum VK_IMAGE_ASPECT_STENCIL_BIT                 = VkImageAspectFlagBits.VK_IMAGE_ASPECT_STENCIL_BIT;
3794 enum VK_IMAGE_ASPECT_METADATA_BIT                = VkImageAspectFlagBits.VK_IMAGE_ASPECT_METADATA_BIT;
3795 enum VK_IMAGE_ASPECT_PLANE_0_BIT                 = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_0_BIT;
3796 enum VK_IMAGE_ASPECT_PLANE_1_BIT                 = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_1_BIT;
3797 enum VK_IMAGE_ASPECT_PLANE_2_BIT                 = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_2_BIT;
3798 enum VK_IMAGE_ASPECT_NONE                        = VkImageAspectFlagBits.VK_IMAGE_ASPECT_NONE;
3799 enum VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT      = VkImageAspectFlagBits.VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT;
3800 enum VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT      = VkImageAspectFlagBits.VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT;
3801 enum VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT      = VkImageAspectFlagBits.VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT;
3802 enum VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT      = VkImageAspectFlagBits.VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT;
3803 enum VK_IMAGE_ASPECT_PLANE_0_BIT_KHR             = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_0_BIT_KHR;
3804 enum VK_IMAGE_ASPECT_PLANE_1_BIT_KHR             = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_1_BIT_KHR;
3805 enum VK_IMAGE_ASPECT_PLANE_2_BIT_KHR             = VkImageAspectFlagBits.VK_IMAGE_ASPECT_PLANE_2_BIT_KHR;
3806 enum VK_IMAGE_ASPECT_NONE_KHR                    = VkImageAspectFlagBits.VK_IMAGE_ASPECT_NONE_KHR;
3807 enum VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM          = VkImageAspectFlagBits.VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM;
3808 
3809 alias VkFormatFeatureFlags = VkFlags;
3810 enum VkFormatFeatureFlagBits : VkFormatFeatureFlags {
3811     VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT                                                                  = 0x00000001,
3812     VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT                                                                  = 0x00000002,
3813     VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT                                                           = 0x00000004,
3814     VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT                                                           = 0x00000008,
3815     VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT                                                           = 0x00000010,
3816     VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT                                                    = 0x00000020,
3817     VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT                                                                  = 0x00000040,
3818     VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT                                                               = 0x00000080,
3819     VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT                                                         = 0x00000100,
3820     VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT                                                       = 0x00000200,
3821     VK_FORMAT_FEATURE_BLIT_SRC_BIT                                                                       = 0x00000400,
3822     VK_FORMAT_FEATURE_BLIT_DST_BIT                                                                       = 0x00000800,
3823     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT                                                    = 0x00001000,
3824     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT                                                                   = 0x00004000,
3825     VK_FORMAT_FEATURE_TRANSFER_DST_BIT                                                                   = 0x00008000,
3826     VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT                                                        = 0x00020000,
3827     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT                                   = 0x00040000,
3828     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT                  = 0x00080000,
3829     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT                  = 0x00100000,
3830     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT        = 0x00200000,
3831     VK_FORMAT_FEATURE_DISJOINT_BIT                                                                       = 0x00400000,
3832     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT                                                         = 0x00800000,
3833     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                    = 0x00010000,
3834     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG                                                 = 0x00002000,
3835     VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR                                                        = 0x02000000,
3836     VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR                                                           = 0x04000000,
3837     VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                       = 0x20000000,
3838     VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT                                                       = 0x01000000,
3839     VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                                           = 0x40000000,
3840     VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR                                                         = 0x08000000,
3841     VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR                                                           = 0x10000000,
3842     VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                                                               = VK_FORMAT_FEATURE_TRANSFER_SRC_BIT,
3843     VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                                                               = VK_FORMAT_FEATURE_TRANSFER_DST_BIT,
3844     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT                                                = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
3845     VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR                                                    = VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT,
3846     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR                               = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
3847     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR              = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
3848     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR              = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,
3849     VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR    = VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
3850     VK_FORMAT_FEATURE_DISJOINT_BIT_KHR                                                                   = VK_FORMAT_FEATURE_DISJOINT_BIT,
3851     VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR                                                     = VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT,
3852     VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                                 = VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG,
3853     VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM                                                                 = 0x7FFFFFFF
3854 }
3855 
3856 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT                                                                 = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT;
3857 enum VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT                                                                 = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT;
3858 enum VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT                                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT;
3859 enum VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT                                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT;
3860 enum VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT                                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT;
3861 enum VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT                                                   = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT;
3862 enum VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT                                                                 = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT;
3863 enum VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT                                                              = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT;
3864 enum VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT                                                        = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT;
3865 enum VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT                                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT;
3866 enum VK_FORMAT_FEATURE_BLIT_SRC_BIT                                                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_BLIT_SRC_BIT;
3867 enum VK_FORMAT_FEATURE_BLIT_DST_BIT                                                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_BLIT_DST_BIT;
3868 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT                                                   = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT;
3869 enum VK_FORMAT_FEATURE_TRANSFER_SRC_BIT                                                                  = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_TRANSFER_SRC_BIT;
3870 enum VK_FORMAT_FEATURE_TRANSFER_DST_BIT                                                                  = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_TRANSFER_DST_BIT;
3871 enum VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT                                                       = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT;
3872 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT                                  = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT;
3873 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT                 = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT;
3874 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT                 = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT;
3875 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT       = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT;
3876 enum VK_FORMAT_FEATURE_DISJOINT_BIT                                                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_DISJOINT_BIT;
3877 enum VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT                                                        = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT;
3878 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                   = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT;
3879 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG                                                = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG;
3880 enum VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR                                                       = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR;
3881 enum VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR                                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR;
3882 enum VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR;
3883 enum VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT                                                      = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT;
3884 enum VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
3885 enum VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR                                                        = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR;
3886 enum VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR                                                          = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR;
3887 enum VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR                                                              = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR;
3888 enum VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR                                                              = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR;
3889 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT                                               = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT;
3890 enum VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR                                                   = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR;
3891 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR                              = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR;
3892 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR             = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR;
3893 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR             = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR;
3894 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR   = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR;
3895 enum VK_FORMAT_FEATURE_DISJOINT_BIT_KHR                                                                  = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_DISJOINT_BIT_KHR;
3896 enum VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR                                                    = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR;
3897 enum VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                                = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT;
3898 enum VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM                                                                = VkFormatFeatureFlagBits.VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM;
3899 
3900 alias VkImageCreateFlags = VkFlags;
3901 enum VkImageCreateFlagBits : VkImageCreateFlags {
3902     VK_IMAGE_CREATE_SPARSE_BINDING_BIT                                   = 0x00000001,
3903     VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT                                 = 0x00000002,
3904     VK_IMAGE_CREATE_SPARSE_ALIASED_BIT                                   = 0x00000004,
3905     VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                                   = 0x00000008,
3906     VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                                  = 0x00000010,
3907     VK_IMAGE_CREATE_ALIAS_BIT                                            = 0x00000400,
3908     VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT                      = 0x00000040,
3909     VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT                              = 0x00000020,
3910     VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT                      = 0x00000080,
3911     VK_IMAGE_CREATE_EXTENDED_USAGE_BIT                                   = 0x00000100,
3912     VK_IMAGE_CREATE_PROTECTED_BIT                                        = 0x00000800,
3913     VK_IMAGE_CREATE_DISJOINT_BIT                                         = 0x00000200,
3914     VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV                                = 0x00002000,
3915     VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT            = 0x00001000,
3916     VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT                                   = 0x00004000,
3917     VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT        = 0x00040000,
3918     VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT                           = 0x00020000,
3919     VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM                 = 0x00008000,
3920     VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR                  = VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT,
3921     VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR                          = VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT,
3922     VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR                  = VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT,
3923     VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR                               = VK_IMAGE_CREATE_EXTENDED_USAGE_BIT,
3924     VK_IMAGE_CREATE_DISJOINT_BIT_KHR                                     = VK_IMAGE_CREATE_DISJOINT_BIT,
3925     VK_IMAGE_CREATE_ALIAS_BIT_KHR                                        = VK_IMAGE_CREATE_ALIAS_BIT,
3926     VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM                                   = 0x7FFFFFFF
3927 }
3928 
3929 enum VK_IMAGE_CREATE_SPARSE_BINDING_BIT                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_SPARSE_BINDING_BIT;
3930 enum VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT                                = VkImageCreateFlagBits.VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT;
3931 enum VK_IMAGE_CREATE_SPARSE_ALIASED_BIT                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_SPARSE_ALIASED_BIT;
3932 enum VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT;
3933 enum VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT                                 = VkImageCreateFlagBits.VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT;
3934 enum VK_IMAGE_CREATE_ALIAS_BIT                                           = VkImageCreateFlagBits.VK_IMAGE_CREATE_ALIAS_BIT;
3935 enum VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT                     = VkImageCreateFlagBits.VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT;
3936 enum VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT                             = VkImageCreateFlagBits.VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT;
3937 enum VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT                     = VkImageCreateFlagBits.VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT;
3938 enum VK_IMAGE_CREATE_EXTENDED_USAGE_BIT                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_EXTENDED_USAGE_BIT;
3939 enum VK_IMAGE_CREATE_PROTECTED_BIT                                       = VkImageCreateFlagBits.VK_IMAGE_CREATE_PROTECTED_BIT;
3940 enum VK_IMAGE_CREATE_DISJOINT_BIT                                        = VkImageCreateFlagBits.VK_IMAGE_CREATE_DISJOINT_BIT;
3941 enum VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV                               = VkImageCreateFlagBits.VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV;
3942 enum VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT           = VkImageCreateFlagBits.VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT;
3943 enum VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT;
3944 enum VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT       = VkImageCreateFlagBits.VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT;
3945 enum VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT                          = VkImageCreateFlagBits.VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT;
3946 enum VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM                = VkImageCreateFlagBits.VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM;
3947 enum VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR                 = VkImageCreateFlagBits.VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR;
3948 enum VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR                         = VkImageCreateFlagBits.VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR;
3949 enum VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR                 = VkImageCreateFlagBits.VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR;
3950 enum VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR                              = VkImageCreateFlagBits.VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR;
3951 enum VK_IMAGE_CREATE_DISJOINT_BIT_KHR                                    = VkImageCreateFlagBits.VK_IMAGE_CREATE_DISJOINT_BIT_KHR;
3952 enum VK_IMAGE_CREATE_ALIAS_BIT_KHR                                       = VkImageCreateFlagBits.VK_IMAGE_CREATE_ALIAS_BIT_KHR;
3953 enum VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM                                  = VkImageCreateFlagBits.VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM;
3954 
3955 alias VkSampleCountFlags = VkFlags;
3956 enum VkSampleCountFlagBits : VkSampleCountFlags {
3957     VK_SAMPLE_COUNT_1_BIT                        = 0x00000001,
3958     VK_SAMPLE_COUNT_2_BIT                        = 0x00000002,
3959     VK_SAMPLE_COUNT_4_BIT                        = 0x00000004,
3960     VK_SAMPLE_COUNT_8_BIT                        = 0x00000008,
3961     VK_SAMPLE_COUNT_16_BIT                       = 0x00000010,
3962     VK_SAMPLE_COUNT_32_BIT                       = 0x00000020,
3963     VK_SAMPLE_COUNT_64_BIT                       = 0x00000040,
3964     VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
3965 }
3966 
3967 enum VK_SAMPLE_COUNT_1_BIT                       = VkSampleCountFlagBits.VK_SAMPLE_COUNT_1_BIT;
3968 enum VK_SAMPLE_COUNT_2_BIT                       = VkSampleCountFlagBits.VK_SAMPLE_COUNT_2_BIT;
3969 enum VK_SAMPLE_COUNT_4_BIT                       = VkSampleCountFlagBits.VK_SAMPLE_COUNT_4_BIT;
3970 enum VK_SAMPLE_COUNT_8_BIT                       = VkSampleCountFlagBits.VK_SAMPLE_COUNT_8_BIT;
3971 enum VK_SAMPLE_COUNT_16_BIT                      = VkSampleCountFlagBits.VK_SAMPLE_COUNT_16_BIT;
3972 enum VK_SAMPLE_COUNT_32_BIT                      = VkSampleCountFlagBits.VK_SAMPLE_COUNT_32_BIT;
3973 enum VK_SAMPLE_COUNT_64_BIT                      = VkSampleCountFlagBits.VK_SAMPLE_COUNT_64_BIT;
3974 enum VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM          = VkSampleCountFlagBits.VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM;
3975 
3976 alias VkImageUsageFlags = VkFlags;
3977 enum VkImageUsageFlagBits : VkImageUsageFlags {
3978     VK_IMAGE_USAGE_TRANSFER_SRC_BIT                              = 0x00000001,
3979     VK_IMAGE_USAGE_TRANSFER_DST_BIT                              = 0x00000002,
3980     VK_IMAGE_USAGE_SAMPLED_BIT                                   = 0x00000004,
3981     VK_IMAGE_USAGE_STORAGE_BIT                                   = 0x00000008,
3982     VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT                          = 0x00000010,
3983     VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT                  = 0x00000020,
3984     VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT                      = 0x00000040,
3985     VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT                          = 0x00000080,
3986     VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR                      = 0x00000400,
3987     VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR                      = 0x00000800,
3988     VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR                      = 0x00001000,
3989     VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT                  = 0x00000200,
3990     VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR      = 0x00000100,
3991     VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR                      = 0x00002000,
3992     VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR                      = 0x00004000,
3993     VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR                      = 0x00008000,
3994     VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI                    = 0x00040000,
3995     VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV                     = VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
3996     VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM                            = 0x7FFFFFFF
3997 }
3998 
3999 enum VK_IMAGE_USAGE_TRANSFER_SRC_BIT                             = VkImageUsageFlagBits.VK_IMAGE_USAGE_TRANSFER_SRC_BIT;
4000 enum VK_IMAGE_USAGE_TRANSFER_DST_BIT                             = VkImageUsageFlagBits.VK_IMAGE_USAGE_TRANSFER_DST_BIT;
4001 enum VK_IMAGE_USAGE_SAMPLED_BIT                                  = VkImageUsageFlagBits.VK_IMAGE_USAGE_SAMPLED_BIT;
4002 enum VK_IMAGE_USAGE_STORAGE_BIT                                  = VkImageUsageFlagBits.VK_IMAGE_USAGE_STORAGE_BIT;
4003 enum VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT                         = VkImageUsageFlagBits.VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT;
4004 enum VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT                 = VkImageUsageFlagBits.VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT;
4005 enum VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT;
4006 enum VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT                         = VkImageUsageFlagBits.VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT;
4007 enum VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR;
4008 enum VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR;
4009 enum VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR;
4010 enum VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT                 = VkImageUsageFlagBits.VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT;
4011 enum VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR     = VkImageUsageFlagBits.VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
4012 enum VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR;
4013 enum VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR;
4014 enum VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR                     = VkImageUsageFlagBits.VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR;
4015 enum VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI                   = VkImageUsageFlagBits.VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI;
4016 enum VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV                    = VkImageUsageFlagBits.VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV;
4017 enum VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM                           = VkImageUsageFlagBits.VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM;
4018 
4019 alias VkInstanceCreateFlags = VkFlags;
4020 enum VkInstanceCreateFlagBits : VkInstanceCreateFlags {
4021     VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR     = 0x00000001,
4022     VK_INSTANCE_CREATE_FLAG_BITS_MAX_ENUM                = 0x7FFFFFFF
4023 }
4024 
4025 enum VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR    = VkInstanceCreateFlagBits.VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR;
4026 enum VK_INSTANCE_CREATE_FLAG_BITS_MAX_ENUM               = VkInstanceCreateFlagBits.VK_INSTANCE_CREATE_FLAG_BITS_MAX_ENUM;
4027 
4028 alias VkMemoryHeapFlags = VkFlags;
4029 enum VkMemoryHeapFlagBits : VkMemoryHeapFlags {
4030     VK_MEMORY_HEAP_DEVICE_LOCAL_BIT              = 0x00000001,
4031     VK_MEMORY_HEAP_MULTI_INSTANCE_BIT            = 0x00000002,
4032     VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR        = VK_MEMORY_HEAP_MULTI_INSTANCE_BIT,
4033     VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM            = 0x7FFFFFFF
4034 }
4035 
4036 enum VK_MEMORY_HEAP_DEVICE_LOCAL_BIT             = VkMemoryHeapFlagBits.VK_MEMORY_HEAP_DEVICE_LOCAL_BIT;
4037 enum VK_MEMORY_HEAP_MULTI_INSTANCE_BIT           = VkMemoryHeapFlagBits.VK_MEMORY_HEAP_MULTI_INSTANCE_BIT;
4038 enum VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR       = VkMemoryHeapFlagBits.VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR;
4039 enum VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM           = VkMemoryHeapFlagBits.VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM;
4040 
4041 alias VkMemoryPropertyFlags = VkFlags;
4042 enum VkMemoryPropertyFlagBits : VkMemoryPropertyFlags {
4043     VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT          = 0x00000001,
4044     VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT          = 0x00000002,
4045     VK_MEMORY_PROPERTY_HOST_COHERENT_BIT         = 0x00000004,
4046     VK_MEMORY_PROPERTY_HOST_CACHED_BIT           = 0x00000008,
4047     VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT      = 0x00000010,
4048     VK_MEMORY_PROPERTY_PROTECTED_BIT             = 0x00000020,
4049     VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD   = 0x00000040,
4050     VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD   = 0x00000080,
4051     VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV       = 0x00000100,
4052     VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF
4053 }
4054 
4055 enum VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT         = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT;
4056 enum VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT         = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT;
4057 enum VK_MEMORY_PROPERTY_HOST_COHERENT_BIT        = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_HOST_COHERENT_BIT;
4058 enum VK_MEMORY_PROPERTY_HOST_CACHED_BIT          = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_HOST_CACHED_BIT;
4059 enum VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT     = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT;
4060 enum VK_MEMORY_PROPERTY_PROTECTED_BIT            = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_PROTECTED_BIT;
4061 enum VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD  = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD;
4062 enum VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD  = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD;
4063 enum VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV      = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV;
4064 enum VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM       = VkMemoryPropertyFlagBits.VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM;
4065 
4066 alias VkQueueFlags = VkFlags;
4067 enum VkQueueFlagBits : VkQueueFlags {
4068     VK_QUEUE_GRAPHICS_BIT                = 0x00000001,
4069     VK_QUEUE_COMPUTE_BIT                 = 0x00000002,
4070     VK_QUEUE_TRANSFER_BIT                = 0x00000004,
4071     VK_QUEUE_SPARSE_BINDING_BIT          = 0x00000008,
4072     VK_QUEUE_PROTECTED_BIT               = 0x00000010,
4073     VK_QUEUE_VIDEO_DECODE_BIT_KHR        = 0x00000020,
4074     VK_QUEUE_VIDEO_ENCODE_BIT_KHR        = 0x00000040,
4075     VK_QUEUE_FLAG_BITS_MAX_ENUM          = 0x7FFFFFFF
4076 }
4077 
4078 enum VK_QUEUE_GRAPHICS_BIT               = VkQueueFlagBits.VK_QUEUE_GRAPHICS_BIT;
4079 enum VK_QUEUE_COMPUTE_BIT                = VkQueueFlagBits.VK_QUEUE_COMPUTE_BIT;
4080 enum VK_QUEUE_TRANSFER_BIT               = VkQueueFlagBits.VK_QUEUE_TRANSFER_BIT;
4081 enum VK_QUEUE_SPARSE_BINDING_BIT         = VkQueueFlagBits.VK_QUEUE_SPARSE_BINDING_BIT;
4082 enum VK_QUEUE_PROTECTED_BIT              = VkQueueFlagBits.VK_QUEUE_PROTECTED_BIT;
4083 enum VK_QUEUE_VIDEO_DECODE_BIT_KHR       = VkQueueFlagBits.VK_QUEUE_VIDEO_DECODE_BIT_KHR;
4084 enum VK_QUEUE_VIDEO_ENCODE_BIT_KHR       = VkQueueFlagBits.VK_QUEUE_VIDEO_ENCODE_BIT_KHR;
4085 enum VK_QUEUE_FLAG_BITS_MAX_ENUM         = VkQueueFlagBits.VK_QUEUE_FLAG_BITS_MAX_ENUM;
4086 alias VkDeviceCreateFlags = VkFlags;
4087 
4088 alias VkDeviceQueueCreateFlags = VkFlags;
4089 enum VkDeviceQueueCreateFlagBits : VkDeviceQueueCreateFlags {
4090     VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT                 = 0x00000001,
4091     VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM            = 0x7FFFFFFF
4092 }
4093 
4094 enum VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT                = VkDeviceQueueCreateFlagBits.VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT;
4095 enum VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM           = VkDeviceQueueCreateFlagBits.VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM;
4096 
4097 alias VkPipelineStageFlags = VkFlags;
4098 enum VkPipelineStageFlagBits : VkPipelineStageFlags {
4099     VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT                            = 0x00000001,
4100     VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT                          = 0x00000002,
4101     VK_PIPELINE_STAGE_VERTEX_INPUT_BIT                           = 0x00000004,
4102     VK_PIPELINE_STAGE_VERTEX_SHADER_BIT                          = 0x00000008,
4103     VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT            = 0x00000010,
4104     VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT         = 0x00000020,
4105     VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT                        = 0x00000040,
4106     VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT                        = 0x00000080,
4107     VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT                   = 0x00000100,
4108     VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT                    = 0x00000200,
4109     VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT                = 0x00000400,
4110     VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT                         = 0x00000800,
4111     VK_PIPELINE_STAGE_TRANSFER_BIT                               = 0x00001000,
4112     VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT                         = 0x00002000,
4113     VK_PIPELINE_STAGE_HOST_BIT                                   = 0x00004000,
4114     VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT                           = 0x00008000,
4115     VK_PIPELINE_STAGE_ALL_COMMANDS_BIT                           = 0x00010000,
4116     VK_PIPELINE_STAGE_NONE                                       = 0,
4117     VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT                 = 0x01000000,
4118     VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT              = 0x00040000,
4119     VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR       = 0x02000000,
4120     VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR                 = 0x00200000,
4121     VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV                         = 0x00080000,
4122     VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV                         = 0x00100000,
4123     VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT           = 0x00800000,
4124     VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR   = 0x00400000,
4125     VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV                  = 0x00020000,
4126     VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV                  = VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
4127     VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV                  = VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR,
4128     VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV        = VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
4129     VK_PIPELINE_STAGE_NONE_KHR                                   = VK_PIPELINE_STAGE_NONE,
4130     VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM                         = 0x7FFFFFFF
4131 }
4132 
4133 enum VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT                           = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT;
4134 enum VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT                         = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT;
4135 enum VK_PIPELINE_STAGE_VERTEX_INPUT_BIT                          = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_VERTEX_INPUT_BIT;
4136 enum VK_PIPELINE_STAGE_VERTEX_SHADER_BIT                         = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_VERTEX_SHADER_BIT;
4137 enum VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT           = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT;
4138 enum VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT;
4139 enum VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT                       = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT;
4140 enum VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT                       = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT;
4141 enum VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT                  = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT;
4142 enum VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT                   = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT;
4143 enum VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT               = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT;
4144 enum VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT                        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT;
4145 enum VK_PIPELINE_STAGE_TRANSFER_BIT                              = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TRANSFER_BIT;
4146 enum VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT                        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT;
4147 enum VK_PIPELINE_STAGE_HOST_BIT                                  = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_HOST_BIT;
4148 enum VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT                          = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT;
4149 enum VK_PIPELINE_STAGE_ALL_COMMANDS_BIT                          = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_ALL_COMMANDS_BIT;
4150 enum VK_PIPELINE_STAGE_NONE                                      = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_NONE;
4151 enum VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT                = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT;
4152 enum VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT             = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT;
4153 enum VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR      = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR;
4154 enum VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR                = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR;
4155 enum VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV                        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV;
4156 enum VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV                        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV;
4157 enum VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT          = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT;
4158 enum VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR  = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
4159 enum VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV                 = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV;
4160 enum VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV                 = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV;
4161 enum VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV                 = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV;
4162 enum VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV       = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV;
4163 enum VK_PIPELINE_STAGE_NONE_KHR                                  = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_NONE_KHR;
4164 enum VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM                        = VkPipelineStageFlagBits.VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM;
4165 alias VkMemoryMapFlags = VkFlags;
4166 
4167 alias VkSparseMemoryBindFlags = VkFlags;
4168 enum VkSparseMemoryBindFlagBits : VkSparseMemoryBindFlags {
4169     VK_SPARSE_MEMORY_BIND_METADATA_BIT           = 0x00000001,
4170     VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
4171 }
4172 
4173 enum VK_SPARSE_MEMORY_BIND_METADATA_BIT          = VkSparseMemoryBindFlagBits.VK_SPARSE_MEMORY_BIND_METADATA_BIT;
4174 enum VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM    = VkSparseMemoryBindFlagBits.VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM;
4175 
4176 alias VkSparseImageFormatFlags = VkFlags;
4177 enum VkSparseImageFormatFlagBits : VkSparseImageFormatFlags {
4178     VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT            = 0x00000001,
4179     VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT          = 0x00000002,
4180     VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT    = 0x00000004,
4181     VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM            = 0x7FFFFFFF
4182 }
4183 
4184 enum VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT           = VkSparseImageFormatFlagBits.VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT;
4185 enum VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT         = VkSparseImageFormatFlagBits.VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT;
4186 enum VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT   = VkSparseImageFormatFlagBits.VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT;
4187 enum VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM           = VkSparseImageFormatFlagBits.VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM;
4188 
4189 alias VkFenceCreateFlags = VkFlags;
4190 enum VkFenceCreateFlagBits : VkFenceCreateFlags {
4191     VK_FENCE_CREATE_SIGNALED_BIT                 = 0x00000001,
4192     VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4193 }
4194 
4195 enum VK_FENCE_CREATE_SIGNALED_BIT                = VkFenceCreateFlagBits.VK_FENCE_CREATE_SIGNALED_BIT;
4196 enum VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM          = VkFenceCreateFlagBits.VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM;
4197 alias VkSemaphoreCreateFlags = VkFlags;
4198 
4199 alias VkEventCreateFlags = VkFlags;
4200 enum VkEventCreateFlagBits : VkEventCreateFlags {
4201     VK_EVENT_CREATE_DEVICE_ONLY_BIT              = 0x00000001,
4202     VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR          = VK_EVENT_CREATE_DEVICE_ONLY_BIT,
4203     VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4204 }
4205 
4206 enum VK_EVENT_CREATE_DEVICE_ONLY_BIT             = VkEventCreateFlagBits.VK_EVENT_CREATE_DEVICE_ONLY_BIT;
4207 enum VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR         = VkEventCreateFlagBits.VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR;
4208 enum VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM          = VkEventCreateFlagBits.VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM;
4209 
4210 alias VkQueryPipelineStatisticFlags = VkFlags;
4211 enum VkQueryPipelineStatisticFlagBits : VkQueryPipelineStatisticFlags {
4212     VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT                      = 0x00000001,
4213     VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT                    = 0x00000002,
4214     VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT                    = 0x00000004,
4215     VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT                  = 0x00000008,
4216     VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT                   = 0x00000010,
4217     VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT                         = 0x00000020,
4218     VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT                          = 0x00000040,
4219     VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT                  = 0x00000080,
4220     VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT          = 0x00000100,
4221     VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT   = 0x00000200,
4222     VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT                   = 0x00000400,
4223     VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM                               = 0x7FFFFFFF
4224 }
4225 
4226 enum VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT                     = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT;
4227 enum VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT                   = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT;
4228 enum VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT                   = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT;
4229 enum VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT                 = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT;
4230 enum VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT                  = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT;
4231 enum VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT                        = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT;
4232 enum VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT                         = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT;
4233 enum VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT                 = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT;
4234 enum VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT         = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT;
4235 enum VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT  = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT;
4236 enum VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT                  = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT;
4237 enum VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM                              = VkQueryPipelineStatisticFlagBits.VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM;
4238 alias VkQueryPoolCreateFlags = VkFlags;
4239 
4240 alias VkQueryResultFlags = VkFlags;
4241 enum VkQueryResultFlagBits : VkQueryResultFlags {
4242     VK_QUERY_RESULT_64_BIT                       = 0x00000001,
4243     VK_QUERY_RESULT_WAIT_BIT                     = 0x00000002,
4244     VK_QUERY_RESULT_WITH_AVAILABILITY_BIT        = 0x00000004,
4245     VK_QUERY_RESULT_PARTIAL_BIT                  = 0x00000008,
4246     VK_QUERY_RESULT_WITH_STATUS_BIT_KHR          = 0x00000010,
4247     VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4248 }
4249 
4250 enum VK_QUERY_RESULT_64_BIT                      = VkQueryResultFlagBits.VK_QUERY_RESULT_64_BIT;
4251 enum VK_QUERY_RESULT_WAIT_BIT                    = VkQueryResultFlagBits.VK_QUERY_RESULT_WAIT_BIT;
4252 enum VK_QUERY_RESULT_WITH_AVAILABILITY_BIT       = VkQueryResultFlagBits.VK_QUERY_RESULT_WITH_AVAILABILITY_BIT;
4253 enum VK_QUERY_RESULT_PARTIAL_BIT                 = VkQueryResultFlagBits.VK_QUERY_RESULT_PARTIAL_BIT;
4254 enum VK_QUERY_RESULT_WITH_STATUS_BIT_KHR         = VkQueryResultFlagBits.VK_QUERY_RESULT_WITH_STATUS_BIT_KHR;
4255 enum VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM          = VkQueryResultFlagBits.VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM;
4256 
4257 alias VkBufferCreateFlags = VkFlags;
4258 enum VkBufferCreateFlagBits : VkBufferCreateFlags {
4259     VK_BUFFER_CREATE_SPARSE_BINDING_BIT                          = 0x00000001,
4260     VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT                        = 0x00000002,
4261     VK_BUFFER_CREATE_SPARSE_ALIASED_BIT                          = 0x00000004,
4262     VK_BUFFER_CREATE_PROTECTED_BIT                               = 0x00000008,
4263     VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT           = 0x00000010,
4264     VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT       = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
4265     VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR       = VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
4266     VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM                          = 0x7FFFFFFF
4267 }
4268 
4269 enum VK_BUFFER_CREATE_SPARSE_BINDING_BIT                         = VkBufferCreateFlagBits.VK_BUFFER_CREATE_SPARSE_BINDING_BIT;
4270 enum VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT                       = VkBufferCreateFlagBits.VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT;
4271 enum VK_BUFFER_CREATE_SPARSE_ALIASED_BIT                         = VkBufferCreateFlagBits.VK_BUFFER_CREATE_SPARSE_ALIASED_BIT;
4272 enum VK_BUFFER_CREATE_PROTECTED_BIT                              = VkBufferCreateFlagBits.VK_BUFFER_CREATE_PROTECTED_BIT;
4273 enum VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT          = VkBufferCreateFlagBits.VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT;
4274 enum VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT      = VkBufferCreateFlagBits.VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT;
4275 enum VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR      = VkBufferCreateFlagBits.VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR;
4276 enum VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM                         = VkBufferCreateFlagBits.VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM;
4277 
4278 alias VkBufferUsageFlags = VkFlags;
4279 enum VkBufferUsageFlagBits : VkBufferUsageFlags {
4280     VK_BUFFER_USAGE_TRANSFER_SRC_BIT                                             = 0x00000001,
4281     VK_BUFFER_USAGE_TRANSFER_DST_BIT                                             = 0x00000002,
4282     VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT                                     = 0x00000004,
4283     VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT                                     = 0x00000008,
4284     VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT                                           = 0x00000010,
4285     VK_BUFFER_USAGE_STORAGE_BUFFER_BIT                                           = 0x00000020,
4286     VK_BUFFER_USAGE_INDEX_BUFFER_BIT                                             = 0x00000040,
4287     VK_BUFFER_USAGE_VERTEX_BUFFER_BIT                                            = 0x00000080,
4288     VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT                                          = 0x00000100,
4289     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT                                    = 0x00020000,
4290     VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR                                     = 0x00002000,
4291     VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR                                     = 0x00004000,
4292     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT                            = 0x00000800,
4293     VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT                    = 0x00001000,
4294     VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT                                = 0x00000200,
4295     VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR         = 0x00080000,
4296     VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR                       = 0x00100000,
4297     VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR                                 = 0x00000400,
4298     VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR                                     = 0x00008000,
4299     VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR                                     = 0x00010000,
4300     VK_BUFFER_USAGE_RAY_TRACING_BIT_NV                                           = VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR,
4301     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT                                = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
4302     VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR                                = VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT,
4303     VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM                                           = 0x7FFFFFFF
4304 }
4305 
4306 enum VK_BUFFER_USAGE_TRANSFER_SRC_BIT                                            = VkBufferUsageFlagBits.VK_BUFFER_USAGE_TRANSFER_SRC_BIT;
4307 enum VK_BUFFER_USAGE_TRANSFER_DST_BIT                                            = VkBufferUsageFlagBits.VK_BUFFER_USAGE_TRANSFER_DST_BIT;
4308 enum VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT;
4309 enum VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT;
4310 enum VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT                                          = VkBufferUsageFlagBits.VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT;
4311 enum VK_BUFFER_USAGE_STORAGE_BUFFER_BIT                                          = VkBufferUsageFlagBits.VK_BUFFER_USAGE_STORAGE_BUFFER_BIT;
4312 enum VK_BUFFER_USAGE_INDEX_BUFFER_BIT                                            = VkBufferUsageFlagBits.VK_BUFFER_USAGE_INDEX_BUFFER_BIT;
4313 enum VK_BUFFER_USAGE_VERTEX_BUFFER_BIT                                           = VkBufferUsageFlagBits.VK_BUFFER_USAGE_VERTEX_BUFFER_BIT;
4314 enum VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT                                         = VkBufferUsageFlagBits.VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT;
4315 enum VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT                                   = VkBufferUsageFlagBits.VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT;
4316 enum VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR;
4317 enum VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR;
4318 enum VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT                           = VkBufferUsageFlagBits.VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT;
4319 enum VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT                   = VkBufferUsageFlagBits.VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT;
4320 enum VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT                               = VkBufferUsageFlagBits.VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT;
4321 enum VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR        = VkBufferUsageFlagBits.VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR;
4322 enum VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR                      = VkBufferUsageFlagBits.VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR;
4323 enum VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR                                = VkBufferUsageFlagBits.VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR;
4324 enum VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR;
4325 enum VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR                                    = VkBufferUsageFlagBits.VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR;
4326 enum VK_BUFFER_USAGE_RAY_TRACING_BIT_NV                                          = VkBufferUsageFlagBits.VK_BUFFER_USAGE_RAY_TRACING_BIT_NV;
4327 enum VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT                               = VkBufferUsageFlagBits.VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT;
4328 enum VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR                               = VkBufferUsageFlagBits.VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR;
4329 enum VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM                                          = VkBufferUsageFlagBits.VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM;
4330 alias VkBufferViewCreateFlags = VkFlags;
4331 
4332 alias VkImageViewCreateFlags = VkFlags;
4333 enum VkImageViewCreateFlagBits : VkImageViewCreateFlags {
4334     VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT    = 0x00000001,
4335     VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT   = 0x00000002,
4336     VK_IMAGE_VIEW_CREATE_FLAG_BITS_MAX_ENUM                      = 0x7FFFFFFF
4337 }
4338 
4339 enum VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT   = VkImageViewCreateFlagBits.VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT;
4340 enum VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT  = VkImageViewCreateFlagBits.VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT;
4341 enum VK_IMAGE_VIEW_CREATE_FLAG_BITS_MAX_ENUM                     = VkImageViewCreateFlagBits.VK_IMAGE_VIEW_CREATE_FLAG_BITS_MAX_ENUM;
4342 alias VkShaderModuleCreateFlags = VkFlags;
4343 
4344 alias VkPipelineCacheCreateFlags = VkFlags;
4345 enum VkPipelineCacheCreateFlagBits : VkPipelineCacheCreateFlags {
4346     VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT         = 0x00000001,
4347     VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT     = VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT,
4348     VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM                  = 0x7FFFFFFF
4349 }
4350 
4351 enum VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT        = VkPipelineCacheCreateFlagBits.VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT;
4352 enum VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT    = VkPipelineCacheCreateFlagBits.VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT;
4353 enum VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM                 = VkPipelineCacheCreateFlagBits.VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM;
4354 
4355 alias VkColorComponentFlags = VkFlags;
4356 enum VkColorComponentFlagBits : VkColorComponentFlags {
4357     VK_COLOR_COMPONENT_R_BIT                     = 0x00000001,
4358     VK_COLOR_COMPONENT_G_BIT                     = 0x00000002,
4359     VK_COLOR_COMPONENT_B_BIT                     = 0x00000004,
4360     VK_COLOR_COMPONENT_A_BIT                     = 0x00000008,
4361     VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF
4362 }
4363 
4364 enum VK_COLOR_COMPONENT_R_BIT                    = VkColorComponentFlagBits.VK_COLOR_COMPONENT_R_BIT;
4365 enum VK_COLOR_COMPONENT_G_BIT                    = VkColorComponentFlagBits.VK_COLOR_COMPONENT_G_BIT;
4366 enum VK_COLOR_COMPONENT_B_BIT                    = VkColorComponentFlagBits.VK_COLOR_COMPONENT_B_BIT;
4367 enum VK_COLOR_COMPONENT_A_BIT                    = VkColorComponentFlagBits.VK_COLOR_COMPONENT_A_BIT;
4368 enum VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM       = VkColorComponentFlagBits.VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM;
4369 
4370 alias VkPipelineCreateFlags = VkFlags;
4371 enum VkPipelineCreateFlagBits : VkPipelineCreateFlags {
4372     VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT                                          = 0x00000001,
4373     VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT                                             = 0x00000002,
4374     VK_PIPELINE_CREATE_DERIVATIVE_BIT                                                    = 0x00000004,
4375     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT                                  = 0x00000008,
4376     VK_PIPELINE_CREATE_DISPATCH_BASE_BIT                                                 = 0x00000010,
4377     VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT                             = 0x00000100,
4378     VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT                                       = 0x00000200,
4379     VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                = 0x00200000,
4380     VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT                 = 0x00400000,
4381     VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR                       = 0x00004000,
4382     VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR                   = 0x00008000,
4383     VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR                          = 0x00010000,
4384     VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR                  = 0x00020000,
4385     VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR                                = 0x00001000,
4386     VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR                                    = 0x00002000,
4387     VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR            = 0x00080000,
4388     VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV                                              = 0x00000020,
4389     VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR                                        = 0x00000040,
4390     VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR                          = 0x00000080,
4391     VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV                                          = 0x00040000,
4392     VK_PIPELINE_CREATE_LIBRARY_BIT_KHR                                                   = 0x00000800,
4393     VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT                        = 0x00800000,
4394     VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT                                    = 0x00000400,
4395     VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV                                   = 0x00100000,
4396     VK_PIPELINE_CREATE_DISPATCH_BASE                                                     = VK_PIPELINE_CREATE_DISPATCH_BASE_BIT,
4397     VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR      = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
4398     VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT       = VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT,
4399     VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR                              = VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT,
4400     VK_PIPELINE_CREATE_DISPATCH_BASE_KHR                                                 = VK_PIPELINE_CREATE_DISPATCH_BASE,
4401     VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT                         = VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT,
4402     VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT                                   = VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT,
4403     VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM                                                = 0x7FFFFFFF
4404 }
4405 
4406 enum VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT                                         = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT;
4407 enum VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT                                            = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT;
4408 enum VK_PIPELINE_CREATE_DERIVATIVE_BIT                                                   = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DERIVATIVE_BIT;
4409 enum VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT                                 = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT;
4410 enum VK_PIPELINE_CREATE_DISPATCH_BASE_BIT                                                = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DISPATCH_BASE_BIT;
4411 enum VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT                            = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT;
4412 enum VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT                                      = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT;
4413 enum VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR               = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
4414 enum VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT                = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT;
4415 enum VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR                      = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR;
4416 enum VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR                  = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR;
4417 enum VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR                         = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR;
4418 enum VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR                 = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR;
4419 enum VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR                               = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR;
4420 enum VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR                                   = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR;
4421 enum VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR           = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR;
4422 enum VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV                                             = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV;
4423 enum VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR                                       = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR;
4424 enum VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR                         = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR;
4425 enum VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV                                         = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV;
4426 enum VK_PIPELINE_CREATE_LIBRARY_BIT_KHR                                                  = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_LIBRARY_BIT_KHR;
4427 enum VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT                       = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT;
4428 enum VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT                                   = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT;
4429 enum VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV                                  = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV;
4430 enum VK_PIPELINE_CREATE_DISPATCH_BASE                                                    = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DISPATCH_BASE;
4431 enum VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR     = VkPipelineCreateFlagBits.VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
4432 enum VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT      = VkPipelineCreateFlagBits.VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT;
4433 enum VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR                             = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR;
4434 enum VK_PIPELINE_CREATE_DISPATCH_BASE_KHR                                                = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_DISPATCH_BASE_KHR;
4435 enum VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT                        = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT;
4436 enum VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT                                  = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT;
4437 enum VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM                                               = VkPipelineCreateFlagBits.VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM;
4438 
4439 alias VkPipelineShaderStageCreateFlags = VkFlags;
4440 enum VkPipelineShaderStageCreateFlagBits : VkPipelineShaderStageCreateFlags {
4441     VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT      = 0x00000001,
4442     VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT           = 0x00000002,
4443     VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT  = VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT,
4444     VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT       = VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT,
4445     VK_PIPELINE_SHADER_STAGE_CREATE_FLAG_BITS_MAX_ENUM                   = 0x7FFFFFFF
4446 }
4447 
4448 enum VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT     = VkPipelineShaderStageCreateFlagBits.VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT;
4449 enum VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT          = VkPipelineShaderStageCreateFlagBits.VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT;
4450 enum VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT = VkPipelineShaderStageCreateFlagBits.VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT;
4451 enum VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT      = VkPipelineShaderStageCreateFlagBits.VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT;
4452 enum VK_PIPELINE_SHADER_STAGE_CREATE_FLAG_BITS_MAX_ENUM                  = VkPipelineShaderStageCreateFlagBits.VK_PIPELINE_SHADER_STAGE_CREATE_FLAG_BITS_MAX_ENUM;
4453 
4454 alias VkCullModeFlags = VkFlags;
4455 enum VkCullModeFlagBits : VkCullModeFlags {
4456     VK_CULL_MODE_NONE                    = 0,
4457     VK_CULL_MODE_FRONT_BIT               = 0x00000001,
4458     VK_CULL_MODE_BACK_BIT                = 0x00000002,
4459     VK_CULL_MODE_FRONT_AND_BACK          = 0x00000003,
4460     VK_CULL_MODE_FLAG_BITS_MAX_ENUM      = 0x7FFFFFFF
4461 }
4462 
4463 enum VK_CULL_MODE_NONE                   = VkCullModeFlagBits.VK_CULL_MODE_NONE;
4464 enum VK_CULL_MODE_FRONT_BIT              = VkCullModeFlagBits.VK_CULL_MODE_FRONT_BIT;
4465 enum VK_CULL_MODE_BACK_BIT               = VkCullModeFlagBits.VK_CULL_MODE_BACK_BIT;
4466 enum VK_CULL_MODE_FRONT_AND_BACK         = VkCullModeFlagBits.VK_CULL_MODE_FRONT_AND_BACK;
4467 enum VK_CULL_MODE_FLAG_BITS_MAX_ENUM     = VkCullModeFlagBits.VK_CULL_MODE_FLAG_BITS_MAX_ENUM;
4468 alias VkPipelineVertexInputStateCreateFlags = VkFlags;
4469 alias VkPipelineInputAssemblyStateCreateFlags = VkFlags;
4470 alias VkPipelineTessellationStateCreateFlags = VkFlags;
4471 alias VkPipelineViewportStateCreateFlags = VkFlags;
4472 alias VkPipelineRasterizationStateCreateFlags = VkFlags;
4473 alias VkPipelineMultisampleStateCreateFlags = VkFlags;
4474 
4475 alias VkPipelineDepthStencilStateCreateFlags = VkFlags;
4476 enum VkPipelineDepthStencilStateCreateFlagBits : VkPipelineDepthStencilStateCreateFlags {
4477     VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM           = 0x00000001,
4478     VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM         = 0x00000002,
4479     VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_FLAG_BITS_MAX_ENUM                                            = 0x7FFFFFFF
4480 }
4481 
4482 enum VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM          = VkPipelineDepthStencilStateCreateFlagBits.VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM;
4483 enum VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM        = VkPipelineDepthStencilStateCreateFlagBits.VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM;
4484 enum VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_FLAG_BITS_MAX_ENUM                                           = VkPipelineDepthStencilStateCreateFlagBits.VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_FLAG_BITS_MAX_ENUM;
4485 
4486 alias VkPipelineColorBlendStateCreateFlags = VkFlags;
4487 enum VkPipelineColorBlendStateCreateFlagBits : VkPipelineColorBlendStateCreateFlags {
4488     VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM   = 0x00000001,
4489     VK_PIPELINE_COLOR_BLEND_STATE_CREATE_FLAG_BITS_MAX_ENUM                              = 0x7FFFFFFF
4490 }
4491 
4492 enum VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM  = VkPipelineColorBlendStateCreateFlagBits.VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM;
4493 enum VK_PIPELINE_COLOR_BLEND_STATE_CREATE_FLAG_BITS_MAX_ENUM                             = VkPipelineColorBlendStateCreateFlagBits.VK_PIPELINE_COLOR_BLEND_STATE_CREATE_FLAG_BITS_MAX_ENUM;
4494 alias VkPipelineDynamicStateCreateFlags = VkFlags;
4495 
4496 alias VkPipelineLayoutCreateFlags = VkFlags;
4497 enum VkPipelineLayoutCreateFlagBits : VkPipelineLayoutCreateFlags {
4498     VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT   = 0x00000002,
4499     VK_PIPELINE_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
4500 }
4501 
4502 enum VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT  = VkPipelineLayoutCreateFlagBits.VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT;
4503 enum VK_PIPELINE_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM        = VkPipelineLayoutCreateFlagBits.VK_PIPELINE_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM;
4504 
4505 alias VkShaderStageFlags = VkFlags;
4506 enum VkShaderStageFlagBits : VkShaderStageFlags {
4507     VK_SHADER_STAGE_VERTEX_BIT                   = 0x00000001,
4508     VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT     = 0x00000002,
4509     VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT  = 0x00000004,
4510     VK_SHADER_STAGE_GEOMETRY_BIT                 = 0x00000008,
4511     VK_SHADER_STAGE_FRAGMENT_BIT                 = 0x00000010,
4512     VK_SHADER_STAGE_COMPUTE_BIT                  = 0x00000020,
4513     VK_SHADER_STAGE_ALL_GRAPHICS                 = 0x0000001F,
4514     VK_SHADER_STAGE_ALL                          = 0x7FFFFFFF,
4515     VK_SHADER_STAGE_RAYGEN_BIT_KHR               = 0x00000100,
4516     VK_SHADER_STAGE_ANY_HIT_BIT_KHR              = 0x00000200,
4517     VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR          = 0x00000400,
4518     VK_SHADER_STAGE_MISS_BIT_KHR                 = 0x00000800,
4519     VK_SHADER_STAGE_INTERSECTION_BIT_KHR         = 0x00001000,
4520     VK_SHADER_STAGE_CALLABLE_BIT_KHR             = 0x00002000,
4521     VK_SHADER_STAGE_TASK_BIT_NV                  = 0x00000040,
4522     VK_SHADER_STAGE_MESH_BIT_NV                  = 0x00000080,
4523     VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI   = 0x00004000,
4524     VK_SHADER_STAGE_RAYGEN_BIT_NV                = VK_SHADER_STAGE_RAYGEN_BIT_KHR,
4525     VK_SHADER_STAGE_ANY_HIT_BIT_NV               = VK_SHADER_STAGE_ANY_HIT_BIT_KHR,
4526     VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV           = VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR,
4527     VK_SHADER_STAGE_MISS_BIT_NV                  = VK_SHADER_STAGE_MISS_BIT_KHR,
4528     VK_SHADER_STAGE_INTERSECTION_BIT_NV          = VK_SHADER_STAGE_INTERSECTION_BIT_KHR,
4529     VK_SHADER_STAGE_CALLABLE_BIT_NV              = VK_SHADER_STAGE_CALLABLE_BIT_KHR,
4530     VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4531 }
4532 
4533 enum VK_SHADER_STAGE_VERTEX_BIT                  = VkShaderStageFlagBits.VK_SHADER_STAGE_VERTEX_BIT;
4534 enum VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT    = VkShaderStageFlagBits.VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT;
4535 enum VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT = VkShaderStageFlagBits.VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT;
4536 enum VK_SHADER_STAGE_GEOMETRY_BIT                = VkShaderStageFlagBits.VK_SHADER_STAGE_GEOMETRY_BIT;
4537 enum VK_SHADER_STAGE_FRAGMENT_BIT                = VkShaderStageFlagBits.VK_SHADER_STAGE_FRAGMENT_BIT;
4538 enum VK_SHADER_STAGE_COMPUTE_BIT                 = VkShaderStageFlagBits.VK_SHADER_STAGE_COMPUTE_BIT;
4539 enum VK_SHADER_STAGE_ALL_GRAPHICS                = VkShaderStageFlagBits.VK_SHADER_STAGE_ALL_GRAPHICS;
4540 enum VK_SHADER_STAGE_ALL                         = VkShaderStageFlagBits.VK_SHADER_STAGE_ALL;
4541 enum VK_SHADER_STAGE_RAYGEN_BIT_KHR              = VkShaderStageFlagBits.VK_SHADER_STAGE_RAYGEN_BIT_KHR;
4542 enum VK_SHADER_STAGE_ANY_HIT_BIT_KHR             = VkShaderStageFlagBits.VK_SHADER_STAGE_ANY_HIT_BIT_KHR;
4543 enum VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR         = VkShaderStageFlagBits.VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR;
4544 enum VK_SHADER_STAGE_MISS_BIT_KHR                = VkShaderStageFlagBits.VK_SHADER_STAGE_MISS_BIT_KHR;
4545 enum VK_SHADER_STAGE_INTERSECTION_BIT_KHR        = VkShaderStageFlagBits.VK_SHADER_STAGE_INTERSECTION_BIT_KHR;
4546 enum VK_SHADER_STAGE_CALLABLE_BIT_KHR            = VkShaderStageFlagBits.VK_SHADER_STAGE_CALLABLE_BIT_KHR;
4547 enum VK_SHADER_STAGE_TASK_BIT_NV                 = VkShaderStageFlagBits.VK_SHADER_STAGE_TASK_BIT_NV;
4548 enum VK_SHADER_STAGE_MESH_BIT_NV                 = VkShaderStageFlagBits.VK_SHADER_STAGE_MESH_BIT_NV;
4549 enum VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI  = VkShaderStageFlagBits.VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI;
4550 enum VK_SHADER_STAGE_RAYGEN_BIT_NV               = VkShaderStageFlagBits.VK_SHADER_STAGE_RAYGEN_BIT_NV;
4551 enum VK_SHADER_STAGE_ANY_HIT_BIT_NV              = VkShaderStageFlagBits.VK_SHADER_STAGE_ANY_HIT_BIT_NV;
4552 enum VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV          = VkShaderStageFlagBits.VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV;
4553 enum VK_SHADER_STAGE_MISS_BIT_NV                 = VkShaderStageFlagBits.VK_SHADER_STAGE_MISS_BIT_NV;
4554 enum VK_SHADER_STAGE_INTERSECTION_BIT_NV         = VkShaderStageFlagBits.VK_SHADER_STAGE_INTERSECTION_BIT_NV;
4555 enum VK_SHADER_STAGE_CALLABLE_BIT_NV             = VkShaderStageFlagBits.VK_SHADER_STAGE_CALLABLE_BIT_NV;
4556 enum VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM          = VkShaderStageFlagBits.VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM;
4557 
4558 alias VkSamplerCreateFlags = VkFlags;
4559 enum VkSamplerCreateFlagBits : VkSamplerCreateFlags {
4560     VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT                         = 0x00000001,
4561     VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT   = 0x00000002,
4562     VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT              = 0x00000004,
4563     VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM                         = 0x7FFFFFFF
4564 }
4565 
4566 enum VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT                        = VkSamplerCreateFlagBits.VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT;
4567 enum VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT  = VkSamplerCreateFlagBits.VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT;
4568 enum VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT             = VkSamplerCreateFlagBits.VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT;
4569 enum VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM                        = VkSamplerCreateFlagBits.VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM;
4570 
4571 alias VkDescriptorPoolCreateFlags = VkFlags;
4572 enum VkDescriptorPoolCreateFlagBits : VkDescriptorPoolCreateFlags {
4573     VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT    = 0x00000001,
4574     VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT      = 0x00000002,
4575     VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE        = 0x00000004,
4576     VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT  = VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT,
4577     VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
4578 }
4579 
4580 enum VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT   = VkDescriptorPoolCreateFlagBits.VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT;
4581 enum VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT     = VkDescriptorPoolCreateFlagBits.VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT;
4582 enum VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE       = VkDescriptorPoolCreateFlagBits.VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE;
4583 enum VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT = VkDescriptorPoolCreateFlagBits.VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT;
4584 enum VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM        = VkDescriptorPoolCreateFlagBits.VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM;
4585 alias VkDescriptorPoolResetFlags = VkFlags;
4586 
4587 alias VkDescriptorSetLayoutCreateFlags = VkFlags;
4588 enum VkDescriptorSetLayoutCreateFlagBits : VkDescriptorSetLayoutCreateFlags {
4589     VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT           = 0x00000002,
4590     VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR              = 0x00000001,
4591     VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE             = 0x00000004,
4592     VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT       = VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT,
4593     VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM                   = 0x7FFFFFFF
4594 }
4595 
4596 enum VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT          = VkDescriptorSetLayoutCreateFlagBits.VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT;
4597 enum VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR             = VkDescriptorSetLayoutCreateFlagBits.VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR;
4598 enum VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE            = VkDescriptorSetLayoutCreateFlagBits.VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE;
4599 enum VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT      = VkDescriptorSetLayoutCreateFlagBits.VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT;
4600 enum VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM                  = VkDescriptorSetLayoutCreateFlagBits.VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM;
4601 
4602 alias VkAttachmentDescriptionFlags = VkFlags;
4603 enum VkAttachmentDescriptionFlagBits : VkAttachmentDescriptionFlags {
4604     VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT              = 0x00000001,
4605     VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
4606 }
4607 
4608 enum VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT             = VkAttachmentDescriptionFlagBits.VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT;
4609 enum VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM        = VkAttachmentDescriptionFlagBits.VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM;
4610 
4611 alias VkDependencyFlags = VkFlags;
4612 enum VkDependencyFlagBits : VkDependencyFlags {
4613     VK_DEPENDENCY_BY_REGION_BIT          = 0x00000001,
4614     VK_DEPENDENCY_DEVICE_GROUP_BIT       = 0x00000004,
4615     VK_DEPENDENCY_VIEW_LOCAL_BIT         = 0x00000002,
4616     VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR     = VK_DEPENDENCY_VIEW_LOCAL_BIT,
4617     VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR   = VK_DEPENDENCY_DEVICE_GROUP_BIT,
4618     VK_DEPENDENCY_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
4619 }
4620 
4621 enum VK_DEPENDENCY_BY_REGION_BIT         = VkDependencyFlagBits.VK_DEPENDENCY_BY_REGION_BIT;
4622 enum VK_DEPENDENCY_DEVICE_GROUP_BIT      = VkDependencyFlagBits.VK_DEPENDENCY_DEVICE_GROUP_BIT;
4623 enum VK_DEPENDENCY_VIEW_LOCAL_BIT        = VkDependencyFlagBits.VK_DEPENDENCY_VIEW_LOCAL_BIT;
4624 enum VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR    = VkDependencyFlagBits.VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR;
4625 enum VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR  = VkDependencyFlagBits.VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR;
4626 enum VK_DEPENDENCY_FLAG_BITS_MAX_ENUM    = VkDependencyFlagBits.VK_DEPENDENCY_FLAG_BITS_MAX_ENUM;
4627 
4628 alias VkFramebufferCreateFlags = VkFlags;
4629 enum VkFramebufferCreateFlagBits : VkFramebufferCreateFlags {
4630     VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT          = 0x00000001,
4631     VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR      = VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT,
4632     VK_FRAMEBUFFER_CREATE_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
4633 }
4634 
4635 enum VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT         = VkFramebufferCreateFlagBits.VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT;
4636 enum VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR     = VkFramebufferCreateFlagBits.VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR;
4637 enum VK_FRAMEBUFFER_CREATE_FLAG_BITS_MAX_ENUM    = VkFramebufferCreateFlagBits.VK_FRAMEBUFFER_CREATE_FLAG_BITS_MAX_ENUM;
4638 
4639 alias VkRenderPassCreateFlags = VkFlags;
4640 enum VkRenderPassCreateFlagBits : VkRenderPassCreateFlags {
4641     VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM     = 0x00000002,
4642     VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
4643 }
4644 
4645 enum VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM    = VkRenderPassCreateFlagBits.VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM;
4646 enum VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM    = VkRenderPassCreateFlagBits.VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM;
4647 
4648 alias VkSubpassDescriptionFlags = VkFlags;
4649 enum VkSubpassDescriptionFlagBits : VkSubpassDescriptionFlags {
4650     VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX                                   = 0x00000001,
4651     VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX                              = 0x00000002,
4652     VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM                                      = 0x00000004,
4653     VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM                                       = 0x00000008,
4654     VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM           = 0x00000010,
4655     VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM           = 0x00000020,
4656     VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM         = 0x00000040,
4657     VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM                                            = 0x7FFFFFFF
4658 }
4659 
4660 enum VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX                                  = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX;
4661 enum VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX                             = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX;
4662 enum VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM                                     = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM;
4663 enum VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM                                      = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM;
4664 enum VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM          = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM;
4665 enum VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM          = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM;
4666 enum VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM        = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM;
4667 enum VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM                                           = VkSubpassDescriptionFlagBits.VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM;
4668 
4669 alias VkCommandPoolCreateFlags = VkFlags;
4670 enum VkCommandPoolCreateFlagBits : VkCommandPoolCreateFlags {
4671     VK_COMMAND_POOL_CREATE_TRANSIENT_BIT                 = 0x00000001,
4672     VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT      = 0x00000002,
4673     VK_COMMAND_POOL_CREATE_PROTECTED_BIT                 = 0x00000004,
4674     VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM            = 0x7FFFFFFF
4675 }
4676 
4677 enum VK_COMMAND_POOL_CREATE_TRANSIENT_BIT                = VkCommandPoolCreateFlagBits.VK_COMMAND_POOL_CREATE_TRANSIENT_BIT;
4678 enum VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT     = VkCommandPoolCreateFlagBits.VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT;
4679 enum VK_COMMAND_POOL_CREATE_PROTECTED_BIT                = VkCommandPoolCreateFlagBits.VK_COMMAND_POOL_CREATE_PROTECTED_BIT;
4680 enum VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM           = VkCommandPoolCreateFlagBits.VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM;
4681 
4682 alias VkCommandPoolResetFlags = VkFlags;
4683 enum VkCommandPoolResetFlagBits : VkCommandPoolResetFlags {
4684     VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT  = 0x00000001,
4685     VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
4686 }
4687 
4688 enum VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT = VkCommandPoolResetFlagBits.VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT;
4689 enum VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM    = VkCommandPoolResetFlagBits.VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM;
4690 
4691 alias VkCommandBufferUsageFlags = VkFlags;
4692 enum VkCommandBufferUsageFlagBits : VkCommandBufferUsageFlags {
4693     VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT          = 0x00000001,
4694     VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT     = 0x00000002,
4695     VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT         = 0x00000004,
4696     VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4697 }
4698 
4699 enum VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT         = VkCommandBufferUsageFlagBits.VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT;
4700 enum VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT    = VkCommandBufferUsageFlagBits.VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT;
4701 enum VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT        = VkCommandBufferUsageFlagBits.VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT;
4702 enum VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM          = VkCommandBufferUsageFlagBits.VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM;
4703 
4704 alias VkQueryControlFlags = VkFlags;
4705 enum VkQueryControlFlagBits : VkQueryControlFlags {
4706     VK_QUERY_CONTROL_PRECISE_BIT                 = 0x00000001,
4707     VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM          = 0x7FFFFFFF
4708 }
4709 
4710 enum VK_QUERY_CONTROL_PRECISE_BIT                = VkQueryControlFlagBits.VK_QUERY_CONTROL_PRECISE_BIT;
4711 enum VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM         = VkQueryControlFlagBits.VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM;
4712 
4713 alias VkCommandBufferResetFlags = VkFlags;
4714 enum VkCommandBufferResetFlagBits : VkCommandBufferResetFlags {
4715     VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT        = 0x00000001,
4716     VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4717 }
4718 
4719 enum VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT       = VkCommandBufferResetFlagBits.VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT;
4720 enum VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM          = VkCommandBufferResetFlagBits.VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM;
4721 
4722 alias VkStencilFaceFlags = VkFlags;
4723 enum VkStencilFaceFlagBits : VkStencilFaceFlags {
4724     VK_STENCIL_FACE_FRONT_BIT                    = 0x00000001,
4725     VK_STENCIL_FACE_BACK_BIT                     = 0x00000002,
4726     VK_STENCIL_FACE_FRONT_AND_BACK               = 0x00000003,
4727     VK_STENCIL_FRONT_AND_BACK                    = VK_STENCIL_FACE_FRONT_AND_BACK,
4728     VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
4729 }
4730 
4731 enum VK_STENCIL_FACE_FRONT_BIT                   = VkStencilFaceFlagBits.VK_STENCIL_FACE_FRONT_BIT;
4732 enum VK_STENCIL_FACE_BACK_BIT                    = VkStencilFaceFlagBits.VK_STENCIL_FACE_BACK_BIT;
4733 enum VK_STENCIL_FACE_FRONT_AND_BACK              = VkStencilFaceFlagBits.VK_STENCIL_FACE_FRONT_AND_BACK;
4734 enum VK_STENCIL_FRONT_AND_BACK                   = VkStencilFaceFlagBits.VK_STENCIL_FRONT_AND_BACK;
4735 enum VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM          = VkStencilFaceFlagBits.VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM;
4736 
4737 alias PFN_vkAllocationFunction = void* function(
4738     void*                       pUserData,
4739     size_t                      size,
4740     size_t                      alignment,
4741     VkSystemAllocationScope     allocationScope
4742 );
4743 
4744 alias PFN_vkFreeFunction = void function(
4745     void*                       pUserData,
4746     void*                       pMemory
4747 );
4748 
4749 alias PFN_vkInternalAllocationNotification = void function(
4750     void*                       pUserData,
4751     size_t                      size,
4752     VkInternalAllocationType    allocationType,
4753     VkSystemAllocationScope     allocationScope
4754 );
4755 
4756 alias PFN_vkInternalFreeNotification = void function(
4757     void*                       pUserData,
4758     size_t                      size,
4759     VkInternalAllocationType    allocationType,
4760     VkSystemAllocationScope     allocationScope
4761 );
4762 
4763 alias PFN_vkReallocationFunction = void* function(
4764     void*                       pUserData,
4765     void*                       pOriginal,
4766     size_t                      size,
4767     size_t                      alignment,
4768     VkSystemAllocationScope     allocationScope
4769 );
4770 
4771 alias PFN_vkVoidFunction = void function();
4772 
4773 struct VkExtent2D {
4774     uint32_t  width;
4775     uint32_t  height;
4776 }
4777 
4778 struct VkExtent3D {
4779     uint32_t  width;
4780     uint32_t  height;
4781     uint32_t  depth;
4782 }
4783 
4784 struct VkOffset2D {
4785     int32_t  x;
4786     int32_t  y;
4787 }
4788 
4789 struct VkOffset3D {
4790     int32_t  x;
4791     int32_t  y;
4792     int32_t  z;
4793 }
4794 
4795 struct VkRect2D {
4796     VkOffset2D  offset;
4797     VkExtent2D  extent;
4798 }
4799 
4800 struct VkBaseInStructure {
4801     VkStructureType              sType;
4802     const( VkBaseInStructure )*  pNext;
4803 }
4804 
4805 struct VkBaseOutStructure {
4806     VkStructureType               sType;
4807     const( VkBaseOutStructure )*  pNext;
4808 }
4809 
4810 struct VkBufferMemoryBarrier {
4811     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER;
4812     const( void )*   pNext;
4813     VkAccessFlags    srcAccessMask;
4814     VkAccessFlags    dstAccessMask;
4815     uint32_t         srcQueueFamilyIndex;
4816     uint32_t         dstQueueFamilyIndex;
4817     VkBuffer         buffer;
4818     VkDeviceSize     offset;
4819     VkDeviceSize     size;
4820 }
4821 
4822 struct VkDispatchIndirectCommand {
4823     uint32_t  x;
4824     uint32_t  y;
4825     uint32_t  z;
4826 }
4827 
4828 struct VkDrawIndexedIndirectCommand {
4829     uint32_t  indexCount;
4830     uint32_t  instanceCount;
4831     uint32_t  firstIndex;
4832     int32_t   vertexOffset;
4833     uint32_t  firstInstance;
4834 }
4835 
4836 struct VkDrawIndirectCommand {
4837     uint32_t  vertexCount;
4838     uint32_t  instanceCount;
4839     uint32_t  firstVertex;
4840     uint32_t  firstInstance;
4841 }
4842 
4843 struct VkImageSubresourceRange {
4844     VkImageAspectFlags  aspectMask;
4845     uint32_t            baseMipLevel;
4846     uint32_t            levelCount;
4847     uint32_t            baseArrayLayer;
4848     uint32_t            layerCount;
4849 }
4850 
4851 struct VkImageMemoryBarrier {
4852     VkStructureType          sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER;
4853     const( void )*           pNext;
4854     VkAccessFlags            srcAccessMask;
4855     VkAccessFlags            dstAccessMask;
4856     VkImageLayout            oldLayout;
4857     VkImageLayout            newLayout;
4858     uint32_t                 srcQueueFamilyIndex;
4859     uint32_t                 dstQueueFamilyIndex;
4860     VkImage                  image;
4861     VkImageSubresourceRange  subresourceRange;
4862 }
4863 
4864 struct VkMemoryBarrier {
4865     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_BARRIER;
4866     const( void )*   pNext;
4867     VkAccessFlags    srcAccessMask;
4868     VkAccessFlags    dstAccessMask;
4869 }
4870 
4871 struct VkPipelineCacheHeaderVersionOne {
4872     uint32_t                      headerSize;
4873     VkPipelineCacheHeaderVersion  headerVersion;
4874     uint32_t                      vendorID;
4875     uint32_t                      deviceID;
4876     uint8_t[ VK_UUID_SIZE ]       pipelineCacheUUID;
4877 }
4878 
4879 struct VkAllocationCallbacks {
4880     void*                                 pUserData;
4881     PFN_vkAllocationFunction              pfnAllocation;
4882     PFN_vkReallocationFunction            pfnReallocation;
4883     PFN_vkFreeFunction                    pfnFree;
4884     PFN_vkInternalAllocationNotification  pfnInternalAllocation;
4885     PFN_vkInternalFreeNotification        pfnInternalFree;
4886 }
4887 
4888 struct VkApplicationInfo {
4889     VkStructureType  sType = VK_STRUCTURE_TYPE_APPLICATION_INFO;
4890     const( void )*   pNext;
4891     const( char )*   pApplicationName;
4892     uint32_t         applicationVersion;
4893     const( char )*   pEngineName;
4894     uint32_t         engineVersion;
4895     uint32_t         apiVersion;
4896 }
4897 
4898 struct VkFormatProperties {
4899     VkFormatFeatureFlags  linearTilingFeatures;
4900     VkFormatFeatureFlags  optimalTilingFeatures;
4901     VkFormatFeatureFlags  bufferFeatures;
4902 }
4903 
4904 struct VkImageFormatProperties {
4905     VkExtent3D          maxExtent;
4906     uint32_t            maxMipLevels;
4907     uint32_t            maxArrayLayers;
4908     VkSampleCountFlags  sampleCounts;
4909     VkDeviceSize        maxResourceSize;
4910 }
4911 
4912 struct VkInstanceCreateInfo {
4913     VkStructureType              sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
4914     const( void )*               pNext;
4915     VkInstanceCreateFlags        flags;
4916     const( VkApplicationInfo )*  pApplicationInfo;
4917     uint32_t                     enabledLayerCount;
4918     const( char* )*              ppEnabledLayerNames;
4919     uint32_t                     enabledExtensionCount;
4920     const( char* )*              ppEnabledExtensionNames;
4921 }
4922 
4923 struct VkMemoryHeap {
4924     VkDeviceSize       size;
4925     VkMemoryHeapFlags  flags;
4926 }
4927 
4928 struct VkMemoryType {
4929     VkMemoryPropertyFlags  propertyFlags;
4930     uint32_t               heapIndex;
4931 }
4932 
4933 struct VkPhysicalDeviceFeatures {
4934     VkBool32  robustBufferAccess;
4935     VkBool32  fullDrawIndexUint32;
4936     VkBool32  imageCubeArray;
4937     VkBool32  independentBlend;
4938     VkBool32  geometryShader;
4939     VkBool32  tessellationShader;
4940     VkBool32  sampleRateShading;
4941     VkBool32  dualSrcBlend;
4942     VkBool32  logicOp;
4943     VkBool32  multiDrawIndirect;
4944     VkBool32  drawIndirectFirstInstance;
4945     VkBool32  depthClamp;
4946     VkBool32  depthBiasClamp;
4947     VkBool32  fillModeNonSolid;
4948     VkBool32  depthBounds;
4949     VkBool32  wideLines;
4950     VkBool32  largePoints;
4951     VkBool32  alphaToOne;
4952     VkBool32  multiViewport;
4953     VkBool32  samplerAnisotropy;
4954     VkBool32  textureCompressionETC2;
4955     VkBool32  textureCompressionASTC_LDR;
4956     VkBool32  textureCompressionBC;
4957     VkBool32  occlusionQueryPrecise;
4958     VkBool32  pipelineStatisticsQuery;
4959     VkBool32  vertexPipelineStoresAndAtomics;
4960     VkBool32  fragmentStoresAndAtomics;
4961     VkBool32  shaderTessellationAndGeometryPointSize;
4962     VkBool32  shaderImageGatherExtended;
4963     VkBool32  shaderStorageImageExtendedFormats;
4964     VkBool32  shaderStorageImageMultisample;
4965     VkBool32  shaderStorageImageReadWithoutFormat;
4966     VkBool32  shaderStorageImageWriteWithoutFormat;
4967     VkBool32  shaderUniformBufferArrayDynamicIndexing;
4968     VkBool32  shaderSampledImageArrayDynamicIndexing;
4969     VkBool32  shaderStorageBufferArrayDynamicIndexing;
4970     VkBool32  shaderStorageImageArrayDynamicIndexing;
4971     VkBool32  shaderClipDistance;
4972     VkBool32  shaderCullDistance;
4973     VkBool32  shaderFloat64;
4974     VkBool32  shaderInt64;
4975     VkBool32  shaderInt16;
4976     VkBool32  shaderResourceResidency;
4977     VkBool32  shaderResourceMinLod;
4978     VkBool32  sparseBinding;
4979     VkBool32  sparseResidencyBuffer;
4980     VkBool32  sparseResidencyImage2D;
4981     VkBool32  sparseResidencyImage3D;
4982     VkBool32  sparseResidency2Samples;
4983     VkBool32  sparseResidency4Samples;
4984     VkBool32  sparseResidency8Samples;
4985     VkBool32  sparseResidency16Samples;
4986     VkBool32  sparseResidencyAliased;
4987     VkBool32  variableMultisampleRate;
4988     VkBool32  inheritedQueries;
4989 }
4990 
4991 struct VkPhysicalDeviceLimits {
4992     uint32_t            maxImageDimension1D;
4993     uint32_t            maxImageDimension2D;
4994     uint32_t            maxImageDimension3D;
4995     uint32_t            maxImageDimensionCube;
4996     uint32_t            maxImageArrayLayers;
4997     uint32_t            maxTexelBufferElements;
4998     uint32_t            maxUniformBufferRange;
4999     uint32_t            maxStorageBufferRange;
5000     uint32_t            maxPushConstantsSize;
5001     uint32_t            maxMemoryAllocationCount;
5002     uint32_t            maxSamplerAllocationCount;
5003     VkDeviceSize        bufferImageGranularity;
5004     VkDeviceSize        sparseAddressSpaceSize;
5005     uint32_t            maxBoundDescriptorSets;
5006     uint32_t            maxPerStageDescriptorSamplers;
5007     uint32_t            maxPerStageDescriptorUniformBuffers;
5008     uint32_t            maxPerStageDescriptorStorageBuffers;
5009     uint32_t            maxPerStageDescriptorSampledImages;
5010     uint32_t            maxPerStageDescriptorStorageImages;
5011     uint32_t            maxPerStageDescriptorInputAttachments;
5012     uint32_t            maxPerStageResources;
5013     uint32_t            maxDescriptorSetSamplers;
5014     uint32_t            maxDescriptorSetUniformBuffers;
5015     uint32_t            maxDescriptorSetUniformBuffersDynamic;
5016     uint32_t            maxDescriptorSetStorageBuffers;
5017     uint32_t            maxDescriptorSetStorageBuffersDynamic;
5018     uint32_t            maxDescriptorSetSampledImages;
5019     uint32_t            maxDescriptorSetStorageImages;
5020     uint32_t            maxDescriptorSetInputAttachments;
5021     uint32_t            maxVertexInputAttributes;
5022     uint32_t            maxVertexInputBindings;
5023     uint32_t            maxVertexInputAttributeOffset;
5024     uint32_t            maxVertexInputBindingStride;
5025     uint32_t            maxVertexOutputComponents;
5026     uint32_t            maxTessellationGenerationLevel;
5027     uint32_t            maxTessellationPatchSize;
5028     uint32_t            maxTessellationControlPerVertexInputComponents;
5029     uint32_t            maxTessellationControlPerVertexOutputComponents;
5030     uint32_t            maxTessellationControlPerPatchOutputComponents;
5031     uint32_t            maxTessellationControlTotalOutputComponents;
5032     uint32_t            maxTessellationEvaluationInputComponents;
5033     uint32_t            maxTessellationEvaluationOutputComponents;
5034     uint32_t            maxGeometryShaderInvocations;
5035     uint32_t            maxGeometryInputComponents;
5036     uint32_t            maxGeometryOutputComponents;
5037     uint32_t            maxGeometryOutputVertices;
5038     uint32_t            maxGeometryTotalOutputComponents;
5039     uint32_t            maxFragmentInputComponents;
5040     uint32_t            maxFragmentOutputAttachments;
5041     uint32_t            maxFragmentDualSrcAttachments;
5042     uint32_t            maxFragmentCombinedOutputResources;
5043     uint32_t            maxComputeSharedMemorySize;
5044     uint32_t[3]         maxComputeWorkGroupCount;
5045     uint32_t            maxComputeWorkGroupInvocations;
5046     uint32_t[3]         maxComputeWorkGroupSize;
5047     uint32_t            subPixelPrecisionBits;
5048     uint32_t            subTexelPrecisionBits;
5049     uint32_t            mipmapPrecisionBits;
5050     uint32_t            maxDrawIndexedIndexValue;
5051     uint32_t            maxDrawIndirectCount;
5052     float               maxSamplerLodBias;
5053     float               maxSamplerAnisotropy;
5054     uint32_t            maxViewports;
5055     uint32_t[2]         maxViewportDimensions;
5056     float[2]            viewportBoundsRange;
5057     uint32_t            viewportSubPixelBits;
5058     size_t              minMemoryMapAlignment;
5059     VkDeviceSize        minTexelBufferOffsetAlignment;
5060     VkDeviceSize        minUniformBufferOffsetAlignment;
5061     VkDeviceSize        minStorageBufferOffsetAlignment;
5062     int32_t             minTexelOffset;
5063     uint32_t            maxTexelOffset;
5064     int32_t             minTexelGatherOffset;
5065     uint32_t            maxTexelGatherOffset;
5066     float               minInterpolationOffset;
5067     float               maxInterpolationOffset;
5068     uint32_t            subPixelInterpolationOffsetBits;
5069     uint32_t            maxFramebufferWidth;
5070     uint32_t            maxFramebufferHeight;
5071     uint32_t            maxFramebufferLayers;
5072     VkSampleCountFlags  framebufferColorSampleCounts;
5073     VkSampleCountFlags  framebufferDepthSampleCounts;
5074     VkSampleCountFlags  framebufferStencilSampleCounts;
5075     VkSampleCountFlags  framebufferNoAttachmentsSampleCounts;
5076     uint32_t            maxColorAttachments;
5077     VkSampleCountFlags  sampledImageColorSampleCounts;
5078     VkSampleCountFlags  sampledImageIntegerSampleCounts;
5079     VkSampleCountFlags  sampledImageDepthSampleCounts;
5080     VkSampleCountFlags  sampledImageStencilSampleCounts;
5081     VkSampleCountFlags  storageImageSampleCounts;
5082     uint32_t            maxSampleMaskWords;
5083     VkBool32            timestampComputeAndGraphics;
5084     float               timestampPeriod;
5085     uint32_t            maxClipDistances;
5086     uint32_t            maxCullDistances;
5087     uint32_t            maxCombinedClipAndCullDistances;
5088     uint32_t            discreteQueuePriorities;
5089     float[2]            pointSizeRange;
5090     float[2]            lineWidthRange;
5091     float               pointSizeGranularity;
5092     float               lineWidthGranularity;
5093     VkBool32            strictLines;
5094     VkBool32            standardSampleLocations;
5095     VkDeviceSize        optimalBufferCopyOffsetAlignment;
5096     VkDeviceSize        optimalBufferCopyRowPitchAlignment;
5097     VkDeviceSize        nonCoherentAtomSize;
5098 }
5099 
5100 struct VkPhysicalDeviceMemoryProperties {
5101     uint32_t                             memoryTypeCount;
5102     VkMemoryType[ VK_MAX_MEMORY_TYPES ]  memoryTypes;
5103     uint32_t                             memoryHeapCount;
5104     VkMemoryHeap[ VK_MAX_MEMORY_HEAPS ]  memoryHeaps;
5105 }
5106 
5107 struct VkPhysicalDeviceSparseProperties {
5108     VkBool32  residencyStandard2DBlockShape;
5109     VkBool32  residencyStandard2DMultisampleBlockShape;
5110     VkBool32  residencyStandard3DBlockShape;
5111     VkBool32  residencyAlignedMipSize;
5112     VkBool32  residencyNonResidentStrict;
5113 }
5114 
5115 struct VkPhysicalDeviceProperties {
5116     uint32_t                                  apiVersion;
5117     uint32_t                                  driverVersion;
5118     uint32_t                                  vendorID;
5119     uint32_t                                  deviceID;
5120     VkPhysicalDeviceType                      deviceType;
5121     char[ VK_MAX_PHYSICAL_DEVICE_NAME_SIZE ]  deviceName;
5122     uint8_t[ VK_UUID_SIZE ]                   pipelineCacheUUID;
5123     VkPhysicalDeviceLimits                    limits;
5124     VkPhysicalDeviceSparseProperties          sparseProperties;
5125 }
5126 
5127 struct VkQueueFamilyProperties {
5128     VkQueueFlags  queueFlags;
5129     uint32_t      queueCount;
5130     uint32_t      timestampValidBits;
5131     VkExtent3D    minImageTransferGranularity;
5132 }
5133 
5134 struct VkDeviceQueueCreateInfo {
5135     VkStructureType           sType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO;
5136     const( void )*            pNext;
5137     VkDeviceQueueCreateFlags  flags;
5138     uint32_t                  queueFamilyIndex;
5139     uint32_t                  queueCount;
5140     const( float )*           pQueuePriorities;
5141 }
5142 
5143 struct VkDeviceCreateInfo {
5144     VkStructureType                     sType = VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO;
5145     const( void )*                      pNext;
5146     VkDeviceCreateFlags                 flags;
5147     uint32_t                            queueCreateInfoCount;
5148     const( VkDeviceQueueCreateInfo )*   pQueueCreateInfos;
5149     uint32_t                            enabledLayerCount;
5150     const( char* )*                     ppEnabledLayerNames;
5151     uint32_t                            enabledExtensionCount;
5152     const( char* )*                     ppEnabledExtensionNames;
5153     const( VkPhysicalDeviceFeatures )*  pEnabledFeatures;
5154 }
5155 
5156 struct VkExtensionProperties {
5157     char[ VK_MAX_EXTENSION_NAME_SIZE ]  extensionName;
5158     uint32_t                            specVersion;
5159 }
5160 
5161 struct VkLayerProperties {
5162     char[ VK_MAX_EXTENSION_NAME_SIZE ]  layerName;
5163     uint32_t                            specVersion;
5164     uint32_t                            implementationVersion;
5165     char[ VK_MAX_DESCRIPTION_SIZE ]     description;
5166 }
5167 
5168 struct VkSubmitInfo {
5169     VkStructureType                 sType = VK_STRUCTURE_TYPE_SUBMIT_INFO;
5170     const( void )*                  pNext;
5171     uint32_t                        waitSemaphoreCount;
5172     const( VkSemaphore )*           pWaitSemaphores;
5173     const( VkPipelineStageFlags )*  pWaitDstStageMask;
5174     uint32_t                        commandBufferCount;
5175     const( VkCommandBuffer )*       pCommandBuffers;
5176     uint32_t                        signalSemaphoreCount;
5177     const( VkSemaphore )*           pSignalSemaphores;
5178 }
5179 
5180 struct VkMappedMemoryRange {
5181     VkStructureType  sType = VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE;
5182     const( void )*   pNext;
5183     VkDeviceMemory   memory;
5184     VkDeviceSize     offset;
5185     VkDeviceSize     size;
5186 }
5187 
5188 struct VkMemoryAllocateInfo {
5189     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO;
5190     const( void )*   pNext;
5191     VkDeviceSize     allocationSize;
5192     uint32_t         memoryTypeIndex;
5193 }
5194 
5195 struct VkMemoryRequirements {
5196     VkDeviceSize  size;
5197     VkDeviceSize  alignment;
5198     uint32_t      memoryTypeBits;
5199 }
5200 
5201 struct VkSparseMemoryBind {
5202     VkDeviceSize             resourceOffset;
5203     VkDeviceSize             size;
5204     VkDeviceMemory           memory;
5205     VkDeviceSize             memoryOffset;
5206     VkSparseMemoryBindFlags  flags;
5207 }
5208 
5209 struct VkSparseBufferMemoryBindInfo {
5210     VkBuffer                      buffer;
5211     uint32_t                      bindCount;
5212     const( VkSparseMemoryBind )*  pBinds;
5213 }
5214 
5215 struct VkSparseImageOpaqueMemoryBindInfo {
5216     VkImage                       image;
5217     uint32_t                      bindCount;
5218     const( VkSparseMemoryBind )*  pBinds;
5219 }
5220 
5221 struct VkImageSubresource {
5222     VkImageAspectFlags  aspectMask;
5223     uint32_t            mipLevel;
5224     uint32_t            arrayLayer;
5225 }
5226 
5227 struct VkSparseImageMemoryBind {
5228     VkImageSubresource       subresource;
5229     VkOffset3D               offset;
5230     VkExtent3D               extent;
5231     VkDeviceMemory           memory;
5232     VkDeviceSize             memoryOffset;
5233     VkSparseMemoryBindFlags  flags;
5234 }
5235 
5236 struct VkSparseImageMemoryBindInfo {
5237     VkImage                            image;
5238     uint32_t                           bindCount;
5239     const( VkSparseImageMemoryBind )*  pBinds;
5240 }
5241 
5242 struct VkBindSparseInfo {
5243     VkStructureType                              sType = VK_STRUCTURE_TYPE_BIND_SPARSE_INFO;
5244     const( void )*                               pNext;
5245     uint32_t                                     waitSemaphoreCount;
5246     const( VkSemaphore )*                        pWaitSemaphores;
5247     uint32_t                                     bufferBindCount;
5248     const( VkSparseBufferMemoryBindInfo )*       pBufferBinds;
5249     uint32_t                                     imageOpaqueBindCount;
5250     const( VkSparseImageOpaqueMemoryBindInfo )*  pImageOpaqueBinds;
5251     uint32_t                                     imageBindCount;
5252     const( VkSparseImageMemoryBindInfo )*        pImageBinds;
5253     uint32_t                                     signalSemaphoreCount;
5254     const( VkSemaphore )*                        pSignalSemaphores;
5255 }
5256 
5257 struct VkSparseImageFormatProperties {
5258     VkImageAspectFlags        aspectMask;
5259     VkExtent3D                imageGranularity;
5260     VkSparseImageFormatFlags  flags;
5261 }
5262 
5263 struct VkSparseImageMemoryRequirements {
5264     VkSparseImageFormatProperties  formatProperties;
5265     uint32_t                       imageMipTailFirstLod;
5266     VkDeviceSize                   imageMipTailSize;
5267     VkDeviceSize                   imageMipTailOffset;
5268     VkDeviceSize                   imageMipTailStride;
5269 }
5270 
5271 struct VkFenceCreateInfo {
5272     VkStructureType     sType = VK_STRUCTURE_TYPE_FENCE_CREATE_INFO;
5273     const( void )*      pNext;
5274     VkFenceCreateFlags  flags;
5275 }
5276 
5277 struct VkSemaphoreCreateInfo {
5278     VkStructureType         sType = VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO;
5279     const( void )*          pNext;
5280     VkSemaphoreCreateFlags  flags;
5281 }
5282 
5283 struct VkEventCreateInfo {
5284     VkStructureType     sType = VK_STRUCTURE_TYPE_EVENT_CREATE_INFO;
5285     const( void )*      pNext;
5286     VkEventCreateFlags  flags;
5287 }
5288 
5289 struct VkQueryPoolCreateInfo {
5290     VkStructureType                sType = VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO;
5291     const( void )*                 pNext;
5292     VkQueryPoolCreateFlags         flags;
5293     VkQueryType                    queryType;
5294     uint32_t                       queryCount;
5295     VkQueryPipelineStatisticFlags  pipelineStatistics;
5296 }
5297 
5298 struct VkBufferCreateInfo {
5299     VkStructureType      sType = VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO;
5300     const( void )*       pNext;
5301     VkBufferCreateFlags  flags;
5302     VkDeviceSize         size;
5303     VkBufferUsageFlags   usage;
5304     VkSharingMode        sharingMode;
5305     uint32_t             queueFamilyIndexCount;
5306     const( uint32_t )*   pQueueFamilyIndices;
5307 }
5308 
5309 struct VkBufferViewCreateInfo {
5310     VkStructureType          sType = VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO;
5311     const( void )*           pNext;
5312     VkBufferViewCreateFlags  flags;
5313     VkBuffer                 buffer;
5314     VkFormat                 format;
5315     VkDeviceSize             offset;
5316     VkDeviceSize             range;
5317 }
5318 
5319 struct VkImageCreateInfo {
5320     VkStructureType        sType = VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO;
5321     const( void )*         pNext;
5322     VkImageCreateFlags     flags;
5323     VkImageType            imageType;
5324     VkFormat               format;
5325     VkExtent3D             extent;
5326     uint32_t               mipLevels;
5327     uint32_t               arrayLayers;
5328     VkSampleCountFlagBits  samples;
5329     VkImageTiling          tiling;
5330     VkImageUsageFlags      usage;
5331     VkSharingMode          sharingMode;
5332     uint32_t               queueFamilyIndexCount;
5333     const( uint32_t )*     pQueueFamilyIndices;
5334     VkImageLayout          initialLayout;
5335 }
5336 
5337 struct VkSubresourceLayout {
5338     VkDeviceSize  offset;
5339     VkDeviceSize  size;
5340     VkDeviceSize  rowPitch;
5341     VkDeviceSize  arrayPitch;
5342     VkDeviceSize  depthPitch;
5343 }
5344 
5345 struct VkComponentMapping {
5346     VkComponentSwizzle  r;
5347     VkComponentSwizzle  g;
5348     VkComponentSwizzle  b;
5349     VkComponentSwizzle  a;
5350 }
5351 
5352 struct VkImageViewCreateInfo {
5353     VkStructureType          sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO;
5354     const( void )*           pNext;
5355     VkImageViewCreateFlags   flags;
5356     VkImage                  image;
5357     VkImageViewType          viewType;
5358     VkFormat                 format;
5359     VkComponentMapping       components;
5360     VkImageSubresourceRange  subresourceRange;
5361 }
5362 
5363 struct VkShaderModuleCreateInfo {
5364     VkStructureType            sType = VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO;
5365     const( void )*             pNext;
5366     VkShaderModuleCreateFlags  flags;
5367     size_t                     codeSize;
5368     const( uint32_t )*         pCode;
5369 }
5370 
5371 struct VkPipelineCacheCreateInfo {
5372     VkStructureType             sType = VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO;
5373     const( void )*              pNext;
5374     VkPipelineCacheCreateFlags  flags;
5375     size_t                      initialDataSize;
5376     const( void )*              pInitialData;
5377 }
5378 
5379 struct VkSpecializationMapEntry {
5380     uint32_t  constantID;
5381     uint32_t  offset;
5382     size_t    size;
5383 }
5384 
5385 struct VkSpecializationInfo {
5386     uint32_t                            mapEntryCount;
5387     const( VkSpecializationMapEntry )*  pMapEntries;
5388     size_t                              dataSize;
5389     const( void )*                      pData;
5390 }
5391 
5392 struct VkPipelineShaderStageCreateInfo {
5393     VkStructureType                   sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO;
5394     const( void )*                    pNext;
5395     VkPipelineShaderStageCreateFlags  flags;
5396     VkShaderStageFlagBits             stage;
5397     VkShaderModule                    Module;
5398     const( char )*                    pName;
5399     const( VkSpecializationInfo )*    pSpecializationInfo;
5400     alias                             module_ = Module;
5401     alias                             _module = Module;
5402 }
5403 
5404 struct VkComputePipelineCreateInfo {
5405     VkStructureType                  sType = VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO;
5406     const( void )*                   pNext;
5407     VkPipelineCreateFlags            flags;
5408     VkPipelineShaderStageCreateInfo  stage;
5409     VkPipelineLayout                 layout;
5410     VkPipeline                       basePipelineHandle;
5411     int32_t                          basePipelineIndex;
5412 }
5413 
5414 struct VkVertexInputBindingDescription {
5415     uint32_t           binding;
5416     uint32_t           stride;
5417     VkVertexInputRate  inputRate;
5418 }
5419 
5420 struct VkVertexInputAttributeDescription {
5421     uint32_t  location;
5422     uint32_t  binding;
5423     VkFormat  format;
5424     uint32_t  offset;
5425 }
5426 
5427 struct VkPipelineVertexInputStateCreateInfo {
5428     VkStructureType                              sType = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO;
5429     const( void )*                               pNext;
5430     VkPipelineVertexInputStateCreateFlags        flags;
5431     uint32_t                                     vertexBindingDescriptionCount;
5432     const( VkVertexInputBindingDescription )*    pVertexBindingDescriptions;
5433     uint32_t                                     vertexAttributeDescriptionCount;
5434     const( VkVertexInputAttributeDescription )*  pVertexAttributeDescriptions;
5435 }
5436 
5437 struct VkPipelineInputAssemblyStateCreateInfo {
5438     VkStructureType                          sType = VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO;
5439     const( void )*                           pNext;
5440     VkPipelineInputAssemblyStateCreateFlags  flags;
5441     VkPrimitiveTopology                      topology;
5442     VkBool32                                 primitiveRestartEnable;
5443 }
5444 
5445 struct VkPipelineTessellationStateCreateInfo {
5446     VkStructureType                         sType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO;
5447     const( void )*                          pNext;
5448     VkPipelineTessellationStateCreateFlags  flags;
5449     uint32_t                                patchControlPoints;
5450 }
5451 
5452 struct VkViewport {
5453     float  x;
5454     float  y;
5455     float  width;
5456     float  height;
5457     float  minDepth;
5458     float  maxDepth;
5459 }
5460 
5461 struct VkPipelineViewportStateCreateInfo {
5462     VkStructureType                     sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO;
5463     const( void )*                      pNext;
5464     VkPipelineViewportStateCreateFlags  flags;
5465     uint32_t                            viewportCount;
5466     const( VkViewport )*                pViewports;
5467     uint32_t                            scissorCount;
5468     const( VkRect2D )*                  pScissors;
5469 }
5470 
5471 struct VkPipelineRasterizationStateCreateInfo {
5472     VkStructureType                          sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO;
5473     const( void )*                           pNext;
5474     VkPipelineRasterizationStateCreateFlags  flags;
5475     VkBool32                                 depthClampEnable;
5476     VkBool32                                 rasterizerDiscardEnable;
5477     VkPolygonMode                            polygonMode;
5478     VkCullModeFlags                          cullMode;
5479     VkFrontFace                              frontFace;
5480     VkBool32                                 depthBiasEnable;
5481     float                                    depthBiasConstantFactor;
5482     float                                    depthBiasClamp;
5483     float                                    depthBiasSlopeFactor;
5484     float                                    lineWidth;
5485 }
5486 
5487 struct VkPipelineMultisampleStateCreateInfo {
5488     VkStructureType                        sType = VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO;
5489     const( void )*                         pNext;
5490     VkPipelineMultisampleStateCreateFlags  flags;
5491     VkSampleCountFlagBits                  rasterizationSamples;
5492     VkBool32                               sampleShadingEnable;
5493     float                                  minSampleShading;
5494     const( VkSampleMask )*                 pSampleMask;
5495     VkBool32                               alphaToCoverageEnable;
5496     VkBool32                               alphaToOneEnable;
5497 }
5498 
5499 struct VkStencilOpState {
5500     VkStencilOp  failOp;
5501     VkStencilOp  passOp;
5502     VkStencilOp  depthFailOp;
5503     VkCompareOp  compareOp;
5504     uint32_t     compareMask;
5505     uint32_t     writeMask;
5506     uint32_t     reference;
5507 }
5508 
5509 struct VkPipelineDepthStencilStateCreateInfo {
5510     VkStructureType                         sType = VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO;
5511     const( void )*                          pNext;
5512     VkPipelineDepthStencilStateCreateFlags  flags;
5513     VkBool32                                depthTestEnable;
5514     VkBool32                                depthWriteEnable;
5515     VkCompareOp                             depthCompareOp;
5516     VkBool32                                depthBoundsTestEnable;
5517     VkBool32                                stencilTestEnable;
5518     VkStencilOpState                        front;
5519     VkStencilOpState                        back;
5520     float                                   minDepthBounds;
5521     float                                   maxDepthBounds;
5522 }
5523 
5524 struct VkPipelineColorBlendAttachmentState {
5525     VkBool32               blendEnable;
5526     VkBlendFactor          srcColorBlendFactor;
5527     VkBlendFactor          dstColorBlendFactor;
5528     VkBlendOp              colorBlendOp;
5529     VkBlendFactor          srcAlphaBlendFactor;
5530     VkBlendFactor          dstAlphaBlendFactor;
5531     VkBlendOp              alphaBlendOp;
5532     VkColorComponentFlags  colorWriteMask;
5533 }
5534 
5535 struct VkPipelineColorBlendStateCreateInfo {
5536     VkStructureType                                sType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO;
5537     const( void )*                                 pNext;
5538     VkPipelineColorBlendStateCreateFlags           flags;
5539     VkBool32                                       logicOpEnable;
5540     VkLogicOp                                      logicOp;
5541     uint32_t                                       attachmentCount;
5542     const( VkPipelineColorBlendAttachmentState )*  pAttachments;
5543     float[4]                                       blendConstants;
5544 }
5545 
5546 struct VkPipelineDynamicStateCreateInfo {
5547     VkStructureType                    sType = VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO;
5548     const( void )*                     pNext;
5549     VkPipelineDynamicStateCreateFlags  flags;
5550     uint32_t                           dynamicStateCount;
5551     const( VkDynamicState )*           pDynamicStates;
5552 }
5553 
5554 struct VkGraphicsPipelineCreateInfo {
5555     VkStructureType                                   sType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO;
5556     const( void )*                                    pNext;
5557     VkPipelineCreateFlags                             flags;
5558     uint32_t                                          stageCount;
5559     const( VkPipelineShaderStageCreateInfo )*         pStages;
5560     const( VkPipelineVertexInputStateCreateInfo )*    pVertexInputState;
5561     const( VkPipelineInputAssemblyStateCreateInfo )*  pInputAssemblyState;
5562     const( VkPipelineTessellationStateCreateInfo )*   pTessellationState;
5563     const( VkPipelineViewportStateCreateInfo )*       pViewportState;
5564     const( VkPipelineRasterizationStateCreateInfo )*  pRasterizationState;
5565     const( VkPipelineMultisampleStateCreateInfo )*    pMultisampleState;
5566     const( VkPipelineDepthStencilStateCreateInfo )*   pDepthStencilState;
5567     const( VkPipelineColorBlendStateCreateInfo )*     pColorBlendState;
5568     const( VkPipelineDynamicStateCreateInfo )*        pDynamicState;
5569     VkPipelineLayout                                  layout;
5570     VkRenderPass                                      renderPass;
5571     uint32_t                                          subpass;
5572     VkPipeline                                        basePipelineHandle;
5573     int32_t                                           basePipelineIndex;
5574 }
5575 
5576 struct VkPushConstantRange {
5577     VkShaderStageFlags  stageFlags;
5578     uint32_t            offset;
5579     uint32_t            size;
5580 }
5581 
5582 struct VkPipelineLayoutCreateInfo {
5583     VkStructureType                  sType = VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO;
5584     const( void )*                   pNext;
5585     VkPipelineLayoutCreateFlags      flags;
5586     uint32_t                         setLayoutCount;
5587     const( VkDescriptorSetLayout )*  pSetLayouts;
5588     uint32_t                         pushConstantRangeCount;
5589     const( VkPushConstantRange )*    pPushConstantRanges;
5590 }
5591 
5592 struct VkSamplerCreateInfo {
5593     VkStructureType       sType = VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO;
5594     const( void )*        pNext;
5595     VkSamplerCreateFlags  flags;
5596     VkFilter              magFilter;
5597     VkFilter              minFilter;
5598     VkSamplerMipmapMode   mipmapMode;
5599     VkSamplerAddressMode  addressModeU;
5600     VkSamplerAddressMode  addressModeV;
5601     VkSamplerAddressMode  addressModeW;
5602     float                 mipLodBias;
5603     VkBool32              anisotropyEnable;
5604     float                 maxAnisotropy;
5605     VkBool32              compareEnable;
5606     VkCompareOp           compareOp;
5607     float                 minLod;
5608     float                 maxLod;
5609     VkBorderColor         borderColor;
5610     VkBool32              unnormalizedCoordinates;
5611 }
5612 
5613 struct VkCopyDescriptorSet {
5614     VkStructureType  sType = VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET;
5615     const( void )*   pNext;
5616     VkDescriptorSet  srcSet;
5617     uint32_t         srcBinding;
5618     uint32_t         srcArrayElement;
5619     VkDescriptorSet  dstSet;
5620     uint32_t         dstBinding;
5621     uint32_t         dstArrayElement;
5622     uint32_t         descriptorCount;
5623 }
5624 
5625 struct VkDescriptorBufferInfo {
5626     VkBuffer      buffer;
5627     VkDeviceSize  offset;
5628     VkDeviceSize  range;
5629 }
5630 
5631 struct VkDescriptorImageInfo {
5632     VkSampler      sampler;
5633     VkImageView    imageView;
5634     VkImageLayout  imageLayout;
5635 }
5636 
5637 struct VkDescriptorPoolSize {
5638     VkDescriptorType  type;
5639     uint32_t          descriptorCount;
5640 }
5641 
5642 struct VkDescriptorPoolCreateInfo {
5643     VkStructureType                 sType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO;
5644     const( void )*                  pNext;
5645     VkDescriptorPoolCreateFlags     flags;
5646     uint32_t                        maxSets;
5647     uint32_t                        poolSizeCount;
5648     const( VkDescriptorPoolSize )*  pPoolSizes;
5649 }
5650 
5651 struct VkDescriptorSetAllocateInfo {
5652     VkStructureType                  sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO;
5653     const( void )*                   pNext;
5654     VkDescriptorPool                 descriptorPool;
5655     uint32_t                         descriptorSetCount;
5656     const( VkDescriptorSetLayout )*  pSetLayouts;
5657 }
5658 
5659 struct VkDescriptorSetLayoutBinding {
5660     uint32_t             binding;
5661     VkDescriptorType     descriptorType;
5662     uint32_t             descriptorCount;
5663     VkShaderStageFlags   stageFlags;
5664     const( VkSampler )*  pImmutableSamplers;
5665 }
5666 
5667 struct VkDescriptorSetLayoutCreateInfo {
5668     VkStructureType                         sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO;
5669     const( void )*                          pNext;
5670     VkDescriptorSetLayoutCreateFlags        flags;
5671     uint32_t                                bindingCount;
5672     const( VkDescriptorSetLayoutBinding )*  pBindings;
5673 }
5674 
5675 struct VkWriteDescriptorSet {
5676     VkStructureType                   sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET;
5677     const( void )*                    pNext;
5678     VkDescriptorSet                   dstSet;
5679     uint32_t                          dstBinding;
5680     uint32_t                          dstArrayElement;
5681     uint32_t                          descriptorCount;
5682     VkDescriptorType                  descriptorType;
5683     const( VkDescriptorImageInfo )*   pImageInfo;
5684     const( VkDescriptorBufferInfo )*  pBufferInfo;
5685     const( VkBufferView )*            pTexelBufferView;
5686 }
5687 
5688 struct VkAttachmentDescription {
5689     VkAttachmentDescriptionFlags  flags;
5690     VkFormat                      format;
5691     VkSampleCountFlagBits         samples;
5692     VkAttachmentLoadOp            loadOp;
5693     VkAttachmentStoreOp           storeOp;
5694     VkAttachmentLoadOp            stencilLoadOp;
5695     VkAttachmentStoreOp           stencilStoreOp;
5696     VkImageLayout                 initialLayout;
5697     VkImageLayout                 finalLayout;
5698 }
5699 
5700 struct VkAttachmentReference {
5701     uint32_t       attachment;
5702     VkImageLayout  layout;
5703 }
5704 
5705 struct VkFramebufferCreateInfo {
5706     VkStructureType           sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO;
5707     const( void )*            pNext;
5708     VkFramebufferCreateFlags  flags;
5709     VkRenderPass              renderPass;
5710     uint32_t                  attachmentCount;
5711     const( VkImageView )*     pAttachments;
5712     uint32_t                  width;
5713     uint32_t                  height;
5714     uint32_t                  layers;
5715 }
5716 
5717 struct VkSubpassDescription {
5718     VkSubpassDescriptionFlags        flags;
5719     VkPipelineBindPoint              pipelineBindPoint;
5720     uint32_t                         inputAttachmentCount;
5721     const( VkAttachmentReference )*  pInputAttachments;
5722     uint32_t                         colorAttachmentCount;
5723     const( VkAttachmentReference )*  pColorAttachments;
5724     const( VkAttachmentReference )*  pResolveAttachments;
5725     const( VkAttachmentReference )*  pDepthStencilAttachment;
5726     uint32_t                         preserveAttachmentCount;
5727     const( uint32_t )*               pPreserveAttachments;
5728 }
5729 
5730 struct VkSubpassDependency {
5731     uint32_t              srcSubpass;
5732     uint32_t              dstSubpass;
5733     VkPipelineStageFlags  srcStageMask;
5734     VkPipelineStageFlags  dstStageMask;
5735     VkAccessFlags         srcAccessMask;
5736     VkAccessFlags         dstAccessMask;
5737     VkDependencyFlags     dependencyFlags;
5738 }
5739 
5740 struct VkRenderPassCreateInfo {
5741     VkStructureType                    sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO;
5742     const( void )*                     pNext;
5743     VkRenderPassCreateFlags            flags;
5744     uint32_t                           attachmentCount;
5745     const( VkAttachmentDescription )*  pAttachments;
5746     uint32_t                           subpassCount;
5747     const( VkSubpassDescription )*     pSubpasses;
5748     uint32_t                           dependencyCount;
5749     const( VkSubpassDependency )*      pDependencies;
5750 }
5751 
5752 struct VkCommandPoolCreateInfo {
5753     VkStructureType           sType = VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO;
5754     const( void )*            pNext;
5755     VkCommandPoolCreateFlags  flags;
5756     uint32_t                  queueFamilyIndex;
5757 }
5758 
5759 struct VkCommandBufferAllocateInfo {
5760     VkStructureType       sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO;
5761     const( void )*        pNext;
5762     VkCommandPool         commandPool;
5763     VkCommandBufferLevel  level;
5764     uint32_t              commandBufferCount;
5765 }
5766 
5767 struct VkCommandBufferInheritanceInfo {
5768     VkStructureType                sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO;
5769     const( void )*                 pNext;
5770     VkRenderPass                   renderPass;
5771     uint32_t                       subpass;
5772     VkFramebuffer                  framebuffer;
5773     VkBool32                       occlusionQueryEnable;
5774     VkQueryControlFlags            queryFlags;
5775     VkQueryPipelineStatisticFlags  pipelineStatistics;
5776 }
5777 
5778 struct VkCommandBufferBeginInfo {
5779     VkStructureType                           sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO;
5780     const( void )*                            pNext;
5781     VkCommandBufferUsageFlags                 flags;
5782     const( VkCommandBufferInheritanceInfo )*  pInheritanceInfo;
5783 }
5784 
5785 struct VkBufferCopy {
5786     VkDeviceSize  srcOffset;
5787     VkDeviceSize  dstOffset;
5788     VkDeviceSize  size;
5789 }
5790 
5791 struct VkImageSubresourceLayers {
5792     VkImageAspectFlags  aspectMask;
5793     uint32_t            mipLevel;
5794     uint32_t            baseArrayLayer;
5795     uint32_t            layerCount;
5796 }
5797 
5798 struct VkBufferImageCopy {
5799     VkDeviceSize              bufferOffset;
5800     uint32_t                  bufferRowLength;
5801     uint32_t                  bufferImageHeight;
5802     VkImageSubresourceLayers  imageSubresource;
5803     VkOffset3D                imageOffset;
5804     VkExtent3D                imageExtent;
5805 }
5806 
5807 union VkClearColorValue {
5808     float[4]     float32;
5809     int32_t[4]   int32;
5810     uint32_t[4]  uint32;
5811 }
5812 
5813 struct VkClearDepthStencilValue {
5814     float     depth;
5815     uint32_t  stencil;
5816 }
5817 
5818 union VkClearValue {
5819     VkClearColorValue         color;
5820     VkClearDepthStencilValue  depthStencil;
5821 }
5822 
5823 struct VkClearAttachment {
5824     VkImageAspectFlags  aspectMask;
5825     uint32_t            colorAttachment;
5826     VkClearValue        clearValue;
5827 }
5828 
5829 struct VkClearRect {
5830     VkRect2D  rect;
5831     uint32_t  baseArrayLayer;
5832     uint32_t  layerCount;
5833 }
5834 
5835 struct VkImageBlit {
5836     VkImageSubresourceLayers  srcSubresource;
5837     VkOffset3D[2]             srcOffsets;
5838     VkImageSubresourceLayers  dstSubresource;
5839     VkOffset3D[2]             dstOffsets;
5840 }
5841 
5842 struct VkImageCopy {
5843     VkImageSubresourceLayers  srcSubresource;
5844     VkOffset3D                srcOffset;
5845     VkImageSubresourceLayers  dstSubresource;
5846     VkOffset3D                dstOffset;
5847     VkExtent3D                extent;
5848 }
5849 
5850 struct VkImageResolve {
5851     VkImageSubresourceLayers  srcSubresource;
5852     VkOffset3D                srcOffset;
5853     VkImageSubresourceLayers  dstSubresource;
5854     VkOffset3D                dstOffset;
5855     VkExtent3D                extent;
5856 }
5857 
5858 struct VkRenderPassBeginInfo {
5859     VkStructureType         sType = VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO;
5860     const( void )*          pNext;
5861     VkRenderPass            renderPass;
5862     VkFramebuffer           framebuffer;
5863     VkRect2D                renderArea;
5864     uint32_t                clearValueCount;
5865     const( VkClearValue )*  pClearValues;
5866 }
5867 
5868 
5869 // - VK_VERSION_1_1 -
5870 enum VK_VERSION_1_1 = 1;
5871 
5872 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkSamplerYcbcrConversion} );
5873 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDescriptorUpdateTemplate} );
5874 
5875 enum VK_MAX_DEVICE_GROUP_SIZE = 32;
5876 enum VK_LUID_SIZE = 8;
5877 enum VK_QUEUE_FAMILY_EXTERNAL = (~1U);
5878 
5879 enum VkPointClippingBehavior {
5880     VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES                   = 0,
5881     VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY             = 1,
5882     VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR               = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,
5883     VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR         = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,
5884     VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE                       = VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES,
5885     VK_POINT_CLIPPING_BEHAVIOR_END_RANGE                         = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY,
5886     VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE                        = VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY - VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES + 1,
5887     VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM                          = 0x7FFFFFFF
5888 }
5889 
5890 enum VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES                  = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES;
5891 enum VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY            = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY;
5892 enum VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR              = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR;
5893 enum VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR        = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR;
5894 enum VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE                      = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_BEGIN_RANGE;
5895 enum VK_POINT_CLIPPING_BEHAVIOR_END_RANGE                        = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_END_RANGE;
5896 enum VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE                       = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_RANGE_SIZE;
5897 enum VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM                         = VkPointClippingBehavior.VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM;
5898 
5899 enum VkTessellationDomainOrigin {
5900     VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT             = 0,
5901     VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT             = 1,
5902     VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR         = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
5903     VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR         = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,
5904     VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE            = VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT,
5905     VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE              = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT,
5906     VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE             = VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT - VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT + 1,
5907     VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM               = 0x7FFFFFFF
5908 }
5909 
5910 enum VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT            = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT;
5911 enum VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT            = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT;
5912 enum VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR        = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR;
5913 enum VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR        = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR;
5914 enum VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE           = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_BEGIN_RANGE;
5915 enum VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE             = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_END_RANGE;
5916 enum VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE            = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_RANGE_SIZE;
5917 enum VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM              = VkTessellationDomainOrigin.VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM;
5918 
5919 enum VkSamplerYcbcrModelConversion {
5920     VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY               = 0,
5921     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY             = 1,
5922     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709                  = 2,
5923     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601                  = 3,
5924     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020                 = 4,
5925     VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR           = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,
5926     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR         = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY,
5927     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR              = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709,
5928     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR              = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601,
5929     VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR             = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,
5930     VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE                = VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY,
5931     VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE                  = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020,
5932     VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE                 = VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 - VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY + 1,
5933     VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM                   = 0x7FFFFFFF
5934 }
5935 
5936 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY              = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY;
5937 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY            = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY;
5938 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709                 = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709;
5939 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601                 = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601;
5940 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020                = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020;
5941 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR          = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR;
5942 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR        = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR;
5943 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR             = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR;
5944 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR             = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR;
5945 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR            = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR;
5946 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE               = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_BEGIN_RANGE;
5947 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE                 = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_END_RANGE;
5948 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE                = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_RANGE_SIZE;
5949 enum VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM                  = VkSamplerYcbcrModelConversion.VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM;
5950 
5951 enum VkSamplerYcbcrRange {
5952     VK_SAMPLER_YCBCR_RANGE_ITU_FULL              = 0,
5953     VK_SAMPLER_YCBCR_RANGE_ITU_NARROW            = 1,
5954     VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR          = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
5955     VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR        = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,
5956     VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE           = VK_SAMPLER_YCBCR_RANGE_ITU_FULL,
5957     VK_SAMPLER_YCBCR_RANGE_END_RANGE             = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW,
5958     VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE            = VK_SAMPLER_YCBCR_RANGE_ITU_NARROW - VK_SAMPLER_YCBCR_RANGE_ITU_FULL + 1,
5959     VK_SAMPLER_YCBCR_RANGE_MAX_ENUM              = 0x7FFFFFFF
5960 }
5961 
5962 enum VK_SAMPLER_YCBCR_RANGE_ITU_FULL             = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_ITU_FULL;
5963 enum VK_SAMPLER_YCBCR_RANGE_ITU_NARROW           = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_ITU_NARROW;
5964 enum VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR         = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR;
5965 enum VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR       = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR;
5966 enum VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE          = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_BEGIN_RANGE;
5967 enum VK_SAMPLER_YCBCR_RANGE_END_RANGE            = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_END_RANGE;
5968 enum VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE           = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_RANGE_SIZE;
5969 enum VK_SAMPLER_YCBCR_RANGE_MAX_ENUM             = VkSamplerYcbcrRange.VK_SAMPLER_YCBCR_RANGE_MAX_ENUM;
5970 
5971 enum VkChromaLocation {
5972     VK_CHROMA_LOCATION_COSITED_EVEN      = 0,
5973     VK_CHROMA_LOCATION_MIDPOINT          = 1,
5974     VK_CHROMA_LOCATION_COSITED_EVEN_KHR  = VK_CHROMA_LOCATION_COSITED_EVEN,
5975     VK_CHROMA_LOCATION_MIDPOINT_KHR      = VK_CHROMA_LOCATION_MIDPOINT,
5976     VK_CHROMA_LOCATION_BEGIN_RANGE       = VK_CHROMA_LOCATION_COSITED_EVEN,
5977     VK_CHROMA_LOCATION_END_RANGE         = VK_CHROMA_LOCATION_MIDPOINT,
5978     VK_CHROMA_LOCATION_RANGE_SIZE        = VK_CHROMA_LOCATION_MIDPOINT - VK_CHROMA_LOCATION_COSITED_EVEN + 1,
5979     VK_CHROMA_LOCATION_MAX_ENUM          = 0x7FFFFFFF
5980 }
5981 
5982 enum VK_CHROMA_LOCATION_COSITED_EVEN     = VkChromaLocation.VK_CHROMA_LOCATION_COSITED_EVEN;
5983 enum VK_CHROMA_LOCATION_MIDPOINT         = VkChromaLocation.VK_CHROMA_LOCATION_MIDPOINT;
5984 enum VK_CHROMA_LOCATION_COSITED_EVEN_KHR = VkChromaLocation.VK_CHROMA_LOCATION_COSITED_EVEN_KHR;
5985 enum VK_CHROMA_LOCATION_MIDPOINT_KHR     = VkChromaLocation.VK_CHROMA_LOCATION_MIDPOINT_KHR;
5986 enum VK_CHROMA_LOCATION_BEGIN_RANGE      = VkChromaLocation.VK_CHROMA_LOCATION_BEGIN_RANGE;
5987 enum VK_CHROMA_LOCATION_END_RANGE        = VkChromaLocation.VK_CHROMA_LOCATION_END_RANGE;
5988 enum VK_CHROMA_LOCATION_RANGE_SIZE       = VkChromaLocation.VK_CHROMA_LOCATION_RANGE_SIZE;
5989 enum VK_CHROMA_LOCATION_MAX_ENUM         = VkChromaLocation.VK_CHROMA_LOCATION_MAX_ENUM;
5990 
5991 enum VkDescriptorUpdateTemplateType {
5992     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET            = 0,
5993     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR      = 1,
5994     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR        = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
5995     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE               = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
5996     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE                 = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET,
5997     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE                = VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET - VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET + 1,
5998     VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM                  = 0x7FFFFFFF
5999 }
6000 
6001 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET           = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET;
6002 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR     = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR;
6003 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR       = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR;
6004 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE              = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_BEGIN_RANGE;
6005 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE                = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_END_RANGE;
6006 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE               = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_RANGE_SIZE;
6007 enum VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM                 = VkDescriptorUpdateTemplateType.VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM;
6008 
6009 alias VkSubgroupFeatureFlags = VkFlags;
6010 enum VkSubgroupFeatureFlagBits : VkSubgroupFeatureFlags {
6011     VK_SUBGROUP_FEATURE_BASIC_BIT                = 0x00000001,
6012     VK_SUBGROUP_FEATURE_VOTE_BIT                 = 0x00000002,
6013     VK_SUBGROUP_FEATURE_ARITHMETIC_BIT           = 0x00000004,
6014     VK_SUBGROUP_FEATURE_BALLOT_BIT               = 0x00000008,
6015     VK_SUBGROUP_FEATURE_SHUFFLE_BIT              = 0x00000010,
6016     VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT     = 0x00000020,
6017     VK_SUBGROUP_FEATURE_CLUSTERED_BIT            = 0x00000040,
6018     VK_SUBGROUP_FEATURE_QUAD_BIT                 = 0x00000080,
6019     VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV       = 0x00000100,
6020     VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM       = 0x7FFFFFFF
6021 }
6022 
6023 enum VK_SUBGROUP_FEATURE_BASIC_BIT               = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_BASIC_BIT;
6024 enum VK_SUBGROUP_FEATURE_VOTE_BIT                = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_VOTE_BIT;
6025 enum VK_SUBGROUP_FEATURE_ARITHMETIC_BIT          = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_ARITHMETIC_BIT;
6026 enum VK_SUBGROUP_FEATURE_BALLOT_BIT              = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_BALLOT_BIT;
6027 enum VK_SUBGROUP_FEATURE_SHUFFLE_BIT             = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_SHUFFLE_BIT;
6028 enum VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT    = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT;
6029 enum VK_SUBGROUP_FEATURE_CLUSTERED_BIT           = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_CLUSTERED_BIT;
6030 enum VK_SUBGROUP_FEATURE_QUAD_BIT                = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_QUAD_BIT;
6031 enum VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV      = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV;
6032 enum VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM      = VkSubgroupFeatureFlagBits.VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM;
6033 
6034 alias VkPeerMemoryFeatureFlags = VkFlags;
6035 enum VkPeerMemoryFeatureFlagBits : VkPeerMemoryFeatureFlags {
6036     VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT                  = 0x00000001,
6037     VK_PEER_MEMORY_FEATURE_COPY_DST_BIT                  = 0x00000002,
6038     VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT               = 0x00000004,
6039     VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT               = 0x00000008,
6040     VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR              = VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT,
6041     VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR              = VK_PEER_MEMORY_FEATURE_COPY_DST_BIT,
6042     VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR           = VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT,
6043     VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR           = VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT,
6044     VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM            = 0x7FFFFFFF
6045 }
6046 
6047 enum VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT                 = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT;
6048 enum VK_PEER_MEMORY_FEATURE_COPY_DST_BIT                 = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_COPY_DST_BIT;
6049 enum VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT              = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT;
6050 enum VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT              = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT;
6051 enum VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR             = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR;
6052 enum VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR             = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR;
6053 enum VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR          = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR;
6054 enum VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR          = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR;
6055 enum VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM           = VkPeerMemoryFeatureFlagBits.VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM;
6056 
6057 alias VkMemoryAllocateFlags = VkFlags;
6058 enum VkMemoryAllocateFlagBits : VkMemoryAllocateFlags {
6059     VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT                           = 0x00000001,
6060     VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT                        = 0x00000002,
6061     VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT         = 0x00000004,
6062     VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR                       = VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT,
6063     VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR                    = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT,
6064     VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR     = VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT,
6065     VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM                        = 0x7FFFFFFF
6066 }
6067 
6068 enum VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT                          = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT;
6069 enum VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT                       = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT;
6070 enum VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT        = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT;
6071 enum VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR                      = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR;
6072 enum VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR                   = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR;
6073 enum VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR    = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR;
6074 enum VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM                       = VkMemoryAllocateFlagBits.VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM;
6075 alias VkCommandPoolTrimFlags = VkFlags;
6076 alias VkDescriptorUpdateTemplateCreateFlags = VkFlags;
6077 
6078 alias VkExternalMemoryHandleTypeFlags = VkFlags;
6079 enum VkExternalMemoryHandleTypeFlagBits : VkExternalMemoryHandleTypeFlags {
6080     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT                         = 0x00000001,
6081     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT                      = 0x00000002,
6082     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT                  = 0x00000004,
6083     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT                     = 0x00000008,
6084     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT                 = 0x00000010,
6085     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT                        = 0x00000020,
6086     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT                    = 0x00000040,
6087     VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT                       = 0x00000200,
6088     VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID   = 0x00000400,
6089     VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT               = 0x00000080,
6090     VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT    = 0x00000100,
6091     VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA                = 0x00000800,
6092     VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV                   = 0x00001000,
6093     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR                     = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT,
6094     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR                  = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,
6095     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR              = VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
6096     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR                 = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,
6097     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR             = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT,
6098     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR                    = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT,
6099     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR                = VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,
6100     VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM                    = 0x7FFFFFFF
6101 }
6102 
6103 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT                        = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT;
6104 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT                     = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT;
6105 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT                 = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT;
6106 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT                    = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT;
6107 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT                = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT;
6108 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT                       = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT;
6109 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT                   = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT;
6110 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT                      = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT;
6111 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID  = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID;
6112 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT              = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT;
6113 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT   = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT;
6114 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA               = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA;
6115 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV                  = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV;
6116 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR                    = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR;
6117 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR                 = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR;
6118 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR             = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR;
6119 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR                = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR;
6120 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR            = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR;
6121 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR                   = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR;
6122 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR               = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR;
6123 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM                   = VkExternalMemoryHandleTypeFlagBits.VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM;
6124 
6125 alias VkExternalMemoryFeatureFlags = VkFlags;
6126 enum VkExternalMemoryFeatureFlagBits : VkExternalMemoryFeatureFlags {
6127     VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT        = 0x00000001,
6128     VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT            = 0x00000002,
6129     VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT            = 0x00000004,
6130     VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR    = VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT,
6131     VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR        = VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT,
6132     VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR        = VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT,
6133     VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM        = 0x7FFFFFFF
6134 }
6135 
6136 enum VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT       = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT;
6137 enum VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT           = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT;
6138 enum VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT           = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT;
6139 enum VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR   = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR;
6140 enum VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR       = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR;
6141 enum VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR       = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR;
6142 enum VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM       = VkExternalMemoryFeatureFlagBits.VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM;
6143 
6144 alias VkExternalFenceHandleTypeFlags = VkFlags;
6145 enum VkExternalFenceHandleTypeFlagBits : VkExternalFenceHandleTypeFlags {
6146     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT                  = 0x00000001,
6147     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT               = 0x00000002,
6148     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT           = 0x00000004,
6149     VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT                    = 0x00000008,
6150     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR              = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT,
6151     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR           = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
6152     VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR       = VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
6153     VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR                = VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT,
6154     VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM             = 0x7FFFFFFF
6155 }
6156 
6157 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT                 = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT;
6158 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT              = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT;
6159 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT          = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT;
6160 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT                   = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT;
6161 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR             = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR;
6162 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR          = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR;
6163 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR      = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR;
6164 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR               = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR;
6165 enum VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM            = VkExternalFenceHandleTypeFlagBits.VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM;
6166 
6167 alias VkExternalFenceFeatureFlags = VkFlags;
6168 enum VkExternalFenceFeatureFlagBits : VkExternalFenceFeatureFlags {
6169     VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT             = 0x00000001,
6170     VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT             = 0x00000002,
6171     VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR         = VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT,
6172     VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR         = VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT,
6173     VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
6174 }
6175 
6176 enum VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT            = VkExternalFenceFeatureFlagBits.VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT;
6177 enum VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT            = VkExternalFenceFeatureFlagBits.VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT;
6178 enum VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR        = VkExternalFenceFeatureFlagBits.VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR;
6179 enum VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR        = VkExternalFenceFeatureFlagBits.VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR;
6180 enum VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM        = VkExternalFenceFeatureFlagBits.VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM;
6181 
6182 alias VkFenceImportFlags = VkFlags;
6183 enum VkFenceImportFlagBits : VkFenceImportFlags {
6184     VK_FENCE_IMPORT_TEMPORARY_BIT                = 0x00000001,
6185     VK_FENCE_IMPORT_TEMPORARY_BIT_KHR            = VK_FENCE_IMPORT_TEMPORARY_BIT,
6186     VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
6187 }
6188 
6189 enum VK_FENCE_IMPORT_TEMPORARY_BIT               = VkFenceImportFlagBits.VK_FENCE_IMPORT_TEMPORARY_BIT;
6190 enum VK_FENCE_IMPORT_TEMPORARY_BIT_KHR           = VkFenceImportFlagBits.VK_FENCE_IMPORT_TEMPORARY_BIT_KHR;
6191 enum VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM          = VkFenceImportFlagBits.VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM;
6192 
6193 alias VkSemaphoreImportFlags = VkFlags;
6194 enum VkSemaphoreImportFlagBits : VkSemaphoreImportFlags {
6195     VK_SEMAPHORE_IMPORT_TEMPORARY_BIT            = 0x00000001,
6196     VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR        = VK_SEMAPHORE_IMPORT_TEMPORARY_BIT,
6197     VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM       = 0x7FFFFFFF
6198 }
6199 
6200 enum VK_SEMAPHORE_IMPORT_TEMPORARY_BIT           = VkSemaphoreImportFlagBits.VK_SEMAPHORE_IMPORT_TEMPORARY_BIT;
6201 enum VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR       = VkSemaphoreImportFlagBits.VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR;
6202 enum VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM      = VkSemaphoreImportFlagBits.VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM;
6203 
6204 alias VkExternalSemaphoreHandleTypeFlags = VkFlags;
6205 enum VkExternalSemaphoreHandleTypeFlagBits : VkExternalSemaphoreHandleTypeFlags {
6206     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT              = 0x00000001,
6207     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT           = 0x00000002,
6208     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT       = 0x00000004,
6209     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT            = 0x00000008,
6210     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT                = 0x00000010,
6211     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA   = 0x00000080,
6212     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT            = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
6213     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR          = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT,
6214     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR       = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT,
6215     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR   = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT,
6216     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR        = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT,
6217     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR            = VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT,
6218     VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
6219 }
6220 
6221 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT             = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT;
6222 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT          = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT;
6223 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT      = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT;
6224 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT           = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT;
6225 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT               = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT;
6226 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA  = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA;
6227 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT           = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT;
6228 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR         = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR;
6229 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR      = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR;
6230 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR  = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR;
6231 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR       = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR;
6232 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR           = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR;
6233 enum VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM        = VkExternalSemaphoreHandleTypeFlagBits.VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM;
6234 
6235 alias VkExternalSemaphoreFeatureFlags = VkFlags;
6236 enum VkExternalSemaphoreFeatureFlagBits : VkExternalSemaphoreFeatureFlags {
6237     VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT         = 0x00000001,
6238     VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT         = 0x00000002,
6239     VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR     = VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT,
6240     VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR     = VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT,
6241     VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM     = 0x7FFFFFFF
6242 }
6243 
6244 enum VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT        = VkExternalSemaphoreFeatureFlagBits.VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT;
6245 enum VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT        = VkExternalSemaphoreFeatureFlagBits.VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT;
6246 enum VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR    = VkExternalSemaphoreFeatureFlagBits.VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR;
6247 enum VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR    = VkExternalSemaphoreFeatureFlagBits.VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR;
6248 enum VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM    = VkExternalSemaphoreFeatureFlagBits.VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM;
6249 
6250 struct VkPhysicalDeviceSubgroupProperties {
6251     VkStructureType         sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES;
6252     void*                   pNext;
6253     uint32_t                subgroupSize;
6254     VkShaderStageFlags      supportedStages;
6255     VkSubgroupFeatureFlags  supportedOperations;
6256     VkBool32                quadOperationsInAllStages;
6257 }
6258 
6259 struct VkBindBufferMemoryInfo {
6260     VkStructureType  sType = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO;
6261     const( void )*   pNext;
6262     VkBuffer         buffer;
6263     VkDeviceMemory   memory;
6264     VkDeviceSize     memoryOffset;
6265 }
6266 
6267 struct VkBindImageMemoryInfo {
6268     VkStructureType  sType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO;
6269     const( void )*   pNext;
6270     VkImage          image;
6271     VkDeviceMemory   memory;
6272     VkDeviceSize     memoryOffset;
6273 }
6274 
6275 struct VkPhysicalDevice16BitStorageFeatures {
6276     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES;
6277     void*            pNext;
6278     VkBool32         storageBuffer16BitAccess;
6279     VkBool32         uniformAndStorageBuffer16BitAccess;
6280     VkBool32         storagePushConstant16;
6281     VkBool32         storageInputOutput16;
6282 }
6283 
6284 struct VkMemoryDedicatedRequirements {
6285     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS;
6286     void*            pNext;
6287     VkBool32         prefersDedicatedAllocation;
6288     VkBool32         requiresDedicatedAllocation;
6289 }
6290 
6291 struct VkMemoryDedicatedAllocateInfo {
6292     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO;
6293     const( void )*   pNext;
6294     VkImage          image;
6295     VkBuffer         buffer;
6296 }
6297 
6298 struct VkMemoryAllocateFlagsInfo {
6299     VkStructureType        sType = VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO;
6300     const( void )*         pNext;
6301     VkMemoryAllocateFlags  flags;
6302     uint32_t               deviceMask;
6303 }
6304 
6305 struct VkDeviceGroupRenderPassBeginInfo {
6306     VkStructureType     sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO;
6307     const( void )*      pNext;
6308     uint32_t            deviceMask;
6309     uint32_t            deviceRenderAreaCount;
6310     const( VkRect2D )*  pDeviceRenderAreas;
6311 }
6312 
6313 struct VkDeviceGroupCommandBufferBeginInfo {
6314     VkStructureType  sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO;
6315     const( void )*   pNext;
6316     uint32_t         deviceMask;
6317 }
6318 
6319 struct VkDeviceGroupSubmitInfo {
6320     VkStructureType     sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO;
6321     const( void )*      pNext;
6322     uint32_t            waitSemaphoreCount;
6323     const( uint32_t )*  pWaitSemaphoreDeviceIndices;
6324     uint32_t            commandBufferCount;
6325     const( uint32_t )*  pCommandBufferDeviceMasks;
6326     uint32_t            signalSemaphoreCount;
6327     const( uint32_t )*  pSignalSemaphoreDeviceIndices;
6328 }
6329 
6330 struct VkDeviceGroupBindSparseInfo {
6331     VkStructureType  sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO;
6332     const( void )*   pNext;
6333     uint32_t         resourceDeviceIndex;
6334     uint32_t         memoryDeviceIndex;
6335 }
6336 
6337 struct VkBindBufferMemoryDeviceGroupInfo {
6338     VkStructureType     sType = VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO;
6339     const( void )*      pNext;
6340     uint32_t            deviceIndexCount;
6341     const( uint32_t )*  pDeviceIndices;
6342 }
6343 
6344 struct VkBindImageMemoryDeviceGroupInfo {
6345     VkStructureType     sType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO;
6346     const( void )*      pNext;
6347     uint32_t            deviceIndexCount;
6348     const( uint32_t )*  pDeviceIndices;
6349     uint32_t            splitInstanceBindRegionCount;
6350     const( VkRect2D )*  pSplitInstanceBindRegions;
6351 }
6352 
6353 struct VkPhysicalDeviceGroupProperties {
6354     VkStructureType                               sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES;
6355     void*                                         pNext;
6356     uint32_t                                      physicalDeviceCount;
6357     VkPhysicalDevice[ VK_MAX_DEVICE_GROUP_SIZE ]  physicalDevices;
6358     VkBool32                                      subsetAllocation;
6359 }
6360 
6361 struct VkDeviceGroupDeviceCreateInfo {
6362     VkStructureType             sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO;
6363     const( void )*              pNext;
6364     uint32_t                    physicalDeviceCount;
6365     const( VkPhysicalDevice )*  pPhysicalDevices;
6366 }
6367 
6368 struct VkBufferMemoryRequirementsInfo2 {
6369     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2;
6370     const( void )*   pNext;
6371     VkBuffer         buffer;
6372 }
6373 
6374 struct VkImageMemoryRequirementsInfo2 {
6375     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2;
6376     const( void )*   pNext;
6377     VkImage          image;
6378 }
6379 
6380 struct VkImageSparseMemoryRequirementsInfo2 {
6381     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2;
6382     const( void )*   pNext;
6383     VkImage          image;
6384 }
6385 
6386 struct VkMemoryRequirements2 {
6387     VkStructureType       sType = VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2;
6388     void*                 pNext;
6389     VkMemoryRequirements  memoryRequirements;
6390 }
6391 
6392 struct VkSparseImageMemoryRequirements2 {
6393     VkStructureType                  sType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2;
6394     void*                            pNext;
6395     VkSparseImageMemoryRequirements  memoryRequirements;
6396 }
6397 
6398 struct VkPhysicalDeviceFeatures2 {
6399     VkStructureType           sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2;
6400     void*                     pNext;
6401     VkPhysicalDeviceFeatures  features;
6402 }
6403 
6404 struct VkPhysicalDeviceProperties2 {
6405     VkStructureType             sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2;
6406     void*                       pNext;
6407     VkPhysicalDeviceProperties  properties;
6408 }
6409 
6410 struct VkFormatProperties2 {
6411     VkStructureType     sType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2;
6412     void*               pNext;
6413     VkFormatProperties  formatProperties;
6414 }
6415 
6416 struct VkImageFormatProperties2 {
6417     VkStructureType          sType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2;
6418     void*                    pNext;
6419     VkImageFormatProperties  imageFormatProperties;
6420 }
6421 
6422 struct VkPhysicalDeviceImageFormatInfo2 {
6423     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2;
6424     const( void )*      pNext;
6425     VkFormat            format;
6426     VkImageType         type;
6427     VkImageTiling       tiling;
6428     VkImageUsageFlags   usage;
6429     VkImageCreateFlags  flags;
6430 }
6431 
6432 struct VkQueueFamilyProperties2 {
6433     VkStructureType          sType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2;
6434     void*                    pNext;
6435     VkQueueFamilyProperties  queueFamilyProperties;
6436 }
6437 
6438 struct VkPhysicalDeviceMemoryProperties2 {
6439     VkStructureType                   sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2;
6440     void*                             pNext;
6441     VkPhysicalDeviceMemoryProperties  memoryProperties;
6442 }
6443 
6444 struct VkSparseImageFormatProperties2 {
6445     VkStructureType                sType = VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2;
6446     void*                          pNext;
6447     VkSparseImageFormatProperties  properties;
6448 }
6449 
6450 struct VkPhysicalDeviceSparseImageFormatInfo2 {
6451     VkStructureType        sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2;
6452     const( void )*         pNext;
6453     VkFormat               format;
6454     VkImageType            type;
6455     VkSampleCountFlagBits  samples;
6456     VkImageUsageFlags      usage;
6457     VkImageTiling          tiling;
6458 }
6459 
6460 struct VkPhysicalDevicePointClippingProperties {
6461     VkStructureType          sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES;
6462     void*                    pNext;
6463     VkPointClippingBehavior  pointClippingBehavior;
6464 }
6465 
6466 struct VkInputAttachmentAspectReference {
6467     uint32_t            subpass;
6468     uint32_t            inputAttachmentIndex;
6469     VkImageAspectFlags  aspectMask;
6470 }
6471 
6472 struct VkRenderPassInputAttachmentAspectCreateInfo {
6473     VkStructureType                             sType = VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO;
6474     const( void )*                              pNext;
6475     uint32_t                                    aspectReferenceCount;
6476     const( VkInputAttachmentAspectReference )*  pAspectReferences;
6477 }
6478 
6479 struct VkImageViewUsageCreateInfo {
6480     VkStructureType    sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO;
6481     const( void )*     pNext;
6482     VkImageUsageFlags  usage;
6483 }
6484 
6485 struct VkPipelineTessellationDomainOriginStateCreateInfo {
6486     VkStructureType             sType = VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO;
6487     const( void )*              pNext;
6488     VkTessellationDomainOrigin  domainOrigin;
6489 }
6490 
6491 struct VkRenderPassMultiviewCreateInfo {
6492     VkStructureType     sType = VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO;
6493     const( void )*      pNext;
6494     uint32_t            subpassCount;
6495     const( uint32_t )*  pViewMasks;
6496     uint32_t            dependencyCount;
6497     const( int32_t )*   pViewOffsets;
6498     uint32_t            correlationMaskCount;
6499     const( uint32_t )*  pCorrelationMasks;
6500 }
6501 
6502 struct VkPhysicalDeviceMultiviewFeatures {
6503     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES;
6504     void*            pNext;
6505     VkBool32         multiview;
6506     VkBool32         multiviewGeometryShader;
6507     VkBool32         multiviewTessellationShader;
6508 }
6509 
6510 struct VkPhysicalDeviceMultiviewProperties {
6511     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES;
6512     void*            pNext;
6513     uint32_t         maxMultiviewViewCount;
6514     uint32_t         maxMultiviewInstanceIndex;
6515 }
6516 
6517 struct VkPhysicalDeviceVariablePointersFeatures {
6518     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES;
6519     void*            pNext;
6520     VkBool32         variablePointersStorageBuffer;
6521     VkBool32         variablePointers;
6522 }
6523 alias VkPhysicalDeviceVariablePointerFeatures = VkPhysicalDeviceVariablePointersFeatures;
6524 
6525 struct VkPhysicalDeviceProtectedMemoryFeatures {
6526     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES;
6527     void*            pNext;
6528     VkBool32         protectedMemory;
6529 }
6530 
6531 struct VkPhysicalDeviceProtectedMemoryProperties {
6532     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES;
6533     void*            pNext;
6534     VkBool32         protectedNoFault;
6535 }
6536 
6537 struct VkDeviceQueueInfo2 {
6538     VkStructureType           sType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2;
6539     const( void )*            pNext;
6540     VkDeviceQueueCreateFlags  flags;
6541     uint32_t                  queueFamilyIndex;
6542     uint32_t                  queueIndex;
6543 }
6544 
6545 struct VkProtectedSubmitInfo {
6546     VkStructureType  sType = VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO;
6547     const( void )*   pNext;
6548     VkBool32         protectedSubmit;
6549 }
6550 
6551 struct VkSamplerYcbcrConversionCreateInfo {
6552     VkStructureType                sType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO;
6553     const( void )*                 pNext;
6554     VkFormat                       format;
6555     VkSamplerYcbcrModelConversion  ycbcrModel;
6556     VkSamplerYcbcrRange            ycbcrRange;
6557     VkComponentMapping             components;
6558     VkChromaLocation               xChromaOffset;
6559     VkChromaLocation               yChromaOffset;
6560     VkFilter                       chromaFilter;
6561     VkBool32                       forceExplicitReconstruction;
6562 }
6563 
6564 struct VkSamplerYcbcrConversionInfo {
6565     VkStructureType           sType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO;
6566     const( void )*            pNext;
6567     VkSamplerYcbcrConversion  conversion;
6568 }
6569 
6570 struct VkBindImagePlaneMemoryInfo {
6571     VkStructureType        sType = VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO;
6572     const( void )*         pNext;
6573     VkImageAspectFlagBits  planeAspect;
6574 }
6575 
6576 struct VkImagePlaneMemoryRequirementsInfo {
6577     VkStructureType        sType = VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO;
6578     const( void )*         pNext;
6579     VkImageAspectFlagBits  planeAspect;
6580 }
6581 
6582 struct VkPhysicalDeviceSamplerYcbcrConversionFeatures {
6583     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES;
6584     void*            pNext;
6585     VkBool32         samplerYcbcrConversion;
6586 }
6587 
6588 struct VkSamplerYcbcrConversionImageFormatProperties {
6589     VkStructureType  sType = VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES;
6590     void*            pNext;
6591     uint32_t         combinedImageSamplerDescriptorCount;
6592 }
6593 
6594 struct VkDescriptorUpdateTemplateEntry {
6595     uint32_t          dstBinding;
6596     uint32_t          dstArrayElement;
6597     uint32_t          descriptorCount;
6598     VkDescriptorType  descriptorType;
6599     size_t            offset;
6600     size_t            stride;
6601 }
6602 
6603 struct VkDescriptorUpdateTemplateCreateInfo {
6604     VkStructureType                            sType = VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO;
6605     const( void )*                             pNext;
6606     VkDescriptorUpdateTemplateCreateFlags      flags;
6607     uint32_t                                   descriptorUpdateEntryCount;
6608     const( VkDescriptorUpdateTemplateEntry )*  pDescriptorUpdateEntries;
6609     VkDescriptorUpdateTemplateType             templateType;
6610     VkDescriptorSetLayout                      descriptorSetLayout;
6611     VkPipelineBindPoint                        pipelineBindPoint;
6612     VkPipelineLayout                           pipelineLayout;
6613     uint32_t                                   set;
6614 }
6615 
6616 struct VkExternalMemoryProperties {
6617     VkExternalMemoryFeatureFlags     externalMemoryFeatures;
6618     VkExternalMemoryHandleTypeFlags  exportFromImportedHandleTypes;
6619     VkExternalMemoryHandleTypeFlags  compatibleHandleTypes;
6620 }
6621 
6622 struct VkPhysicalDeviceExternalImageFormatInfo {
6623     VkStructureType                     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO;
6624     const( void )*                      pNext;
6625     VkExternalMemoryHandleTypeFlagBits  handleType;
6626 }
6627 
6628 struct VkExternalImageFormatProperties {
6629     VkStructureType             sType = VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES;
6630     void*                       pNext;
6631     VkExternalMemoryProperties  externalMemoryProperties;
6632 }
6633 
6634 struct VkPhysicalDeviceExternalBufferInfo {
6635     VkStructureType                     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO;
6636     const( void )*                      pNext;
6637     VkBufferCreateFlags                 flags;
6638     VkBufferUsageFlags                  usage;
6639     VkExternalMemoryHandleTypeFlagBits  handleType;
6640 }
6641 
6642 struct VkExternalBufferProperties {
6643     VkStructureType             sType = VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES;
6644     void*                       pNext;
6645     VkExternalMemoryProperties  externalMemoryProperties;
6646 }
6647 
6648 struct VkPhysicalDeviceIDProperties {
6649     VkStructureType          sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES;
6650     void*                    pNext;
6651     uint8_t[ VK_UUID_SIZE ]  deviceUUID;
6652     uint8_t[ VK_UUID_SIZE ]  driverUUID;
6653     uint8_t[ VK_LUID_SIZE ]  deviceLUID;
6654     uint32_t                 deviceNodeMask;
6655     VkBool32                 deviceLUIDValid;
6656 }
6657 
6658 struct VkExternalMemoryImageCreateInfo {
6659     VkStructureType                  sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO;
6660     const( void )*                   pNext;
6661     VkExternalMemoryHandleTypeFlags  handleTypes;
6662 }
6663 
6664 struct VkExternalMemoryBufferCreateInfo {
6665     VkStructureType                  sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO;
6666     const( void )*                   pNext;
6667     VkExternalMemoryHandleTypeFlags  handleTypes;
6668 }
6669 
6670 struct VkExportMemoryAllocateInfo {
6671     VkStructureType                  sType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO;
6672     const( void )*                   pNext;
6673     VkExternalMemoryHandleTypeFlags  handleTypes;
6674 }
6675 
6676 struct VkPhysicalDeviceExternalFenceInfo {
6677     VkStructureType                    sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO;
6678     const( void )*                     pNext;
6679     VkExternalFenceHandleTypeFlagBits  handleType;
6680 }
6681 
6682 struct VkExternalFenceProperties {
6683     VkStructureType                 sType = VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES;
6684     void*                           pNext;
6685     VkExternalFenceHandleTypeFlags  exportFromImportedHandleTypes;
6686     VkExternalFenceHandleTypeFlags  compatibleHandleTypes;
6687     VkExternalFenceFeatureFlags     externalFenceFeatures;
6688 }
6689 
6690 struct VkExportFenceCreateInfo {
6691     VkStructureType                 sType = VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO;
6692     const( void )*                  pNext;
6693     VkExternalFenceHandleTypeFlags  handleTypes;
6694 }
6695 
6696 struct VkExportSemaphoreCreateInfo {
6697     VkStructureType                     sType = VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO;
6698     const( void )*                      pNext;
6699     VkExternalSemaphoreHandleTypeFlags  handleTypes;
6700 }
6701 
6702 struct VkPhysicalDeviceExternalSemaphoreInfo {
6703     VkStructureType                        sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO;
6704     const( void )*                         pNext;
6705     VkExternalSemaphoreHandleTypeFlagBits  handleType;
6706 }
6707 
6708 struct VkExternalSemaphoreProperties {
6709     VkStructureType                     sType = VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES;
6710     void*                               pNext;
6711     VkExternalSemaphoreHandleTypeFlags  exportFromImportedHandleTypes;
6712     VkExternalSemaphoreHandleTypeFlags  compatibleHandleTypes;
6713     VkExternalSemaphoreFeatureFlags     externalSemaphoreFeatures;
6714 }
6715 
6716 struct VkPhysicalDeviceMaintenance3Properties {
6717     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES;
6718     void*            pNext;
6719     uint32_t         maxPerSetDescriptors;
6720     VkDeviceSize     maxMemoryAllocationSize;
6721 }
6722 
6723 struct VkDescriptorSetLayoutSupport {
6724     VkStructureType  sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT;
6725     void*            pNext;
6726     VkBool32         supported;
6727 }
6728 
6729 struct VkPhysicalDeviceShaderDrawParametersFeatures {
6730     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES;
6731     void*            pNext;
6732     VkBool32         shaderDrawParameters;
6733 }
6734 alias VkPhysicalDeviceShaderDrawParameterFeatures = VkPhysicalDeviceShaderDrawParametersFeatures;
6735 
6736 
6737 // - VK_VERSION_1_2 -
6738 enum VK_VERSION_1_2 = 1;
6739 
6740 enum VK_MAX_DRIVER_NAME_SIZE = 256;
6741 enum VK_MAX_DRIVER_INFO_SIZE = 256;
6742 
6743 enum VkDriverId {
6744     VK_DRIVER_ID_AMD_PROPRIETARY                 = 1,
6745     VK_DRIVER_ID_AMD_OPEN_SOURCE                 = 2,
6746     VK_DRIVER_ID_MESA_RADV                       = 3,
6747     VK_DRIVER_ID_NVIDIA_PROPRIETARY              = 4,
6748     VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS       = 5,
6749     VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA          = 6,
6750     VK_DRIVER_ID_IMAGINATION_PROPRIETARY         = 7,
6751     VK_DRIVER_ID_QUALCOMM_PROPRIETARY            = 8,
6752     VK_DRIVER_ID_ARM_PROPRIETARY                 = 9,
6753     VK_DRIVER_ID_GOOGLE_SWIFTSHADER              = 10,
6754     VK_DRIVER_ID_GGP_PROPRIETARY                 = 11,
6755     VK_DRIVER_ID_BROADCOM_PROPRIETARY            = 12,
6756     VK_DRIVER_ID_MESA_LLVMPIPE                   = 13,
6757     VK_DRIVER_ID_MOLTENVK                        = 14,
6758     VK_DRIVER_ID_COREAVI_PROPRIETARY             = 15,
6759     VK_DRIVER_ID_JUICE_PROPRIETARY               = 16,
6760     VK_DRIVER_ID_VERISILICON_PROPRIETARY         = 17,
6761     VK_DRIVER_ID_MESA_TURNIP                     = 18,
6762     VK_DRIVER_ID_MESA_V3DV                       = 19,
6763     VK_DRIVER_ID_MESA_PANVK                      = 20,
6764     VK_DRIVER_ID_SAMSUNG_PROPRIETARY             = 21,
6765     VK_DRIVER_ID_MESA_VENUS                      = 22,
6766     VK_DRIVER_ID_MESA_DOZEN                      = 23,
6767     VK_DRIVER_ID_AMD_PROPRIETARY_KHR             = VK_DRIVER_ID_AMD_PROPRIETARY,
6768     VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR             = VK_DRIVER_ID_AMD_OPEN_SOURCE,
6769     VK_DRIVER_ID_MESA_RADV_KHR                   = VK_DRIVER_ID_MESA_RADV,
6770     VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR          = VK_DRIVER_ID_NVIDIA_PROPRIETARY,
6771     VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR   = VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS,
6772     VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR      = VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA,
6773     VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR     = VK_DRIVER_ID_IMAGINATION_PROPRIETARY,
6774     VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR        = VK_DRIVER_ID_QUALCOMM_PROPRIETARY,
6775     VK_DRIVER_ID_ARM_PROPRIETARY_KHR             = VK_DRIVER_ID_ARM_PROPRIETARY,
6776     VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR          = VK_DRIVER_ID_GOOGLE_SWIFTSHADER,
6777     VK_DRIVER_ID_GGP_PROPRIETARY_KHR             = VK_DRIVER_ID_GGP_PROPRIETARY,
6778     VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR        = VK_DRIVER_ID_BROADCOM_PROPRIETARY,
6779     VK_DRIVER_ID_BEGIN_RANGE                     = VK_DRIVER_ID_AMD_PROPRIETARY,
6780     VK_DRIVER_ID_END_RANGE                       = VK_DRIVER_ID_MESA_DOZEN,
6781     VK_DRIVER_ID_RANGE_SIZE                      = VK_DRIVER_ID_MESA_DOZEN - VK_DRIVER_ID_AMD_PROPRIETARY + 1,
6782     VK_DRIVER_ID_MAX_ENUM                        = 0x7FFFFFFF
6783 }
6784 
6785 enum VK_DRIVER_ID_AMD_PROPRIETARY                = VkDriverId.VK_DRIVER_ID_AMD_PROPRIETARY;
6786 enum VK_DRIVER_ID_AMD_OPEN_SOURCE                = VkDriverId.VK_DRIVER_ID_AMD_OPEN_SOURCE;
6787 enum VK_DRIVER_ID_MESA_RADV                      = VkDriverId.VK_DRIVER_ID_MESA_RADV;
6788 enum VK_DRIVER_ID_NVIDIA_PROPRIETARY             = VkDriverId.VK_DRIVER_ID_NVIDIA_PROPRIETARY;
6789 enum VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS      = VkDriverId.VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS;
6790 enum VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA         = VkDriverId.VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA;
6791 enum VK_DRIVER_ID_IMAGINATION_PROPRIETARY        = VkDriverId.VK_DRIVER_ID_IMAGINATION_PROPRIETARY;
6792 enum VK_DRIVER_ID_QUALCOMM_PROPRIETARY           = VkDriverId.VK_DRIVER_ID_QUALCOMM_PROPRIETARY;
6793 enum VK_DRIVER_ID_ARM_PROPRIETARY                = VkDriverId.VK_DRIVER_ID_ARM_PROPRIETARY;
6794 enum VK_DRIVER_ID_GOOGLE_SWIFTSHADER             = VkDriverId.VK_DRIVER_ID_GOOGLE_SWIFTSHADER;
6795 enum VK_DRIVER_ID_GGP_PROPRIETARY                = VkDriverId.VK_DRIVER_ID_GGP_PROPRIETARY;
6796 enum VK_DRIVER_ID_BROADCOM_PROPRIETARY           = VkDriverId.VK_DRIVER_ID_BROADCOM_PROPRIETARY;
6797 enum VK_DRIVER_ID_MESA_LLVMPIPE                  = VkDriverId.VK_DRIVER_ID_MESA_LLVMPIPE;
6798 enum VK_DRIVER_ID_MOLTENVK                       = VkDriverId.VK_DRIVER_ID_MOLTENVK;
6799 enum VK_DRIVER_ID_COREAVI_PROPRIETARY            = VkDriverId.VK_DRIVER_ID_COREAVI_PROPRIETARY;
6800 enum VK_DRIVER_ID_JUICE_PROPRIETARY              = VkDriverId.VK_DRIVER_ID_JUICE_PROPRIETARY;
6801 enum VK_DRIVER_ID_VERISILICON_PROPRIETARY        = VkDriverId.VK_DRIVER_ID_VERISILICON_PROPRIETARY;
6802 enum VK_DRIVER_ID_MESA_TURNIP                    = VkDriverId.VK_DRIVER_ID_MESA_TURNIP;
6803 enum VK_DRIVER_ID_MESA_V3DV                      = VkDriverId.VK_DRIVER_ID_MESA_V3DV;
6804 enum VK_DRIVER_ID_MESA_PANVK                     = VkDriverId.VK_DRIVER_ID_MESA_PANVK;
6805 enum VK_DRIVER_ID_SAMSUNG_PROPRIETARY            = VkDriverId.VK_DRIVER_ID_SAMSUNG_PROPRIETARY;
6806 enum VK_DRIVER_ID_MESA_VENUS                     = VkDriverId.VK_DRIVER_ID_MESA_VENUS;
6807 enum VK_DRIVER_ID_MESA_DOZEN                     = VkDriverId.VK_DRIVER_ID_MESA_DOZEN;
6808 enum VK_DRIVER_ID_AMD_PROPRIETARY_KHR            = VkDriverId.VK_DRIVER_ID_AMD_PROPRIETARY_KHR;
6809 enum VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR            = VkDriverId.VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR;
6810 enum VK_DRIVER_ID_MESA_RADV_KHR                  = VkDriverId.VK_DRIVER_ID_MESA_RADV_KHR;
6811 enum VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR         = VkDriverId.VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR;
6812 enum VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR  = VkDriverId.VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR;
6813 enum VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR     = VkDriverId.VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR;
6814 enum VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR    = VkDriverId.VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR;
6815 enum VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR       = VkDriverId.VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR;
6816 enum VK_DRIVER_ID_ARM_PROPRIETARY_KHR            = VkDriverId.VK_DRIVER_ID_ARM_PROPRIETARY_KHR;
6817 enum VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR         = VkDriverId.VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR;
6818 enum VK_DRIVER_ID_GGP_PROPRIETARY_KHR            = VkDriverId.VK_DRIVER_ID_GGP_PROPRIETARY_KHR;
6819 enum VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR       = VkDriverId.VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR;
6820 enum VK_DRIVER_ID_BEGIN_RANGE                    = VkDriverId.VK_DRIVER_ID_BEGIN_RANGE;
6821 enum VK_DRIVER_ID_END_RANGE                      = VkDriverId.VK_DRIVER_ID_END_RANGE;
6822 enum VK_DRIVER_ID_RANGE_SIZE                     = VkDriverId.VK_DRIVER_ID_RANGE_SIZE;
6823 enum VK_DRIVER_ID_MAX_ENUM                       = VkDriverId.VK_DRIVER_ID_MAX_ENUM;
6824 
6825 enum VkShaderFloatControlsIndependence {
6826     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY            = 0,
6827     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL                    = 1,
6828     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE                   = 2,
6829     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR        = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY,
6830     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR                = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL,
6831     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR               = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE,
6832     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_BEGIN_RANGE            = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY,
6833     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_END_RANGE              = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE,
6834     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_RANGE_SIZE             = VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE - VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY + 1,
6835     VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_MAX_ENUM               = 0x7FFFFFFF
6836 }
6837 
6838 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY           = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY;
6839 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL                   = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL;
6840 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE                  = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE;
6841 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR       = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR;
6842 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR               = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR;
6843 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR              = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR;
6844 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_BEGIN_RANGE           = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_BEGIN_RANGE;
6845 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_END_RANGE             = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_END_RANGE;
6846 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_RANGE_SIZE            = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_RANGE_SIZE;
6847 enum VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_MAX_ENUM              = VkShaderFloatControlsIndependence.VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_MAX_ENUM;
6848 
6849 enum VkSamplerReductionMode {
6850     VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE           = 0,
6851     VK_SAMPLER_REDUCTION_MODE_MIN                        = 1,
6852     VK_SAMPLER_REDUCTION_MODE_MAX                        = 2,
6853     VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT       = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE,
6854     VK_SAMPLER_REDUCTION_MODE_MIN_EXT                    = VK_SAMPLER_REDUCTION_MODE_MIN,
6855     VK_SAMPLER_REDUCTION_MODE_MAX_EXT                    = VK_SAMPLER_REDUCTION_MODE_MAX,
6856     VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE                = VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE,
6857     VK_SAMPLER_REDUCTION_MODE_END_RANGE                  = VK_SAMPLER_REDUCTION_MODE_MAX,
6858     VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE                 = VK_SAMPLER_REDUCTION_MODE_MAX - VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE + 1,
6859     VK_SAMPLER_REDUCTION_MODE_MAX_ENUM                   = 0x7FFFFFFF
6860 }
6861 
6862 enum VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE          = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE;
6863 enum VK_SAMPLER_REDUCTION_MODE_MIN                       = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_MIN;
6864 enum VK_SAMPLER_REDUCTION_MODE_MAX                       = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_MAX;
6865 enum VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT      = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT;
6866 enum VK_SAMPLER_REDUCTION_MODE_MIN_EXT                   = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_MIN_EXT;
6867 enum VK_SAMPLER_REDUCTION_MODE_MAX_EXT                   = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_MAX_EXT;
6868 enum VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE               = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_BEGIN_RANGE;
6869 enum VK_SAMPLER_REDUCTION_MODE_END_RANGE                 = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_END_RANGE;
6870 enum VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE                = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_RANGE_SIZE;
6871 enum VK_SAMPLER_REDUCTION_MODE_MAX_ENUM                  = VkSamplerReductionMode.VK_SAMPLER_REDUCTION_MODE_MAX_ENUM;
6872 
6873 enum VkSemaphoreType {
6874     VK_SEMAPHORE_TYPE_BINARY             = 0,
6875     VK_SEMAPHORE_TYPE_TIMELINE           = 1,
6876     VK_SEMAPHORE_TYPE_BINARY_KHR         = VK_SEMAPHORE_TYPE_BINARY,
6877     VK_SEMAPHORE_TYPE_TIMELINE_KHR       = VK_SEMAPHORE_TYPE_TIMELINE,
6878     VK_SEMAPHORE_TYPE_BEGIN_RANGE        = VK_SEMAPHORE_TYPE_BINARY,
6879     VK_SEMAPHORE_TYPE_END_RANGE          = VK_SEMAPHORE_TYPE_TIMELINE,
6880     VK_SEMAPHORE_TYPE_RANGE_SIZE         = VK_SEMAPHORE_TYPE_TIMELINE - VK_SEMAPHORE_TYPE_BINARY + 1,
6881     VK_SEMAPHORE_TYPE_MAX_ENUM           = 0x7FFFFFFF
6882 }
6883 
6884 enum VK_SEMAPHORE_TYPE_BINARY            = VkSemaphoreType.VK_SEMAPHORE_TYPE_BINARY;
6885 enum VK_SEMAPHORE_TYPE_TIMELINE          = VkSemaphoreType.VK_SEMAPHORE_TYPE_TIMELINE;
6886 enum VK_SEMAPHORE_TYPE_BINARY_KHR        = VkSemaphoreType.VK_SEMAPHORE_TYPE_BINARY_KHR;
6887 enum VK_SEMAPHORE_TYPE_TIMELINE_KHR      = VkSemaphoreType.VK_SEMAPHORE_TYPE_TIMELINE_KHR;
6888 enum VK_SEMAPHORE_TYPE_BEGIN_RANGE       = VkSemaphoreType.VK_SEMAPHORE_TYPE_BEGIN_RANGE;
6889 enum VK_SEMAPHORE_TYPE_END_RANGE         = VkSemaphoreType.VK_SEMAPHORE_TYPE_END_RANGE;
6890 enum VK_SEMAPHORE_TYPE_RANGE_SIZE        = VkSemaphoreType.VK_SEMAPHORE_TYPE_RANGE_SIZE;
6891 enum VK_SEMAPHORE_TYPE_MAX_ENUM          = VkSemaphoreType.VK_SEMAPHORE_TYPE_MAX_ENUM;
6892 
6893 alias VkResolveModeFlags = VkFlags;
6894 enum VkResolveModeFlagBits : VkResolveModeFlags {
6895     VK_RESOLVE_MODE_NONE                         = 0,
6896     VK_RESOLVE_MODE_SAMPLE_ZERO_BIT              = 0x00000001,
6897     VK_RESOLVE_MODE_AVERAGE_BIT                  = 0x00000002,
6898     VK_RESOLVE_MODE_MIN_BIT                      = 0x00000004,
6899     VK_RESOLVE_MODE_MAX_BIT                      = 0x00000008,
6900     VK_RESOLVE_MODE_NONE_KHR                     = VK_RESOLVE_MODE_NONE,
6901     VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR          = VK_RESOLVE_MODE_SAMPLE_ZERO_BIT,
6902     VK_RESOLVE_MODE_AVERAGE_BIT_KHR              = VK_RESOLVE_MODE_AVERAGE_BIT,
6903     VK_RESOLVE_MODE_MIN_BIT_KHR                  = VK_RESOLVE_MODE_MIN_BIT,
6904     VK_RESOLVE_MODE_MAX_BIT_KHR                  = VK_RESOLVE_MODE_MAX_BIT,
6905     VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
6906 }
6907 
6908 enum VK_RESOLVE_MODE_NONE                        = VkResolveModeFlagBits.VK_RESOLVE_MODE_NONE;
6909 enum VK_RESOLVE_MODE_SAMPLE_ZERO_BIT             = VkResolveModeFlagBits.VK_RESOLVE_MODE_SAMPLE_ZERO_BIT;
6910 enum VK_RESOLVE_MODE_AVERAGE_BIT                 = VkResolveModeFlagBits.VK_RESOLVE_MODE_AVERAGE_BIT;
6911 enum VK_RESOLVE_MODE_MIN_BIT                     = VkResolveModeFlagBits.VK_RESOLVE_MODE_MIN_BIT;
6912 enum VK_RESOLVE_MODE_MAX_BIT                     = VkResolveModeFlagBits.VK_RESOLVE_MODE_MAX_BIT;
6913 enum VK_RESOLVE_MODE_NONE_KHR                    = VkResolveModeFlagBits.VK_RESOLVE_MODE_NONE_KHR;
6914 enum VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR         = VkResolveModeFlagBits.VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR;
6915 enum VK_RESOLVE_MODE_AVERAGE_BIT_KHR             = VkResolveModeFlagBits.VK_RESOLVE_MODE_AVERAGE_BIT_KHR;
6916 enum VK_RESOLVE_MODE_MIN_BIT_KHR                 = VkResolveModeFlagBits.VK_RESOLVE_MODE_MIN_BIT_KHR;
6917 enum VK_RESOLVE_MODE_MAX_BIT_KHR                 = VkResolveModeFlagBits.VK_RESOLVE_MODE_MAX_BIT_KHR;
6918 enum VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM          = VkResolveModeFlagBits.VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM;
6919 
6920 alias VkDescriptorBindingFlags = VkFlags;
6921 enum VkDescriptorBindingFlagBits : VkDescriptorBindingFlags {
6922     VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT                  = 0x00000001,
6923     VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT        = 0x00000002,
6924     VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT                    = 0x00000004,
6925     VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT          = 0x00000008,
6926     VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT              = VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT,
6927     VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT    = VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT,
6928     VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT                = VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT,
6929     VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT      = VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT,
6930     VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM                     = 0x7FFFFFFF
6931 }
6932 
6933 enum VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT                 = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT;
6934 enum VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT       = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT;
6935 enum VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT                   = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT;
6936 enum VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT         = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT;
6937 enum VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT             = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT;
6938 enum VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT   = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT;
6939 enum VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT               = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT;
6940 enum VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT     = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT;
6941 enum VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM                    = VkDescriptorBindingFlagBits.VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM;
6942 
6943 alias VkSemaphoreWaitFlags = VkFlags;
6944 enum VkSemaphoreWaitFlagBits : VkSemaphoreWaitFlags {
6945     VK_SEMAPHORE_WAIT_ANY_BIT                    = 0x00000001,
6946     VK_SEMAPHORE_WAIT_ANY_BIT_KHR                = VK_SEMAPHORE_WAIT_ANY_BIT,
6947     VK_SEMAPHORE_WAIT_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
6948 }
6949 
6950 enum VK_SEMAPHORE_WAIT_ANY_BIT                   = VkSemaphoreWaitFlagBits.VK_SEMAPHORE_WAIT_ANY_BIT;
6951 enum VK_SEMAPHORE_WAIT_ANY_BIT_KHR               = VkSemaphoreWaitFlagBits.VK_SEMAPHORE_WAIT_ANY_BIT_KHR;
6952 enum VK_SEMAPHORE_WAIT_FLAG_BITS_MAX_ENUM        = VkSemaphoreWaitFlagBits.VK_SEMAPHORE_WAIT_FLAG_BITS_MAX_ENUM;
6953 
6954 struct VkPhysicalDeviceVulkan11Features {
6955     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES;
6956     void*            pNext;
6957     VkBool32         storageBuffer16BitAccess;
6958     VkBool32         uniformAndStorageBuffer16BitAccess;
6959     VkBool32         storagePushConstant16;
6960     VkBool32         storageInputOutput16;
6961     VkBool32         multiview;
6962     VkBool32         multiviewGeometryShader;
6963     VkBool32         multiviewTessellationShader;
6964     VkBool32         variablePointersStorageBuffer;
6965     VkBool32         variablePointers;
6966     VkBool32         protectedMemory;
6967     VkBool32         samplerYcbcrConversion;
6968     VkBool32         shaderDrawParameters;
6969 }
6970 
6971 struct VkPhysicalDeviceVulkan11Properties {
6972     VkStructureType          sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES;
6973     void*                    pNext;
6974     uint8_t[ VK_UUID_SIZE ]  deviceUUID;
6975     uint8_t[ VK_UUID_SIZE ]  driverUUID;
6976     uint8_t[ VK_LUID_SIZE ]  deviceLUID;
6977     uint32_t                 deviceNodeMask;
6978     VkBool32                 deviceLUIDValid;
6979     uint32_t                 subgroupSize;
6980     VkShaderStageFlags       subgroupSupportedStages;
6981     VkSubgroupFeatureFlags   subgroupSupportedOperations;
6982     VkBool32                 subgroupQuadOperationsInAllStages;
6983     VkPointClippingBehavior  pointClippingBehavior;
6984     uint32_t                 maxMultiviewViewCount;
6985     uint32_t                 maxMultiviewInstanceIndex;
6986     VkBool32                 protectedNoFault;
6987     uint32_t                 maxPerSetDescriptors;
6988     VkDeviceSize             maxMemoryAllocationSize;
6989 }
6990 
6991 struct VkPhysicalDeviceVulkan12Features {
6992     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES;
6993     void*            pNext;
6994     VkBool32         samplerMirrorClampToEdge;
6995     VkBool32         drawIndirectCount;
6996     VkBool32         storageBuffer8BitAccess;
6997     VkBool32         uniformAndStorageBuffer8BitAccess;
6998     VkBool32         storagePushConstant8;
6999     VkBool32         shaderBufferInt64Atomics;
7000     VkBool32         shaderSharedInt64Atomics;
7001     VkBool32         shaderFloat16;
7002     VkBool32         shaderInt8;
7003     VkBool32         descriptorIndexing;
7004     VkBool32         shaderInputAttachmentArrayDynamicIndexing;
7005     VkBool32         shaderUniformTexelBufferArrayDynamicIndexing;
7006     VkBool32         shaderStorageTexelBufferArrayDynamicIndexing;
7007     VkBool32         shaderUniformBufferArrayNonUniformIndexing;
7008     VkBool32         shaderSampledImageArrayNonUniformIndexing;
7009     VkBool32         shaderStorageBufferArrayNonUniformIndexing;
7010     VkBool32         shaderStorageImageArrayNonUniformIndexing;
7011     VkBool32         shaderInputAttachmentArrayNonUniformIndexing;
7012     VkBool32         shaderUniformTexelBufferArrayNonUniformIndexing;
7013     VkBool32         shaderStorageTexelBufferArrayNonUniformIndexing;
7014     VkBool32         descriptorBindingUniformBufferUpdateAfterBind;
7015     VkBool32         descriptorBindingSampledImageUpdateAfterBind;
7016     VkBool32         descriptorBindingStorageImageUpdateAfterBind;
7017     VkBool32         descriptorBindingStorageBufferUpdateAfterBind;
7018     VkBool32         descriptorBindingUniformTexelBufferUpdateAfterBind;
7019     VkBool32         descriptorBindingStorageTexelBufferUpdateAfterBind;
7020     VkBool32         descriptorBindingUpdateUnusedWhilePending;
7021     VkBool32         descriptorBindingPartiallyBound;
7022     VkBool32         descriptorBindingVariableDescriptorCount;
7023     VkBool32         runtimeDescriptorArray;
7024     VkBool32         samplerFilterMinmax;
7025     VkBool32         scalarBlockLayout;
7026     VkBool32         imagelessFramebuffer;
7027     VkBool32         uniformBufferStandardLayout;
7028     VkBool32         shaderSubgroupExtendedTypes;
7029     VkBool32         separateDepthStencilLayouts;
7030     VkBool32         hostQueryReset;
7031     VkBool32         timelineSemaphore;
7032     VkBool32         bufferDeviceAddress;
7033     VkBool32         bufferDeviceAddressCaptureReplay;
7034     VkBool32         bufferDeviceAddressMultiDevice;
7035     VkBool32         vulkanMemoryModel;
7036     VkBool32         vulkanMemoryModelDeviceScope;
7037     VkBool32         vulkanMemoryModelAvailabilityVisibilityChains;
7038     VkBool32         shaderOutputViewportIndex;
7039     VkBool32         shaderOutputLayer;
7040     VkBool32         subgroupBroadcastDynamicId;
7041 }
7042 
7043 struct VkConformanceVersion {
7044     uint8_t  major;
7045     uint8_t  minor;
7046     uint8_t  subminor;
7047     uint8_t  patch;
7048 }
7049 
7050 struct VkPhysicalDeviceVulkan12Properties {
7051     VkStructureType                    sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES;
7052     void*                              pNext;
7053     VkDriverId                         driverID;
7054     char[ VK_MAX_DRIVER_NAME_SIZE ]    driverName;
7055     char[ VK_MAX_DRIVER_INFO_SIZE ]    driverInfo;
7056     VkConformanceVersion               conformanceVersion;
7057     VkShaderFloatControlsIndependence  denormBehaviorIndependence;
7058     VkShaderFloatControlsIndependence  roundingModeIndependence;
7059     VkBool32                           shaderSignedZeroInfNanPreserveFloat16;
7060     VkBool32                           shaderSignedZeroInfNanPreserveFloat32;
7061     VkBool32                           shaderSignedZeroInfNanPreserveFloat64;
7062     VkBool32                           shaderDenormPreserveFloat16;
7063     VkBool32                           shaderDenormPreserveFloat32;
7064     VkBool32                           shaderDenormPreserveFloat64;
7065     VkBool32                           shaderDenormFlushToZeroFloat16;
7066     VkBool32                           shaderDenormFlushToZeroFloat32;
7067     VkBool32                           shaderDenormFlushToZeroFloat64;
7068     VkBool32                           shaderRoundingModeRTEFloat16;
7069     VkBool32                           shaderRoundingModeRTEFloat32;
7070     VkBool32                           shaderRoundingModeRTEFloat64;
7071     VkBool32                           shaderRoundingModeRTZFloat16;
7072     VkBool32                           shaderRoundingModeRTZFloat32;
7073     VkBool32                           shaderRoundingModeRTZFloat64;
7074     uint32_t                           maxUpdateAfterBindDescriptorsInAllPools;
7075     VkBool32                           shaderUniformBufferArrayNonUniformIndexingNative;
7076     VkBool32                           shaderSampledImageArrayNonUniformIndexingNative;
7077     VkBool32                           shaderStorageBufferArrayNonUniformIndexingNative;
7078     VkBool32                           shaderStorageImageArrayNonUniformIndexingNative;
7079     VkBool32                           shaderInputAttachmentArrayNonUniformIndexingNative;
7080     VkBool32                           robustBufferAccessUpdateAfterBind;
7081     VkBool32                           quadDivergentImplicitLod;
7082     uint32_t                           maxPerStageDescriptorUpdateAfterBindSamplers;
7083     uint32_t                           maxPerStageDescriptorUpdateAfterBindUniformBuffers;
7084     uint32_t                           maxPerStageDescriptorUpdateAfterBindStorageBuffers;
7085     uint32_t                           maxPerStageDescriptorUpdateAfterBindSampledImages;
7086     uint32_t                           maxPerStageDescriptorUpdateAfterBindStorageImages;
7087     uint32_t                           maxPerStageDescriptorUpdateAfterBindInputAttachments;
7088     uint32_t                           maxPerStageUpdateAfterBindResources;
7089     uint32_t                           maxDescriptorSetUpdateAfterBindSamplers;
7090     uint32_t                           maxDescriptorSetUpdateAfterBindUniformBuffers;
7091     uint32_t                           maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
7092     uint32_t                           maxDescriptorSetUpdateAfterBindStorageBuffers;
7093     uint32_t                           maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
7094     uint32_t                           maxDescriptorSetUpdateAfterBindSampledImages;
7095     uint32_t                           maxDescriptorSetUpdateAfterBindStorageImages;
7096     uint32_t                           maxDescriptorSetUpdateAfterBindInputAttachments;
7097     VkResolveModeFlags                 supportedDepthResolveModes;
7098     VkResolveModeFlags                 supportedStencilResolveModes;
7099     VkBool32                           independentResolveNone;
7100     VkBool32                           independentResolve;
7101     VkBool32                           filterMinmaxSingleComponentFormats;
7102     VkBool32                           filterMinmaxImageComponentMapping;
7103     uint64_t                           maxTimelineSemaphoreValueDifference;
7104     VkSampleCountFlags                 framebufferIntegerColorSampleCounts;
7105 }
7106 
7107 struct VkImageFormatListCreateInfo {
7108     VkStructureType     sType = VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO;
7109     const( void )*      pNext;
7110     uint32_t            viewFormatCount;
7111     const( VkFormat )*  pViewFormats;
7112 }
7113 
7114 struct VkAttachmentDescription2 {
7115     VkStructureType               sType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2;
7116     const( void )*                pNext;
7117     VkAttachmentDescriptionFlags  flags;
7118     VkFormat                      format;
7119     VkSampleCountFlagBits         samples;
7120     VkAttachmentLoadOp            loadOp;
7121     VkAttachmentStoreOp           storeOp;
7122     VkAttachmentLoadOp            stencilLoadOp;
7123     VkAttachmentStoreOp           stencilStoreOp;
7124     VkImageLayout                 initialLayout;
7125     VkImageLayout                 finalLayout;
7126 }
7127 
7128 struct VkAttachmentReference2 {
7129     VkStructureType     sType = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2;
7130     const( void )*      pNext;
7131     uint32_t            attachment;
7132     VkImageLayout       layout;
7133     VkImageAspectFlags  aspectMask;
7134 }
7135 
7136 struct VkSubpassDescription2 {
7137     VkStructureType                   sType = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2;
7138     const( void )*                    pNext;
7139     VkSubpassDescriptionFlags         flags;
7140     VkPipelineBindPoint               pipelineBindPoint;
7141     uint32_t                          viewMask;
7142     uint32_t                          inputAttachmentCount;
7143     const( VkAttachmentReference2 )*  pInputAttachments;
7144     uint32_t                          colorAttachmentCount;
7145     const( VkAttachmentReference2 )*  pColorAttachments;
7146     const( VkAttachmentReference2 )*  pResolveAttachments;
7147     const( VkAttachmentReference2 )*  pDepthStencilAttachment;
7148     uint32_t                          preserveAttachmentCount;
7149     const( uint32_t )*                pPreserveAttachments;
7150 }
7151 
7152 struct VkSubpassDependency2 {
7153     VkStructureType       sType = VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2;
7154     const( void )*        pNext;
7155     uint32_t              srcSubpass;
7156     uint32_t              dstSubpass;
7157     VkPipelineStageFlags  srcStageMask;
7158     VkPipelineStageFlags  dstStageMask;
7159     VkAccessFlags         srcAccessMask;
7160     VkAccessFlags         dstAccessMask;
7161     VkDependencyFlags     dependencyFlags;
7162     int32_t               viewOffset;
7163 }
7164 
7165 struct VkRenderPassCreateInfo2 {
7166     VkStructureType                     sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2;
7167     const( void )*                      pNext;
7168     VkRenderPassCreateFlags             flags;
7169     uint32_t                            attachmentCount;
7170     const( VkAttachmentDescription2 )*  pAttachments;
7171     uint32_t                            subpassCount;
7172     const( VkSubpassDescription2 )*     pSubpasses;
7173     uint32_t                            dependencyCount;
7174     const( VkSubpassDependency2 )*      pDependencies;
7175     uint32_t                            correlatedViewMaskCount;
7176     const( uint32_t )*                  pCorrelatedViewMasks;
7177 }
7178 
7179 struct VkSubpassBeginInfo {
7180     VkStructureType    sType = VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO;
7181     const( void )*     pNext;
7182     VkSubpassContents  contents;
7183 }
7184 
7185 struct VkSubpassEndInfo {
7186     VkStructureType  sType = VK_STRUCTURE_TYPE_SUBPASS_END_INFO;
7187     const( void )*   pNext;
7188 }
7189 
7190 struct VkPhysicalDevice8BitStorageFeatures {
7191     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES;
7192     void*            pNext;
7193     VkBool32         storageBuffer8BitAccess;
7194     VkBool32         uniformAndStorageBuffer8BitAccess;
7195     VkBool32         storagePushConstant8;
7196 }
7197 
7198 struct VkPhysicalDeviceDriverProperties {
7199     VkStructureType                  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES;
7200     void*                            pNext;
7201     VkDriverId                       driverID;
7202     char[ VK_MAX_DRIVER_NAME_SIZE ]  driverName;
7203     char[ VK_MAX_DRIVER_INFO_SIZE ]  driverInfo;
7204     VkConformanceVersion             conformanceVersion;
7205 }
7206 
7207 struct VkPhysicalDeviceShaderAtomicInt64Features {
7208     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES;
7209     void*            pNext;
7210     VkBool32         shaderBufferInt64Atomics;
7211     VkBool32         shaderSharedInt64Atomics;
7212 }
7213 
7214 struct VkPhysicalDeviceShaderFloat16Int8Features {
7215     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES;
7216     void*            pNext;
7217     VkBool32         shaderFloat16;
7218     VkBool32         shaderInt8;
7219 }
7220 
7221 struct VkPhysicalDeviceFloatControlsProperties {
7222     VkStructureType                    sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES;
7223     void*                              pNext;
7224     VkShaderFloatControlsIndependence  denormBehaviorIndependence;
7225     VkShaderFloatControlsIndependence  roundingModeIndependence;
7226     VkBool32                           shaderSignedZeroInfNanPreserveFloat16;
7227     VkBool32                           shaderSignedZeroInfNanPreserveFloat32;
7228     VkBool32                           shaderSignedZeroInfNanPreserveFloat64;
7229     VkBool32                           shaderDenormPreserveFloat16;
7230     VkBool32                           shaderDenormPreserveFloat32;
7231     VkBool32                           shaderDenormPreserveFloat64;
7232     VkBool32                           shaderDenormFlushToZeroFloat16;
7233     VkBool32                           shaderDenormFlushToZeroFloat32;
7234     VkBool32                           shaderDenormFlushToZeroFloat64;
7235     VkBool32                           shaderRoundingModeRTEFloat16;
7236     VkBool32                           shaderRoundingModeRTEFloat32;
7237     VkBool32                           shaderRoundingModeRTEFloat64;
7238     VkBool32                           shaderRoundingModeRTZFloat16;
7239     VkBool32                           shaderRoundingModeRTZFloat32;
7240     VkBool32                           shaderRoundingModeRTZFloat64;
7241 }
7242 
7243 struct VkDescriptorSetLayoutBindingFlagsCreateInfo {
7244     VkStructureType                     sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO;
7245     const( void )*                      pNext;
7246     uint32_t                            bindingCount;
7247     const( VkDescriptorBindingFlags )*  pBindingFlags;
7248 }
7249 
7250 struct VkPhysicalDeviceDescriptorIndexingFeatures {
7251     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES;
7252     void*            pNext;
7253     VkBool32         shaderInputAttachmentArrayDynamicIndexing;
7254     VkBool32         shaderUniformTexelBufferArrayDynamicIndexing;
7255     VkBool32         shaderStorageTexelBufferArrayDynamicIndexing;
7256     VkBool32         shaderUniformBufferArrayNonUniformIndexing;
7257     VkBool32         shaderSampledImageArrayNonUniformIndexing;
7258     VkBool32         shaderStorageBufferArrayNonUniformIndexing;
7259     VkBool32         shaderStorageImageArrayNonUniformIndexing;
7260     VkBool32         shaderInputAttachmentArrayNonUniformIndexing;
7261     VkBool32         shaderUniformTexelBufferArrayNonUniformIndexing;
7262     VkBool32         shaderStorageTexelBufferArrayNonUniformIndexing;
7263     VkBool32         descriptorBindingUniformBufferUpdateAfterBind;
7264     VkBool32         descriptorBindingSampledImageUpdateAfterBind;
7265     VkBool32         descriptorBindingStorageImageUpdateAfterBind;
7266     VkBool32         descriptorBindingStorageBufferUpdateAfterBind;
7267     VkBool32         descriptorBindingUniformTexelBufferUpdateAfterBind;
7268     VkBool32         descriptorBindingStorageTexelBufferUpdateAfterBind;
7269     VkBool32         descriptorBindingUpdateUnusedWhilePending;
7270     VkBool32         descriptorBindingPartiallyBound;
7271     VkBool32         descriptorBindingVariableDescriptorCount;
7272     VkBool32         runtimeDescriptorArray;
7273 }
7274 
7275 struct VkPhysicalDeviceDescriptorIndexingProperties {
7276     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES;
7277     void*            pNext;
7278     uint32_t         maxUpdateAfterBindDescriptorsInAllPools;
7279     VkBool32         shaderUniformBufferArrayNonUniformIndexingNative;
7280     VkBool32         shaderSampledImageArrayNonUniformIndexingNative;
7281     VkBool32         shaderStorageBufferArrayNonUniformIndexingNative;
7282     VkBool32         shaderStorageImageArrayNonUniformIndexingNative;
7283     VkBool32         shaderInputAttachmentArrayNonUniformIndexingNative;
7284     VkBool32         robustBufferAccessUpdateAfterBind;
7285     VkBool32         quadDivergentImplicitLod;
7286     uint32_t         maxPerStageDescriptorUpdateAfterBindSamplers;
7287     uint32_t         maxPerStageDescriptorUpdateAfterBindUniformBuffers;
7288     uint32_t         maxPerStageDescriptorUpdateAfterBindStorageBuffers;
7289     uint32_t         maxPerStageDescriptorUpdateAfterBindSampledImages;
7290     uint32_t         maxPerStageDescriptorUpdateAfterBindStorageImages;
7291     uint32_t         maxPerStageDescriptorUpdateAfterBindInputAttachments;
7292     uint32_t         maxPerStageUpdateAfterBindResources;
7293     uint32_t         maxDescriptorSetUpdateAfterBindSamplers;
7294     uint32_t         maxDescriptorSetUpdateAfterBindUniformBuffers;
7295     uint32_t         maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
7296     uint32_t         maxDescriptorSetUpdateAfterBindStorageBuffers;
7297     uint32_t         maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
7298     uint32_t         maxDescriptorSetUpdateAfterBindSampledImages;
7299     uint32_t         maxDescriptorSetUpdateAfterBindStorageImages;
7300     uint32_t         maxDescriptorSetUpdateAfterBindInputAttachments;
7301 }
7302 
7303 struct VkDescriptorSetVariableDescriptorCountAllocateInfo {
7304     VkStructureType     sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO;
7305     const( void )*      pNext;
7306     uint32_t            descriptorSetCount;
7307     const( uint32_t )*  pDescriptorCounts;
7308 }
7309 
7310 struct VkDescriptorSetVariableDescriptorCountLayoutSupport {
7311     VkStructureType  sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT;
7312     void*            pNext;
7313     uint32_t         maxVariableDescriptorCount;
7314 }
7315 
7316 struct VkSubpassDescriptionDepthStencilResolve {
7317     VkStructureType                   sType = VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE;
7318     const( void )*                    pNext;
7319     VkResolveModeFlagBits             depthResolveMode;
7320     VkResolveModeFlagBits             stencilResolveMode;
7321     const( VkAttachmentReference2 )*  pDepthStencilResolveAttachment;
7322 }
7323 
7324 struct VkPhysicalDeviceDepthStencilResolveProperties {
7325     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES;
7326     void*               pNext;
7327     VkResolveModeFlags  supportedDepthResolveModes;
7328     VkResolveModeFlags  supportedStencilResolveModes;
7329     VkBool32            independentResolveNone;
7330     VkBool32            independentResolve;
7331 }
7332 
7333 struct VkPhysicalDeviceScalarBlockLayoutFeatures {
7334     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES;
7335     void*            pNext;
7336     VkBool32         scalarBlockLayout;
7337 }
7338 
7339 struct VkImageStencilUsageCreateInfo {
7340     VkStructureType    sType = VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO;
7341     const( void )*     pNext;
7342     VkImageUsageFlags  stencilUsage;
7343 }
7344 
7345 struct VkSamplerReductionModeCreateInfo {
7346     VkStructureType         sType = VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO;
7347     const( void )*          pNext;
7348     VkSamplerReductionMode  reductionMode;
7349 }
7350 
7351 struct VkPhysicalDeviceSamplerFilterMinmaxProperties {
7352     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES;
7353     void*            pNext;
7354     VkBool32         filterMinmaxSingleComponentFormats;
7355     VkBool32         filterMinmaxImageComponentMapping;
7356 }
7357 
7358 struct VkPhysicalDeviceVulkanMemoryModelFeatures {
7359     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES;
7360     void*            pNext;
7361     VkBool32         vulkanMemoryModel;
7362     VkBool32         vulkanMemoryModelDeviceScope;
7363     VkBool32         vulkanMemoryModelAvailabilityVisibilityChains;
7364 }
7365 
7366 struct VkPhysicalDeviceImagelessFramebufferFeatures {
7367     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES;
7368     void*            pNext;
7369     VkBool32         imagelessFramebuffer;
7370 }
7371 
7372 struct VkFramebufferAttachmentImageInfo {
7373     VkStructureType     sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO;
7374     const( void )*      pNext;
7375     VkImageCreateFlags  flags;
7376     VkImageUsageFlags   usage;
7377     uint32_t            width;
7378     uint32_t            height;
7379     uint32_t            layerCount;
7380     uint32_t            viewFormatCount;
7381     const( VkFormat )*  pViewFormats;
7382 }
7383 
7384 struct VkFramebufferAttachmentsCreateInfo {
7385     VkStructureType                             sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO;
7386     const( void )*                              pNext;
7387     uint32_t                                    attachmentImageInfoCount;
7388     const( VkFramebufferAttachmentImageInfo )*  pAttachmentImageInfos;
7389 }
7390 
7391 struct VkRenderPassAttachmentBeginInfo {
7392     VkStructureType        sType = VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO;
7393     const( void )*         pNext;
7394     uint32_t               attachmentCount;
7395     const( VkImageView )*  pAttachments;
7396 }
7397 
7398 struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures {
7399     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES;
7400     void*            pNext;
7401     VkBool32         uniformBufferStandardLayout;
7402 }
7403 
7404 struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures {
7405     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES;
7406     void*            pNext;
7407     VkBool32         shaderSubgroupExtendedTypes;
7408 }
7409 
7410 struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures {
7411     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES;
7412     void*            pNext;
7413     VkBool32         separateDepthStencilLayouts;
7414 }
7415 
7416 struct VkAttachmentReferenceStencilLayout {
7417     VkStructureType  sType = VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT;
7418     void*            pNext;
7419     VkImageLayout    stencilLayout;
7420 }
7421 
7422 struct VkAttachmentDescriptionStencilLayout {
7423     VkStructureType  sType = VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT;
7424     void*            pNext;
7425     VkImageLayout    stencilInitialLayout;
7426     VkImageLayout    stencilFinalLayout;
7427 }
7428 
7429 struct VkPhysicalDeviceHostQueryResetFeatures {
7430     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES;
7431     void*            pNext;
7432     VkBool32         hostQueryReset;
7433 }
7434 
7435 struct VkPhysicalDeviceTimelineSemaphoreFeatures {
7436     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES;
7437     void*            pNext;
7438     VkBool32         timelineSemaphore;
7439 }
7440 
7441 struct VkPhysicalDeviceTimelineSemaphoreProperties {
7442     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES;
7443     void*            pNext;
7444     uint64_t         maxTimelineSemaphoreValueDifference;
7445 }
7446 
7447 struct VkSemaphoreTypeCreateInfo {
7448     VkStructureType  sType = VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO;
7449     const( void )*   pNext;
7450     VkSemaphoreType  semaphoreType;
7451     uint64_t         initialValue;
7452 }
7453 
7454 struct VkTimelineSemaphoreSubmitInfo {
7455     VkStructureType     sType = VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO;
7456     const( void )*      pNext;
7457     uint32_t            waitSemaphoreValueCount;
7458     const( uint64_t )*  pWaitSemaphoreValues;
7459     uint32_t            signalSemaphoreValueCount;
7460     const( uint64_t )*  pSignalSemaphoreValues;
7461 }
7462 
7463 struct VkSemaphoreWaitInfo {
7464     VkStructureType        sType = VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO;
7465     const( void )*         pNext;
7466     VkSemaphoreWaitFlags   flags;
7467     uint32_t               semaphoreCount;
7468     const( VkSemaphore )*  pSemaphores;
7469     const( uint64_t )*     pValues;
7470 }
7471 
7472 struct VkSemaphoreSignalInfo {
7473     VkStructureType  sType = VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO;
7474     const( void )*   pNext;
7475     VkSemaphore      semaphore;
7476     uint64_t         value;
7477 }
7478 
7479 struct VkPhysicalDeviceBufferDeviceAddressFeatures {
7480     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES;
7481     void*            pNext;
7482     VkBool32         bufferDeviceAddress;
7483     VkBool32         bufferDeviceAddressCaptureReplay;
7484     VkBool32         bufferDeviceAddressMultiDevice;
7485 }
7486 
7487 struct VkBufferDeviceAddressInfo {
7488     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO;
7489     const( void )*   pNext;
7490     VkBuffer         buffer;
7491 }
7492 
7493 struct VkBufferOpaqueCaptureAddressCreateInfo {
7494     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO;
7495     const( void )*   pNext;
7496     uint64_t         opaqueCaptureAddress;
7497 }
7498 
7499 struct VkMemoryOpaqueCaptureAddressAllocateInfo {
7500     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO;
7501     const( void )*   pNext;
7502     uint64_t         opaqueCaptureAddress;
7503 }
7504 
7505 struct VkDeviceMemoryOpaqueCaptureAddressInfo {
7506     VkStructureType  sType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO;
7507     const( void )*   pNext;
7508     VkDeviceMemory   memory;
7509 }
7510 
7511 
7512 // - VK_VERSION_1_3 -
7513 enum VK_VERSION_1_3 = 1;
7514 
7515 alias VkFlags64 = uint64_t;
7516 
7517 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkPrivateDataSlot} );
7518 
7519 alias VkPipelineCreationFeedbackFlags = VkFlags;
7520 enum VkPipelineCreationFeedbackFlagBits : VkPipelineCreationFeedbackFlags {
7521     VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT                                      = 0x00000001,
7522     VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT             = 0x00000002,
7523     VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT                 = 0x00000004,
7524     VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT                                  = VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT,
7525     VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT         = VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT,
7526     VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT             = VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT,
7527     VK_PIPELINE_CREATION_FEEDBACK_FLAG_BITS_MAX_ENUM                             = 0x7FFFFFFF
7528 }
7529 
7530 enum VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT                                     = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT;
7531 enum VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT            = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT;
7532 enum VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT                = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT;
7533 enum VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT                                 = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT;
7534 enum VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT        = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT;
7535 enum VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT            = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT;
7536 enum VK_PIPELINE_CREATION_FEEDBACK_FLAG_BITS_MAX_ENUM                            = VkPipelineCreationFeedbackFlagBits.VK_PIPELINE_CREATION_FEEDBACK_FLAG_BITS_MAX_ENUM;
7537 
7538 alias VkToolPurposeFlags = VkFlags;
7539 enum VkToolPurposeFlagBits : VkToolPurposeFlags {
7540     VK_TOOL_PURPOSE_VALIDATION_BIT               = 0x00000001,
7541     VK_TOOL_PURPOSE_PROFILING_BIT                = 0x00000002,
7542     VK_TOOL_PURPOSE_TRACING_BIT                  = 0x00000004,
7543     VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT      = 0x00000008,
7544     VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT       = 0x00000010,
7545     VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT      = 0x00000020,
7546     VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT        = 0x00000040,
7547     VK_TOOL_PURPOSE_VALIDATION_BIT_EXT           = VK_TOOL_PURPOSE_VALIDATION_BIT,
7548     VK_TOOL_PURPOSE_PROFILING_BIT_EXT            = VK_TOOL_PURPOSE_PROFILING_BIT,
7549     VK_TOOL_PURPOSE_TRACING_BIT_EXT              = VK_TOOL_PURPOSE_TRACING_BIT,
7550     VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT  = VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT,
7551     VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT   = VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT,
7552     VK_TOOL_PURPOSE_FLAG_BITS_MAX_ENUM           = 0x7FFFFFFF
7553 }
7554 
7555 enum VK_TOOL_PURPOSE_VALIDATION_BIT              = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_VALIDATION_BIT;
7556 enum VK_TOOL_PURPOSE_PROFILING_BIT               = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_PROFILING_BIT;
7557 enum VK_TOOL_PURPOSE_TRACING_BIT                 = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_TRACING_BIT;
7558 enum VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT     = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT;
7559 enum VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT      = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT;
7560 enum VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT     = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT;
7561 enum VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT       = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT;
7562 enum VK_TOOL_PURPOSE_VALIDATION_BIT_EXT          = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_VALIDATION_BIT_EXT;
7563 enum VK_TOOL_PURPOSE_PROFILING_BIT_EXT           = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_PROFILING_BIT_EXT;
7564 enum VK_TOOL_PURPOSE_TRACING_BIT_EXT             = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_TRACING_BIT_EXT;
7565 enum VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT;
7566 enum VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT  = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT;
7567 enum VK_TOOL_PURPOSE_FLAG_BITS_MAX_ENUM          = VkToolPurposeFlagBits.VK_TOOL_PURPOSE_FLAG_BITS_MAX_ENUM;
7568 alias VkPrivateDataSlotCreateFlags = VkFlags;
7569 
7570 alias VkPipelineStageFlags2 = VkFlags64;
7571 enum VkPipelineStageFlagBits2 : VkPipelineStageFlags2 {
7572     VK_PIPELINE_STAGE_2_NONE                                             = 0,
7573     VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT                                  = 0x00000001,
7574     VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT                                = 0x00000002,
7575     VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT                                 = 0x00000004,
7576     VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT                                = 0x00000008,
7577     VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT                  = 0x00000010,
7578     VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT               = 0x00000020,
7579     VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT                              = 0x00000040,
7580     VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT                              = 0x00000080,
7581     VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT                         = 0x00000100,
7582     VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT                          = 0x00000200,
7583     VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT                      = 0x00000400,
7584     VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT                               = 0x00000800,
7585     VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT                                 = 0x00001000,
7586     VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT                               = 0x00002000,
7587     VK_PIPELINE_STAGE_2_HOST_BIT                                         = 0x00004000,
7588     VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT                                 = 0x00008000,
7589     VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT                                 = 0x00010000,
7590     VK_PIPELINE_STAGE_2_COPY_BIT                                         = 0x100000000,
7591     VK_PIPELINE_STAGE_2_RESOLVE_BIT                                      = 0x200000000,
7592     VK_PIPELINE_STAGE_2_BLIT_BIT                                         = 0x400000000,
7593     VK_PIPELINE_STAGE_2_CLEAR_BIT                                        = 0x800000000,
7594     VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT                                  = 0x1000000000,
7595     VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT                       = 0x2000000000,
7596     VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT                    = 0x4000000000,
7597     VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR                             = 0x04000000,
7598     VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR                             = 0x08000000,
7599     VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT                       = 0x01000000,
7600     VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT                    = 0x00040000,
7601     VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV                        = 0x00020000,
7602     VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR         = 0x00400000,
7603     VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR             = 0x02000000,
7604     VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR                       = 0x00200000,
7605     VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT                 = 0x00800000,
7606     VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV                               = 0x00080000,
7607     VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV                               = 0x00100000,
7608     VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI                       = 0x8000000000,
7609     VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI                       = 0x10000000000,
7610     VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR              = 0x10000000,
7611     VK_PIPELINE_STAGE_2_NONE_KHR                                         = VK_PIPELINE_STAGE_2_NONE,
7612     VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR                              = VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT,
7613     VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR                            = VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT,
7614     VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR                             = VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT,
7615     VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR                            = VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT,
7616     VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR              = VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT,
7617     VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR           = VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT,
7618     VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR                          = VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT,
7619     VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR                          = VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT,
7620     VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR                     = VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT,
7621     VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR                      = VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT,
7622     VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR                  = VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT,
7623     VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR                           = VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT,
7624     VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR                             = VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT,
7625     VK_PIPELINE_STAGE_2_TRANSFER_BIT                                     = VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR,
7626     VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR                                 = VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT,
7627     VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR                           = VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT,
7628     VK_PIPELINE_STAGE_2_HOST_BIT_KHR                                     = VK_PIPELINE_STAGE_2_HOST_BIT,
7629     VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR                             = VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT,
7630     VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR                             = VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT,
7631     VK_PIPELINE_STAGE_2_COPY_BIT_KHR                                     = VK_PIPELINE_STAGE_2_COPY_BIT,
7632     VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR                                  = VK_PIPELINE_STAGE_2_RESOLVE_BIT,
7633     VK_PIPELINE_STAGE_2_BLIT_BIT_KHR                                     = VK_PIPELINE_STAGE_2_BLIT_BIT,
7634     VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR                                    = VK_PIPELINE_STAGE_2_CLEAR_BIT,
7635     VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR                              = VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT,
7636     VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR                   = VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT,
7637     VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR                = VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT,
7638     VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV                        = VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR,
7639     VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV                        = VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR,
7640     VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV              = VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR,
7641 }
7642 
7643 enum VK_PIPELINE_STAGE_2_NONE                                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_NONE;
7644 enum VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT                                 = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT;
7645 enum VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT                               = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT;
7646 enum VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT                                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT;
7647 enum VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT                               = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT;
7648 enum VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT                 = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT;
7649 enum VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT              = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT;
7650 enum VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT                             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT;
7651 enum VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT                             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT;
7652 enum VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT                        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT;
7653 enum VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT                         = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT;
7654 enum VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT                     = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT;
7655 enum VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT                              = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT;
7656 enum VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT                                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT;
7657 enum VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT                              = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT;
7658 enum VK_PIPELINE_STAGE_2_HOST_BIT                                        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_HOST_BIT;
7659 enum VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT                                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT;
7660 enum VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT                                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT;
7661 enum VK_PIPELINE_STAGE_2_COPY_BIT                                        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COPY_BIT;
7662 enum VK_PIPELINE_STAGE_2_RESOLVE_BIT                                     = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_RESOLVE_BIT;
7663 enum VK_PIPELINE_STAGE_2_BLIT_BIT                                        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_BLIT_BIT;
7664 enum VK_PIPELINE_STAGE_2_CLEAR_BIT                                       = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_CLEAR_BIT;
7665 enum VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT                                 = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT;
7666 enum VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT                      = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT;
7667 enum VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT                   = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT;
7668 enum VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR;
7669 enum VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR;
7670 enum VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT                      = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT;
7671 enum VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT                   = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT;
7672 enum VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV                       = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV;
7673 enum VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
7674 enum VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR;
7675 enum VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR                      = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR;
7676 enum VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT;
7677 enum VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV                              = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV;
7678 enum VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV                              = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV;
7679 enum VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI                      = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI;
7680 enum VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI                      = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI;
7681 enum VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR;
7682 enum VK_PIPELINE_STAGE_2_NONE_KHR                                        = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_NONE_KHR;
7683 enum VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR                             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR;
7684 enum VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR                           = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR;
7685 enum VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR;
7686 enum VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR                           = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR;
7687 enum VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR;
7688 enum VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR          = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR;
7689 enum VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR                         = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR;
7690 enum VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR                         = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR;
7691 enum VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR                    = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR;
7692 enum VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR                     = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR;
7693 enum VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR                 = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR;
7694 enum VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR                          = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR;
7695 enum VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR;
7696 enum VK_PIPELINE_STAGE_2_TRANSFER_BIT                                    = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TRANSFER_BIT;
7697 enum VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR                                = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR;
7698 enum VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR                          = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR;
7699 enum VK_PIPELINE_STAGE_2_HOST_BIT_KHR                                    = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_HOST_BIT_KHR;
7700 enum VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR;
7701 enum VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR                            = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR;
7702 enum VK_PIPELINE_STAGE_2_COPY_BIT_KHR                                    = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_COPY_BIT_KHR;
7703 enum VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR                                 = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR;
7704 enum VK_PIPELINE_STAGE_2_BLIT_BIT_KHR                                    = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_BLIT_BIT_KHR;
7705 enum VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR                                   = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR;
7706 enum VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR                             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR;
7707 enum VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR                  = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR;
7708 enum VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR               = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR;
7709 enum VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV                       = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV;
7710 enum VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV                       = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV;
7711 enum VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV             = VkPipelineStageFlagBits2.VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV;
7712 
7713 alias VkAccessFlags2 = VkFlags64;
7714 enum VkAccessFlagBits2 : VkAccessFlags2 {
7715     VK_ACCESS_2_NONE                                             = 0,
7716     VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT                        = 0x00000001,
7717     VK_ACCESS_2_INDEX_READ_BIT                                   = 0x00000002,
7718     VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT                        = 0x00000004,
7719     VK_ACCESS_2_UNIFORM_READ_BIT                                 = 0x00000008,
7720     VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT                        = 0x00000010,
7721     VK_ACCESS_2_SHADER_READ_BIT                                  = 0x00000020,
7722     VK_ACCESS_2_SHADER_WRITE_BIT                                 = 0x00000040,
7723     VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT                        = 0x00000080,
7724     VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT                       = 0x00000100,
7725     VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT                = 0x00000200,
7726     VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT               = 0x00000400,
7727     VK_ACCESS_2_TRANSFER_READ_BIT                                = 0x00000800,
7728     VK_ACCESS_2_TRANSFER_WRITE_BIT                               = 0x00001000,
7729     VK_ACCESS_2_HOST_READ_BIT                                    = 0x00002000,
7730     VK_ACCESS_2_HOST_WRITE_BIT                                   = 0x00004000,
7731     VK_ACCESS_2_MEMORY_READ_BIT                                  = 0x00008000,
7732     VK_ACCESS_2_MEMORY_WRITE_BIT                                 = 0x00010000,
7733     VK_ACCESS_2_SHADER_SAMPLED_READ_BIT                          = 0x100000000,
7734     VK_ACCESS_2_SHADER_STORAGE_READ_BIT                          = 0x200000000,
7735     VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT                         = 0x400000000,
7736     VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR                        = 0x800000000,
7737     VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR                       = 0x1000000000,
7738     VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR                        = 0x2000000000,
7739     VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR                       = 0x4000000000,
7740     VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT                 = 0x02000000,
7741     VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT          = 0x04000000,
7742     VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT         = 0x08000000,
7743     VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT               = 0x00100000,
7744     VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV                   = 0x00020000,
7745     VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV                  = 0x00040000,
7746     VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR    = 0x00800000,
7747     VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR              = 0x00200000,
7748     VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR             = 0x00400000,
7749     VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT                = 0x01000000,
7750     VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT        = 0x00080000,
7751     VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI                  = 0x8000000000,
7752     VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR                = 0x10000000000,
7753     VK_ACCESS_2_NONE_KHR                                         = VK_ACCESS_2_NONE,
7754     VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR                    = VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT,
7755     VK_ACCESS_2_INDEX_READ_BIT_KHR                               = VK_ACCESS_2_INDEX_READ_BIT,
7756     VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR                    = VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT,
7757     VK_ACCESS_2_UNIFORM_READ_BIT_KHR                             = VK_ACCESS_2_UNIFORM_READ_BIT,
7758     VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR                    = VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT,
7759     VK_ACCESS_2_SHADER_READ_BIT_KHR                              = VK_ACCESS_2_SHADER_READ_BIT,
7760     VK_ACCESS_2_SHADER_WRITE_BIT_KHR                             = VK_ACCESS_2_SHADER_WRITE_BIT,
7761     VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR                    = VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT,
7762     VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR                   = VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT,
7763     VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR            = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT,
7764     VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR           = VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT,
7765     VK_ACCESS_2_TRANSFER_READ_BIT_KHR                            = VK_ACCESS_2_TRANSFER_READ_BIT,
7766     VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR                           = VK_ACCESS_2_TRANSFER_WRITE_BIT,
7767     VK_ACCESS_2_HOST_READ_BIT_KHR                                = VK_ACCESS_2_HOST_READ_BIT,
7768     VK_ACCESS_2_HOST_WRITE_BIT_KHR                               = VK_ACCESS_2_HOST_WRITE_BIT,
7769     VK_ACCESS_2_MEMORY_READ_BIT_KHR                              = VK_ACCESS_2_MEMORY_READ_BIT,
7770     VK_ACCESS_2_MEMORY_WRITE_BIT_KHR                             = VK_ACCESS_2_MEMORY_WRITE_BIT,
7771     VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR                      = VK_ACCESS_2_SHADER_SAMPLED_READ_BIT,
7772     VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR                      = VK_ACCESS_2_SHADER_STORAGE_READ_BIT,
7773     VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR                     = VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT,
7774     VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV                   = VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR,
7775     VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV               = VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR,
7776     VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV              = VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR,
7777 }
7778 
7779 enum VK_ACCESS_2_NONE                                            = VkAccessFlagBits2.VK_ACCESS_2_NONE;
7780 enum VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT                       = VkAccessFlagBits2.VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT;
7781 enum VK_ACCESS_2_INDEX_READ_BIT                                  = VkAccessFlagBits2.VK_ACCESS_2_INDEX_READ_BIT;
7782 enum VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT                       = VkAccessFlagBits2.VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT;
7783 enum VK_ACCESS_2_UNIFORM_READ_BIT                                = VkAccessFlagBits2.VK_ACCESS_2_UNIFORM_READ_BIT;
7784 enum VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT                       = VkAccessFlagBits2.VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT;
7785 enum VK_ACCESS_2_SHADER_READ_BIT                                 = VkAccessFlagBits2.VK_ACCESS_2_SHADER_READ_BIT;
7786 enum VK_ACCESS_2_SHADER_WRITE_BIT                                = VkAccessFlagBits2.VK_ACCESS_2_SHADER_WRITE_BIT;
7787 enum VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT                       = VkAccessFlagBits2.VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT;
7788 enum VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT                      = VkAccessFlagBits2.VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT;
7789 enum VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT               = VkAccessFlagBits2.VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT;
7790 enum VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT              = VkAccessFlagBits2.VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT;
7791 enum VK_ACCESS_2_TRANSFER_READ_BIT                               = VkAccessFlagBits2.VK_ACCESS_2_TRANSFER_READ_BIT;
7792 enum VK_ACCESS_2_TRANSFER_WRITE_BIT                              = VkAccessFlagBits2.VK_ACCESS_2_TRANSFER_WRITE_BIT;
7793 enum VK_ACCESS_2_HOST_READ_BIT                                   = VkAccessFlagBits2.VK_ACCESS_2_HOST_READ_BIT;
7794 enum VK_ACCESS_2_HOST_WRITE_BIT                                  = VkAccessFlagBits2.VK_ACCESS_2_HOST_WRITE_BIT;
7795 enum VK_ACCESS_2_MEMORY_READ_BIT                                 = VkAccessFlagBits2.VK_ACCESS_2_MEMORY_READ_BIT;
7796 enum VK_ACCESS_2_MEMORY_WRITE_BIT                                = VkAccessFlagBits2.VK_ACCESS_2_MEMORY_WRITE_BIT;
7797 enum VK_ACCESS_2_SHADER_SAMPLED_READ_BIT                         = VkAccessFlagBits2.VK_ACCESS_2_SHADER_SAMPLED_READ_BIT;
7798 enum VK_ACCESS_2_SHADER_STORAGE_READ_BIT                         = VkAccessFlagBits2.VK_ACCESS_2_SHADER_STORAGE_READ_BIT;
7799 enum VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT                        = VkAccessFlagBits2.VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT;
7800 enum VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR                       = VkAccessFlagBits2.VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR;
7801 enum VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR                      = VkAccessFlagBits2.VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR;
7802 enum VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR                       = VkAccessFlagBits2.VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR;
7803 enum VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR                      = VkAccessFlagBits2.VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR;
7804 enum VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT                = VkAccessFlagBits2.VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT;
7805 enum VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT         = VkAccessFlagBits2.VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT;
7806 enum VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT        = VkAccessFlagBits2.VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT;
7807 enum VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT              = VkAccessFlagBits2.VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT;
7808 enum VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV                  = VkAccessFlagBits2.VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV;
7809 enum VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV                 = VkAccessFlagBits2.VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV;
7810 enum VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR   = VkAccessFlagBits2.VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR;
7811 enum VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR             = VkAccessFlagBits2.VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR;
7812 enum VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR            = VkAccessFlagBits2.VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR;
7813 enum VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT               = VkAccessFlagBits2.VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT;
7814 enum VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT       = VkAccessFlagBits2.VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT;
7815 enum VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI                 = VkAccessFlagBits2.VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI;
7816 enum VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR               = VkAccessFlagBits2.VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR;
7817 enum VK_ACCESS_2_NONE_KHR                                        = VkAccessFlagBits2.VK_ACCESS_2_NONE_KHR;
7818 enum VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR                   = VkAccessFlagBits2.VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR;
7819 enum VK_ACCESS_2_INDEX_READ_BIT_KHR                              = VkAccessFlagBits2.VK_ACCESS_2_INDEX_READ_BIT_KHR;
7820 enum VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR                   = VkAccessFlagBits2.VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR;
7821 enum VK_ACCESS_2_UNIFORM_READ_BIT_KHR                            = VkAccessFlagBits2.VK_ACCESS_2_UNIFORM_READ_BIT_KHR;
7822 enum VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR                   = VkAccessFlagBits2.VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR;
7823 enum VK_ACCESS_2_SHADER_READ_BIT_KHR                             = VkAccessFlagBits2.VK_ACCESS_2_SHADER_READ_BIT_KHR;
7824 enum VK_ACCESS_2_SHADER_WRITE_BIT_KHR                            = VkAccessFlagBits2.VK_ACCESS_2_SHADER_WRITE_BIT_KHR;
7825 enum VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR                   = VkAccessFlagBits2.VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR;
7826 enum VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR                  = VkAccessFlagBits2.VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR;
7827 enum VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR           = VkAccessFlagBits2.VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR;
7828 enum VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR          = VkAccessFlagBits2.VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR;
7829 enum VK_ACCESS_2_TRANSFER_READ_BIT_KHR                           = VkAccessFlagBits2.VK_ACCESS_2_TRANSFER_READ_BIT_KHR;
7830 enum VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR                          = VkAccessFlagBits2.VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR;
7831 enum VK_ACCESS_2_HOST_READ_BIT_KHR                               = VkAccessFlagBits2.VK_ACCESS_2_HOST_READ_BIT_KHR;
7832 enum VK_ACCESS_2_HOST_WRITE_BIT_KHR                              = VkAccessFlagBits2.VK_ACCESS_2_HOST_WRITE_BIT_KHR;
7833 enum VK_ACCESS_2_MEMORY_READ_BIT_KHR                             = VkAccessFlagBits2.VK_ACCESS_2_MEMORY_READ_BIT_KHR;
7834 enum VK_ACCESS_2_MEMORY_WRITE_BIT_KHR                            = VkAccessFlagBits2.VK_ACCESS_2_MEMORY_WRITE_BIT_KHR;
7835 enum VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR                     = VkAccessFlagBits2.VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR;
7836 enum VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR                     = VkAccessFlagBits2.VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR;
7837 enum VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR                    = VkAccessFlagBits2.VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR;
7838 enum VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV                  = VkAccessFlagBits2.VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV;
7839 enum VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV              = VkAccessFlagBits2.VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV;
7840 enum VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV             = VkAccessFlagBits2.VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV;
7841 
7842 alias VkSubmitFlags = VkFlags;
7843 enum VkSubmitFlagBits : VkSubmitFlags {
7844     VK_SUBMIT_PROTECTED_BIT              = 0x00000001,
7845     VK_SUBMIT_PROTECTED_BIT_KHR          = VK_SUBMIT_PROTECTED_BIT,
7846     VK_SUBMIT_FLAG_BITS_MAX_ENUM         = 0x7FFFFFFF
7847 }
7848 
7849 enum VK_SUBMIT_PROTECTED_BIT             = VkSubmitFlagBits.VK_SUBMIT_PROTECTED_BIT;
7850 enum VK_SUBMIT_PROTECTED_BIT_KHR         = VkSubmitFlagBits.VK_SUBMIT_PROTECTED_BIT_KHR;
7851 enum VK_SUBMIT_FLAG_BITS_MAX_ENUM        = VkSubmitFlagBits.VK_SUBMIT_FLAG_BITS_MAX_ENUM;
7852 
7853 alias VkRenderingFlags = VkFlags;
7854 enum VkRenderingFlagBits : VkRenderingFlags {
7855     VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT          = 0x00000001,
7856     VK_RENDERING_SUSPENDING_BIT                                  = 0x00000002,
7857     VK_RENDERING_RESUMING_BIT                                    = 0x00000004,
7858     VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR      = VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT,
7859     VK_RENDERING_SUSPENDING_BIT_KHR                              = VK_RENDERING_SUSPENDING_BIT,
7860     VK_RENDERING_RESUMING_BIT_KHR                                = VK_RENDERING_RESUMING_BIT,
7861     VK_RENDERING_FLAG_BITS_MAX_ENUM                              = 0x7FFFFFFF
7862 }
7863 
7864 enum VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT         = VkRenderingFlagBits.VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT;
7865 enum VK_RENDERING_SUSPENDING_BIT                                 = VkRenderingFlagBits.VK_RENDERING_SUSPENDING_BIT;
7866 enum VK_RENDERING_RESUMING_BIT                                   = VkRenderingFlagBits.VK_RENDERING_RESUMING_BIT;
7867 enum VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR     = VkRenderingFlagBits.VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR;
7868 enum VK_RENDERING_SUSPENDING_BIT_KHR                             = VkRenderingFlagBits.VK_RENDERING_SUSPENDING_BIT_KHR;
7869 enum VK_RENDERING_RESUMING_BIT_KHR                               = VkRenderingFlagBits.VK_RENDERING_RESUMING_BIT_KHR;
7870 enum VK_RENDERING_FLAG_BITS_MAX_ENUM                             = VkRenderingFlagBits.VK_RENDERING_FLAG_BITS_MAX_ENUM;
7871 
7872 alias VkFormatFeatureFlags2 = VkFlags64;
7873 enum VkFormatFeatureFlagBits2 : VkFormatFeatureFlags2 {
7874     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT                                                                = 0x00000001,
7875     VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT                                                                = 0x00000002,
7876     VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT                                                         = 0x00000004,
7877     VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT                                                         = 0x00000008,
7878     VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT                                                         = 0x00000010,
7879     VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT                                                  = 0x00000020,
7880     VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT                                                                = 0x00000040,
7881     VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT                                                             = 0x00000080,
7882     VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT                                                       = 0x00000100,
7883     VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT                                                     = 0x00000200,
7884     VK_FORMAT_FEATURE_2_BLIT_SRC_BIT                                                                     = 0x00000400,
7885     VK_FORMAT_FEATURE_2_BLIT_DST_BIT                                                                     = 0x00000800,
7886     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT                                                  = 0x00001000,
7887     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT                                                   = 0x00002000,
7888     VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT                                                                 = 0x00004000,
7889     VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT                                                                 = 0x00008000,
7890     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                  = 0x00010000,
7891     VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT                                                      = 0x00020000,
7892     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT                                 = 0x00040000,
7893     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT                = 0x00080000,
7894     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT                = 0x00100000,
7895     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT      = 0x00200000,
7896     VK_FORMAT_FEATURE_2_DISJOINT_BIT                                                                     = 0x00400000,
7897     VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT                                                       = 0x00800000,
7898     VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT                                                  = 0x80000000,
7899     VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT                                                 = 0x100000000,
7900     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT                                               = 0x200000000,
7901     VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR                                                      = 0x02000000,
7902     VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR                                                         = 0x04000000,
7903     VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                     = 0x20000000,
7904     VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT                                                     = 0x01000000,
7905     VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                                         = 0x40000000,
7906     VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR                                                       = 0x08000000,
7907     VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR                                                         = 0x10000000,
7908     VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV                                                   = 0x4000000000,
7909     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR                                                            = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT,
7910     VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR                                                            = VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT,
7911     VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR                                                     = VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT,
7912     VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR                                                     = VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT,
7913     VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR                                                     = VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT,
7914     VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR                                              = VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT,
7915     VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR                                                            = VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT,
7916     VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR                                                         = VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT,
7917     VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR                                                   = VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT,
7918     VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR                                                 = VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT,
7919     VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR                                                                 = VK_FORMAT_FEATURE_2_BLIT_SRC_BIT,
7920     VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR                                                                 = VK_FORMAT_FEATURE_2_BLIT_DST_BIT,
7921     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR                                              = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT,
7922     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                               = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT,
7923     VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR                                                             = VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT,
7924     VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR                                                             = VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT,
7925     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR                                              = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT,
7926     VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR                                                  = VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT,
7927     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR                             = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT,
7928     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR            = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT,
7929     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR            = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT,
7930     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR  = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT,
7931     VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR                                                                 = VK_FORMAT_FEATURE_2_DISJOINT_BIT,
7932     VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR                                                   = VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT,
7933     VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR                                              = VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT,
7934     VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR                                             = VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT,
7935     VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR                                           = VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT,
7936 }
7937 
7938 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT                                                               = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT;
7939 enum VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT                                                               = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT;
7940 enum VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT;
7941 enum VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT;
7942 enum VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT;
7943 enum VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT                                                 = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT;
7944 enum VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT                                                               = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT;
7945 enum VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT                                                            = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT;
7946 enum VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT                                                      = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT;
7947 enum VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT;
7948 enum VK_FORMAT_FEATURE_2_BLIT_SRC_BIT                                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_BLIT_SRC_BIT;
7949 enum VK_FORMAT_FEATURE_2_BLIT_DST_BIT                                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_BLIT_DST_BIT;
7950 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT                                                 = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT;
7951 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT                                                  = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT;
7952 enum VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT                                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT;
7953 enum VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT                                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT;
7954 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT                                                 = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT;
7955 enum VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT                                                     = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT;
7956 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT;
7957 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT               = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT;
7958 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT               = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT;
7959 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT     = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT;
7960 enum VK_FORMAT_FEATURE_2_DISJOINT_BIT                                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_DISJOINT_BIT;
7961 enum VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT                                                      = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT;
7962 enum VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT                                                 = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT;
7963 enum VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT;
7964 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT                                              = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT;
7965 enum VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR                                                     = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR;
7966 enum VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR;
7967 enum VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR;
7968 enum VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT;
7969 enum VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR;
7970 enum VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR                                                      = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR;
7971 enum VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR;
7972 enum VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV                                                  = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV;
7973 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR                                                           = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR;
7974 enum VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR                                                           = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR;
7975 enum VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR;
7976 enum VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR;
7977 enum VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR                                                    = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR;
7978 enum VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR                                             = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR;
7979 enum VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR                                                           = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR;
7980 enum VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR                                                        = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR;
7981 enum VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR                                                  = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR;
7982 enum VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR;
7983 enum VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR                                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR;
7984 enum VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR                                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR;
7985 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR                                             = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR;
7986 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT                                              = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT;
7987 enum VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR                                                            = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR;
7988 enum VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR                                                            = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR;
7989 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR                                             = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR;
7990 enum VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR                                                 = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR;
7991 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR                            = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR;
7992 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR           = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR;
7993 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR           = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR;
7994 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR;
7995 enum VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR                                                                = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR;
7996 enum VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR                                                  = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR;
7997 enum VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR                                             = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR;
7998 enum VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR                                            = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR;
7999 enum VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR                                          = VkFormatFeatureFlagBits2.VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR;
8000 
8001 struct VkPhysicalDeviceVulkan13Features {
8002     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES;
8003     void*            pNext;
8004     VkBool32         robustImageAccess;
8005     VkBool32         inlineUniformBlock;
8006     VkBool32         descriptorBindingInlineUniformBlockUpdateAfterBind;
8007     VkBool32         pipelineCreationCacheControl;
8008     VkBool32         privateData;
8009     VkBool32         shaderDemoteToHelperInvocation;
8010     VkBool32         shaderTerminateInvocation;
8011     VkBool32         subgroupSizeControl;
8012     VkBool32         computeFullSubgroups;
8013     VkBool32         synchronization2;
8014     VkBool32         textureCompressionASTC_HDR;
8015     VkBool32         shaderZeroInitializeWorkgroupMemory;
8016     VkBool32         dynamicRendering;
8017     VkBool32         shaderIntegerDotProduct;
8018     VkBool32         maintenance4;
8019 }
8020 
8021 struct VkPhysicalDeviceVulkan13Properties {
8022     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES;
8023     void*               pNext;
8024     uint32_t            minSubgroupSize;
8025     uint32_t            maxSubgroupSize;
8026     uint32_t            maxComputeWorkgroupSubgroups;
8027     VkShaderStageFlags  requiredSubgroupSizeStages;
8028     uint32_t            maxInlineUniformBlockSize;
8029     uint32_t            maxPerStageDescriptorInlineUniformBlocks;
8030     uint32_t            maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
8031     uint32_t            maxDescriptorSetInlineUniformBlocks;
8032     uint32_t            maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
8033     uint32_t            maxInlineUniformTotalSize;
8034     VkBool32            integerDotProduct8BitUnsignedAccelerated;
8035     VkBool32            integerDotProduct8BitSignedAccelerated;
8036     VkBool32            integerDotProduct8BitMixedSignednessAccelerated;
8037     VkBool32            integerDotProduct4x8BitPackedUnsignedAccelerated;
8038     VkBool32            integerDotProduct4x8BitPackedSignedAccelerated;
8039     VkBool32            integerDotProduct4x8BitPackedMixedSignednessAccelerated;
8040     VkBool32            integerDotProduct16BitUnsignedAccelerated;
8041     VkBool32            integerDotProduct16BitSignedAccelerated;
8042     VkBool32            integerDotProduct16BitMixedSignednessAccelerated;
8043     VkBool32            integerDotProduct32BitUnsignedAccelerated;
8044     VkBool32            integerDotProduct32BitSignedAccelerated;
8045     VkBool32            integerDotProduct32BitMixedSignednessAccelerated;
8046     VkBool32            integerDotProduct64BitUnsignedAccelerated;
8047     VkBool32            integerDotProduct64BitSignedAccelerated;
8048     VkBool32            integerDotProduct64BitMixedSignednessAccelerated;
8049     VkBool32            integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
8050     VkBool32            integerDotProductAccumulatingSaturating8BitSignedAccelerated;
8051     VkBool32            integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
8052     VkBool32            integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
8053     VkBool32            integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
8054     VkBool32            integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
8055     VkBool32            integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
8056     VkBool32            integerDotProductAccumulatingSaturating16BitSignedAccelerated;
8057     VkBool32            integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
8058     VkBool32            integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
8059     VkBool32            integerDotProductAccumulatingSaturating32BitSignedAccelerated;
8060     VkBool32            integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
8061     VkBool32            integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
8062     VkBool32            integerDotProductAccumulatingSaturating64BitSignedAccelerated;
8063     VkBool32            integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
8064     VkDeviceSize        storageTexelBufferOffsetAlignmentBytes;
8065     VkBool32            storageTexelBufferOffsetSingleTexelAlignment;
8066     VkDeviceSize        uniformTexelBufferOffsetAlignmentBytes;
8067     VkBool32            uniformTexelBufferOffsetSingleTexelAlignment;
8068     VkDeviceSize        maxBufferSize;
8069 }
8070 
8071 struct VkPipelineCreationFeedback {
8072     VkPipelineCreationFeedbackFlags  flags;
8073     uint64_t                         duration;
8074 }
8075 
8076 struct VkPipelineCreationFeedbackCreateInfo {
8077     VkStructureType              sType = VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO;
8078     const( void )*               pNext;
8079     VkPipelineCreationFeedback*  pPipelineCreationFeedback;
8080     uint32_t                     pipelineStageCreationFeedbackCount;
8081     VkPipelineCreationFeedback*  pPipelineStageCreationFeedbacks;
8082 }
8083 
8084 struct VkPhysicalDeviceShaderTerminateInvocationFeatures {
8085     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES;
8086     void*            pNext;
8087     VkBool32         shaderTerminateInvocation;
8088 }
8089 
8090 struct VkPhysicalDeviceToolProperties {
8091     VkStructureType                     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES;
8092     void*                               pNext;
8093     char[ VK_MAX_EXTENSION_NAME_SIZE ]  name;
8094     char[ VK_MAX_EXTENSION_NAME_SIZE ]  Version;
8095     VkToolPurposeFlags                  purposes;
8096     char[ VK_MAX_DESCRIPTION_SIZE ]     description;
8097     char[ VK_MAX_EXTENSION_NAME_SIZE ]  layer;
8098     alias                               version_ = Version;
8099     alias                               _version = Version;
8100 }
8101 
8102 struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures {
8103     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES;
8104     void*            pNext;
8105     VkBool32         shaderDemoteToHelperInvocation;
8106 }
8107 
8108 struct VkPhysicalDevicePrivateDataFeatures {
8109     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES;
8110     void*            pNext;
8111     VkBool32         privateData;
8112 }
8113 
8114 struct VkDevicePrivateDataCreateInfo {
8115     VkStructureType  sType = VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO;
8116     const( void )*   pNext;
8117     uint32_t         privateDataSlotRequestCount;
8118 }
8119 
8120 struct VkPrivateDataSlotCreateInfo {
8121     VkStructureType               sType = VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO;
8122     const( void )*                pNext;
8123     VkPrivateDataSlotCreateFlags  flags;
8124 }
8125 
8126 struct VkPhysicalDevicePipelineCreationCacheControlFeatures {
8127     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES;
8128     void*            pNext;
8129     VkBool32         pipelineCreationCacheControl;
8130 }
8131 
8132 struct VkMemoryBarrier2 {
8133     VkStructureType        sType = VK_STRUCTURE_TYPE_MEMORY_BARRIER_2;
8134     const( void )*         pNext;
8135     VkPipelineStageFlags2  srcStageMask;
8136     VkAccessFlags2         srcAccessMask;
8137     VkPipelineStageFlags2  dstStageMask;
8138     VkAccessFlags2         dstAccessMask;
8139 }
8140 
8141 struct VkBufferMemoryBarrier2 {
8142     VkStructureType        sType = VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2;
8143     const( void )*         pNext;
8144     VkPipelineStageFlags2  srcStageMask;
8145     VkAccessFlags2         srcAccessMask;
8146     VkPipelineStageFlags2  dstStageMask;
8147     VkAccessFlags2         dstAccessMask;
8148     uint32_t               srcQueueFamilyIndex;
8149     uint32_t               dstQueueFamilyIndex;
8150     VkBuffer               buffer;
8151     VkDeviceSize           offset;
8152     VkDeviceSize           size;
8153 }
8154 
8155 struct VkImageMemoryBarrier2 {
8156     VkStructureType          sType = VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2;
8157     const( void )*           pNext;
8158     VkPipelineStageFlags2    srcStageMask;
8159     VkAccessFlags2           srcAccessMask;
8160     VkPipelineStageFlags2    dstStageMask;
8161     VkAccessFlags2           dstAccessMask;
8162     VkImageLayout            oldLayout;
8163     VkImageLayout            newLayout;
8164     uint32_t                 srcQueueFamilyIndex;
8165     uint32_t                 dstQueueFamilyIndex;
8166     VkImage                  image;
8167     VkImageSubresourceRange  subresourceRange;
8168 }
8169 
8170 struct VkDependencyInfo {
8171     VkStructureType                   sType = VK_STRUCTURE_TYPE_DEPENDENCY_INFO;
8172     const( void )*                    pNext;
8173     VkDependencyFlags                 dependencyFlags;
8174     uint32_t                          memoryBarrierCount;
8175     const( VkMemoryBarrier2 )*        pMemoryBarriers;
8176     uint32_t                          bufferMemoryBarrierCount;
8177     const( VkBufferMemoryBarrier2 )*  pBufferMemoryBarriers;
8178     uint32_t                          imageMemoryBarrierCount;
8179     const( VkImageMemoryBarrier2 )*   pImageMemoryBarriers;
8180 }
8181 
8182 struct VkSemaphoreSubmitInfo {
8183     VkStructureType        sType = VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO;
8184     const( void )*         pNext;
8185     VkSemaphore            semaphore;
8186     uint64_t               value;
8187     VkPipelineStageFlags2  stageMask;
8188     uint32_t               deviceIndex;
8189 }
8190 
8191 struct VkCommandBufferSubmitInfo {
8192     VkStructureType  sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO;
8193     const( void )*   pNext;
8194     VkCommandBuffer  commandBuffer;
8195     uint32_t         deviceMask;
8196 }
8197 
8198 struct VkSubmitInfo2 {
8199     VkStructureType                      sType = VK_STRUCTURE_TYPE_SUBMIT_INFO_2;
8200     const( void )*                       pNext;
8201     VkSubmitFlags                        flags;
8202     uint32_t                             waitSemaphoreInfoCount;
8203     const( VkSemaphoreSubmitInfo )*      pWaitSemaphoreInfos;
8204     uint32_t                             commandBufferInfoCount;
8205     const( VkCommandBufferSubmitInfo )*  pCommandBufferInfos;
8206     uint32_t                             signalSemaphoreInfoCount;
8207     const( VkSemaphoreSubmitInfo )*      pSignalSemaphoreInfos;
8208 }
8209 
8210 struct VkPhysicalDeviceSynchronization2Features {
8211     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES;
8212     void*            pNext;
8213     VkBool32         synchronization2;
8214 }
8215 
8216 struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures {
8217     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES;
8218     void*            pNext;
8219     VkBool32         shaderZeroInitializeWorkgroupMemory;
8220 }
8221 
8222 struct VkPhysicalDeviceImageRobustnessFeatures {
8223     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES;
8224     void*            pNext;
8225     VkBool32         robustImageAccess;
8226 }
8227 
8228 struct VkBufferCopy2 {
8229     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_COPY_2;
8230     const( void )*   pNext;
8231     VkDeviceSize     srcOffset;
8232     VkDeviceSize     dstOffset;
8233     VkDeviceSize     size;
8234 }
8235 
8236 struct VkCopyBufferInfo2 {
8237     VkStructureType          sType = VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2;
8238     const( void )*           pNext;
8239     VkBuffer                 srcBuffer;
8240     VkBuffer                 dstBuffer;
8241     uint32_t                 regionCount;
8242     const( VkBufferCopy2 )*  pRegions;
8243 }
8244 
8245 struct VkImageCopy2 {
8246     VkStructureType           sType = VK_STRUCTURE_TYPE_IMAGE_COPY_2;
8247     const( void )*            pNext;
8248     VkImageSubresourceLayers  srcSubresource;
8249     VkOffset3D                srcOffset;
8250     VkImageSubresourceLayers  dstSubresource;
8251     VkOffset3D                dstOffset;
8252     VkExtent3D                extent;
8253 }
8254 
8255 struct VkCopyImageInfo2 {
8256     VkStructureType         sType = VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2;
8257     const( void )*          pNext;
8258     VkImage                 srcImage;
8259     VkImageLayout           srcImageLayout;
8260     VkImage                 dstImage;
8261     VkImageLayout           dstImageLayout;
8262     uint32_t                regionCount;
8263     const( VkImageCopy2 )*  pRegions;
8264 }
8265 
8266 struct VkBufferImageCopy2 {
8267     VkStructureType           sType = VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2;
8268     const( void )*            pNext;
8269     VkDeviceSize              bufferOffset;
8270     uint32_t                  bufferRowLength;
8271     uint32_t                  bufferImageHeight;
8272     VkImageSubresourceLayers  imageSubresource;
8273     VkOffset3D                imageOffset;
8274     VkExtent3D                imageExtent;
8275 }
8276 
8277 struct VkCopyBufferToImageInfo2 {
8278     VkStructureType               sType = VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2;
8279     const( void )*                pNext;
8280     VkBuffer                      srcBuffer;
8281     VkImage                       dstImage;
8282     VkImageLayout                 dstImageLayout;
8283     uint32_t                      regionCount;
8284     const( VkBufferImageCopy2 )*  pRegions;
8285 }
8286 
8287 struct VkCopyImageToBufferInfo2 {
8288     VkStructureType               sType = VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2;
8289     const( void )*                pNext;
8290     VkImage                       srcImage;
8291     VkImageLayout                 srcImageLayout;
8292     VkBuffer                      dstBuffer;
8293     uint32_t                      regionCount;
8294     const( VkBufferImageCopy2 )*  pRegions;
8295 }
8296 
8297 struct VkImageBlit2 {
8298     VkStructureType           sType = VK_STRUCTURE_TYPE_IMAGE_BLIT_2;
8299     const( void )*            pNext;
8300     VkImageSubresourceLayers  srcSubresource;
8301     VkOffset3D[2]             srcOffsets;
8302     VkImageSubresourceLayers  dstSubresource;
8303     VkOffset3D[2]             dstOffsets;
8304 }
8305 
8306 struct VkBlitImageInfo2 {
8307     VkStructureType         sType = VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2;
8308     const( void )*          pNext;
8309     VkImage                 srcImage;
8310     VkImageLayout           srcImageLayout;
8311     VkImage                 dstImage;
8312     VkImageLayout           dstImageLayout;
8313     uint32_t                regionCount;
8314     const( VkImageBlit2 )*  pRegions;
8315     VkFilter                filter;
8316 }
8317 
8318 struct VkImageResolve2 {
8319     VkStructureType           sType = VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2;
8320     const( void )*            pNext;
8321     VkImageSubresourceLayers  srcSubresource;
8322     VkOffset3D                srcOffset;
8323     VkImageSubresourceLayers  dstSubresource;
8324     VkOffset3D                dstOffset;
8325     VkExtent3D                extent;
8326 }
8327 
8328 struct VkResolveImageInfo2 {
8329     VkStructureType            sType = VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2;
8330     const( void )*             pNext;
8331     VkImage                    srcImage;
8332     VkImageLayout              srcImageLayout;
8333     VkImage                    dstImage;
8334     VkImageLayout              dstImageLayout;
8335     uint32_t                   regionCount;
8336     const( VkImageResolve2 )*  pRegions;
8337 }
8338 
8339 struct VkPhysicalDeviceSubgroupSizeControlFeatures {
8340     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES;
8341     void*            pNext;
8342     VkBool32         subgroupSizeControl;
8343     VkBool32         computeFullSubgroups;
8344 }
8345 
8346 struct VkPhysicalDeviceSubgroupSizeControlProperties {
8347     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES;
8348     void*               pNext;
8349     uint32_t            minSubgroupSize;
8350     uint32_t            maxSubgroupSize;
8351     uint32_t            maxComputeWorkgroupSubgroups;
8352     VkShaderStageFlags  requiredSubgroupSizeStages;
8353 }
8354 
8355 struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo {
8356     VkStructureType  sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO;
8357     void*            pNext;
8358     uint32_t         requiredSubgroupSize;
8359 }
8360 
8361 struct VkPhysicalDeviceInlineUniformBlockFeatures {
8362     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES;
8363     void*            pNext;
8364     VkBool32         inlineUniformBlock;
8365     VkBool32         descriptorBindingInlineUniformBlockUpdateAfterBind;
8366 }
8367 
8368 struct VkPhysicalDeviceInlineUniformBlockProperties {
8369     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES;
8370     void*            pNext;
8371     uint32_t         maxInlineUniformBlockSize;
8372     uint32_t         maxPerStageDescriptorInlineUniformBlocks;
8373     uint32_t         maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
8374     uint32_t         maxDescriptorSetInlineUniformBlocks;
8375     uint32_t         maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
8376 }
8377 
8378 struct VkWriteDescriptorSetInlineUniformBlock {
8379     VkStructureType  sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK;
8380     const( void )*   pNext;
8381     uint32_t         dataSize;
8382     const( void )*   pData;
8383 }
8384 
8385 struct VkDescriptorPoolInlineUniformBlockCreateInfo {
8386     VkStructureType  sType = VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO;
8387     const( void )*   pNext;
8388     uint32_t         maxInlineUniformBlockBindings;
8389 }
8390 
8391 struct VkPhysicalDeviceTextureCompressionASTCHDRFeatures {
8392     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES;
8393     void*            pNext;
8394     VkBool32         textureCompressionASTC_HDR;
8395 }
8396 
8397 struct VkRenderingAttachmentInfo {
8398     VkStructureType        sType = VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO;
8399     const( void )*         pNext;
8400     VkImageView            imageView;
8401     VkImageLayout          imageLayout;
8402     VkResolveModeFlagBits  resolveMode;
8403     VkImageView            resolveImageView;
8404     VkImageLayout          resolveImageLayout;
8405     VkAttachmentLoadOp     loadOp;
8406     VkAttachmentStoreOp    storeOp;
8407     VkClearValue           clearValue;
8408 }
8409 
8410 struct VkRenderingInfo {
8411     VkStructureType                      sType = VK_STRUCTURE_TYPE_RENDERING_INFO;
8412     const( void )*                       pNext;
8413     VkRenderingFlags                     flags;
8414     VkRect2D                             renderArea;
8415     uint32_t                             layerCount;
8416     uint32_t                             viewMask;
8417     uint32_t                             colorAttachmentCount;
8418     const( VkRenderingAttachmentInfo )*  pColorAttachments;
8419     const( VkRenderingAttachmentInfo )*  pDepthAttachment;
8420     const( VkRenderingAttachmentInfo )*  pStencilAttachment;
8421 }
8422 
8423 struct VkPipelineRenderingCreateInfo {
8424     VkStructureType     sType = VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO;
8425     const( void )*      pNext;
8426     uint32_t            viewMask;
8427     uint32_t            colorAttachmentCount;
8428     const( VkFormat )*  pColorAttachmentFormats;
8429     VkFormat            depthAttachmentFormat;
8430     VkFormat            stencilAttachmentFormat;
8431 }
8432 
8433 struct VkPhysicalDeviceDynamicRenderingFeatures {
8434     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES;
8435     void*            pNext;
8436     VkBool32         dynamicRendering;
8437 }
8438 
8439 struct VkCommandBufferInheritanceRenderingInfo {
8440     VkStructureType        sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO;
8441     const( void )*         pNext;
8442     VkRenderingFlags       flags;
8443     uint32_t               viewMask;
8444     uint32_t               colorAttachmentCount;
8445     const( VkFormat )*     pColorAttachmentFormats;
8446     VkFormat               depthAttachmentFormat;
8447     VkFormat               stencilAttachmentFormat;
8448     VkSampleCountFlagBits  rasterizationSamples;
8449 }
8450 
8451 struct VkPhysicalDeviceShaderIntegerDotProductFeatures {
8452     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES;
8453     void*            pNext;
8454     VkBool32         shaderIntegerDotProduct;
8455 }
8456 
8457 struct VkPhysicalDeviceShaderIntegerDotProductProperties {
8458     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES;
8459     void*            pNext;
8460     VkBool32         integerDotProduct8BitUnsignedAccelerated;
8461     VkBool32         integerDotProduct8BitSignedAccelerated;
8462     VkBool32         integerDotProduct8BitMixedSignednessAccelerated;
8463     VkBool32         integerDotProduct4x8BitPackedUnsignedAccelerated;
8464     VkBool32         integerDotProduct4x8BitPackedSignedAccelerated;
8465     VkBool32         integerDotProduct4x8BitPackedMixedSignednessAccelerated;
8466     VkBool32         integerDotProduct16BitUnsignedAccelerated;
8467     VkBool32         integerDotProduct16BitSignedAccelerated;
8468     VkBool32         integerDotProduct16BitMixedSignednessAccelerated;
8469     VkBool32         integerDotProduct32BitUnsignedAccelerated;
8470     VkBool32         integerDotProduct32BitSignedAccelerated;
8471     VkBool32         integerDotProduct32BitMixedSignednessAccelerated;
8472     VkBool32         integerDotProduct64BitUnsignedAccelerated;
8473     VkBool32         integerDotProduct64BitSignedAccelerated;
8474     VkBool32         integerDotProduct64BitMixedSignednessAccelerated;
8475     VkBool32         integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
8476     VkBool32         integerDotProductAccumulatingSaturating8BitSignedAccelerated;
8477     VkBool32         integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
8478     VkBool32         integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
8479     VkBool32         integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
8480     VkBool32         integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
8481     VkBool32         integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
8482     VkBool32         integerDotProductAccumulatingSaturating16BitSignedAccelerated;
8483     VkBool32         integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
8484     VkBool32         integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
8485     VkBool32         integerDotProductAccumulatingSaturating32BitSignedAccelerated;
8486     VkBool32         integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
8487     VkBool32         integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
8488     VkBool32         integerDotProductAccumulatingSaturating64BitSignedAccelerated;
8489     VkBool32         integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
8490 }
8491 
8492 struct VkPhysicalDeviceTexelBufferAlignmentProperties {
8493     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES;
8494     void*            pNext;
8495     VkDeviceSize     storageTexelBufferOffsetAlignmentBytes;
8496     VkBool32         storageTexelBufferOffsetSingleTexelAlignment;
8497     VkDeviceSize     uniformTexelBufferOffsetAlignmentBytes;
8498     VkBool32         uniformTexelBufferOffsetSingleTexelAlignment;
8499 }
8500 
8501 struct VkFormatProperties3 {
8502     VkStructureType        sType = VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3;
8503     void*                  pNext;
8504     VkFormatFeatureFlags2  linearTilingFeatures;
8505     VkFormatFeatureFlags2  optimalTilingFeatures;
8506     VkFormatFeatureFlags2  bufferFeatures;
8507 }
8508 
8509 struct VkPhysicalDeviceMaintenance4Features {
8510     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES;
8511     void*            pNext;
8512     VkBool32         maintenance4;
8513 }
8514 
8515 struct VkPhysicalDeviceMaintenance4Properties {
8516     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES;
8517     void*            pNext;
8518     VkDeviceSize     maxBufferSize;
8519 }
8520 
8521 struct VkDeviceBufferMemoryRequirements {
8522     VkStructureType               sType = VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS;
8523     const( void )*                pNext;
8524     const( VkBufferCreateInfo )*  pCreateInfo;
8525 }
8526 
8527 struct VkDeviceImageMemoryRequirements {
8528     VkStructureType              sType = VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS;
8529     const( void )*               pNext;
8530     const( VkImageCreateInfo )*  pCreateInfo;
8531     VkImageAspectFlagBits        planeAspect;
8532 }
8533 
8534 
8535 // - VK_KHR_surface -
8536 enum VK_KHR_surface = 1;
8537 
8538 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkSurfaceKHR} );
8539 
8540 enum VK_KHR_SURFACE_SPEC_VERSION = 25;
8541 enum const( char )* VK_KHR_SURFACE_EXTENSION_NAME = "VK_KHR_surface";
8542 
8543 enum VkPresentModeKHR {
8544     VK_PRESENT_MODE_IMMEDIATE_KHR                        = 0,
8545     VK_PRESENT_MODE_MAILBOX_KHR                          = 1,
8546     VK_PRESENT_MODE_FIFO_KHR                             = 2,
8547     VK_PRESENT_MODE_FIFO_RELAXED_KHR                     = 3,
8548     VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR            = 1000111000,
8549     VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR        = 1000111001,
8550     VK_PRESENT_MODE_BEGIN_RANGE_KHR                      = VK_PRESENT_MODE_IMMEDIATE_KHR,
8551     VK_PRESENT_MODE_END_RANGE_KHR                        = VK_PRESENT_MODE_FIFO_RELAXED_KHR,
8552     VK_PRESENT_MODE_RANGE_SIZE_KHR                       = VK_PRESENT_MODE_FIFO_RELAXED_KHR - VK_PRESENT_MODE_IMMEDIATE_KHR + 1,
8553     VK_PRESENT_MODE_MAX_ENUM_KHR                         = 0x7FFFFFFF
8554 }
8555 
8556 enum VK_PRESENT_MODE_IMMEDIATE_KHR                       = VkPresentModeKHR.VK_PRESENT_MODE_IMMEDIATE_KHR;
8557 enum VK_PRESENT_MODE_MAILBOX_KHR                         = VkPresentModeKHR.VK_PRESENT_MODE_MAILBOX_KHR;
8558 enum VK_PRESENT_MODE_FIFO_KHR                            = VkPresentModeKHR.VK_PRESENT_MODE_FIFO_KHR;
8559 enum VK_PRESENT_MODE_FIFO_RELAXED_KHR                    = VkPresentModeKHR.VK_PRESENT_MODE_FIFO_RELAXED_KHR;
8560 enum VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR           = VkPresentModeKHR.VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR;
8561 enum VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR       = VkPresentModeKHR.VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR;
8562 enum VK_PRESENT_MODE_BEGIN_RANGE_KHR                     = VkPresentModeKHR.VK_PRESENT_MODE_BEGIN_RANGE_KHR;
8563 enum VK_PRESENT_MODE_END_RANGE_KHR                       = VkPresentModeKHR.VK_PRESENT_MODE_END_RANGE_KHR;
8564 enum VK_PRESENT_MODE_RANGE_SIZE_KHR                      = VkPresentModeKHR.VK_PRESENT_MODE_RANGE_SIZE_KHR;
8565 enum VK_PRESENT_MODE_MAX_ENUM_KHR                        = VkPresentModeKHR.VK_PRESENT_MODE_MAX_ENUM_KHR;
8566 
8567 enum VkColorSpaceKHR {
8568     VK_COLOR_SPACE_SRGB_NONLINEAR_KHR            = 0,
8569     VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT      = 1000104001,
8570     VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT      = 1000104002,
8571     VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT         = 1000104003,
8572     VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT          = 1000104004,
8573     VK_COLOR_SPACE_BT709_LINEAR_EXT              = 1000104005,
8574     VK_COLOR_SPACE_BT709_NONLINEAR_EXT           = 1000104006,
8575     VK_COLOR_SPACE_BT2020_LINEAR_EXT             = 1000104007,
8576     VK_COLOR_SPACE_HDR10_ST2084_EXT              = 1000104008,
8577     VK_COLOR_SPACE_DOLBYVISION_EXT               = 1000104009,
8578     VK_COLOR_SPACE_HDR10_HLG_EXT                 = 1000104010,
8579     VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT           = 1000104011,
8580     VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT        = 1000104012,
8581     VK_COLOR_SPACE_PASS_THROUGH_EXT              = 1000104013,
8582     VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT   = 1000104014,
8583     VK_COLOR_SPACE_DISPLAY_NATIVE_AMD            = 1000213000,
8584     VK_COLORSPACE_SRGB_NONLINEAR_KHR             = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
8585     VK_COLOR_SPACE_DCI_P3_LINEAR_EXT             = VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT,
8586     VK_COLOR_SPACE_BEGIN_RANGE_KHR               = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
8587     VK_COLOR_SPACE_END_RANGE_KHR                 = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR,
8588     VK_COLOR_SPACE_RANGE_SIZE_KHR                = VK_COLOR_SPACE_SRGB_NONLINEAR_KHR - VK_COLOR_SPACE_SRGB_NONLINEAR_KHR + 1,
8589     VK_COLOR_SPACE_MAX_ENUM_KHR                  = 0x7FFFFFFF
8590 }
8591 
8592 enum VK_COLOR_SPACE_SRGB_NONLINEAR_KHR           = VkColorSpaceKHR.VK_COLOR_SPACE_SRGB_NONLINEAR_KHR;
8593 enum VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT     = VkColorSpaceKHR.VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT;
8594 enum VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT     = VkColorSpaceKHR.VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT;
8595 enum VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT        = VkColorSpaceKHR.VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT;
8596 enum VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT         = VkColorSpaceKHR.VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT;
8597 enum VK_COLOR_SPACE_BT709_LINEAR_EXT             = VkColorSpaceKHR.VK_COLOR_SPACE_BT709_LINEAR_EXT;
8598 enum VK_COLOR_SPACE_BT709_NONLINEAR_EXT          = VkColorSpaceKHR.VK_COLOR_SPACE_BT709_NONLINEAR_EXT;
8599 enum VK_COLOR_SPACE_BT2020_LINEAR_EXT            = VkColorSpaceKHR.VK_COLOR_SPACE_BT2020_LINEAR_EXT;
8600 enum VK_COLOR_SPACE_HDR10_ST2084_EXT             = VkColorSpaceKHR.VK_COLOR_SPACE_HDR10_ST2084_EXT;
8601 enum VK_COLOR_SPACE_DOLBYVISION_EXT              = VkColorSpaceKHR.VK_COLOR_SPACE_DOLBYVISION_EXT;
8602 enum VK_COLOR_SPACE_HDR10_HLG_EXT                = VkColorSpaceKHR.VK_COLOR_SPACE_HDR10_HLG_EXT;
8603 enum VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT          = VkColorSpaceKHR.VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT;
8604 enum VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT       = VkColorSpaceKHR.VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT;
8605 enum VK_COLOR_SPACE_PASS_THROUGH_EXT             = VkColorSpaceKHR.VK_COLOR_SPACE_PASS_THROUGH_EXT;
8606 enum VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT  = VkColorSpaceKHR.VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT;
8607 enum VK_COLOR_SPACE_DISPLAY_NATIVE_AMD           = VkColorSpaceKHR.VK_COLOR_SPACE_DISPLAY_NATIVE_AMD;
8608 enum VK_COLORSPACE_SRGB_NONLINEAR_KHR            = VkColorSpaceKHR.VK_COLORSPACE_SRGB_NONLINEAR_KHR;
8609 enum VK_COLOR_SPACE_DCI_P3_LINEAR_EXT            = VkColorSpaceKHR.VK_COLOR_SPACE_DCI_P3_LINEAR_EXT;
8610 enum VK_COLOR_SPACE_BEGIN_RANGE_KHR              = VkColorSpaceKHR.VK_COLOR_SPACE_BEGIN_RANGE_KHR;
8611 enum VK_COLOR_SPACE_END_RANGE_KHR                = VkColorSpaceKHR.VK_COLOR_SPACE_END_RANGE_KHR;
8612 enum VK_COLOR_SPACE_RANGE_SIZE_KHR               = VkColorSpaceKHR.VK_COLOR_SPACE_RANGE_SIZE_KHR;
8613 enum VK_COLOR_SPACE_MAX_ENUM_KHR                 = VkColorSpaceKHR.VK_COLOR_SPACE_MAX_ENUM_KHR;
8614 
8615 alias VkCompositeAlphaFlagsKHR = VkFlags;
8616 enum VkCompositeAlphaFlagBitsKHR : VkCompositeAlphaFlagsKHR {
8617     VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR            = 0x00000001,
8618     VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR    = 0x00000002,
8619     VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR   = 0x00000004,
8620     VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR           = 0x00000008,
8621     VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR    = 0x7FFFFFFF
8622 }
8623 
8624 enum VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR           = VkCompositeAlphaFlagBitsKHR.VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR;
8625 enum VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR   = VkCompositeAlphaFlagBitsKHR.VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR;
8626 enum VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR  = VkCompositeAlphaFlagBitsKHR.VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR;
8627 enum VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR          = VkCompositeAlphaFlagBitsKHR.VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR;
8628 enum VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR   = VkCompositeAlphaFlagBitsKHR.VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR;
8629 
8630 alias VkSurfaceTransformFlagsKHR = VkFlags;
8631 enum VkSurfaceTransformFlagBitsKHR : VkSurfaceTransformFlagsKHR {
8632     VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR                        = 0x00000001,
8633     VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR                       = 0x00000002,
8634     VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR                      = 0x00000004,
8635     VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR                      = 0x00000008,
8636     VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR               = 0x00000010,
8637     VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR     = 0x00000020,
8638     VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR    = 0x00000040,
8639     VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR    = 0x00000080,
8640     VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR                         = 0x00000100,
8641     VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR                  = 0x7FFFFFFF
8642 }
8643 
8644 enum VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR                       = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR;
8645 enum VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR                      = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR;
8646 enum VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR                     = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR;
8647 enum VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR                     = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR;
8648 enum VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR              = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR;
8649 enum VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR    = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR;
8650 enum VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR   = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR;
8651 enum VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR   = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR;
8652 enum VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR                        = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR;
8653 enum VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR                 = VkSurfaceTransformFlagBitsKHR.VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR;
8654 
8655 struct VkSurfaceCapabilitiesKHR {
8656     uint32_t                       minImageCount;
8657     uint32_t                       maxImageCount;
8658     VkExtent2D                     currentExtent;
8659     VkExtent2D                     minImageExtent;
8660     VkExtent2D                     maxImageExtent;
8661     uint32_t                       maxImageArrayLayers;
8662     VkSurfaceTransformFlagsKHR     supportedTransforms;
8663     VkSurfaceTransformFlagBitsKHR  currentTransform;
8664     VkCompositeAlphaFlagsKHR       supportedCompositeAlpha;
8665     VkImageUsageFlags              supportedUsageFlags;
8666 }
8667 
8668 struct VkSurfaceFormatKHR {
8669     VkFormat         format;
8670     VkColorSpaceKHR  colorSpace;
8671 }
8672 
8673 
8674 // - VK_KHR_swapchain -
8675 enum VK_KHR_swapchain = 1;
8676 
8677 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkSwapchainKHR} );
8678 
8679 enum VK_KHR_SWAPCHAIN_SPEC_VERSION = 70;
8680 enum const( char )* VK_KHR_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_swapchain";
8681 
8682 alias VkSwapchainCreateFlagsKHR = VkFlags;
8683 enum VkSwapchainCreateFlagBitsKHR : VkSwapchainCreateFlagsKHR {
8684     VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR      = 0x00000001,
8685     VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR                        = 0x00000002,
8686     VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR                   = 0x00000004,
8687     VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR                   = 0x7FFFFFFF
8688 }
8689 
8690 enum VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR     = VkSwapchainCreateFlagBitsKHR.VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR;
8691 enum VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR                       = VkSwapchainCreateFlagBitsKHR.VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR;
8692 enum VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR                  = VkSwapchainCreateFlagBitsKHR.VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR;
8693 enum VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR                  = VkSwapchainCreateFlagBitsKHR.VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR;
8694 
8695 alias VkDeviceGroupPresentModeFlagsKHR = VkFlags;
8696 enum VkDeviceGroupPresentModeFlagBitsKHR : VkDeviceGroupPresentModeFlagsKHR {
8697     VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR                   = 0x00000001,
8698     VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR                  = 0x00000002,
8699     VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR                     = 0x00000004,
8700     VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR      = 0x00000008,
8701     VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR          = 0x7FFFFFFF
8702 }
8703 
8704 enum VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR                  = VkDeviceGroupPresentModeFlagBitsKHR.VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR;
8705 enum VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR                 = VkDeviceGroupPresentModeFlagBitsKHR.VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR;
8706 enum VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR                    = VkDeviceGroupPresentModeFlagBitsKHR.VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR;
8707 enum VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR     = VkDeviceGroupPresentModeFlagBitsKHR.VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR;
8708 enum VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR         = VkDeviceGroupPresentModeFlagBitsKHR.VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR;
8709 
8710 struct VkSwapchainCreateInfoKHR {
8711     VkStructureType                sType = VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR;
8712     const( void )*                 pNext;
8713     VkSwapchainCreateFlagsKHR      flags;
8714     VkSurfaceKHR                   surface;
8715     uint32_t                       minImageCount;
8716     VkFormat                       imageFormat;
8717     VkColorSpaceKHR                imageColorSpace;
8718     VkExtent2D                     imageExtent;
8719     uint32_t                       imageArrayLayers;
8720     VkImageUsageFlags              imageUsage;
8721     VkSharingMode                  imageSharingMode;
8722     uint32_t                       queueFamilyIndexCount;
8723     const( uint32_t )*             pQueueFamilyIndices;
8724     VkSurfaceTransformFlagBitsKHR  preTransform;
8725     VkCompositeAlphaFlagBitsKHR    compositeAlpha;
8726     VkPresentModeKHR               presentMode;
8727     VkBool32                       clipped;
8728     VkSwapchainKHR                 oldSwapchain;
8729 }
8730 
8731 struct VkPresentInfoKHR {
8732     VkStructureType           sType = VK_STRUCTURE_TYPE_PRESENT_INFO_KHR;
8733     const( void )*            pNext;
8734     uint32_t                  waitSemaphoreCount;
8735     const( VkSemaphore )*     pWaitSemaphores;
8736     uint32_t                  swapchainCount;
8737     const( VkSwapchainKHR )*  pSwapchains;
8738     const( uint32_t )*        pImageIndices;
8739     VkResult*                 pResults;
8740 }
8741 
8742 struct VkImageSwapchainCreateInfoKHR {
8743     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR;
8744     const( void )*   pNext;
8745     VkSwapchainKHR   swapchain;
8746 }
8747 
8748 struct VkBindImageMemorySwapchainInfoKHR {
8749     VkStructureType  sType = VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR;
8750     const( void )*   pNext;
8751     VkSwapchainKHR   swapchain;
8752     uint32_t         imageIndex;
8753 }
8754 
8755 struct VkAcquireNextImageInfoKHR {
8756     VkStructureType  sType = VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR;
8757     const( void )*   pNext;
8758     VkSwapchainKHR   swapchain;
8759     uint64_t         timeout;
8760     VkSemaphore      semaphore;
8761     VkFence          fence;
8762     uint32_t         deviceMask;
8763 }
8764 
8765 struct VkDeviceGroupPresentCapabilitiesKHR {
8766     VkStructureType                       sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR;
8767     void*                                 pNext;
8768     uint32_t[ VK_MAX_DEVICE_GROUP_SIZE ]  presentMask;
8769     VkDeviceGroupPresentModeFlagsKHR      modes;
8770 }
8771 
8772 struct VkDeviceGroupPresentInfoKHR {
8773     VkStructureType                      sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR;
8774     const( void )*                       pNext;
8775     uint32_t                             swapchainCount;
8776     const( uint32_t )*                   pDeviceMasks;
8777     VkDeviceGroupPresentModeFlagBitsKHR  mode;
8778 }
8779 
8780 struct VkDeviceGroupSwapchainCreateInfoKHR {
8781     VkStructureType                   sType = VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR;
8782     const( void )*                    pNext;
8783     VkDeviceGroupPresentModeFlagsKHR  modes;
8784 }
8785 
8786 
8787 // - VK_KHR_display -
8788 enum VK_KHR_display = 1;
8789 
8790 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDisplayKHR} );
8791 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDisplayModeKHR} );
8792 
8793 enum VK_KHR_DISPLAY_SPEC_VERSION = 23;
8794 enum const( char )* VK_KHR_DISPLAY_EXTENSION_NAME = "VK_KHR_display";
8795 
8796 alias VkDisplayModeCreateFlagsKHR = VkFlags;
8797 
8798 alias VkDisplayPlaneAlphaFlagsKHR = VkFlags;
8799 enum VkDisplayPlaneAlphaFlagBitsKHR : VkDisplayPlaneAlphaFlagsKHR {
8800     VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR                        = 0x00000001,
8801     VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR                        = 0x00000002,
8802     VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR                     = 0x00000004,
8803     VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR       = 0x00000008,
8804     VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR                = 0x7FFFFFFF
8805 }
8806 
8807 enum VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR                       = VkDisplayPlaneAlphaFlagBitsKHR.VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR;
8808 enum VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR                       = VkDisplayPlaneAlphaFlagBitsKHR.VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR;
8809 enum VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR                    = VkDisplayPlaneAlphaFlagBitsKHR.VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR;
8810 enum VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR      = VkDisplayPlaneAlphaFlagBitsKHR.VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR;
8811 enum VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR               = VkDisplayPlaneAlphaFlagBitsKHR.VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR;
8812 alias VkDisplaySurfaceCreateFlagsKHR = VkFlags;
8813 
8814 struct VkDisplayModeParametersKHR {
8815     VkExtent2D  visibleRegion;
8816     uint32_t    refreshRate;
8817 }
8818 
8819 struct VkDisplayModeCreateInfoKHR {
8820     VkStructureType              sType = VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR;
8821     const( void )*               pNext;
8822     VkDisplayModeCreateFlagsKHR  flags;
8823     VkDisplayModeParametersKHR   parameters;
8824 }
8825 
8826 struct VkDisplayModePropertiesKHR {
8827     VkDisplayModeKHR            displayMode;
8828     VkDisplayModeParametersKHR  parameters;
8829 }
8830 
8831 struct VkDisplayPlaneCapabilitiesKHR {
8832     VkDisplayPlaneAlphaFlagsKHR  supportedAlpha;
8833     VkOffset2D                   minSrcPosition;
8834     VkOffset2D                   maxSrcPosition;
8835     VkExtent2D                   minSrcExtent;
8836     VkExtent2D                   maxSrcExtent;
8837     VkOffset2D                   minDstPosition;
8838     VkOffset2D                   maxDstPosition;
8839     VkExtent2D                   minDstExtent;
8840     VkExtent2D                   maxDstExtent;
8841 }
8842 
8843 struct VkDisplayPlanePropertiesKHR {
8844     VkDisplayKHR  currentDisplay;
8845     uint32_t      currentStackIndex;
8846 }
8847 
8848 struct VkDisplayPropertiesKHR {
8849     VkDisplayKHR                display;
8850     const( char )*              displayName;
8851     VkExtent2D                  physicalDimensions;
8852     VkExtent2D                  physicalResolution;
8853     VkSurfaceTransformFlagsKHR  supportedTransforms;
8854     VkBool32                    planeReorderPossible;
8855     VkBool32                    persistentContent;
8856 }
8857 
8858 struct VkDisplaySurfaceCreateInfoKHR {
8859     VkStructureType                 sType = VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR;
8860     const( void )*                  pNext;
8861     VkDisplaySurfaceCreateFlagsKHR  flags;
8862     VkDisplayModeKHR                displayMode;
8863     uint32_t                        planeIndex;
8864     uint32_t                        planeStackIndex;
8865     VkSurfaceTransformFlagBitsKHR   transform;
8866     float                           globalAlpha;
8867     VkDisplayPlaneAlphaFlagBitsKHR  alphaMode;
8868     VkExtent2D                      imageExtent;
8869 }
8870 
8871 
8872 // - VK_KHR_display_swapchain -
8873 enum VK_KHR_display_swapchain = 1;
8874 
8875 enum VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION = 10;
8876 enum const( char )* VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME = "VK_KHR_display_swapchain";
8877 
8878 struct VkDisplayPresentInfoKHR {
8879     VkStructureType  sType = VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR;
8880     const( void )*   pNext;
8881     VkRect2D         srcRect;
8882     VkRect2D         dstRect;
8883     VkBool32         persistent;
8884 }
8885 
8886 
8887 // - VK_KHR_sampler_mirror_clamp_to_edge -
8888 enum VK_KHR_sampler_mirror_clamp_to_edge = 1;
8889 
8890 enum VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION = 3;
8891 enum const( char )* VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME = "VK_KHR_sampler_mirror_clamp_to_edge";
8892 
8893 
8894 // - VK_KHR_dynamic_rendering -
8895 enum VK_KHR_dynamic_rendering = 1;
8896 
8897 enum VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION = 1;
8898 enum const( char )* VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME = "VK_KHR_dynamic_rendering";
8899 
8900 alias VkRenderingFlagsKHR = VkRenderingFlags;
8901 alias VkRenderingFlagBitsKHR = VkRenderingFlagBits;
8902 
8903 alias VkRenderingInfoKHR = VkRenderingInfo;
8904 alias VkRenderingAttachmentInfoKHR = VkRenderingAttachmentInfo;
8905 alias VkPipelineRenderingCreateInfoKHR = VkPipelineRenderingCreateInfo;
8906 alias VkPhysicalDeviceDynamicRenderingFeaturesKHR = VkPhysicalDeviceDynamicRenderingFeatures;
8907 alias VkCommandBufferInheritanceRenderingInfoKHR = VkCommandBufferInheritanceRenderingInfo;
8908 
8909 struct VkRenderingFragmentShadingRateAttachmentInfoKHR {
8910     VkStructureType  sType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR;
8911     const( void )*   pNext;
8912     VkImageView      imageView;
8913     VkImageLayout    imageLayout;
8914     VkExtent2D       shadingRateAttachmentTexelSize;
8915 }
8916 
8917 struct VkRenderingFragmentDensityMapAttachmentInfoEXT {
8918     VkStructureType  sType = VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT;
8919     const( void )*   pNext;
8920     VkImageView      imageView;
8921     VkImageLayout    imageLayout;
8922 }
8923 
8924 struct VkAttachmentSampleCountInfoAMD {
8925     VkStructureType                  sType = VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD;
8926     const( void )*                   pNext;
8927     uint32_t                         colorAttachmentCount;
8928     const( VkSampleCountFlagBits )*  pColorAttachmentSamples;
8929     VkSampleCountFlagBits            depthStencilAttachmentSamples;
8930 }
8931 alias VkAttachmentSampleCountInfoNV = VkAttachmentSampleCountInfoAMD;
8932 
8933 struct VkMultiviewPerViewAttributesInfoNVX {
8934     VkStructureType  sType = VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX;
8935     const( void )*   pNext;
8936     VkBool32         perViewAttributes;
8937     VkBool32         perViewAttributesPositionXOnly;
8938 }
8939 
8940 
8941 // - VK_KHR_multiview -
8942 enum VK_KHR_multiview = 1;
8943 
8944 enum VK_KHR_MULTIVIEW_SPEC_VERSION = 1;
8945 enum const( char )* VK_KHR_MULTIVIEW_EXTENSION_NAME = "VK_KHR_multiview";
8946 
8947 alias VkRenderPassMultiviewCreateInfoKHR = VkRenderPassMultiviewCreateInfo;
8948 alias VkPhysicalDeviceMultiviewFeaturesKHR = VkPhysicalDeviceMultiviewFeatures;
8949 alias VkPhysicalDeviceMultiviewPropertiesKHR = VkPhysicalDeviceMultiviewProperties;
8950 
8951 
8952 // - VK_KHR_get_physical_device_properties2 -
8953 enum VK_KHR_get_physical_device_properties2 = 1;
8954 
8955 enum VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION = 2;
8956 enum const( char )* VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME = "VK_KHR_get_physical_device_properties2";
8957 
8958 alias VkPhysicalDeviceFeatures2KHR = VkPhysicalDeviceFeatures2;
8959 alias VkPhysicalDeviceProperties2KHR = VkPhysicalDeviceProperties2;
8960 alias VkFormatProperties2KHR = VkFormatProperties2;
8961 alias VkImageFormatProperties2KHR = VkImageFormatProperties2;
8962 alias VkPhysicalDeviceImageFormatInfo2KHR = VkPhysicalDeviceImageFormatInfo2;
8963 alias VkQueueFamilyProperties2KHR = VkQueueFamilyProperties2;
8964 alias VkPhysicalDeviceMemoryProperties2KHR = VkPhysicalDeviceMemoryProperties2;
8965 alias VkSparseImageFormatProperties2KHR = VkSparseImageFormatProperties2;
8966 alias VkPhysicalDeviceSparseImageFormatInfo2KHR = VkPhysicalDeviceSparseImageFormatInfo2;
8967 
8968 
8969 // - VK_KHR_device_group -
8970 enum VK_KHR_device_group = 1;
8971 
8972 enum VK_KHR_DEVICE_GROUP_SPEC_VERSION = 4;
8973 enum const( char )* VK_KHR_DEVICE_GROUP_EXTENSION_NAME = "VK_KHR_device_group";
8974 
8975 alias VkPeerMemoryFeatureFlagsKHR = VkPeerMemoryFeatureFlags;
8976 alias VkPeerMemoryFeatureFlagBitsKHR = VkPeerMemoryFeatureFlagBits;
8977 alias VkMemoryAllocateFlagsKHR = VkMemoryAllocateFlags;
8978 alias VkMemoryAllocateFlagBitsKHR = VkMemoryAllocateFlagBits;
8979 
8980 alias VkMemoryAllocateFlagsInfoKHR = VkMemoryAllocateFlagsInfo;
8981 alias VkDeviceGroupRenderPassBeginInfoKHR = VkDeviceGroupRenderPassBeginInfo;
8982 alias VkDeviceGroupCommandBufferBeginInfoKHR = VkDeviceGroupCommandBufferBeginInfo;
8983 alias VkDeviceGroupSubmitInfoKHR = VkDeviceGroupSubmitInfo;
8984 alias VkDeviceGroupBindSparseInfoKHR = VkDeviceGroupBindSparseInfo;
8985 alias VkBindBufferMemoryDeviceGroupInfoKHR = VkBindBufferMemoryDeviceGroupInfo;
8986 alias VkBindImageMemoryDeviceGroupInfoKHR = VkBindImageMemoryDeviceGroupInfo;
8987 
8988 
8989 // - VK_KHR_shader_draw_parameters -
8990 enum VK_KHR_shader_draw_parameters = 1;
8991 
8992 enum VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION = 1;
8993 enum const( char )* VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME = "VK_KHR_shader_draw_parameters";
8994 
8995 
8996 // - VK_KHR_maintenance1 -
8997 enum VK_KHR_maintenance1 = 1;
8998 
8999 enum VK_KHR_MAINTENANCE_1_SPEC_VERSION = 2;
9000 enum const( char )* VK_KHR_MAINTENANCE_1_EXTENSION_NAME = "VK_KHR_maintenance1";
9001 alias VK_KHR_MAINTENANCE1_SPEC_VERSION = VK_KHR_MAINTENANCE_1_SPEC_VERSION;
9002 alias VK_KHR_MAINTENANCE1_EXTENSION_NAME = VK_KHR_MAINTENANCE_1_EXTENSION_NAME;
9003 
9004 alias VkCommandPoolTrimFlagsKHR = VkCommandPoolTrimFlags;
9005 
9006 
9007 // - VK_KHR_device_group_creation -
9008 enum VK_KHR_device_group_creation = 1;
9009 
9010 enum VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION = 1;
9011 enum const( char )* VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME = "VK_KHR_device_group_creation";
9012 alias VK_MAX_DEVICE_GROUP_SIZE_KHR = VK_MAX_DEVICE_GROUP_SIZE;
9013 
9014 alias VkPhysicalDeviceGroupPropertiesKHR = VkPhysicalDeviceGroupProperties;
9015 alias VkDeviceGroupDeviceCreateInfoKHR = VkDeviceGroupDeviceCreateInfo;
9016 
9017 
9018 // - VK_KHR_external_memory_capabilities -
9019 enum VK_KHR_external_memory_capabilities = 1;
9020 
9021 enum VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION = 1;
9022 enum const( char )* VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_memory_capabilities";
9023 alias VK_LUID_SIZE_KHR = VK_LUID_SIZE;
9024 
9025 alias VkExternalMemoryHandleTypeFlagsKHR = VkExternalMemoryHandleTypeFlags;
9026 alias VkExternalMemoryHandleTypeFlagBitsKHR = VkExternalMemoryHandleTypeFlagBits;
9027 alias VkExternalMemoryFeatureFlagsKHR = VkExternalMemoryFeatureFlags;
9028 alias VkExternalMemoryFeatureFlagBitsKHR = VkExternalMemoryFeatureFlagBits;
9029 
9030 alias VkExternalMemoryPropertiesKHR = VkExternalMemoryProperties;
9031 alias VkPhysicalDeviceExternalImageFormatInfoKHR = VkPhysicalDeviceExternalImageFormatInfo;
9032 alias VkExternalImageFormatPropertiesKHR = VkExternalImageFormatProperties;
9033 alias VkPhysicalDeviceExternalBufferInfoKHR = VkPhysicalDeviceExternalBufferInfo;
9034 alias VkExternalBufferPropertiesKHR = VkExternalBufferProperties;
9035 alias VkPhysicalDeviceIDPropertiesKHR = VkPhysicalDeviceIDProperties;
9036 
9037 
9038 // - VK_KHR_external_memory -
9039 enum VK_KHR_external_memory = 1;
9040 
9041 enum VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION = 1;
9042 enum const( char )* VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_KHR_external_memory";
9043 alias VK_QUEUE_FAMILY_EXTERNAL_KHR = VK_QUEUE_FAMILY_EXTERNAL;
9044 
9045 alias VkExternalMemoryImageCreateInfoKHR = VkExternalMemoryImageCreateInfo;
9046 alias VkExternalMemoryBufferCreateInfoKHR = VkExternalMemoryBufferCreateInfo;
9047 alias VkExportMemoryAllocateInfoKHR = VkExportMemoryAllocateInfo;
9048 
9049 
9050 // - VK_KHR_external_memory_fd -
9051 enum VK_KHR_external_memory_fd = 1;
9052 
9053 enum VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION = 1;
9054 enum const( char )* VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME = "VK_KHR_external_memory_fd";
9055 
9056 struct VkImportMemoryFdInfoKHR {
9057     VkStructureType                     sType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR;
9058     const( void )*                      pNext;
9059     VkExternalMemoryHandleTypeFlagBits  handleType;
9060     int                                 fd;
9061 }
9062 
9063 struct VkMemoryFdPropertiesKHR {
9064     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR;
9065     void*            pNext;
9066     uint32_t         memoryTypeBits;
9067 }
9068 
9069 struct VkMemoryGetFdInfoKHR {
9070     VkStructureType                     sType = VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR;
9071     const( void )*                      pNext;
9072     VkDeviceMemory                      memory;
9073     VkExternalMemoryHandleTypeFlagBits  handleType;
9074 }
9075 
9076 
9077 // - VK_KHR_external_semaphore_capabilities -
9078 enum VK_KHR_external_semaphore_capabilities = 1;
9079 
9080 enum VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION = 1;
9081 enum const( char )* VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_semaphore_capabilities";
9082 
9083 alias VkExternalSemaphoreHandleTypeFlagsKHR = VkExternalSemaphoreHandleTypeFlags;
9084 alias VkExternalSemaphoreHandleTypeFlagBitsKHR = VkExternalSemaphoreHandleTypeFlagBits;
9085 alias VkExternalSemaphoreFeatureFlagsKHR = VkExternalSemaphoreFeatureFlags;
9086 alias VkExternalSemaphoreFeatureFlagBitsKHR = VkExternalSemaphoreFeatureFlagBits;
9087 
9088 alias VkPhysicalDeviceExternalSemaphoreInfoKHR = VkPhysicalDeviceExternalSemaphoreInfo;
9089 alias VkExternalSemaphorePropertiesKHR = VkExternalSemaphoreProperties;
9090 
9091 
9092 // - VK_KHR_external_semaphore -
9093 enum VK_KHR_external_semaphore = 1;
9094 
9095 enum VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION = 1;
9096 enum const( char )* VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME = "VK_KHR_external_semaphore";
9097 
9098 alias VkSemaphoreImportFlagsKHR = VkSemaphoreImportFlags;
9099 alias VkSemaphoreImportFlagBitsKHR = VkSemaphoreImportFlagBits;
9100 
9101 alias VkExportSemaphoreCreateInfoKHR = VkExportSemaphoreCreateInfo;
9102 
9103 
9104 // - VK_KHR_external_semaphore_fd -
9105 enum VK_KHR_external_semaphore_fd = 1;
9106 
9107 enum VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION = 1;
9108 enum const( char )* VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME = "VK_KHR_external_semaphore_fd";
9109 
9110 struct VkImportSemaphoreFdInfoKHR {
9111     VkStructureType                        sType = VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR;
9112     const( void )*                         pNext;
9113     VkSemaphore                            semaphore;
9114     VkSemaphoreImportFlags                 flags;
9115     VkExternalSemaphoreHandleTypeFlagBits  handleType;
9116     int                                    fd;
9117 }
9118 
9119 struct VkSemaphoreGetFdInfoKHR {
9120     VkStructureType                        sType = VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR;
9121     const( void )*                         pNext;
9122     VkSemaphore                            semaphore;
9123     VkExternalSemaphoreHandleTypeFlagBits  handleType;
9124 }
9125 
9126 
9127 // - VK_KHR_push_descriptor -
9128 enum VK_KHR_push_descriptor = 1;
9129 
9130 enum VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION = 2;
9131 enum const( char )* VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME = "VK_KHR_push_descriptor";
9132 
9133 struct VkPhysicalDevicePushDescriptorPropertiesKHR {
9134     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR;
9135     void*            pNext;
9136     uint32_t         maxPushDescriptors;
9137 }
9138 
9139 
9140 // - VK_KHR_shader_float16_int8 -
9141 enum VK_KHR_shader_float16_int8 = 1;
9142 
9143 enum VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION = 1;
9144 enum const( char )* VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME = "VK_KHR_shader_float16_int8";
9145 
9146 alias VkPhysicalDeviceShaderFloat16Int8FeaturesKHR = VkPhysicalDeviceShaderFloat16Int8Features;
9147 alias VkPhysicalDeviceFloat16Int8FeaturesKHR = VkPhysicalDeviceShaderFloat16Int8Features;
9148 
9149 
9150 // - VK_KHR_16bit_storage -
9151 enum VK_KHR_16bit_storage = 1;
9152 
9153 enum VK_KHR_16BIT_STORAGE_SPEC_VERSION = 1;
9154 enum const( char )* VK_KHR_16BIT_STORAGE_EXTENSION_NAME = "VK_KHR_16bit_storage";
9155 
9156 alias VkPhysicalDevice16BitStorageFeaturesKHR = VkPhysicalDevice16BitStorageFeatures;
9157 
9158 
9159 // - VK_KHR_incremental_present -
9160 enum VK_KHR_incremental_present = 1;
9161 
9162 enum VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION = 2;
9163 enum const( char )* VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME = "VK_KHR_incremental_present";
9164 
9165 struct VkRectLayerKHR {
9166     VkOffset2D  offset;
9167     VkExtent2D  extent;
9168     uint32_t    layer;
9169 }
9170 
9171 struct VkPresentRegionKHR {
9172     uint32_t                  rectangleCount;
9173     const( VkRectLayerKHR )*  pRectangles;
9174 }
9175 
9176 struct VkPresentRegionsKHR {
9177     VkStructureType               sType = VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR;
9178     const( void )*                pNext;
9179     uint32_t                      swapchainCount;
9180     const( VkPresentRegionKHR )*  pRegions;
9181 }
9182 
9183 
9184 // - VK_KHR_descriptor_update_template -
9185 enum VK_KHR_descriptor_update_template = 1;
9186 
9187 alias VkDescriptorUpdateTemplateKHR = VkDescriptorUpdateTemplate;
9188 
9189 alias VkDescriptorUpdateTemplateTypeKHR = VkDescriptorUpdateTemplateType;
9190 enum VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION = 1;
9191 enum const( char )* VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME = "VK_KHR_descriptor_update_template";
9192 
9193 alias VkDescriptorUpdateTemplateCreateFlagsKHR = VkDescriptorUpdateTemplateCreateFlags;
9194 
9195 alias VkDescriptorUpdateTemplateEntryKHR = VkDescriptorUpdateTemplateEntry;
9196 alias VkDescriptorUpdateTemplateCreateInfoKHR = VkDescriptorUpdateTemplateCreateInfo;
9197 
9198 
9199 // - VK_KHR_imageless_framebuffer -
9200 enum VK_KHR_imageless_framebuffer = 1;
9201 
9202 enum VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION = 1;
9203 enum const( char )* VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME = "VK_KHR_imageless_framebuffer";
9204 
9205 alias VkPhysicalDeviceImagelessFramebufferFeaturesKHR = VkPhysicalDeviceImagelessFramebufferFeatures;
9206 alias VkFramebufferAttachmentsCreateInfoKHR = VkFramebufferAttachmentsCreateInfo;
9207 alias VkFramebufferAttachmentImageInfoKHR = VkFramebufferAttachmentImageInfo;
9208 alias VkRenderPassAttachmentBeginInfoKHR = VkRenderPassAttachmentBeginInfo;
9209 
9210 
9211 // - VK_KHR_create_renderpass2 -
9212 enum VK_KHR_create_renderpass2 = 1;
9213 
9214 enum VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION = 1;
9215 enum const( char )* VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME = "VK_KHR_create_renderpass2";
9216 
9217 alias VkRenderPassCreateInfo2KHR = VkRenderPassCreateInfo2;
9218 alias VkAttachmentDescription2KHR = VkAttachmentDescription2;
9219 alias VkAttachmentReference2KHR = VkAttachmentReference2;
9220 alias VkSubpassDescription2KHR = VkSubpassDescription2;
9221 alias VkSubpassDependency2KHR = VkSubpassDependency2;
9222 alias VkSubpassBeginInfoKHR = VkSubpassBeginInfo;
9223 alias VkSubpassEndInfoKHR = VkSubpassEndInfo;
9224 
9225 
9226 // - VK_KHR_shared_presentable_image -
9227 enum VK_KHR_shared_presentable_image = 1;
9228 
9229 enum VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION = 1;
9230 enum const( char )* VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME = "VK_KHR_shared_presentable_image";
9231 
9232 struct VkSharedPresentSurfaceCapabilitiesKHR {
9233     VkStructureType    sType = VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR;
9234     void*              pNext;
9235     VkImageUsageFlags  sharedPresentSupportedUsageFlags;
9236 }
9237 
9238 
9239 // - VK_KHR_external_fence_capabilities -
9240 enum VK_KHR_external_fence_capabilities = 1;
9241 
9242 enum VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION = 1;
9243 enum const( char )* VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME = "VK_KHR_external_fence_capabilities";
9244 
9245 alias VkExternalFenceHandleTypeFlagsKHR = VkExternalFenceHandleTypeFlags;
9246 alias VkExternalFenceHandleTypeFlagBitsKHR = VkExternalFenceHandleTypeFlagBits;
9247 alias VkExternalFenceFeatureFlagsKHR = VkExternalFenceFeatureFlags;
9248 alias VkExternalFenceFeatureFlagBitsKHR = VkExternalFenceFeatureFlagBits;
9249 
9250 alias VkPhysicalDeviceExternalFenceInfoKHR = VkPhysicalDeviceExternalFenceInfo;
9251 alias VkExternalFencePropertiesKHR = VkExternalFenceProperties;
9252 
9253 
9254 // - VK_KHR_external_fence -
9255 enum VK_KHR_external_fence = 1;
9256 
9257 enum VK_KHR_EXTERNAL_FENCE_SPEC_VERSION = 1;
9258 enum const( char )* VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME = "VK_KHR_external_fence";
9259 
9260 alias VkFenceImportFlagsKHR = VkFenceImportFlags;
9261 alias VkFenceImportFlagBitsKHR = VkFenceImportFlagBits;
9262 
9263 alias VkExportFenceCreateInfoKHR = VkExportFenceCreateInfo;
9264 
9265 
9266 // - VK_KHR_external_fence_fd -
9267 enum VK_KHR_external_fence_fd = 1;
9268 
9269 enum VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION = 1;
9270 enum const( char )* VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME = "VK_KHR_external_fence_fd";
9271 
9272 struct VkImportFenceFdInfoKHR {
9273     VkStructureType                    sType = VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR;
9274     const( void )*                     pNext;
9275     VkFence                            fence;
9276     VkFenceImportFlags                 flags;
9277     VkExternalFenceHandleTypeFlagBits  handleType;
9278     int                                fd;
9279 }
9280 
9281 struct VkFenceGetFdInfoKHR {
9282     VkStructureType                    sType = VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR;
9283     const( void )*                     pNext;
9284     VkFence                            fence;
9285     VkExternalFenceHandleTypeFlagBits  handleType;
9286 }
9287 
9288 
9289 // - VK_KHR_performance_query -
9290 enum VK_KHR_performance_query = 1;
9291 
9292 enum VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION = 1;
9293 enum const( char )* VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_KHR_performance_query";
9294 
9295 enum VkPerformanceCounterUnitKHR {
9296     VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR              = 0,
9297     VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR           = 1,
9298     VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR          = 2,
9299     VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR                = 3,
9300     VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR     = 4,
9301     VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR               = 5,
9302     VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR                = 6,
9303     VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR                = 7,
9304     VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR                 = 8,
9305     VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR                = 9,
9306     VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR               = 10,
9307     VK_PERFORMANCE_COUNTER_UNIT_BEGIN_RANGE_KHR          = VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR,
9308     VK_PERFORMANCE_COUNTER_UNIT_END_RANGE_KHR            = VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR,
9309     VK_PERFORMANCE_COUNTER_UNIT_RANGE_SIZE_KHR           = VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR - VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR + 1,
9310     VK_PERFORMANCE_COUNTER_UNIT_MAX_ENUM_KHR             = 0x7FFFFFFF
9311 }
9312 
9313 enum VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR             = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR;
9314 enum VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR          = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR;
9315 enum VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR         = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR;
9316 enum VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR               = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR;
9317 enum VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR    = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR;
9318 enum VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR              = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR;
9319 enum VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR               = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR;
9320 enum VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR               = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR;
9321 enum VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR                = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR;
9322 enum VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR               = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR;
9323 enum VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR              = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR;
9324 enum VK_PERFORMANCE_COUNTER_UNIT_BEGIN_RANGE_KHR         = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_BEGIN_RANGE_KHR;
9325 enum VK_PERFORMANCE_COUNTER_UNIT_END_RANGE_KHR           = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_END_RANGE_KHR;
9326 enum VK_PERFORMANCE_COUNTER_UNIT_RANGE_SIZE_KHR          = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_RANGE_SIZE_KHR;
9327 enum VK_PERFORMANCE_COUNTER_UNIT_MAX_ENUM_KHR            = VkPerformanceCounterUnitKHR.VK_PERFORMANCE_COUNTER_UNIT_MAX_ENUM_KHR;
9328 
9329 enum VkPerformanceCounterScopeKHR {
9330     VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR      = 0,
9331     VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR         = 1,
9332     VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR             = 2,
9333     VK_QUERY_SCOPE_COMMAND_BUFFER_KHR                    = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR,
9334     VK_QUERY_SCOPE_RENDER_PASS_KHR                       = VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR,
9335     VK_QUERY_SCOPE_COMMAND_KHR                           = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR,
9336     VK_PERFORMANCE_COUNTER_SCOPE_BEGIN_RANGE_KHR         = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR,
9337     VK_PERFORMANCE_COUNTER_SCOPE_END_RANGE_KHR           = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR,
9338     VK_PERFORMANCE_COUNTER_SCOPE_RANGE_SIZE_KHR          = VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR - VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR + 1,
9339     VK_PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR            = 0x7FFFFFFF
9340 }
9341 
9342 enum VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR     = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR;
9343 enum VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR        = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR;
9344 enum VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR            = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR;
9345 enum VK_QUERY_SCOPE_COMMAND_BUFFER_KHR                   = VkPerformanceCounterScopeKHR.VK_QUERY_SCOPE_COMMAND_BUFFER_KHR;
9346 enum VK_QUERY_SCOPE_RENDER_PASS_KHR                      = VkPerformanceCounterScopeKHR.VK_QUERY_SCOPE_RENDER_PASS_KHR;
9347 enum VK_QUERY_SCOPE_COMMAND_KHR                          = VkPerformanceCounterScopeKHR.VK_QUERY_SCOPE_COMMAND_KHR;
9348 enum VK_PERFORMANCE_COUNTER_SCOPE_BEGIN_RANGE_KHR        = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_BEGIN_RANGE_KHR;
9349 enum VK_PERFORMANCE_COUNTER_SCOPE_END_RANGE_KHR          = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_END_RANGE_KHR;
9350 enum VK_PERFORMANCE_COUNTER_SCOPE_RANGE_SIZE_KHR         = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_RANGE_SIZE_KHR;
9351 enum VK_PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR           = VkPerformanceCounterScopeKHR.VK_PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR;
9352 
9353 enum VkPerformanceCounterStorageKHR {
9354     VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR     = 0,
9355     VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR     = 1,
9356     VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR    = 2,
9357     VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR    = 3,
9358     VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR   = 4,
9359     VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR   = 5,
9360     VK_PERFORMANCE_COUNTER_STORAGE_BEGIN_RANGE_KHR = VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR,
9361     VK_PERFORMANCE_COUNTER_STORAGE_END_RANGE_KHR = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR,
9362     VK_PERFORMANCE_COUNTER_STORAGE_RANGE_SIZE_KHR = VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR - VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR + 1,
9363     VK_PERFORMANCE_COUNTER_STORAGE_MAX_ENUM_KHR  = 0x7FFFFFFF
9364 }
9365 
9366 enum VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR    = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR;
9367 enum VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR    = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR;
9368 enum VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR   = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR;
9369 enum VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR   = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR;
9370 enum VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR  = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR;
9371 enum VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR  = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR;
9372 enum VK_PERFORMANCE_COUNTER_STORAGE_BEGIN_RANGE_KHR = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_BEGIN_RANGE_KHR;
9373 enum VK_PERFORMANCE_COUNTER_STORAGE_END_RANGE_KHR = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_END_RANGE_KHR;
9374 enum VK_PERFORMANCE_COUNTER_STORAGE_RANGE_SIZE_KHR = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_RANGE_SIZE_KHR;
9375 enum VK_PERFORMANCE_COUNTER_STORAGE_MAX_ENUM_KHR = VkPerformanceCounterStorageKHR.VK_PERFORMANCE_COUNTER_STORAGE_MAX_ENUM_KHR;
9376 
9377 alias VkPerformanceCounterDescriptionFlagsKHR = VkFlags;
9378 enum VkPerformanceCounterDescriptionFlagBitsKHR : VkPerformanceCounterDescriptionFlagsKHR {
9379     VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR     = 0x00000001,
9380     VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR     = 0x00000002,
9381     VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR         = VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR,
9382     VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR         = VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR,
9383     VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR            = 0x7FFFFFFF
9384 }
9385 
9386 enum VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR    = VkPerformanceCounterDescriptionFlagBitsKHR.VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR;
9387 enum VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR    = VkPerformanceCounterDescriptionFlagBitsKHR.VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR;
9388 enum VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR        = VkPerformanceCounterDescriptionFlagBitsKHR.VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR;
9389 enum VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR        = VkPerformanceCounterDescriptionFlagBitsKHR.VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR;
9390 enum VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR           = VkPerformanceCounterDescriptionFlagBitsKHR.VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR;
9391 
9392 alias VkAcquireProfilingLockFlagsKHR = VkFlags;
9393 enum VkAcquireProfilingLockFlagBitsKHR : VkAcquireProfilingLockFlagsKHR {
9394     VK_ACQUIRE_PROFILING_LOCK_FLAG_BITS_MAX_ENUM_KHR     = 0x7FFFFFFF
9395 }
9396 
9397 enum VK_ACQUIRE_PROFILING_LOCK_FLAG_BITS_MAX_ENUM_KHR    = VkAcquireProfilingLockFlagBitsKHR.VK_ACQUIRE_PROFILING_LOCK_FLAG_BITS_MAX_ENUM_KHR;
9398 
9399 struct VkPhysicalDevicePerformanceQueryFeaturesKHR {
9400     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR;
9401     void*            pNext;
9402     VkBool32         performanceCounterQueryPools;
9403     VkBool32         performanceCounterMultipleQueryPools;
9404 }
9405 
9406 struct VkPhysicalDevicePerformanceQueryPropertiesKHR {
9407     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR;
9408     void*            pNext;
9409     VkBool32         allowCommandBufferQueryCopies;
9410 }
9411 
9412 struct VkPerformanceCounterKHR {
9413     VkStructureType                 sType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR;
9414     void*                           pNext;
9415     VkPerformanceCounterUnitKHR     unit;
9416     VkPerformanceCounterScopeKHR    Scope;
9417     VkPerformanceCounterStorageKHR  storage;
9418     uint8_t[ VK_UUID_SIZE ]         uuid;
9419     alias                           scope_ = Scope;
9420     alias                           _scope = Scope;
9421 }
9422 
9423 struct VkPerformanceCounterDescriptionKHR {
9424     VkStructureType                          sType = VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR;
9425     void*                                    pNext;
9426     VkPerformanceCounterDescriptionFlagsKHR  flags;
9427     char[ VK_MAX_DESCRIPTION_SIZE ]          name;
9428     char[ VK_MAX_DESCRIPTION_SIZE ]          category;
9429     char[ VK_MAX_DESCRIPTION_SIZE ]          description;
9430 }
9431 
9432 struct VkQueryPoolPerformanceCreateInfoKHR {
9433     VkStructureType     sType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR;
9434     const( void )*      pNext;
9435     uint32_t            queueFamilyIndex;
9436     uint32_t            counterIndexCount;
9437     const( uint32_t )*  pCounterIndices;
9438 }
9439 
9440 union VkPerformanceCounterResultKHR {
9441     int32_t   int32;
9442     int64_t   int64;
9443     uint32_t  uint32;
9444     uint64_t  uint64;
9445     float     float32;
9446     double    float64;
9447 }
9448 
9449 struct VkAcquireProfilingLockInfoKHR {
9450     VkStructureType                 sType = VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR;
9451     const( void )*                  pNext;
9452     VkAcquireProfilingLockFlagsKHR  flags;
9453     uint64_t                        timeout;
9454 }
9455 
9456 struct VkPerformanceQuerySubmitInfoKHR {
9457     VkStructureType  sType = VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR;
9458     const( void )*   pNext;
9459     uint32_t         counterPassIndex;
9460 }
9461 
9462 
9463 // - VK_KHR_maintenance2 -
9464 enum VK_KHR_maintenance2 = 1;
9465 
9466 alias VkPointClippingBehaviorKHR = VkPointClippingBehavior;
9467 alias VkTessellationDomainOriginKHR = VkTessellationDomainOrigin;
9468 enum VK_KHR_MAINTENANCE_2_SPEC_VERSION = 1;
9469 enum const( char )* VK_KHR_MAINTENANCE_2_EXTENSION_NAME = "VK_KHR_maintenance2";
9470 alias VK_KHR_MAINTENANCE2_SPEC_VERSION = VK_KHR_MAINTENANCE_2_SPEC_VERSION;
9471 alias VK_KHR_MAINTENANCE2_EXTENSION_NAME = VK_KHR_MAINTENANCE_2_EXTENSION_NAME;
9472 
9473 alias VkPhysicalDevicePointClippingPropertiesKHR = VkPhysicalDevicePointClippingProperties;
9474 alias VkRenderPassInputAttachmentAspectCreateInfoKHR = VkRenderPassInputAttachmentAspectCreateInfo;
9475 alias VkInputAttachmentAspectReferenceKHR = VkInputAttachmentAspectReference;
9476 alias VkImageViewUsageCreateInfoKHR = VkImageViewUsageCreateInfo;
9477 alias VkPipelineTessellationDomainOriginStateCreateInfoKHR = VkPipelineTessellationDomainOriginStateCreateInfo;
9478 
9479 
9480 // - VK_KHR_get_surface_capabilities2 -
9481 enum VK_KHR_get_surface_capabilities2 = 1;
9482 
9483 enum VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION = 1;
9484 enum const( char )* VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME = "VK_KHR_get_surface_capabilities2";
9485 
9486 struct VkPhysicalDeviceSurfaceInfo2KHR {
9487     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR;
9488     const( void )*   pNext;
9489     VkSurfaceKHR     surface;
9490 }
9491 
9492 struct VkSurfaceCapabilities2KHR {
9493     VkStructureType           sType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR;
9494     void*                     pNext;
9495     VkSurfaceCapabilitiesKHR  surfaceCapabilities;
9496 }
9497 
9498 struct VkSurfaceFormat2KHR {
9499     VkStructureType     sType = VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR;
9500     void*               pNext;
9501     VkSurfaceFormatKHR  surfaceFormat;
9502 }
9503 
9504 
9505 // - VK_KHR_variable_pointers -
9506 enum VK_KHR_variable_pointers = 1;
9507 
9508 enum VK_KHR_VARIABLE_POINTERS_SPEC_VERSION = 1;
9509 enum const( char )* VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME = "VK_KHR_variable_pointers";
9510 
9511 alias VkPhysicalDeviceVariablePointerFeaturesKHR = VkPhysicalDeviceVariablePointersFeatures;
9512 alias VkPhysicalDeviceVariablePointersFeaturesKHR = VkPhysicalDeviceVariablePointersFeatures;
9513 
9514 
9515 // - VK_KHR_get_display_properties2 -
9516 enum VK_KHR_get_display_properties2 = 1;
9517 
9518 enum VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION = 1;
9519 enum const( char )* VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME = "VK_KHR_get_display_properties2";
9520 
9521 struct VkDisplayProperties2KHR {
9522     VkStructureType         sType = VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR;
9523     void*                   pNext;
9524     VkDisplayPropertiesKHR  displayProperties;
9525 }
9526 
9527 struct VkDisplayPlaneProperties2KHR {
9528     VkStructureType              sType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR;
9529     void*                        pNext;
9530     VkDisplayPlanePropertiesKHR  displayPlaneProperties;
9531 }
9532 
9533 struct VkDisplayModeProperties2KHR {
9534     VkStructureType             sType = VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR;
9535     void*                       pNext;
9536     VkDisplayModePropertiesKHR  displayModeProperties;
9537 }
9538 
9539 struct VkDisplayPlaneInfo2KHR {
9540     VkStructureType   sType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR;
9541     const( void )*    pNext;
9542     VkDisplayModeKHR  mode;
9543     uint32_t          planeIndex;
9544 }
9545 
9546 struct VkDisplayPlaneCapabilities2KHR {
9547     VkStructureType                sType = VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR;
9548     void*                          pNext;
9549     VkDisplayPlaneCapabilitiesKHR  capabilities;
9550 }
9551 
9552 
9553 // - VK_KHR_dedicated_allocation -
9554 enum VK_KHR_dedicated_allocation = 1;
9555 
9556 enum VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION = 3;
9557 enum const( char )* VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_KHR_dedicated_allocation";
9558 
9559 alias VkMemoryDedicatedRequirementsKHR = VkMemoryDedicatedRequirements;
9560 alias VkMemoryDedicatedAllocateInfoKHR = VkMemoryDedicatedAllocateInfo;
9561 
9562 
9563 // - VK_KHR_storage_buffer_storage_class -
9564 enum VK_KHR_storage_buffer_storage_class = 1;
9565 
9566 enum VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION = 1;
9567 enum const( char )* VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME = "VK_KHR_storage_buffer_storage_class";
9568 
9569 
9570 // - VK_KHR_relaxed_block_layout -
9571 enum VK_KHR_relaxed_block_layout = 1;
9572 
9573 enum VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION = 1;
9574 enum const( char )* VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME = "VK_KHR_relaxed_block_layout";
9575 
9576 
9577 // - VK_KHR_get_memory_requirements2 -
9578 enum VK_KHR_get_memory_requirements2 = 1;
9579 
9580 enum VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION = 1;
9581 enum const( char )* VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME = "VK_KHR_get_memory_requirements2";
9582 
9583 alias VkBufferMemoryRequirementsInfo2KHR = VkBufferMemoryRequirementsInfo2;
9584 alias VkImageMemoryRequirementsInfo2KHR = VkImageMemoryRequirementsInfo2;
9585 alias VkImageSparseMemoryRequirementsInfo2KHR = VkImageSparseMemoryRequirementsInfo2;
9586 alias VkMemoryRequirements2KHR = VkMemoryRequirements2;
9587 alias VkSparseImageMemoryRequirements2KHR = VkSparseImageMemoryRequirements2;
9588 
9589 
9590 // - VK_KHR_image_format_list -
9591 enum VK_KHR_image_format_list = 1;
9592 
9593 enum VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION = 1;
9594 enum const( char )* VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME = "VK_KHR_image_format_list";
9595 
9596 alias VkImageFormatListCreateInfoKHR = VkImageFormatListCreateInfo;
9597 
9598 
9599 // - VK_KHR_sampler_ycbcr_conversion -
9600 enum VK_KHR_sampler_ycbcr_conversion = 1;
9601 
9602 alias VkSamplerYcbcrConversionKHR = VkSamplerYcbcrConversion;
9603 
9604 alias VkSamplerYcbcrModelConversionKHR = VkSamplerYcbcrModelConversion;
9605 alias VkSamplerYcbcrRangeKHR = VkSamplerYcbcrRange;
9606 alias VkChromaLocationKHR = VkChromaLocation;
9607 enum VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION = 14;
9608 enum const( char )* VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME = "VK_KHR_sampler_ycbcr_conversion";
9609 
9610 alias VkSamplerYcbcrConversionCreateInfoKHR = VkSamplerYcbcrConversionCreateInfo;
9611 alias VkSamplerYcbcrConversionInfoKHR = VkSamplerYcbcrConversionInfo;
9612 alias VkBindImagePlaneMemoryInfoKHR = VkBindImagePlaneMemoryInfo;
9613 alias VkImagePlaneMemoryRequirementsInfoKHR = VkImagePlaneMemoryRequirementsInfo;
9614 alias VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR = VkPhysicalDeviceSamplerYcbcrConversionFeatures;
9615 alias VkSamplerYcbcrConversionImageFormatPropertiesKHR = VkSamplerYcbcrConversionImageFormatProperties;
9616 
9617 
9618 // - VK_KHR_bind_memory2 -
9619 enum VK_KHR_bind_memory2 = 1;
9620 
9621 enum VK_KHR_BIND_MEMORY_2_SPEC_VERSION = 1;
9622 enum const( char )* VK_KHR_BIND_MEMORY_2_EXTENSION_NAME = "VK_KHR_bind_memory2";
9623 
9624 alias VkBindBufferMemoryInfoKHR = VkBindBufferMemoryInfo;
9625 alias VkBindImageMemoryInfoKHR = VkBindImageMemoryInfo;
9626 
9627 
9628 // - VK_KHR_maintenance3 -
9629 enum VK_KHR_maintenance3 = 1;
9630 
9631 enum VK_KHR_MAINTENANCE_3_SPEC_VERSION = 1;
9632 enum const( char )* VK_KHR_MAINTENANCE_3_EXTENSION_NAME = "VK_KHR_maintenance3";
9633 alias VK_KHR_MAINTENANCE3_SPEC_VERSION = VK_KHR_MAINTENANCE_3_SPEC_VERSION;
9634 alias VK_KHR_MAINTENANCE3_EXTENSION_NAME = VK_KHR_MAINTENANCE_3_EXTENSION_NAME;
9635 
9636 alias VkPhysicalDeviceMaintenance3PropertiesKHR = VkPhysicalDeviceMaintenance3Properties;
9637 alias VkDescriptorSetLayoutSupportKHR = VkDescriptorSetLayoutSupport;
9638 
9639 
9640 // - VK_KHR_draw_indirect_count -
9641 enum VK_KHR_draw_indirect_count = 1;
9642 
9643 enum VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION = 1;
9644 enum const( char )* VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME = "VK_KHR_draw_indirect_count";
9645 
9646 
9647 // - VK_KHR_shader_subgroup_extended_types -
9648 enum VK_KHR_shader_subgroup_extended_types = 1;
9649 
9650 enum VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION = 1;
9651 enum const( char )* VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME = "VK_KHR_shader_subgroup_extended_types";
9652 
9653 alias VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR = VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures;
9654 
9655 
9656 // - VK_KHR_8bit_storage -
9657 enum VK_KHR_8bit_storage = 1;
9658 
9659 enum VK_KHR_8BIT_STORAGE_SPEC_VERSION = 1;
9660 enum const( char )* VK_KHR_8BIT_STORAGE_EXTENSION_NAME = "VK_KHR_8bit_storage";
9661 
9662 alias VkPhysicalDevice8BitStorageFeaturesKHR = VkPhysicalDevice8BitStorageFeatures;
9663 
9664 
9665 // - VK_KHR_shader_atomic_int64 -
9666 enum VK_KHR_shader_atomic_int64 = 1;
9667 
9668 enum VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION = 1;
9669 enum const( char )* VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME = "VK_KHR_shader_atomic_int64";
9670 
9671 alias VkPhysicalDeviceShaderAtomicInt64FeaturesKHR = VkPhysicalDeviceShaderAtomicInt64Features;
9672 
9673 
9674 // - VK_KHR_shader_clock -
9675 enum VK_KHR_shader_clock = 1;
9676 
9677 enum VK_KHR_SHADER_CLOCK_SPEC_VERSION = 1;
9678 enum const( char )* VK_KHR_SHADER_CLOCK_EXTENSION_NAME = "VK_KHR_shader_clock";
9679 
9680 struct VkPhysicalDeviceShaderClockFeaturesKHR {
9681     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR;
9682     void*            pNext;
9683     VkBool32         shaderSubgroupClock;
9684     VkBool32         shaderDeviceClock;
9685 }
9686 
9687 
9688 // - VK_KHR_global_priority -
9689 enum VK_KHR_global_priority = 1;
9690 
9691 enum VK_MAX_GLOBAL_PRIORITY_SIZE_KHR = 16;
9692 enum VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION = 1;
9693 enum const( char )* VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME = "VK_KHR_global_priority";
9694 
9695 enum VkQueueGlobalPriorityKHR {
9696     VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR             = 128,
9697     VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR          = 256,
9698     VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR            = 512,
9699     VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR        = 1024,
9700     VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT             = VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR,
9701     VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT          = VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR,
9702     VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT            = VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR,
9703     VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT        = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR,
9704     VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_KHR     = VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR,
9705     VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_KHR       = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR,
9706     VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_KHR      = VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR - VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR + 1,
9707     VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_KHR        = 0x7FFFFFFF
9708 }
9709 
9710 enum VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR            = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR;
9711 enum VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR         = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR;
9712 enum VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR           = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR;
9713 enum VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR       = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR;
9714 enum VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT            = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT;
9715 enum VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT         = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT;
9716 enum VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT           = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT;
9717 enum VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT       = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT;
9718 enum VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_KHR    = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_BEGIN_RANGE_KHR;
9719 enum VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_KHR      = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_END_RANGE_KHR;
9720 enum VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_KHR     = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_RANGE_SIZE_KHR;
9721 enum VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_KHR       = VkQueueGlobalPriorityKHR.VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM_KHR;
9722 
9723 struct VkDeviceQueueGlobalPriorityCreateInfoKHR {
9724     VkStructureType           sType = VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR;
9725     const( void )*            pNext;
9726     VkQueueGlobalPriorityKHR  globalPriority;
9727 }
9728 
9729 struct VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR {
9730     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR;
9731     void*            pNext;
9732     VkBool32         globalPriorityQuery;
9733 }
9734 
9735 struct VkQueueFamilyGlobalPriorityPropertiesKHR {
9736     VkStructureType                                              sType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR;
9737     void*                                                        pNext;
9738     uint32_t                                                     priorityCount;
9739     VkQueueGlobalPriorityKHR[ VK_MAX_GLOBAL_PRIORITY_SIZE_KHR ]  priorities;
9740 }
9741 
9742 
9743 // - VK_KHR_driver_properties -
9744 enum VK_KHR_driver_properties = 1;
9745 
9746 alias VkDriverIdKHR = VkDriverId;
9747 enum VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION = 1;
9748 enum const( char )* VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME = "VK_KHR_driver_properties";
9749 alias VK_MAX_DRIVER_NAME_SIZE_KHR = VK_MAX_DRIVER_NAME_SIZE;
9750 alias VK_MAX_DRIVER_INFO_SIZE_KHR = VK_MAX_DRIVER_INFO_SIZE;
9751 
9752 alias VkConformanceVersionKHR = VkConformanceVersion;
9753 alias VkPhysicalDeviceDriverPropertiesKHR = VkPhysicalDeviceDriverProperties;
9754 
9755 
9756 // - VK_KHR_shader_float_controls -
9757 enum VK_KHR_shader_float_controls = 1;
9758 
9759 alias VkShaderFloatControlsIndependenceKHR = VkShaderFloatControlsIndependence;
9760 enum VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION = 4;
9761 enum const( char )* VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME = "VK_KHR_shader_float_controls";
9762 
9763 alias VkPhysicalDeviceFloatControlsPropertiesKHR = VkPhysicalDeviceFloatControlsProperties;
9764 
9765 
9766 // - VK_KHR_depth_stencil_resolve -
9767 enum VK_KHR_depth_stencil_resolve = 1;
9768 
9769 enum VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION = 1;
9770 enum const( char )* VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME = "VK_KHR_depth_stencil_resolve";
9771 
9772 alias VkResolveModeFlagBitsKHR = VkResolveModeFlagBits;
9773 alias VkResolveModeFlagsKHR = VkResolveModeFlags;
9774 
9775 alias VkSubpassDescriptionDepthStencilResolveKHR = VkSubpassDescriptionDepthStencilResolve;
9776 alias VkPhysicalDeviceDepthStencilResolvePropertiesKHR = VkPhysicalDeviceDepthStencilResolveProperties;
9777 
9778 
9779 // - VK_KHR_swapchain_mutable_format -
9780 enum VK_KHR_swapchain_mutable_format = 1;
9781 
9782 enum VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION = 1;
9783 enum const( char )* VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME = "VK_KHR_swapchain_mutable_format";
9784 
9785 
9786 // - VK_KHR_timeline_semaphore -
9787 enum VK_KHR_timeline_semaphore = 1;
9788 
9789 alias VkSemaphoreTypeKHR = VkSemaphoreType;
9790 enum VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION = 2;
9791 enum const( char )* VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME = "VK_KHR_timeline_semaphore";
9792 
9793 alias VkSemaphoreWaitFlagBitsKHR = VkSemaphoreWaitFlagBits;
9794 alias VkSemaphoreWaitFlagsKHR = VkSemaphoreWaitFlags;
9795 
9796 alias VkPhysicalDeviceTimelineSemaphoreFeaturesKHR = VkPhysicalDeviceTimelineSemaphoreFeatures;
9797 alias VkPhysicalDeviceTimelineSemaphorePropertiesKHR = VkPhysicalDeviceTimelineSemaphoreProperties;
9798 alias VkSemaphoreTypeCreateInfoKHR = VkSemaphoreTypeCreateInfo;
9799 alias VkTimelineSemaphoreSubmitInfoKHR = VkTimelineSemaphoreSubmitInfo;
9800 alias VkSemaphoreWaitInfoKHR = VkSemaphoreWaitInfo;
9801 alias VkSemaphoreSignalInfoKHR = VkSemaphoreSignalInfo;
9802 
9803 
9804 // - VK_KHR_vulkan_memory_model -
9805 enum VK_KHR_vulkan_memory_model = 1;
9806 
9807 enum VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION = 3;
9808 enum const( char )* VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME = "VK_KHR_vulkan_memory_model";
9809 
9810 alias VkPhysicalDeviceVulkanMemoryModelFeaturesKHR = VkPhysicalDeviceVulkanMemoryModelFeatures;
9811 
9812 
9813 // - VK_KHR_shader_terminate_invocation -
9814 enum VK_KHR_shader_terminate_invocation = 1;
9815 
9816 enum VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION = 1;
9817 enum const( char )* VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME = "VK_KHR_shader_terminate_invocation";
9818 
9819 alias VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR = VkPhysicalDeviceShaderTerminateInvocationFeatures;
9820 
9821 
9822 // - VK_KHR_fragment_shading_rate -
9823 enum VK_KHR_fragment_shading_rate = 1;
9824 
9825 enum VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION = 2;
9826 enum const( char )* VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME = "VK_KHR_fragment_shading_rate";
9827 
9828 enum VkFragmentShadingRateCombinerOpKHR {
9829     VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR        = 0,
9830     VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR     = 1,
9831     VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR         = 2,
9832     VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR         = 3,
9833     VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR         = 4,
9834     VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_BEGIN_RANGE_KHR = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR,
9835     VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_END_RANGE_KHR = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR,
9836     VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_RANGE_SIZE_KHR = VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR - VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR + 1,
9837     VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_MAX_ENUM_KHR = 0x7FFFFFFF
9838 }
9839 
9840 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR       = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR;
9841 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR    = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR;
9842 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR        = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR;
9843 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR        = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR;
9844 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR        = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR;
9845 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_BEGIN_RANGE_KHR = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_BEGIN_RANGE_KHR;
9846 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_END_RANGE_KHR = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_END_RANGE_KHR;
9847 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_RANGE_SIZE_KHR = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_RANGE_SIZE_KHR;
9848 enum VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_MAX_ENUM_KHR = VkFragmentShadingRateCombinerOpKHR.VK_FRAGMENT_SHADING_RATE_COMBINER_OPKHR_MAX_ENUM_KHR;
9849 
9850 struct VkFragmentShadingRateAttachmentInfoKHR {
9851     VkStructureType                   sType = VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR;
9852     const( void )*                    pNext;
9853     const( VkAttachmentReference2 )*  pFragmentShadingRateAttachment;
9854     VkExtent2D                        shadingRateAttachmentTexelSize;
9855 }
9856 
9857 struct VkPipelineFragmentShadingRateStateCreateInfoKHR {
9858     VkStructureType                        sType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR;
9859     const( void )*                         pNext;
9860     VkExtent2D                             fragmentSize;
9861     VkFragmentShadingRateCombinerOpKHR[2]  combinerOps;
9862 }
9863 
9864 struct VkPhysicalDeviceFragmentShadingRateFeaturesKHR {
9865     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR;
9866     void*            pNext;
9867     VkBool32         pipelineFragmentShadingRate;
9868     VkBool32         primitiveFragmentShadingRate;
9869     VkBool32         attachmentFragmentShadingRate;
9870 }
9871 
9872 struct VkPhysicalDeviceFragmentShadingRatePropertiesKHR {
9873     VkStructureType        sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR;
9874     void*                  pNext;
9875     VkExtent2D             minFragmentShadingRateAttachmentTexelSize;
9876     VkExtent2D             maxFragmentShadingRateAttachmentTexelSize;
9877     uint32_t               maxFragmentShadingRateAttachmentTexelSizeAspectRatio;
9878     VkBool32               primitiveFragmentShadingRateWithMultipleViewports;
9879     VkBool32               layeredShadingRateAttachments;
9880     VkBool32               fragmentShadingRateNonTrivialCombinerOps;
9881     VkExtent2D             maxFragmentSize;
9882     uint32_t               maxFragmentSizeAspectRatio;
9883     uint32_t               maxFragmentShadingRateCoverageSamples;
9884     VkSampleCountFlagBits  maxFragmentShadingRateRasterizationSamples;
9885     VkBool32               fragmentShadingRateWithShaderDepthStencilWrites;
9886     VkBool32               fragmentShadingRateWithSampleMask;
9887     VkBool32               fragmentShadingRateWithShaderSampleMask;
9888     VkBool32               fragmentShadingRateWithConservativeRasterization;
9889     VkBool32               fragmentShadingRateWithFragmentShaderInterlock;
9890     VkBool32               fragmentShadingRateWithCustomSampleLocations;
9891     VkBool32               fragmentShadingRateStrictMultiplyCombiner;
9892 }
9893 
9894 struct VkPhysicalDeviceFragmentShadingRateKHR {
9895     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR;
9896     void*               pNext;
9897     VkSampleCountFlags  sampleCounts;
9898     VkExtent2D          fragmentSize;
9899 }
9900 
9901 
9902 // - VK_KHR_spirv_1_4 -
9903 enum VK_KHR_spirv_1_4 = 1;
9904 
9905 enum VK_KHR_SPIRV_1_4_SPEC_VERSION = 1;
9906 enum const( char )* VK_KHR_SPIRV_1_4_EXTENSION_NAME = "VK_KHR_spirv_1_4";
9907 
9908 
9909 // - VK_KHR_surface_protected_capabilities -
9910 enum VK_KHR_surface_protected_capabilities = 1;
9911 
9912 enum VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION = 1;
9913 enum const( char )* VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME = "VK_KHR_surface_protected_capabilities";
9914 
9915 struct VkSurfaceProtectedCapabilitiesKHR {
9916     VkStructureType  sType = VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR;
9917     const( void )*   pNext;
9918     VkBool32         supportsProtected;
9919 }
9920 
9921 
9922 // - VK_KHR_separate_depth_stencil_layouts -
9923 enum VK_KHR_separate_depth_stencil_layouts = 1;
9924 
9925 enum VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION = 1;
9926 enum const( char )* VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME = "VK_KHR_separate_depth_stencil_layouts";
9927 
9928 alias VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR = VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures;
9929 alias VkAttachmentReferenceStencilLayoutKHR = VkAttachmentReferenceStencilLayout;
9930 alias VkAttachmentDescriptionStencilLayoutKHR = VkAttachmentDescriptionStencilLayout;
9931 
9932 
9933 // - VK_KHR_present_wait -
9934 enum VK_KHR_present_wait = 1;
9935 
9936 enum VK_KHR_PRESENT_WAIT_SPEC_VERSION = 1;
9937 enum const( char )* VK_KHR_PRESENT_WAIT_EXTENSION_NAME = "VK_KHR_present_wait";
9938 
9939 struct VkPhysicalDevicePresentWaitFeaturesKHR {
9940     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR;
9941     void*            pNext;
9942     VkBool32         presentWait;
9943 }
9944 
9945 
9946 // - VK_KHR_uniform_buffer_standard_layout -
9947 enum VK_KHR_uniform_buffer_standard_layout = 1;
9948 
9949 enum VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION = 1;
9950 enum const( char )* VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME = "VK_KHR_uniform_buffer_standard_layout";
9951 
9952 alias VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR = VkPhysicalDeviceUniformBufferStandardLayoutFeatures;
9953 
9954 
9955 // - VK_KHR_buffer_device_address -
9956 enum VK_KHR_buffer_device_address = 1;
9957 
9958 enum VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION = 1;
9959 enum const( char )* VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME = "VK_KHR_buffer_device_address";
9960 
9961 alias VkPhysicalDeviceBufferDeviceAddressFeaturesKHR = VkPhysicalDeviceBufferDeviceAddressFeatures;
9962 alias VkBufferDeviceAddressInfoKHR = VkBufferDeviceAddressInfo;
9963 alias VkBufferOpaqueCaptureAddressCreateInfoKHR = VkBufferOpaqueCaptureAddressCreateInfo;
9964 alias VkMemoryOpaqueCaptureAddressAllocateInfoKHR = VkMemoryOpaqueCaptureAddressAllocateInfo;
9965 alias VkDeviceMemoryOpaqueCaptureAddressInfoKHR = VkDeviceMemoryOpaqueCaptureAddressInfo;
9966 
9967 
9968 // - VK_KHR_deferred_host_operations -
9969 enum VK_KHR_deferred_host_operations = 1;
9970 
9971 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDeferredOperationKHR} );
9972 
9973 enum VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION = 4;
9974 enum const( char )* VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME = "VK_KHR_deferred_host_operations";
9975 
9976 
9977 // - VK_KHR_pipeline_executable_properties -
9978 enum VK_KHR_pipeline_executable_properties = 1;
9979 
9980 enum VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION = 1;
9981 enum const( char )* VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME = "VK_KHR_pipeline_executable_properties";
9982 
9983 enum VkPipelineExecutableStatisticFormatKHR {
9984     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR   = 0,
9985     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR    = 1,
9986     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR   = 2,
9987     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR  = 3,
9988     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BEGIN_RANGE_KHR = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR,
9989     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_END_RANGE_KHR = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR,
9990     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_RANGE_SIZE_KHR = VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR - VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR + 1,
9991     VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_MAX_ENUM_KHR = 0x7FFFFFFF
9992 }
9993 
9994 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR  = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR;
9995 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR   = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR;
9996 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR  = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR;
9997 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR;
9998 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BEGIN_RANGE_KHR = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BEGIN_RANGE_KHR;
9999 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_END_RANGE_KHR = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_END_RANGE_KHR;
10000 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_RANGE_SIZE_KHR = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_RANGE_SIZE_KHR;
10001 enum VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_MAX_ENUM_KHR = VkPipelineExecutableStatisticFormatKHR.VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_MAX_ENUM_KHR;
10002 
10003 struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR {
10004     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR;
10005     void*            pNext;
10006     VkBool32         pipelineExecutableInfo;
10007 }
10008 
10009 struct VkPipelineInfoKHR {
10010     VkStructureType  sType = VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR;
10011     const( void )*   pNext;
10012     VkPipeline       pipeline;
10013 }
10014 
10015 struct VkPipelineExecutablePropertiesKHR {
10016     VkStructureType                  sType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR;
10017     void*                            pNext;
10018     VkShaderStageFlags               stages;
10019     char[ VK_MAX_DESCRIPTION_SIZE ]  name;
10020     char[ VK_MAX_DESCRIPTION_SIZE ]  description;
10021     uint32_t                         subgroupSize;
10022 }
10023 
10024 struct VkPipelineExecutableInfoKHR {
10025     VkStructureType  sType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR;
10026     const( void )*   pNext;
10027     VkPipeline       pipeline;
10028     uint32_t         executableIndex;
10029 }
10030 
10031 union VkPipelineExecutableStatisticValueKHR {
10032     VkBool32  b32;
10033     int64_t   i64;
10034     uint64_t  u64;
10035     double    f64;
10036 }
10037 
10038 struct VkPipelineExecutableStatisticKHR {
10039     VkStructureType                         sType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR;
10040     void*                                   pNext;
10041     char[ VK_MAX_DESCRIPTION_SIZE ]         name;
10042     char[ VK_MAX_DESCRIPTION_SIZE ]         description;
10043     VkPipelineExecutableStatisticFormatKHR  format;
10044     VkPipelineExecutableStatisticValueKHR   value;
10045 }
10046 
10047 struct VkPipelineExecutableInternalRepresentationKHR {
10048     VkStructureType                  sType = VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR;
10049     void*                            pNext;
10050     char[ VK_MAX_DESCRIPTION_SIZE ]  name;
10051     char[ VK_MAX_DESCRIPTION_SIZE ]  description;
10052     VkBool32                         isText;
10053     size_t                           dataSize;
10054     void*                            pData;
10055 }
10056 
10057 
10058 // - VK_KHR_shader_integer_dot_product -
10059 enum VK_KHR_shader_integer_dot_product = 1;
10060 
10061 enum VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION = 1;
10062 enum const( char )* VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME = "VK_KHR_shader_integer_dot_product";
10063 
10064 alias VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR = VkPhysicalDeviceShaderIntegerDotProductFeatures;
10065 alias VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR = VkPhysicalDeviceShaderIntegerDotProductProperties;
10066 
10067 
10068 // - VK_KHR_pipeline_library -
10069 enum VK_KHR_pipeline_library = 1;
10070 
10071 enum VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION = 1;
10072 enum const( char )* VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME = "VK_KHR_pipeline_library";
10073 
10074 struct VkPipelineLibraryCreateInfoKHR {
10075     VkStructureType       sType = VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR;
10076     const( void )*        pNext;
10077     uint32_t              libraryCount;
10078     const( VkPipeline )*  pLibraries;
10079 }
10080 
10081 
10082 // - VK_KHR_shader_non_semantic_info -
10083 enum VK_KHR_shader_non_semantic_info = 1;
10084 
10085 enum VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION = 1;
10086 enum const( char )* VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME = "VK_KHR_shader_non_semantic_info";
10087 
10088 
10089 // - VK_KHR_present_id -
10090 enum VK_KHR_present_id = 1;
10091 
10092 enum VK_KHR_PRESENT_ID_SPEC_VERSION = 1;
10093 enum const( char )* VK_KHR_PRESENT_ID_EXTENSION_NAME = "VK_KHR_present_id";
10094 
10095 struct VkPresentIdKHR {
10096     VkStructureType     sType = VK_STRUCTURE_TYPE_PRESENT_ID_KHR;
10097     const( void )*      pNext;
10098     uint32_t            swapchainCount;
10099     const( uint64_t )*  pPresentIds;
10100 }
10101 
10102 struct VkPhysicalDevicePresentIdFeaturesKHR {
10103     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR;
10104     void*            pNext;
10105     VkBool32         presentId;
10106 }
10107 
10108 
10109 // - VK_KHR_synchronization2 -
10110 enum VK_KHR_synchronization2 = 1;
10111 
10112 enum VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION = 1;
10113 enum const( char )* VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME = "VK_KHR_synchronization2";
10114 
10115 alias VkPipelineStageFlags2KHR = VkPipelineStageFlags2;
10116 alias VkPipelineStageFlagBits2KHR = VkPipelineStageFlagBits2;
10117 alias VkAccessFlags2KHR = VkAccessFlags2;
10118 alias VkAccessFlagBits2KHR = VkAccessFlagBits2;
10119 alias VkSubmitFlagBitsKHR = VkSubmitFlagBits;
10120 alias VkSubmitFlagsKHR = VkSubmitFlags;
10121 
10122 alias VkMemoryBarrier2KHR = VkMemoryBarrier2;
10123 alias VkBufferMemoryBarrier2KHR = VkBufferMemoryBarrier2;
10124 alias VkImageMemoryBarrier2KHR = VkImageMemoryBarrier2;
10125 alias VkDependencyInfoKHR = VkDependencyInfo;
10126 alias VkSubmitInfo2KHR = VkSubmitInfo2;
10127 alias VkSemaphoreSubmitInfoKHR = VkSemaphoreSubmitInfo;
10128 alias VkCommandBufferSubmitInfoKHR = VkCommandBufferSubmitInfo;
10129 alias VkPhysicalDeviceSynchronization2FeaturesKHR = VkPhysicalDeviceSynchronization2Features;
10130 
10131 struct VkQueueFamilyCheckpointProperties2NV {
10132     VkStructureType        sType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV;
10133     void*                  pNext;
10134     VkPipelineStageFlags2  checkpointExecutionStageMask;
10135 }
10136 
10137 struct VkCheckpointData2NV {
10138     VkStructureType        sType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV;
10139     void*                  pNext;
10140     VkPipelineStageFlags2  stage;
10141     void*                  pCheckpointMarker;
10142 }
10143 
10144 
10145 // - VK_KHR_fragment_shader_barycentric -
10146 enum VK_KHR_fragment_shader_barycentric = 1;
10147 
10148 enum VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION = 1;
10149 enum const( char )* VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME = "VK_KHR_fragment_shader_barycentric";
10150 
10151 struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR {
10152     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR;
10153     void*            pNext;
10154     VkBool32         fragmentShaderBarycentric;
10155 }
10156 
10157 struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR {
10158     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR;
10159     void*            pNext;
10160     VkBool32         triStripVertexOrderIndependentOfProvokingVertex;
10161 }
10162 
10163 
10164 // - VK_KHR_shader_subgroup_uniform_control_flow -
10165 enum VK_KHR_shader_subgroup_uniform_control_flow = 1;
10166 
10167 enum VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION = 1;
10168 enum const( char )* VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME = "VK_KHR_shader_subgroup_uniform_control_flow";
10169 
10170 struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR {
10171     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR;
10172     void*            pNext;
10173     VkBool32         shaderSubgroupUniformControlFlow;
10174 }
10175 
10176 
10177 // - VK_KHR_zero_initialize_workgroup_memory -
10178 enum VK_KHR_zero_initialize_workgroup_memory = 1;
10179 
10180 enum VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION = 1;
10181 enum const( char )* VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME = "VK_KHR_zero_initialize_workgroup_memory";
10182 
10183 alias VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR = VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures;
10184 
10185 
10186 // - VK_KHR_workgroup_memory_explicit_layout -
10187 enum VK_KHR_workgroup_memory_explicit_layout = 1;
10188 
10189 enum VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION = 1;
10190 enum const( char )* VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME = "VK_KHR_workgroup_memory_explicit_layout";
10191 
10192 struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR {
10193     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR;
10194     void*            pNext;
10195     VkBool32         workgroupMemoryExplicitLayout;
10196     VkBool32         workgroupMemoryExplicitLayoutScalarBlockLayout;
10197     VkBool32         workgroupMemoryExplicitLayout8BitAccess;
10198     VkBool32         workgroupMemoryExplicitLayout16BitAccess;
10199 }
10200 
10201 
10202 // - VK_KHR_copy_commands2 -
10203 enum VK_KHR_copy_commands2 = 1;
10204 
10205 enum VK_KHR_COPY_COMMANDS_2_SPEC_VERSION = 1;
10206 enum const( char )* VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME = "VK_KHR_copy_commands2";
10207 
10208 alias VkCopyBufferInfo2KHR = VkCopyBufferInfo2;
10209 alias VkCopyImageInfo2KHR = VkCopyImageInfo2;
10210 alias VkCopyBufferToImageInfo2KHR = VkCopyBufferToImageInfo2;
10211 alias VkCopyImageToBufferInfo2KHR = VkCopyImageToBufferInfo2;
10212 alias VkBlitImageInfo2KHR = VkBlitImageInfo2;
10213 alias VkResolveImageInfo2KHR = VkResolveImageInfo2;
10214 alias VkBufferCopy2KHR = VkBufferCopy2;
10215 alias VkImageCopy2KHR = VkImageCopy2;
10216 alias VkImageBlit2KHR = VkImageBlit2;
10217 alias VkBufferImageCopy2KHR = VkBufferImageCopy2;
10218 alias VkImageResolve2KHR = VkImageResolve2;
10219 
10220 
10221 // - VK_KHR_format_feature_flags2 -
10222 enum VK_KHR_format_feature_flags2 = 1;
10223 
10224 enum VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION = 1;
10225 enum const( char )* VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME = "VK_KHR_format_feature_flags2";
10226 
10227 alias VkFormatFeatureFlags2KHR = VkFormatFeatureFlags2;
10228 alias VkFormatFeatureFlagBits2KHR = VkFormatFeatureFlagBits2;
10229 
10230 alias VkFormatProperties3KHR = VkFormatProperties3;
10231 
10232 
10233 // - VK_KHR_ray_tracing_maintenance1 -
10234 enum VK_KHR_ray_tracing_maintenance1 = 1;
10235 
10236 enum VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION = 1;
10237 enum const( char )* VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME = "VK_KHR_ray_tracing_maintenance1";
10238 
10239 struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR {
10240     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR;
10241     void*            pNext;
10242     VkBool32         rayTracingMaintenance1;
10243     VkBool32         rayTracingPipelineTraceRaysIndirect2;
10244 }
10245 
10246 struct VkTraceRaysIndirectCommand2KHR {
10247     VkDeviceAddress  raygenShaderRecordAddress;
10248     VkDeviceSize     raygenShaderRecordSize;
10249     VkDeviceAddress  missShaderBindingTableAddress;
10250     VkDeviceSize     missShaderBindingTableSize;
10251     VkDeviceSize     missShaderBindingTableStride;
10252     VkDeviceAddress  hitShaderBindingTableAddress;
10253     VkDeviceSize     hitShaderBindingTableSize;
10254     VkDeviceSize     hitShaderBindingTableStride;
10255     VkDeviceAddress  callableShaderBindingTableAddress;
10256     VkDeviceSize     callableShaderBindingTableSize;
10257     VkDeviceSize     callableShaderBindingTableStride;
10258     uint32_t         width;
10259     uint32_t         height;
10260     uint32_t         depth;
10261 }
10262 
10263 
10264 // - VK_KHR_portability_enumeration -
10265 enum VK_KHR_portability_enumeration = 1;
10266 
10267 enum VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION = 1;
10268 enum const( char )* VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME = "VK_KHR_portability_enumeration";
10269 
10270 
10271 // - VK_KHR_maintenance4 -
10272 enum VK_KHR_maintenance4 = 1;
10273 
10274 enum VK_KHR_MAINTENANCE_4_SPEC_VERSION = 2;
10275 enum const( char )* VK_KHR_MAINTENANCE_4_EXTENSION_NAME = "VK_KHR_maintenance4";
10276 
10277 alias VkPhysicalDeviceMaintenance4FeaturesKHR = VkPhysicalDeviceMaintenance4Features;
10278 alias VkPhysicalDeviceMaintenance4PropertiesKHR = VkPhysicalDeviceMaintenance4Properties;
10279 alias VkDeviceBufferMemoryRequirementsKHR = VkDeviceBufferMemoryRequirements;
10280 alias VkDeviceImageMemoryRequirementsKHR = VkDeviceImageMemoryRequirements;
10281 
10282 
10283 // - VK_EXT_debug_report -
10284 enum VK_EXT_debug_report = 1;
10285 
10286 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDebugReportCallbackEXT} );
10287 
10288 enum VK_EXT_DEBUG_REPORT_SPEC_VERSION = 10;
10289 enum const( char )* VK_EXT_DEBUG_REPORT_EXTENSION_NAME = "VK_EXT_debug_report";
10290 
10291 enum VkDebugReportObjectTypeEXT {
10292     VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT                              = 0,
10293     VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT                             = 1,
10294     VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT                      = 2,
10295     VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT                               = 3,
10296     VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT                                = 4,
10297     VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT                            = 5,
10298     VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT                       = 6,
10299     VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT                                = 7,
10300     VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT                        = 8,
10301     VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT                               = 9,
10302     VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT                                = 10,
10303     VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT                                = 11,
10304     VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT                           = 12,
10305     VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT                          = 13,
10306     VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT                           = 14,
10307     VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT                        = 15,
10308     VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT                       = 16,
10309     VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT                      = 17,
10310     VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT                          = 18,
10311     VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT                             = 19,
10312     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT                = 20,
10313     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT                              = 21,
10314     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT                      = 22,
10315     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT                       = 23,
10316     VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT                          = 24,
10317     VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT                         = 25,
10318     VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT                          = 26,
10319     VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT                        = 27,
10320     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT            = 28,
10321     VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT                          = 29,
10322     VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT                     = 30,
10323     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT                 = 33,
10324     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT             = 1000156000,
10325     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT           = 1000085000,
10326     VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT                        = 1000029000,
10327     VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT                      = 1000029001,
10328     VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT           = 1000150000,
10329     VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT            = 1000165000,
10330     VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT            = 1000366000,
10331     VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT                         = VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT,
10332     VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT                     = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
10333     VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT       = VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT,
10334     VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT         = VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT,
10335     VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT                          = VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT,
10336     VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT                            = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT,
10337     VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT                           = VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT - VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT + 1,
10338     VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT                             = 0x7FFFFFFF
10339 }
10340 
10341 enum VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT                             = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT;
10342 enum VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT                            = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT;
10343 enum VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT                     = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT;
10344 enum VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT                              = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT;
10345 enum VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT                               = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT;
10346 enum VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT                           = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT;
10347 enum VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT                      = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT;
10348 enum VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT                               = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT;
10349 enum VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT                       = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT;
10350 enum VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT                              = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT;
10351 enum VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT                               = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT;
10352 enum VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT                               = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT;
10353 enum VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT                          = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT;
10354 enum VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT;
10355 enum VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT                          = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT;
10356 enum VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT                       = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT;
10357 enum VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT                      = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT;
10358 enum VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT                     = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT;
10359 enum VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT;
10360 enum VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT                            = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT;
10361 enum VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT               = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT;
10362 enum VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT                             = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT;
10363 enum VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT                     = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT;
10364 enum VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT                      = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT;
10365 enum VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT;
10366 enum VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT                        = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT;
10367 enum VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT;
10368 enum VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT                       = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT;
10369 enum VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT           = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT;
10370 enum VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT;
10371 enum VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT                    = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT;
10372 enum VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT                = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT;
10373 enum VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT            = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT;
10374 enum VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT          = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT;
10375 enum VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT                       = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT;
10376 enum VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT                     = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT;
10377 enum VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT          = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT;
10378 enum VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT           = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT;
10379 enum VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT           = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT;
10380 enum VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT                        = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT;
10381 enum VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT                    = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT;
10382 enum VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT      = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT;
10383 enum VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT        = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT;
10384 enum VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT                         = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_BEGIN_RANGE_EXT;
10385 enum VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT                           = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_END_RANGE_EXT;
10386 enum VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT                          = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_RANGE_SIZE_EXT;
10387 enum VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT                            = VkDebugReportObjectTypeEXT.VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT;
10388 
10389 alias VkDebugReportFlagsEXT = VkFlags;
10390 enum VkDebugReportFlagBitsEXT : VkDebugReportFlagsEXT {
10391     VK_DEBUG_REPORT_INFORMATION_BIT_EXT          = 0x00000001,
10392     VK_DEBUG_REPORT_WARNING_BIT_EXT              = 0x00000002,
10393     VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT  = 0x00000004,
10394     VK_DEBUG_REPORT_ERROR_BIT_EXT                = 0x00000008,
10395     VK_DEBUG_REPORT_DEBUG_BIT_EXT                = 0x00000010,
10396     VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT       = 0x7FFFFFFF
10397 }
10398 
10399 enum VK_DEBUG_REPORT_INFORMATION_BIT_EXT         = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_INFORMATION_BIT_EXT;
10400 enum VK_DEBUG_REPORT_WARNING_BIT_EXT             = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_WARNING_BIT_EXT;
10401 enum VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT;
10402 enum VK_DEBUG_REPORT_ERROR_BIT_EXT               = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_ERROR_BIT_EXT;
10403 enum VK_DEBUG_REPORT_DEBUG_BIT_EXT               = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_DEBUG_BIT_EXT;
10404 enum VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT      = VkDebugReportFlagBitsEXT.VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT;
10405 
10406 alias PFN_vkDebugReportCallbackEXT = VkBool32 function(
10407     VkDebugReportFlagsEXT       flags,
10408     VkDebugReportObjectTypeEXT  objectType,
10409     uint64_t                    object,
10410     size_t                      location,
10411     int32_t                     messageCode,
10412     const( char )*              pLayerPrefix,
10413     const( char )*              pMessage,
10414     void*                       pUserData
10415 );
10416 
10417 struct VkDebugReportCallbackCreateInfoEXT {
10418     VkStructureType               sType = VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT;
10419     const( void )*                pNext;
10420     VkDebugReportFlagsEXT         flags;
10421     PFN_vkDebugReportCallbackEXT  pfnCallback;
10422     void*                         pUserData;
10423 }
10424 
10425 
10426 // - VK_NV_glsl_shader -
10427 enum VK_NV_glsl_shader = 1;
10428 
10429 enum VK_NV_GLSL_SHADER_SPEC_VERSION = 1;
10430 enum const( char )* VK_NV_GLSL_SHADER_EXTENSION_NAME = "VK_NV_glsl_shader";
10431 
10432 
10433 // - VK_EXT_depth_range_unrestricted -
10434 enum VK_EXT_depth_range_unrestricted = 1;
10435 
10436 enum VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION = 1;
10437 enum const( char )* VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME = "VK_EXT_depth_range_unrestricted";
10438 
10439 
10440 // - VK_IMG_filter_cubic -
10441 enum VK_IMG_filter_cubic = 1;
10442 
10443 enum VK_IMG_FILTER_CUBIC_SPEC_VERSION = 1;
10444 enum const( char )* VK_IMG_FILTER_CUBIC_EXTENSION_NAME = "VK_IMG_filter_cubic";
10445 
10446 
10447 // - VK_AMD_rasterization_order -
10448 enum VK_AMD_rasterization_order = 1;
10449 
10450 enum VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION = 1;
10451 enum const( char )* VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME = "VK_AMD_rasterization_order";
10452 
10453 enum VkRasterizationOrderAMD {
10454     VK_RASTERIZATION_ORDER_STRICT_AMD    = 0,
10455     VK_RASTERIZATION_ORDER_RELAXED_AMD   = 1,
10456     VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VK_RASTERIZATION_ORDER_STRICT_AMD,
10457     VK_RASTERIZATION_ORDER_END_RANGE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD,
10458     VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = VK_RASTERIZATION_ORDER_RELAXED_AMD - VK_RASTERIZATION_ORDER_STRICT_AMD + 1,
10459     VK_RASTERIZATION_ORDER_MAX_ENUM_AMD  = 0x7FFFFFFF
10460 }
10461 
10462 enum VK_RASTERIZATION_ORDER_STRICT_AMD   = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_STRICT_AMD;
10463 enum VK_RASTERIZATION_ORDER_RELAXED_AMD  = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_RELAXED_AMD;
10464 enum VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_BEGIN_RANGE_AMD;
10465 enum VK_RASTERIZATION_ORDER_END_RANGE_AMD = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_END_RANGE_AMD;
10466 enum VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_RANGE_SIZE_AMD;
10467 enum VK_RASTERIZATION_ORDER_MAX_ENUM_AMD = VkRasterizationOrderAMD.VK_RASTERIZATION_ORDER_MAX_ENUM_AMD;
10468 
10469 struct VkPipelineRasterizationStateRasterizationOrderAMD {
10470     VkStructureType          sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD;
10471     const( void )*           pNext;
10472     VkRasterizationOrderAMD  rasterizationOrder;
10473 }
10474 
10475 
10476 // - VK_AMD_shader_trinary_minmax -
10477 enum VK_AMD_shader_trinary_minmax = 1;
10478 
10479 enum VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION = 1;
10480 enum const( char )* VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME = "VK_AMD_shader_trinary_minmax";
10481 
10482 
10483 // - VK_AMD_shader_explicit_vertex_parameter -
10484 enum VK_AMD_shader_explicit_vertex_parameter = 1;
10485 
10486 enum VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION = 1;
10487 enum const( char )* VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME = "VK_AMD_shader_explicit_vertex_parameter";
10488 
10489 
10490 // - VK_EXT_debug_marker -
10491 enum VK_EXT_debug_marker = 1;
10492 
10493 enum VK_EXT_DEBUG_MARKER_SPEC_VERSION = 4;
10494 enum const( char )* VK_EXT_DEBUG_MARKER_EXTENSION_NAME = "VK_EXT_debug_marker";
10495 
10496 struct VkDebugMarkerObjectNameInfoEXT {
10497     VkStructureType             sType = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT;
10498     const( void )*              pNext;
10499     VkDebugReportObjectTypeEXT  objectType;
10500     uint64_t                    object;
10501     const( char )*              pObjectName;
10502 }
10503 
10504 struct VkDebugMarkerObjectTagInfoEXT {
10505     VkStructureType             sType = VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT;
10506     const( void )*              pNext;
10507     VkDebugReportObjectTypeEXT  objectType;
10508     uint64_t                    object;
10509     uint64_t                    tagName;
10510     size_t                      tagSize;
10511     const( void )*              pTag;
10512 }
10513 
10514 struct VkDebugMarkerMarkerInfoEXT {
10515     VkStructureType  sType = VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT;
10516     const( void )*   pNext;
10517     const( char )*   pMarkerName;
10518     float[4]         color;
10519 }
10520 
10521 
10522 // - VK_AMD_gcn_shader -
10523 enum VK_AMD_gcn_shader = 1;
10524 
10525 enum VK_AMD_GCN_SHADER_SPEC_VERSION = 1;
10526 enum const( char )* VK_AMD_GCN_SHADER_EXTENSION_NAME = "VK_AMD_gcn_shader";
10527 
10528 
10529 // - VK_NV_dedicated_allocation -
10530 enum VK_NV_dedicated_allocation = 1;
10531 
10532 enum VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION = 1;
10533 enum const( char )* VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME = "VK_NV_dedicated_allocation";
10534 
10535 struct VkDedicatedAllocationImageCreateInfoNV {
10536     VkStructureType  sType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV;
10537     const( void )*   pNext;
10538     VkBool32         dedicatedAllocation;
10539 }
10540 
10541 struct VkDedicatedAllocationBufferCreateInfoNV {
10542     VkStructureType  sType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV;
10543     const( void )*   pNext;
10544     VkBool32         dedicatedAllocation;
10545 }
10546 
10547 struct VkDedicatedAllocationMemoryAllocateInfoNV {
10548     VkStructureType  sType = VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV;
10549     const( void )*   pNext;
10550     VkImage          image;
10551     VkBuffer         buffer;
10552 }
10553 
10554 
10555 // - VK_EXT_transform_feedback -
10556 enum VK_EXT_transform_feedback = 1;
10557 
10558 enum VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION = 1;
10559 enum const( char )* VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME = "VK_EXT_transform_feedback";
10560 
10561 alias VkPipelineRasterizationStateStreamCreateFlagsEXT = VkFlags;
10562 
10563 struct VkPhysicalDeviceTransformFeedbackFeaturesEXT {
10564     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT;
10565     void*            pNext;
10566     VkBool32         transformFeedback;
10567     VkBool32         geometryStreams;
10568 }
10569 
10570 struct VkPhysicalDeviceTransformFeedbackPropertiesEXT {
10571     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT;
10572     void*            pNext;
10573     uint32_t         maxTransformFeedbackStreams;
10574     uint32_t         maxTransformFeedbackBuffers;
10575     VkDeviceSize     maxTransformFeedbackBufferSize;
10576     uint32_t         maxTransformFeedbackStreamDataSize;
10577     uint32_t         maxTransformFeedbackBufferDataSize;
10578     uint32_t         maxTransformFeedbackBufferDataStride;
10579     VkBool32         transformFeedbackQueries;
10580     VkBool32         transformFeedbackStreamsLinesTriangles;
10581     VkBool32         transformFeedbackRasterizationStreamSelect;
10582     VkBool32         transformFeedbackDraw;
10583 }
10584 
10585 struct VkPipelineRasterizationStateStreamCreateInfoEXT {
10586     VkStructureType                                   sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT;
10587     const( void )*                                    pNext;
10588     VkPipelineRasterizationStateStreamCreateFlagsEXT  flags;
10589     uint32_t                                          rasterizationStream;
10590 }
10591 
10592 
10593 // - VK_NVX_binary_import -
10594 enum VK_NVX_binary_import = 1;
10595 
10596 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkCuModuleNVX} );
10597 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkCuFunctionNVX} );
10598 
10599 enum VK_NVX_BINARY_IMPORT_SPEC_VERSION = 1;
10600 enum const( char )* VK_NVX_BINARY_IMPORT_EXTENSION_NAME = "VK_NVX_binary_import";
10601 
10602 struct VkCuModuleCreateInfoNVX {
10603     VkStructureType  sType = VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX;
10604     const( void )*   pNext;
10605     size_t           dataSize;
10606     const( void )*   pData;
10607 }
10608 
10609 struct VkCuFunctionCreateInfoNVX {
10610     VkStructureType  sType = VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX;
10611     const( void )*   pNext;
10612     VkCuModuleNVX    Module;
10613     const( char )*   pName;
10614     alias            module_ = Module;
10615     alias            _module = Module;
10616 }
10617 
10618 struct VkCuLaunchInfoNVX {
10619     VkStructureType  sType = VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX;
10620     const( void )*   pNext;
10621     VkCuFunctionNVX  Function;
10622     uint32_t         gridDimX;
10623     uint32_t         gridDimY;
10624     uint32_t         gridDimZ;
10625     uint32_t         blockDimX;
10626     uint32_t         blockDimY;
10627     uint32_t         blockDimZ;
10628     uint32_t         sharedMemBytes;
10629     size_t           paramCount;
10630     const( void* )*  pParams;
10631     size_t           extraCount;
10632     const( void* )*  pExtras;
10633     alias            function_ = Function;
10634     alias            _function = Function;
10635 }
10636 
10637 
10638 // - VK_NVX_image_view_handle -
10639 enum VK_NVX_image_view_handle = 1;
10640 
10641 enum VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION = 2;
10642 enum const( char )* VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME = "VK_NVX_image_view_handle";
10643 
10644 struct VkImageViewHandleInfoNVX {
10645     VkStructureType   sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX;
10646     const( void )*    pNext;
10647     VkImageView       imageView;
10648     VkDescriptorType  descriptorType;
10649     VkSampler         sampler;
10650 }
10651 
10652 struct VkImageViewAddressPropertiesNVX {
10653     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX;
10654     void*            pNext;
10655     VkDeviceAddress  deviceAddress;
10656     VkDeviceSize     size;
10657 }
10658 
10659 
10660 // - VK_AMD_draw_indirect_count -
10661 enum VK_AMD_draw_indirect_count = 1;
10662 
10663 enum VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION = 2;
10664 enum const( char )* VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME = "VK_AMD_draw_indirect_count";
10665 
10666 
10667 // - VK_AMD_negative_viewport_height -
10668 enum VK_AMD_negative_viewport_height = 1;
10669 
10670 enum VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION = 1;
10671 enum const( char )* VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME = "VK_AMD_negative_viewport_height";
10672 
10673 
10674 // - VK_AMD_gpu_shader_half_float -
10675 enum VK_AMD_gpu_shader_half_float = 1;
10676 
10677 enum VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION = 2;
10678 enum const( char )* VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME = "VK_AMD_gpu_shader_half_float";
10679 
10680 
10681 // - VK_AMD_shader_ballot -
10682 enum VK_AMD_shader_ballot = 1;
10683 
10684 enum VK_AMD_SHADER_BALLOT_SPEC_VERSION = 1;
10685 enum const( char )* VK_AMD_SHADER_BALLOT_EXTENSION_NAME = "VK_AMD_shader_ballot";
10686 
10687 
10688 // - VK_AMD_texture_gather_bias_lod -
10689 enum VK_AMD_texture_gather_bias_lod = 1;
10690 
10691 enum VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION = 1;
10692 enum const( char )* VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME = "VK_AMD_texture_gather_bias_lod";
10693 
10694 struct VkTextureLODGatherFormatPropertiesAMD {
10695     VkStructureType  sType = VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD;
10696     void*            pNext;
10697     VkBool32         supportsTextureGatherLODBiasAMD;
10698 }
10699 
10700 
10701 // - VK_AMD_shader_info -
10702 enum VK_AMD_shader_info = 1;
10703 
10704 enum VK_AMD_SHADER_INFO_SPEC_VERSION = 1;
10705 enum const( char )* VK_AMD_SHADER_INFO_EXTENSION_NAME = "VK_AMD_shader_info";
10706 
10707 enum VkShaderInfoTypeAMD {
10708     VK_SHADER_INFO_TYPE_STATISTICS_AMD   = 0,
10709     VK_SHADER_INFO_TYPE_BINARY_AMD       = 1,
10710     VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD  = 2,
10711     VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD  = VK_SHADER_INFO_TYPE_STATISTICS_AMD,
10712     VK_SHADER_INFO_TYPE_END_RANGE_AMD    = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD,
10713     VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD   = VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD - VK_SHADER_INFO_TYPE_STATISTICS_AMD + 1,
10714     VK_SHADER_INFO_TYPE_MAX_ENUM_AMD     = 0x7FFFFFFF
10715 }
10716 
10717 enum VK_SHADER_INFO_TYPE_STATISTICS_AMD  = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_STATISTICS_AMD;
10718 enum VK_SHADER_INFO_TYPE_BINARY_AMD      = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_BINARY_AMD;
10719 enum VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD;
10720 enum VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_BEGIN_RANGE_AMD;
10721 enum VK_SHADER_INFO_TYPE_END_RANGE_AMD   = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_END_RANGE_AMD;
10722 enum VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD  = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_RANGE_SIZE_AMD;
10723 enum VK_SHADER_INFO_TYPE_MAX_ENUM_AMD    = VkShaderInfoTypeAMD.VK_SHADER_INFO_TYPE_MAX_ENUM_AMD;
10724 
10725 struct VkShaderResourceUsageAMD {
10726     uint32_t  numUsedVgprs;
10727     uint32_t  numUsedSgprs;
10728     uint32_t  ldsSizePerLocalWorkGroup;
10729     size_t    ldsUsageSizeInBytes;
10730     size_t    scratchMemUsageInBytes;
10731 }
10732 
10733 struct VkShaderStatisticsInfoAMD {
10734     VkShaderStageFlags        shaderStageMask;
10735     VkShaderResourceUsageAMD  resourceUsage;
10736     uint32_t                  numPhysicalVgprs;
10737     uint32_t                  numPhysicalSgprs;
10738     uint32_t                  numAvailableVgprs;
10739     uint32_t                  numAvailableSgprs;
10740     uint32_t[3]               computeWorkGroupSize;
10741 }
10742 
10743 
10744 // - VK_AMD_shader_image_load_store_lod -
10745 enum VK_AMD_shader_image_load_store_lod = 1;
10746 
10747 enum VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION = 1;
10748 enum const( char )* VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME = "VK_AMD_shader_image_load_store_lod";
10749 
10750 
10751 // - VK_NV_corner_sampled_image -
10752 enum VK_NV_corner_sampled_image = 1;
10753 
10754 enum VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION = 2;
10755 enum const( char )* VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME = "VK_NV_corner_sampled_image";
10756 
10757 struct VkPhysicalDeviceCornerSampledImageFeaturesNV {
10758     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV;
10759     void*            pNext;
10760     VkBool32         cornerSampledImage;
10761 }
10762 
10763 
10764 // - VK_IMG_format_pvrtc -
10765 enum VK_IMG_format_pvrtc = 1;
10766 
10767 enum VK_IMG_FORMAT_PVRTC_SPEC_VERSION = 1;
10768 enum const( char )* VK_IMG_FORMAT_PVRTC_EXTENSION_NAME = "VK_IMG_format_pvrtc";
10769 
10770 
10771 // - VK_NV_external_memory_capabilities -
10772 enum VK_NV_external_memory_capabilities = 1;
10773 
10774 enum VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION = 1;
10775 enum const( char )* VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME = "VK_NV_external_memory_capabilities";
10776 
10777 alias VkExternalMemoryHandleTypeFlagsNV = VkFlags;
10778 enum VkExternalMemoryHandleTypeFlagBitsNV : VkExternalMemoryHandleTypeFlagsNV {
10779     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV           = 0x00000001,
10780     VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV       = 0x00000002,
10781     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV            = 0x00000004,
10782     VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV        = 0x00000008,
10783     VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV         = 0x7FFFFFFF
10784 }
10785 
10786 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV          = VkExternalMemoryHandleTypeFlagBitsNV.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV;
10787 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV      = VkExternalMemoryHandleTypeFlagBitsNV.VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV;
10788 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV           = VkExternalMemoryHandleTypeFlagBitsNV.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV;
10789 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV       = VkExternalMemoryHandleTypeFlagBitsNV.VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV;
10790 enum VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV        = VkExternalMemoryHandleTypeFlagBitsNV.VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV;
10791 
10792 alias VkExternalMemoryFeatureFlagsNV = VkFlags;
10793 enum VkExternalMemoryFeatureFlagBitsNV : VkExternalMemoryFeatureFlagsNV {
10794     VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV     = 0x00000001,
10795     VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV         = 0x00000002,
10796     VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV         = 0x00000004,
10797     VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV     = 0x7FFFFFFF
10798 }
10799 
10800 enum VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV    = VkExternalMemoryFeatureFlagBitsNV.VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV;
10801 enum VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV        = VkExternalMemoryFeatureFlagBitsNV.VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV;
10802 enum VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV        = VkExternalMemoryFeatureFlagBitsNV.VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV;
10803 enum VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV    = VkExternalMemoryFeatureFlagBitsNV.VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV;
10804 
10805 struct VkExternalImageFormatPropertiesNV {
10806     VkImageFormatProperties            imageFormatProperties;
10807     VkExternalMemoryFeatureFlagsNV     externalMemoryFeatures;
10808     VkExternalMemoryHandleTypeFlagsNV  exportFromImportedHandleTypes;
10809     VkExternalMemoryHandleTypeFlagsNV  compatibleHandleTypes;
10810 }
10811 
10812 
10813 // - VK_NV_external_memory -
10814 enum VK_NV_external_memory = 1;
10815 
10816 enum VK_NV_EXTERNAL_MEMORY_SPEC_VERSION = 1;
10817 enum const( char )* VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME = "VK_NV_external_memory";
10818 
10819 struct VkExternalMemoryImageCreateInfoNV {
10820     VkStructureType                    sType = VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV;
10821     const( void )*                     pNext;
10822     VkExternalMemoryHandleTypeFlagsNV  handleTypes;
10823 }
10824 
10825 struct VkExportMemoryAllocateInfoNV {
10826     VkStructureType                    sType = VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV;
10827     const( void )*                     pNext;
10828     VkExternalMemoryHandleTypeFlagsNV  handleTypes;
10829 }
10830 
10831 
10832 // - VK_EXT_validation_flags -
10833 enum VK_EXT_validation_flags = 1;
10834 
10835 enum VK_EXT_VALIDATION_FLAGS_SPEC_VERSION = 2;
10836 enum const( char )* VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME = "VK_EXT_validation_flags";
10837 
10838 enum VkValidationCheckEXT {
10839     VK_VALIDATION_CHECK_ALL_EXT          = 0,
10840     VK_VALIDATION_CHECK_SHADERS_EXT      = 1,
10841     VK_VALIDATION_CHECK_BEGIN_RANGE_EXT  = VK_VALIDATION_CHECK_ALL_EXT,
10842     VK_VALIDATION_CHECK_END_RANGE_EXT    = VK_VALIDATION_CHECK_SHADERS_EXT,
10843     VK_VALIDATION_CHECK_RANGE_SIZE_EXT   = VK_VALIDATION_CHECK_SHADERS_EXT - VK_VALIDATION_CHECK_ALL_EXT + 1,
10844     VK_VALIDATION_CHECK_MAX_ENUM_EXT     = 0x7FFFFFFF
10845 }
10846 
10847 enum VK_VALIDATION_CHECK_ALL_EXT         = VkValidationCheckEXT.VK_VALIDATION_CHECK_ALL_EXT;
10848 enum VK_VALIDATION_CHECK_SHADERS_EXT     = VkValidationCheckEXT.VK_VALIDATION_CHECK_SHADERS_EXT;
10849 enum VK_VALIDATION_CHECK_BEGIN_RANGE_EXT = VkValidationCheckEXT.VK_VALIDATION_CHECK_BEGIN_RANGE_EXT;
10850 enum VK_VALIDATION_CHECK_END_RANGE_EXT   = VkValidationCheckEXT.VK_VALIDATION_CHECK_END_RANGE_EXT;
10851 enum VK_VALIDATION_CHECK_RANGE_SIZE_EXT  = VkValidationCheckEXT.VK_VALIDATION_CHECK_RANGE_SIZE_EXT;
10852 enum VK_VALIDATION_CHECK_MAX_ENUM_EXT    = VkValidationCheckEXT.VK_VALIDATION_CHECK_MAX_ENUM_EXT;
10853 
10854 struct VkValidationFlagsEXT {
10855     VkStructureType                 sType = VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT;
10856     const( void )*                  pNext;
10857     uint32_t                        disabledValidationCheckCount;
10858     const( VkValidationCheckEXT )*  pDisabledValidationChecks;
10859 }
10860 
10861 
10862 // - VK_EXT_shader_subgroup_ballot -
10863 enum VK_EXT_shader_subgroup_ballot = 1;
10864 
10865 enum VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION = 1;
10866 enum const( char )* VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME = "VK_EXT_shader_subgroup_ballot";
10867 
10868 
10869 // - VK_EXT_shader_subgroup_vote -
10870 enum VK_EXT_shader_subgroup_vote = 1;
10871 
10872 enum VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION = 1;
10873 enum const( char )* VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME = "VK_EXT_shader_subgroup_vote";
10874 
10875 
10876 // - VK_EXT_texture_compression_astc_hdr -
10877 enum VK_EXT_texture_compression_astc_hdr = 1;
10878 
10879 enum VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION = 1;
10880 enum const( char )* VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME = "VK_EXT_texture_compression_astc_hdr";
10881 
10882 alias VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT = VkPhysicalDeviceTextureCompressionASTCHDRFeatures;
10883 
10884 
10885 // - VK_EXT_astc_decode_mode -
10886 enum VK_EXT_astc_decode_mode = 1;
10887 
10888 enum VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION = 1;
10889 enum const( char )* VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME = "VK_EXT_astc_decode_mode";
10890 
10891 struct VkImageViewASTCDecodeModeEXT {
10892     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT;
10893     const( void )*   pNext;
10894     VkFormat         decodeMode;
10895 }
10896 
10897 struct VkPhysicalDeviceASTCDecodeFeaturesEXT {
10898     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT;
10899     void*            pNext;
10900     VkBool32         decodeModeSharedExponent;
10901 }
10902 
10903 
10904 // - VK_EXT_conditional_rendering -
10905 enum VK_EXT_conditional_rendering = 1;
10906 
10907 enum VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION = 2;
10908 enum const( char )* VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME = "VK_EXT_conditional_rendering";
10909 
10910 alias VkConditionalRenderingFlagsEXT = VkFlags;
10911 enum VkConditionalRenderingFlagBitsEXT : VkConditionalRenderingFlagsEXT {
10912     VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT            = 0x00000001,
10913     VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT      = 0x7FFFFFFF
10914 }
10915 
10916 enum VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT           = VkConditionalRenderingFlagBitsEXT.VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT;
10917 enum VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT     = VkConditionalRenderingFlagBitsEXT.VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT;
10918 
10919 struct VkConditionalRenderingBeginInfoEXT {
10920     VkStructureType                 sType = VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT;
10921     const( void )*                  pNext;
10922     VkBuffer                        buffer;
10923     VkDeviceSize                    offset;
10924     VkConditionalRenderingFlagsEXT  flags;
10925 }
10926 
10927 struct VkPhysicalDeviceConditionalRenderingFeaturesEXT {
10928     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT;
10929     void*            pNext;
10930     VkBool32         conditionalRendering;
10931     VkBool32         inheritedConditionalRendering;
10932 }
10933 
10934 struct VkCommandBufferInheritanceConditionalRenderingInfoEXT {
10935     VkStructureType  sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT;
10936     const( void )*   pNext;
10937     VkBool32         conditionalRenderingEnable;
10938 }
10939 
10940 
10941 // - VK_NV_clip_space_w_scaling -
10942 enum VK_NV_clip_space_w_scaling = 1;
10943 
10944 enum VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION = 1;
10945 enum const( char )* VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME = "VK_NV_clip_space_w_scaling";
10946 
10947 struct VkViewportWScalingNV {
10948     float  xcoeff;
10949     float  ycoeff;
10950 }
10951 
10952 struct VkPipelineViewportWScalingStateCreateInfoNV {
10953     VkStructureType                 sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV;
10954     const( void )*                  pNext;
10955     VkBool32                        viewportWScalingEnable;
10956     uint32_t                        viewportCount;
10957     const( VkViewportWScalingNV )*  pViewportWScalings;
10958 }
10959 
10960 
10961 // - VK_EXT_direct_mode_display -
10962 enum VK_EXT_direct_mode_display = 1;
10963 
10964 enum VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION = 1;
10965 enum const( char )* VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME = "VK_EXT_direct_mode_display";
10966 
10967 
10968 // - VK_EXT_display_surface_counter -
10969 enum VK_EXT_display_surface_counter = 1;
10970 
10971 enum VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION = 1;
10972 enum const( char )* VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME = "VK_EXT_display_surface_counter";
10973 
10974 alias VkSurfaceCounterFlagsEXT = VkFlags;
10975 enum VkSurfaceCounterFlagBitsEXT : VkSurfaceCounterFlagsEXT {
10976     VK_SURFACE_COUNTER_VBLANK_BIT_EXT            = 0x00000001,
10977     VK_SURFACE_COUNTER_VBLANK_EXT                = VK_SURFACE_COUNTER_VBLANK_BIT_EXT,
10978     VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT    = 0x7FFFFFFF
10979 }
10980 
10981 enum VK_SURFACE_COUNTER_VBLANK_BIT_EXT           = VkSurfaceCounterFlagBitsEXT.VK_SURFACE_COUNTER_VBLANK_BIT_EXT;
10982 enum VK_SURFACE_COUNTER_VBLANK_EXT               = VkSurfaceCounterFlagBitsEXT.VK_SURFACE_COUNTER_VBLANK_EXT;
10983 enum VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT   = VkSurfaceCounterFlagBitsEXT.VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT;
10984 
10985 struct VkSurfaceCapabilities2EXT {
10986     VkStructureType                sType = VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT;
10987     void*                          pNext;
10988     uint32_t                       minImageCount;
10989     uint32_t                       maxImageCount;
10990     VkExtent2D                     currentExtent;
10991     VkExtent2D                     minImageExtent;
10992     VkExtent2D                     maxImageExtent;
10993     uint32_t                       maxImageArrayLayers;
10994     VkSurfaceTransformFlagsKHR     supportedTransforms;
10995     VkSurfaceTransformFlagBitsKHR  currentTransform;
10996     VkCompositeAlphaFlagsKHR       supportedCompositeAlpha;
10997     VkImageUsageFlags              supportedUsageFlags;
10998     VkSurfaceCounterFlagsEXT       supportedSurfaceCounters;
10999 }
11000 
11001 
11002 // - VK_EXT_display_control -
11003 enum VK_EXT_display_control = 1;
11004 
11005 enum VK_EXT_DISPLAY_CONTROL_SPEC_VERSION = 1;
11006 enum const( char )* VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME = "VK_EXT_display_control";
11007 
11008 enum VkDisplayPowerStateEXT {
11009     VK_DISPLAY_POWER_STATE_OFF_EXT       = 0,
11010     VK_DISPLAY_POWER_STATE_SUSPEND_EXT   = 1,
11011     VK_DISPLAY_POWER_STATE_ON_EXT        = 2,
11012     VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VK_DISPLAY_POWER_STATE_OFF_EXT,
11013     VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT,
11014     VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = VK_DISPLAY_POWER_STATE_ON_EXT - VK_DISPLAY_POWER_STATE_OFF_EXT + 1,
11015     VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT  = 0x7FFFFFFF
11016 }
11017 
11018 enum VK_DISPLAY_POWER_STATE_OFF_EXT      = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_OFF_EXT;
11019 enum VK_DISPLAY_POWER_STATE_SUSPEND_EXT  = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_SUSPEND_EXT;
11020 enum VK_DISPLAY_POWER_STATE_ON_EXT       = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_ON_EXT;
11021 enum VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_BEGIN_RANGE_EXT;
11022 enum VK_DISPLAY_POWER_STATE_END_RANGE_EXT = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_END_RANGE_EXT;
11023 enum VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_RANGE_SIZE_EXT;
11024 enum VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT = VkDisplayPowerStateEXT.VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT;
11025 
11026 enum VkDeviceEventTypeEXT {
11027     VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT     = 0,
11028     VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT         = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,
11029     VK_DEVICE_EVENT_TYPE_END_RANGE_EXT           = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT,
11030     VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT          = VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT - VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT + 1,
11031     VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT            = 0x7FFFFFFF
11032 }
11033 
11034 enum VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT    = VkDeviceEventTypeEXT.VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT;
11035 enum VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT        = VkDeviceEventTypeEXT.VK_DEVICE_EVENT_TYPE_BEGIN_RANGE_EXT;
11036 enum VK_DEVICE_EVENT_TYPE_END_RANGE_EXT          = VkDeviceEventTypeEXT.VK_DEVICE_EVENT_TYPE_END_RANGE_EXT;
11037 enum VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT         = VkDeviceEventTypeEXT.VK_DEVICE_EVENT_TYPE_RANGE_SIZE_EXT;
11038 enum VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT           = VkDeviceEventTypeEXT.VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT;
11039 
11040 enum VkDisplayEventTypeEXT {
11041     VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT    = 0,
11042     VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT        = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,
11043     VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT          = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT,
11044     VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT         = VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT - VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT + 1,
11045     VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT           = 0x7FFFFFFF
11046 }
11047 
11048 enum VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT   = VkDisplayEventTypeEXT.VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT;
11049 enum VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT       = VkDisplayEventTypeEXT.VK_DISPLAY_EVENT_TYPE_BEGIN_RANGE_EXT;
11050 enum VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT         = VkDisplayEventTypeEXT.VK_DISPLAY_EVENT_TYPE_END_RANGE_EXT;
11051 enum VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT        = VkDisplayEventTypeEXT.VK_DISPLAY_EVENT_TYPE_RANGE_SIZE_EXT;
11052 enum VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT          = VkDisplayEventTypeEXT.VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT;
11053 
11054 struct VkDisplayPowerInfoEXT {
11055     VkStructureType         sType = VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT;
11056     const( void )*          pNext;
11057     VkDisplayPowerStateEXT  powerState;
11058 }
11059 
11060 struct VkDeviceEventInfoEXT {
11061     VkStructureType       sType = VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT;
11062     const( void )*        pNext;
11063     VkDeviceEventTypeEXT  deviceEvent;
11064 }
11065 
11066 struct VkDisplayEventInfoEXT {
11067     VkStructureType        sType = VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT;
11068     const( void )*         pNext;
11069     VkDisplayEventTypeEXT  displayEvent;
11070 }
11071 
11072 struct VkSwapchainCounterCreateInfoEXT {
11073     VkStructureType           sType = VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT;
11074     const( void )*            pNext;
11075     VkSurfaceCounterFlagsEXT  surfaceCounters;
11076 }
11077 
11078 
11079 // - VK_GOOGLE_display_timing -
11080 enum VK_GOOGLE_display_timing = 1;
11081 
11082 enum VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION = 1;
11083 enum const( char )* VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME = "VK_GOOGLE_display_timing";
11084 
11085 struct VkRefreshCycleDurationGOOGLE {
11086     uint64_t  refreshDuration;
11087 }
11088 
11089 struct VkPastPresentationTimingGOOGLE {
11090     uint32_t  presentID;
11091     uint64_t  desiredPresentTime;
11092     uint64_t  actualPresentTime;
11093     uint64_t  earliestPresentTime;
11094     uint64_t  presentMargin;
11095 }
11096 
11097 struct VkPresentTimeGOOGLE {
11098     uint32_t  presentID;
11099     uint64_t  desiredPresentTime;
11100 }
11101 
11102 struct VkPresentTimesInfoGOOGLE {
11103     VkStructureType                sType = VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE;
11104     const( void )*                 pNext;
11105     uint32_t                       swapchainCount;
11106     const( VkPresentTimeGOOGLE )*  pTimes;
11107 }
11108 
11109 
11110 // - VK_NV_sample_mask_override_coverage -
11111 enum VK_NV_sample_mask_override_coverage = 1;
11112 
11113 enum VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION = 1;
11114 enum const( char )* VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME = "VK_NV_sample_mask_override_coverage";
11115 
11116 
11117 // - VK_NV_geometry_shader_passthrough -
11118 enum VK_NV_geometry_shader_passthrough = 1;
11119 
11120 enum VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION = 1;
11121 enum const( char )* VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME = "VK_NV_geometry_shader_passthrough";
11122 
11123 
11124 // - VK_NV_viewport_array2 -
11125 enum VK_NV_viewport_array2 = 1;
11126 
11127 enum VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION = 1;
11128 enum const( char )* VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME = "VK_NV_viewport_array2";
11129 alias VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION = VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION;
11130 alias VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME = VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME;
11131 
11132 
11133 // - VK_NVX_multiview_per_view_attributes -
11134 enum VK_NVX_multiview_per_view_attributes = 1;
11135 
11136 enum VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION = 1;
11137 enum const( char )* VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME = "VK_NVX_multiview_per_view_attributes";
11138 
11139 struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
11140     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX;
11141     void*            pNext;
11142     VkBool32         perViewPositionAllComponents;
11143 }
11144 
11145 
11146 // - VK_NV_viewport_swizzle -
11147 enum VK_NV_viewport_swizzle = 1;
11148 
11149 enum VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION = 1;
11150 enum const( char )* VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME = "VK_NV_viewport_swizzle";
11151 
11152 enum VkViewportCoordinateSwizzleNV {
11153     VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV         = 0,
11154     VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV         = 1,
11155     VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV         = 2,
11156     VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV         = 3,
11157     VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV         = 4,
11158     VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV         = 5,
11159     VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV         = 6,
11160     VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV         = 7,
11161     VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV        = VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV,
11162     VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV          = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV,
11163     VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV         = VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV - VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV + 1,
11164     VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV           = 0x7FFFFFFF
11165 }
11166 
11167 enum VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV;
11168 enum VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV;
11169 enum VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV;
11170 enum VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV;
11171 enum VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV;
11172 enum VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV;
11173 enum VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV;
11174 enum VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV;
11175 enum VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV       = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_BEGIN_RANGE_NV;
11176 enum VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV         = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_END_RANGE_NV;
11177 enum VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV        = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_RANGE_SIZE_NV;
11178 enum VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV          = VkViewportCoordinateSwizzleNV.VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV;
11179 
11180 alias VkPipelineViewportSwizzleStateCreateFlagsNV = VkFlags;
11181 
11182 struct VkViewportSwizzleNV {
11183     VkViewportCoordinateSwizzleNV  x;
11184     VkViewportCoordinateSwizzleNV  y;
11185     VkViewportCoordinateSwizzleNV  z;
11186     VkViewportCoordinateSwizzleNV  w;
11187 }
11188 
11189 struct VkPipelineViewportSwizzleStateCreateInfoNV {
11190     VkStructureType                              sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV;
11191     const( void )*                               pNext;
11192     VkPipelineViewportSwizzleStateCreateFlagsNV  flags;
11193     uint32_t                                     viewportCount;
11194     const( VkViewportSwizzleNV )*                pViewportSwizzles;
11195 }
11196 
11197 
11198 // - VK_EXT_discard_rectangles -
11199 enum VK_EXT_discard_rectangles = 1;
11200 
11201 enum VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION = 1;
11202 enum const( char )* VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME = "VK_EXT_discard_rectangles";
11203 
11204 enum VkDiscardRectangleModeEXT {
11205     VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT      = 0,
11206     VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT      = 1,
11207     VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT    = VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT,
11208     VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT      = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT,
11209     VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT     = VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT - VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT + 1,
11210     VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT       = 0x7FFFFFFF
11211 }
11212 
11213 enum VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT     = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT;
11214 enum VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT     = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT;
11215 enum VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT   = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_BEGIN_RANGE_EXT;
11216 enum VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT     = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_END_RANGE_EXT;
11217 enum VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT    = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_RANGE_SIZE_EXT;
11218 enum VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT      = VkDiscardRectangleModeEXT.VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT;
11219 
11220 alias VkPipelineDiscardRectangleStateCreateFlagsEXT = VkFlags;
11221 
11222 struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {
11223     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT;
11224     void*            pNext;
11225     uint32_t         maxDiscardRectangles;
11226 }
11227 
11228 struct VkPipelineDiscardRectangleStateCreateInfoEXT {
11229     VkStructureType                                sType = VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT;
11230     const( void )*                                 pNext;
11231     VkPipelineDiscardRectangleStateCreateFlagsEXT  flags;
11232     VkDiscardRectangleModeEXT                      discardRectangleMode;
11233     uint32_t                                       discardRectangleCount;
11234     const( VkRect2D )*                             pDiscardRectangles;
11235 }
11236 
11237 
11238 // - VK_EXT_conservative_rasterization -
11239 enum VK_EXT_conservative_rasterization = 1;
11240 
11241 enum VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION = 1;
11242 enum const( char )* VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME = "VK_EXT_conservative_rasterization";
11243 
11244 enum VkConservativeRasterizationModeEXT {
11245     VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT              = 0,
11246     VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT          = 1,
11247     VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT         = 2,
11248     VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT           = VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT,
11249     VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT             = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT,
11250     VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT            = VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT - VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT + 1,
11251     VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT              = 0x7FFFFFFF
11252 }
11253 
11254 enum VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT             = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT;
11255 enum VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT         = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT;
11256 enum VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT        = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT;
11257 enum VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT          = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_BEGIN_RANGE_EXT;
11258 enum VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT            = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_END_RANGE_EXT;
11259 enum VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT           = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_RANGE_SIZE_EXT;
11260 enum VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT             = VkConservativeRasterizationModeEXT.VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT;
11261 
11262 alias VkPipelineRasterizationConservativeStateCreateFlagsEXT = VkFlags;
11263 
11264 struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {
11265     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT;
11266     void*            pNext;
11267     float            primitiveOverestimationSize;
11268     float            maxExtraPrimitiveOverestimationSize;
11269     float            extraPrimitiveOverestimationSizeGranularity;
11270     VkBool32         primitiveUnderestimation;
11271     VkBool32         conservativePointAndLineRasterization;
11272     VkBool32         degenerateTrianglesRasterized;
11273     VkBool32         degenerateLinesRasterized;
11274     VkBool32         fullyCoveredFragmentShaderInputVariable;
11275     VkBool32         conservativeRasterizationPostDepthCoverage;
11276 }
11277 
11278 struct VkPipelineRasterizationConservativeStateCreateInfoEXT {
11279     VkStructureType                                         sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT;
11280     const( void )*                                          pNext;
11281     VkPipelineRasterizationConservativeStateCreateFlagsEXT  flags;
11282     VkConservativeRasterizationModeEXT                      conservativeRasterizationMode;
11283     float                                                   extraPrimitiveOverestimationSize;
11284 }
11285 
11286 
11287 // - VK_EXT_depth_clip_enable -
11288 enum VK_EXT_depth_clip_enable = 1;
11289 
11290 enum VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION = 1;
11291 enum const( char )* VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME = "VK_EXT_depth_clip_enable";
11292 
11293 alias VkPipelineRasterizationDepthClipStateCreateFlagsEXT = VkFlags;
11294 
11295 struct VkPhysicalDeviceDepthClipEnableFeaturesEXT {
11296     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT;
11297     void*            pNext;
11298     VkBool32         depthClipEnable;
11299 }
11300 
11301 struct VkPipelineRasterizationDepthClipStateCreateInfoEXT {
11302     VkStructureType                                      sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT;
11303     const( void )*                                       pNext;
11304     VkPipelineRasterizationDepthClipStateCreateFlagsEXT  flags;
11305     VkBool32                                             depthClipEnable;
11306 }
11307 
11308 
11309 // - VK_EXT_swapchain_colorspace -
11310 enum VK_EXT_swapchain_colorspace = 1;
11311 
11312 enum VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION = 4;
11313 enum const( char )* VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME = "VK_EXT_swapchain_colorspace";
11314 
11315 
11316 // - VK_EXT_hdr_metadata -
11317 enum VK_EXT_hdr_metadata = 1;
11318 
11319 enum VK_EXT_HDR_METADATA_SPEC_VERSION = 2;
11320 enum const( char )* VK_EXT_HDR_METADATA_EXTENSION_NAME = "VK_EXT_hdr_metadata";
11321 
11322 struct VkXYColorEXT {
11323     float  x;
11324     float  y;
11325 }
11326 
11327 struct VkHdrMetadataEXT {
11328     VkStructureType  sType = VK_STRUCTURE_TYPE_HDR_METADATA_EXT;
11329     const( void )*   pNext;
11330     VkXYColorEXT     displayPrimaryRed;
11331     VkXYColorEXT     displayPrimaryGreen;
11332     VkXYColorEXT     displayPrimaryBlue;
11333     VkXYColorEXT     whitePoint;
11334     float            maxLuminance;
11335     float            minLuminance;
11336     float            maxContentLightLevel;
11337     float            maxFrameAverageLightLevel;
11338 }
11339 
11340 
11341 // - VK_EXT_external_memory_dma_buf -
11342 enum VK_EXT_external_memory_dma_buf = 1;
11343 
11344 enum VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION = 1;
11345 enum const( char )* VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME = "VK_EXT_external_memory_dma_buf";
11346 
11347 
11348 // - VK_EXT_queue_family_foreign -
11349 enum VK_EXT_queue_family_foreign = 1;
11350 
11351 enum VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION = 1;
11352 enum const( char )* VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME = "VK_EXT_queue_family_foreign";
11353 enum VK_QUEUE_FAMILY_FOREIGN_EXT = (~2U);
11354 
11355 
11356 // - VK_EXT_debug_utils -
11357 enum VK_EXT_debug_utils = 1;
11358 
11359 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkDebugUtilsMessengerEXT} );
11360 
11361 enum VK_EXT_DEBUG_UTILS_SPEC_VERSION = 2;
11362 enum const( char )* VK_EXT_DEBUG_UTILS_EXTENSION_NAME = "VK_EXT_debug_utils";
11363 
11364 alias VkDebugUtilsMessengerCallbackDataFlagsEXT = VkFlags;
11365 
11366 alias VkDebugUtilsMessageTypeFlagsEXT = VkFlags;
11367 enum VkDebugUtilsMessageTypeFlagBitsEXT : VkDebugUtilsMessageTypeFlagsEXT {
11368     VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT          = 0x00000001,
11369     VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT       = 0x00000002,
11370     VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT      = 0x00000004,
11371     VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT   = 0x7FFFFFFF
11372 }
11373 
11374 enum VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT         = VkDebugUtilsMessageTypeFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT;
11375 enum VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT      = VkDebugUtilsMessageTypeFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT;
11376 enum VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT     = VkDebugUtilsMessageTypeFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT;
11377 enum VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT  = VkDebugUtilsMessageTypeFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT;
11378 
11379 alias VkDebugUtilsMessageSeverityFlagsEXT = VkFlags;
11380 enum VkDebugUtilsMessageSeverityFlagBitsEXT : VkDebugUtilsMessageSeverityFlagsEXT {
11381     VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT              = 0x00000001,
11382     VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT                 = 0x00000010,
11383     VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT              = 0x00000100,
11384     VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT                = 0x00001000,
11385     VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT       = 0x7FFFFFFF
11386 }
11387 
11388 enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT             = VkDebugUtilsMessageSeverityFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT;
11389 enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT                = VkDebugUtilsMessageSeverityFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT;
11390 enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT             = VkDebugUtilsMessageSeverityFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT;
11391 enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT               = VkDebugUtilsMessageSeverityFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT;
11392 enum VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT      = VkDebugUtilsMessageSeverityFlagBitsEXT.VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT;
11393 alias VkDebugUtilsMessengerCreateFlagsEXT = VkFlags;
11394 
11395 alias PFN_vkDebugUtilsMessengerCallbackEXT = VkBool32 function(
11396     VkDebugUtilsMessageSeverityFlagBitsEXT           messageSeverity,
11397     VkDebugUtilsMessageTypeFlagsEXT                  messageTypes,
11398     const( VkDebugUtilsMessengerCallbackDataEXT )*   pCallbackData,
11399     void*                                            pUserData
11400 );
11401 
11402 struct VkDebugUtilsLabelEXT {
11403     VkStructureType  sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT;
11404     const( void )*   pNext;
11405     const( char )*   pLabelName;
11406     float[4]         color;
11407 }
11408 
11409 struct VkDebugUtilsObjectNameInfoEXT {
11410     VkStructureType  sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT;
11411     const( void )*   pNext;
11412     VkObjectType     objectType;
11413     uint64_t         objectHandle;
11414     const( char )*   pObjectName;
11415 }
11416 
11417 struct VkDebugUtilsMessengerCallbackDataEXT {
11418     VkStructureType                            sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT;
11419     const( void )*                             pNext;
11420     VkDebugUtilsMessengerCallbackDataFlagsEXT  flags;
11421     const( char )*                             pMessageIdName;
11422     int32_t                                    messageIdNumber;
11423     const( char )*                             pMessage;
11424     uint32_t                                   queueLabelCount;
11425     const( VkDebugUtilsLabelEXT )*             pQueueLabels;
11426     uint32_t                                   cmdBufLabelCount;
11427     const( VkDebugUtilsLabelEXT )*             pCmdBufLabels;
11428     uint32_t                                   objectCount;
11429     const( VkDebugUtilsObjectNameInfoEXT )*    pObjects;
11430 }
11431 
11432 struct VkDebugUtilsMessengerCreateInfoEXT {
11433     VkStructureType                       sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT;
11434     const( void )*                        pNext;
11435     VkDebugUtilsMessengerCreateFlagsEXT   flags;
11436     VkDebugUtilsMessageSeverityFlagsEXT   messageSeverity;
11437     VkDebugUtilsMessageTypeFlagsEXT       messageType;
11438     PFN_vkDebugUtilsMessengerCallbackEXT  pfnUserCallback;
11439     void*                                 pUserData;
11440 }
11441 
11442 struct VkDebugUtilsObjectTagInfoEXT {
11443     VkStructureType  sType = VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT;
11444     const( void )*   pNext;
11445     VkObjectType     objectType;
11446     uint64_t         objectHandle;
11447     uint64_t         tagName;
11448     size_t           tagSize;
11449     const( void )*   pTag;
11450 }
11451 
11452 
11453 // - VK_EXT_sampler_filter_minmax -
11454 enum VK_EXT_sampler_filter_minmax = 1;
11455 
11456 alias VkSamplerReductionModeEXT = VkSamplerReductionMode;
11457 enum VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION = 2;
11458 enum const( char )* VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME = "VK_EXT_sampler_filter_minmax";
11459 
11460 alias VkSamplerReductionModeCreateInfoEXT = VkSamplerReductionModeCreateInfo;
11461 alias VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT = VkPhysicalDeviceSamplerFilterMinmaxProperties;
11462 
11463 
11464 // - VK_AMD_gpu_shader_int16 -
11465 enum VK_AMD_gpu_shader_int16 = 1;
11466 
11467 enum VK_AMD_GPU_SHADER_INT16_SPEC_VERSION = 2;
11468 enum const( char )* VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME = "VK_AMD_gpu_shader_int16";
11469 
11470 
11471 // - VK_AMD_mixed_attachment_samples -
11472 enum VK_AMD_mixed_attachment_samples = 1;
11473 
11474 enum VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION = 1;
11475 enum const( char )* VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME = "VK_AMD_mixed_attachment_samples";
11476 
11477 
11478 // - VK_AMD_shader_fragment_mask -
11479 enum VK_AMD_shader_fragment_mask = 1;
11480 
11481 enum VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION = 1;
11482 enum const( char )* VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME = "VK_AMD_shader_fragment_mask";
11483 
11484 
11485 // - VK_EXT_inline_uniform_block -
11486 enum VK_EXT_inline_uniform_block = 1;
11487 
11488 enum VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION = 1;
11489 enum const( char )* VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME = "VK_EXT_inline_uniform_block";
11490 
11491 alias VkPhysicalDeviceInlineUniformBlockFeaturesEXT = VkPhysicalDeviceInlineUniformBlockFeatures;
11492 alias VkPhysicalDeviceInlineUniformBlockPropertiesEXT = VkPhysicalDeviceInlineUniformBlockProperties;
11493 alias VkWriteDescriptorSetInlineUniformBlockEXT = VkWriteDescriptorSetInlineUniformBlock;
11494 alias VkDescriptorPoolInlineUniformBlockCreateInfoEXT = VkDescriptorPoolInlineUniformBlockCreateInfo;
11495 
11496 
11497 // - VK_EXT_shader_stencil_export -
11498 enum VK_EXT_shader_stencil_export = 1;
11499 
11500 enum VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION = 1;
11501 enum const( char )* VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME = "VK_EXT_shader_stencil_export";
11502 
11503 
11504 // - VK_EXT_sample_locations -
11505 enum VK_EXT_sample_locations = 1;
11506 
11507 enum VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION = 1;
11508 enum const( char )* VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME = "VK_EXT_sample_locations";
11509 
11510 struct VkSampleLocationEXT {
11511     float  x;
11512     float  y;
11513 }
11514 
11515 struct VkSampleLocationsInfoEXT {
11516     VkStructureType                sType = VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT;
11517     const( void )*                 pNext;
11518     VkSampleCountFlagBits          sampleLocationsPerPixel;
11519     VkExtent2D                     sampleLocationGridSize;
11520     uint32_t                       sampleLocationsCount;
11521     const( VkSampleLocationEXT )*  pSampleLocations;
11522 }
11523 
11524 struct VkAttachmentSampleLocationsEXT {
11525     uint32_t                  attachmentIndex;
11526     VkSampleLocationsInfoEXT  sampleLocationsInfo;
11527 }
11528 
11529 struct VkSubpassSampleLocationsEXT {
11530     uint32_t                  subpassIndex;
11531     VkSampleLocationsInfoEXT  sampleLocationsInfo;
11532 }
11533 
11534 struct VkRenderPassSampleLocationsBeginInfoEXT {
11535     VkStructureType                           sType = VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT;
11536     const( void )*                            pNext;
11537     uint32_t                                  attachmentInitialSampleLocationsCount;
11538     const( VkAttachmentSampleLocationsEXT )*  pAttachmentInitialSampleLocations;
11539     uint32_t                                  postSubpassSampleLocationsCount;
11540     const( VkSubpassSampleLocationsEXT )*     pPostSubpassSampleLocations;
11541 }
11542 
11543 struct VkPipelineSampleLocationsStateCreateInfoEXT {
11544     VkStructureType           sType = VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT;
11545     const( void )*            pNext;
11546     VkBool32                  sampleLocationsEnable;
11547     VkSampleLocationsInfoEXT  sampleLocationsInfo;
11548 }
11549 
11550 struct VkPhysicalDeviceSampleLocationsPropertiesEXT {
11551     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT;
11552     void*               pNext;
11553     VkSampleCountFlags  sampleLocationSampleCounts;
11554     VkExtent2D          maxSampleLocationGridSize;
11555     float[2]            sampleLocationCoordinateRange;
11556     uint32_t            sampleLocationSubPixelBits;
11557     VkBool32            variableSampleLocations;
11558 }
11559 
11560 struct VkMultisamplePropertiesEXT {
11561     VkStructureType  sType = VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT;
11562     void*            pNext;
11563     VkExtent2D       maxSampleLocationGridSize;
11564 }
11565 
11566 
11567 // - VK_EXT_blend_operation_advanced -
11568 enum VK_EXT_blend_operation_advanced = 1;
11569 
11570 enum VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION = 2;
11571 enum const( char )* VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME = "VK_EXT_blend_operation_advanced";
11572 
11573 enum VkBlendOverlapEXT {
11574     VK_BLEND_OVERLAP_UNCORRELATED_EXT    = 0,
11575     VK_BLEND_OVERLAP_DISJOINT_EXT        = 1,
11576     VK_BLEND_OVERLAP_CONJOINT_EXT        = 2,
11577     VK_BLEND_OVERLAP_BEGIN_RANGE_EXT     = VK_BLEND_OVERLAP_UNCORRELATED_EXT,
11578     VK_BLEND_OVERLAP_END_RANGE_EXT       = VK_BLEND_OVERLAP_CONJOINT_EXT,
11579     VK_BLEND_OVERLAP_RANGE_SIZE_EXT      = VK_BLEND_OVERLAP_CONJOINT_EXT - VK_BLEND_OVERLAP_UNCORRELATED_EXT + 1,
11580     VK_BLEND_OVERLAP_MAX_ENUM_EXT        = 0x7FFFFFFF
11581 }
11582 
11583 enum VK_BLEND_OVERLAP_UNCORRELATED_EXT   = VkBlendOverlapEXT.VK_BLEND_OVERLAP_UNCORRELATED_EXT;
11584 enum VK_BLEND_OVERLAP_DISJOINT_EXT       = VkBlendOverlapEXT.VK_BLEND_OVERLAP_DISJOINT_EXT;
11585 enum VK_BLEND_OVERLAP_CONJOINT_EXT       = VkBlendOverlapEXT.VK_BLEND_OVERLAP_CONJOINT_EXT;
11586 enum VK_BLEND_OVERLAP_BEGIN_RANGE_EXT    = VkBlendOverlapEXT.VK_BLEND_OVERLAP_BEGIN_RANGE_EXT;
11587 enum VK_BLEND_OVERLAP_END_RANGE_EXT      = VkBlendOverlapEXT.VK_BLEND_OVERLAP_END_RANGE_EXT;
11588 enum VK_BLEND_OVERLAP_RANGE_SIZE_EXT     = VkBlendOverlapEXT.VK_BLEND_OVERLAP_RANGE_SIZE_EXT;
11589 enum VK_BLEND_OVERLAP_MAX_ENUM_EXT       = VkBlendOverlapEXT.VK_BLEND_OVERLAP_MAX_ENUM_EXT;
11590 
11591 struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {
11592     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT;
11593     void*            pNext;
11594     VkBool32         advancedBlendCoherentOperations;
11595 }
11596 
11597 struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
11598     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT;
11599     void*            pNext;
11600     uint32_t         advancedBlendMaxColorAttachments;
11601     VkBool32         advancedBlendIndependentBlend;
11602     VkBool32         advancedBlendNonPremultipliedSrcColor;
11603     VkBool32         advancedBlendNonPremultipliedDstColor;
11604     VkBool32         advancedBlendCorrelatedOverlap;
11605     VkBool32         advancedBlendAllOperations;
11606 }
11607 
11608 struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {
11609     VkStructureType    sType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT;
11610     const( void )*     pNext;
11611     VkBool32           srcPremultiplied;
11612     VkBool32           dstPremultiplied;
11613     VkBlendOverlapEXT  blendOverlap;
11614 }
11615 
11616 
11617 // - VK_NV_fragment_coverage_to_color -
11618 enum VK_NV_fragment_coverage_to_color = 1;
11619 
11620 enum VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION = 1;
11621 enum const( char )* VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME = "VK_NV_fragment_coverage_to_color";
11622 
11623 alias VkPipelineCoverageToColorStateCreateFlagsNV = VkFlags;
11624 
11625 struct VkPipelineCoverageToColorStateCreateInfoNV {
11626     VkStructureType                              sType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV;
11627     const( void )*                               pNext;
11628     VkPipelineCoverageToColorStateCreateFlagsNV  flags;
11629     VkBool32                                     coverageToColorEnable;
11630     uint32_t                                     coverageToColorLocation;
11631 }
11632 
11633 
11634 // - VK_NV_framebuffer_mixed_samples -
11635 enum VK_NV_framebuffer_mixed_samples = 1;
11636 
11637 enum VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION = 1;
11638 enum const( char )* VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME = "VK_NV_framebuffer_mixed_samples";
11639 
11640 enum VkCoverageModulationModeNV {
11641     VK_COVERAGE_MODULATION_MODE_NONE_NV          = 0,
11642     VK_COVERAGE_MODULATION_MODE_RGB_NV           = 1,
11643     VK_COVERAGE_MODULATION_MODE_ALPHA_NV         = 2,
11644     VK_COVERAGE_MODULATION_MODE_RGBA_NV          = 3,
11645     VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV   = VK_COVERAGE_MODULATION_MODE_NONE_NV,
11646     VK_COVERAGE_MODULATION_MODE_END_RANGE_NV     = VK_COVERAGE_MODULATION_MODE_RGBA_NV,
11647     VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV    = VK_COVERAGE_MODULATION_MODE_RGBA_NV - VK_COVERAGE_MODULATION_MODE_NONE_NV + 1,
11648     VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV      = 0x7FFFFFFF
11649 }
11650 
11651 enum VK_COVERAGE_MODULATION_MODE_NONE_NV         = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_NONE_NV;
11652 enum VK_COVERAGE_MODULATION_MODE_RGB_NV          = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_RGB_NV;
11653 enum VK_COVERAGE_MODULATION_MODE_ALPHA_NV        = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_ALPHA_NV;
11654 enum VK_COVERAGE_MODULATION_MODE_RGBA_NV         = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_RGBA_NV;
11655 enum VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV  = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_BEGIN_RANGE_NV;
11656 enum VK_COVERAGE_MODULATION_MODE_END_RANGE_NV    = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_END_RANGE_NV;
11657 enum VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV   = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_RANGE_SIZE_NV;
11658 enum VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV     = VkCoverageModulationModeNV.VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV;
11659 
11660 alias VkPipelineCoverageModulationStateCreateFlagsNV = VkFlags;
11661 
11662 struct VkPipelineCoverageModulationStateCreateInfoNV {
11663     VkStructureType                                 sType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV;
11664     const( void )*                                  pNext;
11665     VkPipelineCoverageModulationStateCreateFlagsNV  flags;
11666     VkCoverageModulationModeNV                      coverageModulationMode;
11667     VkBool32                                        coverageModulationTableEnable;
11668     uint32_t                                        coverageModulationTableCount;
11669     const( float )*                                 pCoverageModulationTable;
11670 }
11671 
11672 
11673 // - VK_NV_fill_rectangle -
11674 enum VK_NV_fill_rectangle = 1;
11675 
11676 enum VK_NV_FILL_RECTANGLE_SPEC_VERSION = 1;
11677 enum const( char )* VK_NV_FILL_RECTANGLE_EXTENSION_NAME = "VK_NV_fill_rectangle";
11678 
11679 
11680 // - VK_NV_shader_sm_builtins -
11681 enum VK_NV_shader_sm_builtins = 1;
11682 
11683 enum VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION = 1;
11684 enum const( char )* VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME = "VK_NV_shader_sm_builtins";
11685 
11686 struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV {
11687     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV;
11688     void*            pNext;
11689     uint32_t         shaderSMCount;
11690     uint32_t         shaderWarpsPerSM;
11691 }
11692 
11693 struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV {
11694     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV;
11695     void*            pNext;
11696     VkBool32         shaderSMBuiltins;
11697 }
11698 
11699 
11700 // - VK_EXT_post_depth_coverage -
11701 enum VK_EXT_post_depth_coverage = 1;
11702 
11703 enum VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION = 1;
11704 enum const( char )* VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME = "VK_EXT_post_depth_coverage";
11705 
11706 
11707 // - VK_EXT_image_drm_format_modifier -
11708 enum VK_EXT_image_drm_format_modifier = 1;
11709 
11710 enum VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION = 2;
11711 enum const( char )* VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME = "VK_EXT_image_drm_format_modifier";
11712 
11713 struct VkDrmFormatModifierPropertiesEXT {
11714     uint64_t              drmFormatModifier;
11715     uint32_t              drmFormatModifierPlaneCount;
11716     VkFormatFeatureFlags  drmFormatModifierTilingFeatures;
11717 }
11718 
11719 struct VkDrmFormatModifierPropertiesListEXT {
11720     VkStructureType                    sType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT;
11721     void*                              pNext;
11722     uint32_t                           drmFormatModifierCount;
11723     VkDrmFormatModifierPropertiesEXT*  pDrmFormatModifierProperties;
11724 }
11725 
11726 struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
11727     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT;
11728     const( void )*      pNext;
11729     uint64_t            drmFormatModifier;
11730     VkSharingMode       sharingMode;
11731     uint32_t            queueFamilyIndexCount;
11732     const( uint32_t )*  pQueueFamilyIndices;
11733 }
11734 
11735 struct VkImageDrmFormatModifierListCreateInfoEXT {
11736     VkStructureType     sType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT;
11737     const( void )*      pNext;
11738     uint32_t            drmFormatModifierCount;
11739     const( uint64_t )*  pDrmFormatModifiers;
11740 }
11741 
11742 struct VkImageDrmFormatModifierExplicitCreateInfoEXT {
11743     VkStructureType                sType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT;
11744     const( void )*                 pNext;
11745     uint64_t                       drmFormatModifier;
11746     uint32_t                       drmFormatModifierPlaneCount;
11747     const( VkSubresourceLayout )*  pPlaneLayouts;
11748 }
11749 
11750 struct VkImageDrmFormatModifierPropertiesEXT {
11751     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT;
11752     void*            pNext;
11753     uint64_t         drmFormatModifier;
11754 }
11755 
11756 struct VkDrmFormatModifierProperties2EXT {
11757     uint64_t               drmFormatModifier;
11758     uint32_t               drmFormatModifierPlaneCount;
11759     VkFormatFeatureFlags2  drmFormatModifierTilingFeatures;
11760 }
11761 
11762 struct VkDrmFormatModifierPropertiesList2EXT {
11763     VkStructureType                     sType = VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT;
11764     void*                               pNext;
11765     uint32_t                            drmFormatModifierCount;
11766     VkDrmFormatModifierProperties2EXT*  pDrmFormatModifierProperties;
11767 }
11768 
11769 
11770 // - VK_EXT_validation_cache -
11771 enum VK_EXT_validation_cache = 1;
11772 
11773 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkValidationCacheEXT} );
11774 
11775 enum VK_EXT_VALIDATION_CACHE_SPEC_VERSION = 1;
11776 enum const( char )* VK_EXT_VALIDATION_CACHE_EXTENSION_NAME = "VK_EXT_validation_cache";
11777 
11778 enum VkValidationCacheHeaderVersionEXT {
11779     VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT           = 1,
11780     VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT   = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,
11781     VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT     = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT,
11782     VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT    = VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT - VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT + 1,
11783     VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT      = 0x7FFFFFFF
11784 }
11785 
11786 enum VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT          = VkValidationCacheHeaderVersionEXT.VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT;
11787 enum VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT  = VkValidationCacheHeaderVersionEXT.VK_VALIDATION_CACHE_HEADER_VERSION_BEGIN_RANGE_EXT;
11788 enum VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT    = VkValidationCacheHeaderVersionEXT.VK_VALIDATION_CACHE_HEADER_VERSION_END_RANGE_EXT;
11789 enum VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT   = VkValidationCacheHeaderVersionEXT.VK_VALIDATION_CACHE_HEADER_VERSION_RANGE_SIZE_EXT;
11790 enum VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT     = VkValidationCacheHeaderVersionEXT.VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT;
11791 
11792 alias VkValidationCacheCreateFlagsEXT = VkFlags;
11793 
11794 struct VkValidationCacheCreateInfoEXT {
11795     VkStructureType                  sType = VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT;
11796     const( void )*                   pNext;
11797     VkValidationCacheCreateFlagsEXT  flags;
11798     size_t                           initialDataSize;
11799     const( void )*                   pInitialData;
11800 }
11801 
11802 struct VkShaderModuleValidationCacheCreateInfoEXT {
11803     VkStructureType       sType = VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT;
11804     const( void )*        pNext;
11805     VkValidationCacheEXT  validationCache;
11806 }
11807 
11808 
11809 // - VK_EXT_descriptor_indexing -
11810 enum VK_EXT_descriptor_indexing = 1;
11811 
11812 enum VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION = 2;
11813 enum const( char )* VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME = "VK_EXT_descriptor_indexing";
11814 
11815 alias VkDescriptorBindingFlagBitsEXT = VkDescriptorBindingFlagBits;
11816 alias VkDescriptorBindingFlagsEXT = VkDescriptorBindingFlags;
11817 
11818 alias VkDescriptorSetLayoutBindingFlagsCreateInfoEXT = VkDescriptorSetLayoutBindingFlagsCreateInfo;
11819 alias VkPhysicalDeviceDescriptorIndexingFeaturesEXT = VkPhysicalDeviceDescriptorIndexingFeatures;
11820 alias VkPhysicalDeviceDescriptorIndexingPropertiesEXT = VkPhysicalDeviceDescriptorIndexingProperties;
11821 alias VkDescriptorSetVariableDescriptorCountAllocateInfoEXT = VkDescriptorSetVariableDescriptorCountAllocateInfo;
11822 alias VkDescriptorSetVariableDescriptorCountLayoutSupportEXT = VkDescriptorSetVariableDescriptorCountLayoutSupport;
11823 
11824 
11825 // - VK_EXT_shader_viewport_index_layer -
11826 enum VK_EXT_shader_viewport_index_layer = 1;
11827 
11828 enum VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION = 1;
11829 enum const( char )* VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME = "VK_EXT_shader_viewport_index_layer";
11830 
11831 
11832 // - VK_NV_shading_rate_image -
11833 enum VK_NV_shading_rate_image = 1;
11834 
11835 enum VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION = 3;
11836 enum const( char )* VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME = "VK_NV_shading_rate_image";
11837 
11838 enum VkShadingRatePaletteEntryNV {
11839     VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV                      = 0,
11840     VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV            = 1,
11841     VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV             = 2,
11842     VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV             = 3,
11843     VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV             = 4,
11844     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV              = 5,
11845     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV         = 6,
11846     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV         = 7,
11847     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV         = 8,
11848     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV         = 9,
11849     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV         = 10,
11850     VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV         = 11,
11851     VK_SHADING_RATE_PALETTE_ENTRY_BEGIN_RANGE_NV                         = VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV,
11852     VK_SHADING_RATE_PALETTE_ENTRY_END_RANGE_NV                           = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV,
11853     VK_SHADING_RATE_PALETTE_ENTRY_RANGE_SIZE_NV                          = VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV - VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV + 1,
11854     VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV                            = 0x7FFFFFFF
11855 }
11856 
11857 enum VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV                     = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV;
11858 enum VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV           = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV;
11859 enum VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV            = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV;
11860 enum VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV            = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV;
11861 enum VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV            = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV;
11862 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV             = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV;
11863 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV;
11864 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV;
11865 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV;
11866 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV;
11867 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV;
11868 enum VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV;
11869 enum VK_SHADING_RATE_PALETTE_ENTRY_BEGIN_RANGE_NV                        = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_BEGIN_RANGE_NV;
11870 enum VK_SHADING_RATE_PALETTE_ENTRY_END_RANGE_NV                          = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_END_RANGE_NV;
11871 enum VK_SHADING_RATE_PALETTE_ENTRY_RANGE_SIZE_NV                         = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_RANGE_SIZE_NV;
11872 enum VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV                           = VkShadingRatePaletteEntryNV.VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV;
11873 
11874 enum VkCoarseSampleOrderTypeNV {
11875     VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV       = 0,
11876     VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV        = 1,
11877     VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV   = 2,
11878     VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV  = 3,
11879     VK_COARSE_SAMPLE_ORDER_TYPE_BEGIN_RANGE_NV   = VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV,
11880     VK_COARSE_SAMPLE_ORDER_TYPE_END_RANGE_NV     = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV,
11881     VK_COARSE_SAMPLE_ORDER_TYPE_RANGE_SIZE_NV    = VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV - VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV + 1,
11882     VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV      = 0x7FFFFFFF
11883 }
11884 
11885 enum VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV      = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV;
11886 enum VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV       = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV;
11887 enum VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV  = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV;
11888 enum VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV;
11889 enum VK_COARSE_SAMPLE_ORDER_TYPE_BEGIN_RANGE_NV  = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_BEGIN_RANGE_NV;
11890 enum VK_COARSE_SAMPLE_ORDER_TYPE_END_RANGE_NV    = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_END_RANGE_NV;
11891 enum VK_COARSE_SAMPLE_ORDER_TYPE_RANGE_SIZE_NV   = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_RANGE_SIZE_NV;
11892 enum VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV     = VkCoarseSampleOrderTypeNV.VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV;
11893 
11894 struct VkShadingRatePaletteNV {
11895     uint32_t                               shadingRatePaletteEntryCount;
11896     const( VkShadingRatePaletteEntryNV )*  pShadingRatePaletteEntries;
11897 }
11898 
11899 struct VkPipelineViewportShadingRateImageStateCreateInfoNV {
11900     VkStructureType                   sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV;
11901     const( void )*                    pNext;
11902     VkBool32                          shadingRateImageEnable;
11903     uint32_t                          viewportCount;
11904     const( VkShadingRatePaletteNV )*  pShadingRatePalettes;
11905 }
11906 
11907 struct VkPhysicalDeviceShadingRateImageFeaturesNV {
11908     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV;
11909     void*            pNext;
11910     VkBool32         shadingRateImage;
11911     VkBool32         shadingRateCoarseSampleOrder;
11912 }
11913 
11914 struct VkPhysicalDeviceShadingRateImagePropertiesNV {
11915     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV;
11916     void*            pNext;
11917     VkExtent2D       shadingRateTexelSize;
11918     uint32_t         shadingRatePaletteSize;
11919     uint32_t         shadingRateMaxCoarseSamples;
11920 }
11921 
11922 struct VkCoarseSampleLocationNV {
11923     uint32_t  pixelX;
11924     uint32_t  pixelY;
11925     uint32_t  sample;
11926 }
11927 
11928 struct VkCoarseSampleOrderCustomNV {
11929     VkShadingRatePaletteEntryNV         shadingRate;
11930     uint32_t                            sampleCount;
11931     uint32_t                            sampleLocationCount;
11932     const( VkCoarseSampleLocationNV )*  pSampleLocations;
11933 }
11934 
11935 struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {
11936     VkStructureType                        sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV;
11937     const( void )*                         pNext;
11938     VkCoarseSampleOrderTypeNV              sampleOrderType;
11939     uint32_t                               customSampleOrderCount;
11940     const( VkCoarseSampleOrderCustomNV )*  pCustomSampleOrders;
11941 }
11942 
11943 
11944 // - VK_NV_ray_tracing -
11945 enum VK_NV_ray_tracing = 1;
11946 
11947 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkAccelerationStructureNV} );
11948 
11949 alias VkRayTracingShaderGroupTypeNV = VkRayTracingShaderGroupTypeKHR;
11950 alias VkGeometryTypeNV = VkGeometryTypeKHR;
11951 alias VkAccelerationStructureTypeNV = VkAccelerationStructureTypeKHR;
11952 alias VkCopyAccelerationStructureModeNV = VkCopyAccelerationStructureModeKHR;
11953 enum VK_NV_RAY_TRACING_SPEC_VERSION = 3;
11954 enum const( char )* VK_NV_RAY_TRACING_EXTENSION_NAME = "VK_NV_ray_tracing";
11955 enum VK_SHADER_UNUSED_KHR = (~0U);
11956 alias VK_SHADER_UNUSED_NV = VK_SHADER_UNUSED_KHR;
11957 
11958 enum VkRayTracingShaderGroupTypeKHR {
11959     VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR                 = 0,
11960     VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR     = 1,
11961     VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR    = 2,
11962     VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV                  = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
11963     VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV      = VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR,
11964     VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV     = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
11965     VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_KHR             = VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR,
11966     VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_KHR               = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR,
11967     VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_KHR              = VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR - VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR + 1,
11968     VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR                = 0x7FFFFFFF
11969 }
11970 
11971 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR                = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR;
11972 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR    = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR;
11973 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR   = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR;
11974 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV                 = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV;
11975 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV     = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV;
11976 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV    = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV;
11977 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_KHR            = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_BEGIN_RANGE_KHR;
11978 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_KHR              = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_END_RANGE_KHR;
11979 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_KHR             = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_RANGE_SIZE_KHR;
11980 enum VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR               = VkRayTracingShaderGroupTypeKHR.VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR;
11981 
11982 enum VkGeometryTypeKHR {
11983     VK_GEOMETRY_TYPE_TRIANGLES_KHR       = 0,
11984     VK_GEOMETRY_TYPE_AABBS_KHR           = 1,
11985     VK_GEOMETRY_TYPE_INSTANCES_KHR       = 2,
11986     VK_GEOMETRY_TYPE_TRIANGLES_NV        = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
11987     VK_GEOMETRY_TYPE_AABBS_NV            = VK_GEOMETRY_TYPE_AABBS_KHR,
11988     VK_GEOMETRY_TYPE_BEGIN_RANGE_KHR     = VK_GEOMETRY_TYPE_TRIANGLES_KHR,
11989     VK_GEOMETRY_TYPE_END_RANGE_KHR       = VK_GEOMETRY_TYPE_INSTANCES_KHR,
11990     VK_GEOMETRY_TYPE_RANGE_SIZE_KHR      = VK_GEOMETRY_TYPE_INSTANCES_KHR - VK_GEOMETRY_TYPE_TRIANGLES_KHR + 1,
11991     VK_GEOMETRY_TYPE_MAX_ENUM_KHR        = 0x7FFFFFFF
11992 }
11993 
11994 enum VK_GEOMETRY_TYPE_TRIANGLES_KHR      = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_TRIANGLES_KHR;
11995 enum VK_GEOMETRY_TYPE_AABBS_KHR          = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_AABBS_KHR;
11996 enum VK_GEOMETRY_TYPE_INSTANCES_KHR      = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_INSTANCES_KHR;
11997 enum VK_GEOMETRY_TYPE_TRIANGLES_NV       = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_TRIANGLES_NV;
11998 enum VK_GEOMETRY_TYPE_AABBS_NV           = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_AABBS_NV;
11999 enum VK_GEOMETRY_TYPE_BEGIN_RANGE_KHR    = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_BEGIN_RANGE_KHR;
12000 enum VK_GEOMETRY_TYPE_END_RANGE_KHR      = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_END_RANGE_KHR;
12001 enum VK_GEOMETRY_TYPE_RANGE_SIZE_KHR     = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_RANGE_SIZE_KHR;
12002 enum VK_GEOMETRY_TYPE_MAX_ENUM_KHR       = VkGeometryTypeKHR.VK_GEOMETRY_TYPE_MAX_ENUM_KHR;
12003 
12004 enum VkAccelerationStructureTypeKHR {
12005     VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR         = 0,
12006     VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR      = 1,
12007     VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR           = 2,
12008     VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV          = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
12009     VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV       = VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR,
12010     VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_KHR       = VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR,
12011     VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_KHR         = VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR,
12012     VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_KHR        = VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR - VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR + 1,
12013     VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR          = 0x7FFFFFFF
12014 }
12015 
12016 enum VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR        = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR;
12017 enum VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR     = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR;
12018 enum VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR          = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR;
12019 enum VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV         = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV;
12020 enum VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV      = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV;
12021 enum VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_KHR      = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_BEGIN_RANGE_KHR;
12022 enum VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_KHR        = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_END_RANGE_KHR;
12023 enum VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_KHR       = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_RANGE_SIZE_KHR;
12024 enum VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR         = VkAccelerationStructureTypeKHR.VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR;
12025 
12026 enum VkCopyAccelerationStructureModeKHR {
12027     VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR        = 0,
12028     VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR      = 1,
12029     VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR    = 2,
12030     VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR  = 3,
12031     VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV         = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
12032     VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV       = VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR,
12033     VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR  = VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR,
12034     VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR    = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR,
12035     VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR   = VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR - VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR + 1,
12036     VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR     = 0x7FFFFFFF
12037 }
12038 
12039 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR       = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR;
12040 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR     = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR;
12041 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR   = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR;
12042 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR;
12043 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV        = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV;
12044 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV      = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV;
12045 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR;
12046 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR   = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR;
12047 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR  = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR;
12048 enum VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR    = VkCopyAccelerationStructureModeKHR.VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR;
12049 
12050 enum VkAccelerationStructureMemoryRequirementsTypeNV {
12051     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV                 = 0,
12052     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV          = 1,
12053     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV         = 2,
12054     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_NV            = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV,
12055     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_NV              = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV,
12056     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_NV             = VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV - VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV + 1,
12057     VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV               = 0x7FFFFFFF
12058 }
12059 
12060 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV                = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV;
12061 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV         = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV;
12062 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV        = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV;
12063 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_NV           = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BEGIN_RANGE_NV;
12064 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_NV             = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_END_RANGE_NV;
12065 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_NV            = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_RANGE_SIZE_NV;
12066 enum VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV              = VkAccelerationStructureMemoryRequirementsTypeNV.VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV;
12067 
12068 alias VkGeometryFlagsKHR = VkFlags;
12069 enum VkGeometryFlagBitsKHR : VkGeometryFlagsKHR {
12070     VK_GEOMETRY_OPAQUE_BIT_KHR                           = 0x00000001,
12071     VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR  = 0x00000002,
12072     VK_GEOMETRY_OPAQUE_BIT_NV                            = VK_GEOMETRY_OPAQUE_BIT_KHR,
12073     VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV   = VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR,
12074     VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR                   = 0x7FFFFFFF
12075 }
12076 
12077 enum VK_GEOMETRY_OPAQUE_BIT_KHR                          = VkGeometryFlagBitsKHR.VK_GEOMETRY_OPAQUE_BIT_KHR;
12078 enum VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR = VkGeometryFlagBitsKHR.VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR;
12079 enum VK_GEOMETRY_OPAQUE_BIT_NV                           = VkGeometryFlagBitsKHR.VK_GEOMETRY_OPAQUE_BIT_NV;
12080 enum VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV  = VkGeometryFlagBitsKHR.VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV;
12081 enum VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR                  = VkGeometryFlagBitsKHR.VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR;
12082 alias VkGeometryFlagsNV = VkGeometryFlagsKHR;
12083 alias VkGeometryFlagBitsNV = VkGeometryFlagBitsKHR;
12084 
12085 alias VkGeometryInstanceFlagsKHR = VkFlags;
12086 enum VkGeometryInstanceFlagBitsKHR : VkGeometryInstanceFlagsKHR {
12087     VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR            = 0x00000001,
12088     VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR                    = 0x00000002,
12089     VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR                            = 0x00000004,
12090     VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR                         = 0x00000008,
12091     VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR         = VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR,
12092     VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV                    = VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR,
12093     VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV          = VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR,
12094     VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV                             = VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR,
12095     VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV                          = VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR,
12096     VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR                          = 0x7FFFFFFF
12097 }
12098 
12099 enum VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR           = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR;
12100 enum VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR                   = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR;
12101 enum VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR                           = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR;
12102 enum VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR                        = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR;
12103 enum VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR        = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR;
12104 enum VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV                   = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV;
12105 enum VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV         = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV;
12106 enum VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV                            = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV;
12107 enum VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV                         = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV;
12108 enum VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR                         = VkGeometryInstanceFlagBitsKHR.VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR;
12109 alias VkGeometryInstanceFlagsNV = VkGeometryInstanceFlagsKHR;
12110 alias VkGeometryInstanceFlagBitsNV = VkGeometryInstanceFlagBitsKHR;
12111 
12112 alias VkBuildAccelerationStructureFlagsKHR = VkFlags;
12113 enum VkBuildAccelerationStructureFlagBitsKHR : VkBuildAccelerationStructureFlagsKHR {
12114     VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR         = 0x00000001,
12115     VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR     = 0x00000002,
12116     VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR    = 0x00000004,
12117     VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR    = 0x00000008,
12118     VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR           = 0x00000010,
12119     VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV                = 0x00000020,
12120     VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV          = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR,
12121     VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV      = VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR,
12122     VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV     = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR,
12123     VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV     = VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR,
12124     VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV            = VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR,
12125     VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR       = 0x7FFFFFFF
12126 }
12127 
12128 enum VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR        = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR;
12129 enum VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR    = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR;
12130 enum VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR   = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR;
12131 enum VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR   = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR;
12132 enum VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR          = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR;
12133 enum VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV               = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV;
12134 enum VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV         = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV;
12135 enum VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV     = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV;
12136 enum VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV    = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV;
12137 enum VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV    = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV;
12138 enum VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV           = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV;
12139 enum VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR      = VkBuildAccelerationStructureFlagBitsKHR.VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR;
12140 alias VkBuildAccelerationStructureFlagsNV = VkBuildAccelerationStructureFlagsKHR;
12141 alias VkBuildAccelerationStructureFlagBitsNV = VkBuildAccelerationStructureFlagBitsKHR;
12142 
12143 struct VkRayTracingShaderGroupCreateInfoNV {
12144     VkStructureType                 sType = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV;
12145     const( void )*                  pNext;
12146     VkRayTracingShaderGroupTypeKHR  type;
12147     uint32_t                        generalShader;
12148     uint32_t                        closestHitShader;
12149     uint32_t                        anyHitShader;
12150     uint32_t                        intersectionShader;
12151 }
12152 
12153 struct VkRayTracingPipelineCreateInfoNV {
12154     VkStructureType                                sType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV;
12155     const( void )*                                 pNext;
12156     VkPipelineCreateFlags                          flags;
12157     uint32_t                                       stageCount;
12158     const( VkPipelineShaderStageCreateInfo )*      pStages;
12159     uint32_t                                       groupCount;
12160     const( VkRayTracingShaderGroupCreateInfoNV )*  pGroups;
12161     uint32_t                                       maxRecursionDepth;
12162     VkPipelineLayout                               layout;
12163     VkPipeline                                     basePipelineHandle;
12164     int32_t                                        basePipelineIndex;
12165 }
12166 
12167 struct VkGeometryTrianglesNV {
12168     VkStructureType  sType = VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV;
12169     const( void )*   pNext;
12170     VkBuffer         vertexData;
12171     VkDeviceSize     vertexOffset;
12172     uint32_t         vertexCount;
12173     VkDeviceSize     vertexStride;
12174     VkFormat         vertexFormat;
12175     VkBuffer         indexData;
12176     VkDeviceSize     indexOffset;
12177     uint32_t         indexCount;
12178     VkIndexType      indexType;
12179     VkBuffer         transformData;
12180     VkDeviceSize     transformOffset;
12181 }
12182 
12183 struct VkGeometryAABBNV {
12184     VkStructureType  sType = VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV;
12185     const( void )*   pNext;
12186     VkBuffer         aabbData;
12187     uint32_t         numAABBs;
12188     uint32_t         stride;
12189     VkDeviceSize     offset;
12190 }
12191 
12192 struct VkGeometryDataNV {
12193     VkGeometryTrianglesNV  triangles;
12194     VkGeometryAABBNV       aabbs;
12195 }
12196 
12197 struct VkGeometryNV {
12198     VkStructureType     sType = VK_STRUCTURE_TYPE_GEOMETRY_NV;
12199     const( void )*      pNext;
12200     VkGeometryTypeKHR   geometryType;
12201     VkGeometryDataNV    geometry;
12202     VkGeometryFlagsKHR  flags;
12203 }
12204 
12205 struct VkAccelerationStructureInfoNV {
12206     VkStructureType                      sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV;
12207     const( void )*                       pNext;
12208     VkAccelerationStructureTypeNV        type;
12209     VkBuildAccelerationStructureFlagsNV  flags;
12210     uint32_t                             instanceCount;
12211     uint32_t                             geometryCount;
12212     const( VkGeometryNV )*               pGeometries;
12213 }
12214 
12215 struct VkAccelerationStructureCreateInfoNV {
12216     VkStructureType                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV;
12217     const( void )*                 pNext;
12218     VkDeviceSize                   compactedSize;
12219     VkAccelerationStructureInfoNV  info;
12220 }
12221 
12222 struct VkBindAccelerationStructureMemoryInfoNV {
12223     VkStructureType            sType = VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV;
12224     const( void )*             pNext;
12225     VkAccelerationStructureNV  accelerationStructure;
12226     VkDeviceMemory             memory;
12227     VkDeviceSize               memoryOffset;
12228     uint32_t                   deviceIndexCount;
12229     const( uint32_t )*         pDeviceIndices;
12230 }
12231 
12232 struct VkWriteDescriptorSetAccelerationStructureNV {
12233     VkStructureType                      sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV;
12234     const( void )*                       pNext;
12235     uint32_t                             accelerationStructureCount;
12236     const( VkAccelerationStructureNV )*  pAccelerationStructures;
12237 }
12238 
12239 struct VkAccelerationStructureMemoryRequirementsInfoNV {
12240     VkStructureType                                  sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV;
12241     const( void )*                                   pNext;
12242     VkAccelerationStructureMemoryRequirementsTypeNV  type;
12243     VkAccelerationStructureNV                        accelerationStructure;
12244 }
12245 
12246 struct VkPhysicalDeviceRayTracingPropertiesNV {
12247     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV;
12248     void*            pNext;
12249     uint32_t         shaderGroupHandleSize;
12250     uint32_t         maxRecursionDepth;
12251     uint32_t         maxShaderGroupStride;
12252     uint32_t         shaderGroupBaseAlignment;
12253     uint64_t         maxGeometryCount;
12254     uint64_t         maxInstanceCount;
12255     uint64_t         maxTriangleCount;
12256     uint32_t         maxDescriptorSetAccelerationStructures;
12257 }
12258 
12259 struct VkTransformMatrixKHR {
12260     float[3][4]  matrix;
12261 }
12262 alias VkTransformMatrixNV = VkTransformMatrixKHR;
12263 
12264 struct VkAabbPositionsKHR {
12265     float  minX;
12266     float  minY;
12267     float  minZ;
12268     float  maxX;
12269     float  maxY;
12270     float  maxZ;
12271 }
12272 alias VkAabbPositionsNV = VkAabbPositionsKHR;
12273 
12274 struct VkAccelerationStructureInstanceKHR {
12275     VkTransformMatrixKHR            transform;
12276     mixin( bitfields!(
12277         uint32_t,                   "instanceCustomIndex",                    24,
12278         uint32_t,                   "mask",                                   8,
12279         uint32_t,                   "instanceShaderBindingTableRecordOffset", 24,
12280         VkGeometryInstanceFlagsKHR, "flags",                                  8,
12281     ));
12282     uint64_t                        accelerationStructureReference;
12283 }
12284 alias VkAccelerationStructureInstanceNV = VkAccelerationStructureInstanceKHR;
12285 
12286 
12287 // - VK_NV_representative_fragment_test -
12288 enum VK_NV_representative_fragment_test = 1;
12289 
12290 enum VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION = 2;
12291 enum const( char )* VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME = "VK_NV_representative_fragment_test";
12292 
12293 struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {
12294     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV;
12295     void*            pNext;
12296     VkBool32         representativeFragmentTest;
12297 }
12298 
12299 struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV {
12300     VkStructureType  sType = VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV;
12301     const( void )*   pNext;
12302     VkBool32         representativeFragmentTestEnable;
12303 }
12304 
12305 
12306 // - VK_EXT_filter_cubic -
12307 enum VK_EXT_filter_cubic = 1;
12308 
12309 enum VK_EXT_FILTER_CUBIC_SPEC_VERSION = 3;
12310 enum const( char )* VK_EXT_FILTER_CUBIC_EXTENSION_NAME = "VK_EXT_filter_cubic";
12311 
12312 struct VkPhysicalDeviceImageViewImageFormatInfoEXT {
12313     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT;
12314     void*            pNext;
12315     VkImageViewType  imageViewType;
12316 }
12317 
12318 struct VkFilterCubicImageViewImageFormatPropertiesEXT {
12319     VkStructureType  sType = VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT;
12320     void*            pNext;
12321     VkBool32         filterCubic;
12322     VkBool32         filterCubicMinmax;
12323 }
12324 
12325 
12326 // - VK_QCOM_render_pass_shader_resolve -
12327 enum VK_QCOM_render_pass_shader_resolve = 1;
12328 
12329 enum VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION = 4;
12330 enum const( char )* VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME = "VK_QCOM_render_pass_shader_resolve";
12331 
12332 
12333 // - VK_EXT_global_priority -
12334 enum VK_EXT_global_priority = 1;
12335 
12336 alias VkQueueGlobalPriorityEXT = VkQueueGlobalPriorityKHR;
12337 enum VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION = 2;
12338 enum const( char )* VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME = "VK_EXT_global_priority";
12339 
12340 alias VkDeviceQueueGlobalPriorityCreateInfoEXT = VkDeviceQueueGlobalPriorityCreateInfoKHR;
12341 
12342 
12343 // - VK_EXT_external_memory_host -
12344 enum VK_EXT_external_memory_host = 1;
12345 
12346 enum VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION = 1;
12347 enum const( char )* VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME = "VK_EXT_external_memory_host";
12348 
12349 struct VkImportMemoryHostPointerInfoEXT {
12350     VkStructureType                     sType = VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT;
12351     const( void )*                      pNext;
12352     VkExternalMemoryHandleTypeFlagBits  handleType;
12353     void*                               pHostPointer;
12354 }
12355 
12356 struct VkMemoryHostPointerPropertiesEXT {
12357     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT;
12358     void*            pNext;
12359     uint32_t         memoryTypeBits;
12360 }
12361 
12362 struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {
12363     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT;
12364     void*            pNext;
12365     VkDeviceSize     minImportedHostPointerAlignment;
12366 }
12367 
12368 
12369 // - VK_AMD_buffer_marker -
12370 enum VK_AMD_buffer_marker = 1;
12371 
12372 enum VK_AMD_BUFFER_MARKER_SPEC_VERSION = 1;
12373 enum const( char )* VK_AMD_BUFFER_MARKER_EXTENSION_NAME = "VK_AMD_buffer_marker";
12374 
12375 
12376 // - VK_AMD_pipeline_compiler_control -
12377 enum VK_AMD_pipeline_compiler_control = 1;
12378 
12379 enum VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION = 1;
12380 enum const( char )* VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME = "VK_AMD_pipeline_compiler_control";
12381 
12382 alias VkPipelineCompilerControlFlagsAMD = VkFlags;
12383 enum VkPipelineCompilerControlFlagBitsAMD : VkPipelineCompilerControlFlagsAMD {
12384     VK_PIPELINE_COMPILER_CONTROL_FLAG_BITS_MAX_ENUM_AMD  = 0x7FFFFFFF
12385 }
12386 
12387 enum VK_PIPELINE_COMPILER_CONTROL_FLAG_BITS_MAX_ENUM_AMD = VkPipelineCompilerControlFlagBitsAMD.VK_PIPELINE_COMPILER_CONTROL_FLAG_BITS_MAX_ENUM_AMD;
12388 
12389 struct VkPipelineCompilerControlCreateInfoAMD {
12390     VkStructureType                    sType = VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD;
12391     const( void )*                     pNext;
12392     VkPipelineCompilerControlFlagsAMD  compilerControlFlags;
12393 }
12394 
12395 
12396 // - VK_EXT_calibrated_timestamps -
12397 enum VK_EXT_calibrated_timestamps = 1;
12398 
12399 enum VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION = 2;
12400 enum const( char )* VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME = "VK_EXT_calibrated_timestamps";
12401 
12402 enum VkTimeDomainEXT {
12403     VK_TIME_DOMAIN_DEVICE_EXT                            = 0,
12404     VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT                   = 1,
12405     VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT               = 2,
12406     VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT         = 3,
12407     VK_TIME_DOMAIN_BEGIN_RANGE_EXT                       = VK_TIME_DOMAIN_DEVICE_EXT,
12408     VK_TIME_DOMAIN_END_RANGE_EXT                         = VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT,
12409     VK_TIME_DOMAIN_RANGE_SIZE_EXT                        = VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT - VK_TIME_DOMAIN_DEVICE_EXT + 1,
12410     VK_TIME_DOMAIN_MAX_ENUM_EXT                          = 0x7FFFFFFF
12411 }
12412 
12413 enum VK_TIME_DOMAIN_DEVICE_EXT                           = VkTimeDomainEXT.VK_TIME_DOMAIN_DEVICE_EXT;
12414 enum VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT                  = VkTimeDomainEXT.VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT;
12415 enum VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT              = VkTimeDomainEXT.VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT;
12416 enum VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT        = VkTimeDomainEXT.VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT;
12417 enum VK_TIME_DOMAIN_BEGIN_RANGE_EXT                      = VkTimeDomainEXT.VK_TIME_DOMAIN_BEGIN_RANGE_EXT;
12418 enum VK_TIME_DOMAIN_END_RANGE_EXT                        = VkTimeDomainEXT.VK_TIME_DOMAIN_END_RANGE_EXT;
12419 enum VK_TIME_DOMAIN_RANGE_SIZE_EXT                       = VkTimeDomainEXT.VK_TIME_DOMAIN_RANGE_SIZE_EXT;
12420 enum VK_TIME_DOMAIN_MAX_ENUM_EXT                         = VkTimeDomainEXT.VK_TIME_DOMAIN_MAX_ENUM_EXT;
12421 
12422 struct VkCalibratedTimestampInfoEXT {
12423     VkStructureType  sType = VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT;
12424     const( void )*   pNext;
12425     VkTimeDomainEXT  timeDomain;
12426 }
12427 
12428 
12429 // - VK_AMD_shader_core_properties -
12430 enum VK_AMD_shader_core_properties = 1;
12431 
12432 enum VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION = 2;
12433 enum const( char )* VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME = "VK_AMD_shader_core_properties";
12434 
12435 struct VkPhysicalDeviceShaderCorePropertiesAMD {
12436     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD;
12437     void*            pNext;
12438     uint32_t         shaderEngineCount;
12439     uint32_t         shaderArraysPerEngineCount;
12440     uint32_t         computeUnitsPerShaderArray;
12441     uint32_t         simdPerComputeUnit;
12442     uint32_t         wavefrontsPerSimd;
12443     uint32_t         wavefrontSize;
12444     uint32_t         sgprsPerSimd;
12445     uint32_t         minSgprAllocation;
12446     uint32_t         maxSgprAllocation;
12447     uint32_t         sgprAllocationGranularity;
12448     uint32_t         vgprsPerSimd;
12449     uint32_t         minVgprAllocation;
12450     uint32_t         maxVgprAllocation;
12451     uint32_t         vgprAllocationGranularity;
12452 }
12453 
12454 
12455 // - VK_AMD_memory_overallocation_behavior -
12456 enum VK_AMD_memory_overallocation_behavior = 1;
12457 
12458 enum VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION = 1;
12459 enum const( char )* VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME = "VK_AMD_memory_overallocation_behavior";
12460 
12461 enum VkMemoryOverallocationBehaviorAMD {
12462     VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD        = 0,
12463     VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD        = 1,
12464     VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD     = 2,
12465     VK_MEMORY_OVERALLOCATION_BEHAVIOR_BEGIN_RANGE_AMD    = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD,
12466     VK_MEMORY_OVERALLOCATION_BEHAVIOR_END_RANGE_AMD      = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD,
12467     VK_MEMORY_OVERALLOCATION_BEHAVIOR_RANGE_SIZE_AMD     = VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD - VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD + 1,
12468     VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD       = 0x7FFFFFFF
12469 }
12470 
12471 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD       = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD;
12472 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD       = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD;
12473 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD    = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD;
12474 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_BEGIN_RANGE_AMD   = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_BEGIN_RANGE_AMD;
12475 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_END_RANGE_AMD     = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_END_RANGE_AMD;
12476 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_RANGE_SIZE_AMD    = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_RANGE_SIZE_AMD;
12477 enum VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD      = VkMemoryOverallocationBehaviorAMD.VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD;
12478 
12479 struct VkDeviceMemoryOverallocationCreateInfoAMD {
12480     VkStructureType                    sType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD;
12481     const( void )*                     pNext;
12482     VkMemoryOverallocationBehaviorAMD  overallocationBehavior;
12483 }
12484 
12485 
12486 // - VK_EXT_vertex_attribute_divisor -
12487 enum VK_EXT_vertex_attribute_divisor = 1;
12488 
12489 enum VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION = 3;
12490 enum const( char )* VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME = "VK_EXT_vertex_attribute_divisor";
12491 
12492 struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {
12493     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT;
12494     void*            pNext;
12495     uint32_t         maxVertexAttribDivisor;
12496 }
12497 
12498 struct VkVertexInputBindingDivisorDescriptionEXT {
12499     uint32_t  binding;
12500     uint32_t  divisor;
12501 }
12502 
12503 struct VkPipelineVertexInputDivisorStateCreateInfoEXT {
12504     VkStructureType                                      sType = VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT;
12505     const( void )*                                       pNext;
12506     uint32_t                                             vertexBindingDivisorCount;
12507     const( VkVertexInputBindingDivisorDescriptionEXT )*  pVertexBindingDivisors;
12508 }
12509 
12510 struct VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {
12511     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT;
12512     void*            pNext;
12513     VkBool32         vertexAttributeInstanceRateDivisor;
12514     VkBool32         vertexAttributeInstanceRateZeroDivisor;
12515 }
12516 
12517 
12518 // - VK_EXT_pipeline_creation_feedback -
12519 enum VK_EXT_pipeline_creation_feedback = 1;
12520 
12521 enum VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION = 1;
12522 enum const( char )* VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME = "VK_EXT_pipeline_creation_feedback";
12523 
12524 alias VkPipelineCreationFeedbackFlagBitsEXT = VkPipelineCreationFeedbackFlagBits;
12525 alias VkPipelineCreationFeedbackFlagsEXT = VkPipelineCreationFeedbackFlags;
12526 
12527 alias VkPipelineCreationFeedbackCreateInfoEXT = VkPipelineCreationFeedbackCreateInfo;
12528 alias VkPipelineCreationFeedbackEXT = VkPipelineCreationFeedback;
12529 
12530 
12531 // - VK_NV_shader_subgroup_partitioned -
12532 enum VK_NV_shader_subgroup_partitioned = 1;
12533 
12534 enum VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION = 1;
12535 enum const( char )* VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME = "VK_NV_shader_subgroup_partitioned";
12536 
12537 
12538 // - VK_NV_compute_shader_derivatives -
12539 enum VK_NV_compute_shader_derivatives = 1;
12540 
12541 enum VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION = 1;
12542 enum const( char )* VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME = "VK_NV_compute_shader_derivatives";
12543 
12544 struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {
12545     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV;
12546     void*            pNext;
12547     VkBool32         computeDerivativeGroupQuads;
12548     VkBool32         computeDerivativeGroupLinear;
12549 }
12550 
12551 
12552 // - VK_NV_mesh_shader -
12553 enum VK_NV_mesh_shader = 1;
12554 
12555 enum VK_NV_MESH_SHADER_SPEC_VERSION = 1;
12556 enum const( char )* VK_NV_MESH_SHADER_EXTENSION_NAME = "VK_NV_mesh_shader";
12557 
12558 struct VkPhysicalDeviceMeshShaderFeaturesNV {
12559     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV;
12560     void*            pNext;
12561     VkBool32         taskShader;
12562     VkBool32         meshShader;
12563 }
12564 
12565 struct VkPhysicalDeviceMeshShaderPropertiesNV {
12566     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV;
12567     void*            pNext;
12568     uint32_t         maxDrawMeshTasksCount;
12569     uint32_t         maxTaskWorkGroupInvocations;
12570     uint32_t[3]      maxTaskWorkGroupSize;
12571     uint32_t         maxTaskTotalMemorySize;
12572     uint32_t         maxTaskOutputCount;
12573     uint32_t         maxMeshWorkGroupInvocations;
12574     uint32_t[3]      maxMeshWorkGroupSize;
12575     uint32_t         maxMeshTotalMemorySize;
12576     uint32_t         maxMeshOutputVertices;
12577     uint32_t         maxMeshOutputPrimitives;
12578     uint32_t         maxMeshMultiviewViewCount;
12579     uint32_t         meshOutputPerVertexGranularity;
12580     uint32_t         meshOutputPerPrimitiveGranularity;
12581 }
12582 
12583 struct VkDrawMeshTasksIndirectCommandNV {
12584     uint32_t  taskCount;
12585     uint32_t  firstTask;
12586 }
12587 
12588 
12589 // - VK_NV_fragment_shader_barycentric -
12590 enum VK_NV_fragment_shader_barycentric = 1;
12591 
12592 enum VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION = 1;
12593 enum const( char )* VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME = "VK_NV_fragment_shader_barycentric";
12594 
12595 alias VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV = VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR;
12596 
12597 
12598 // - VK_NV_shader_image_footprint -
12599 enum VK_NV_shader_image_footprint = 1;
12600 
12601 enum VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION = 2;
12602 enum const( char )* VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME = "VK_NV_shader_image_footprint";
12603 
12604 struct VkPhysicalDeviceShaderImageFootprintFeaturesNV {
12605     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV;
12606     void*            pNext;
12607     VkBool32         imageFootprint;
12608 }
12609 
12610 
12611 // - VK_NV_scissor_exclusive -
12612 enum VK_NV_scissor_exclusive = 1;
12613 
12614 enum VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION = 1;
12615 enum const( char )* VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME = "VK_NV_scissor_exclusive";
12616 
12617 struct VkPipelineViewportExclusiveScissorStateCreateInfoNV {
12618     VkStructureType     sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV;
12619     const( void )*      pNext;
12620     uint32_t            exclusiveScissorCount;
12621     const( VkRect2D )*  pExclusiveScissors;
12622 }
12623 
12624 struct VkPhysicalDeviceExclusiveScissorFeaturesNV {
12625     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV;
12626     void*            pNext;
12627     VkBool32         exclusiveScissor;
12628 }
12629 
12630 
12631 // - VK_NV_device_diagnostic_checkpoints -
12632 enum VK_NV_device_diagnostic_checkpoints = 1;
12633 
12634 enum VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION = 2;
12635 enum const( char )* VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME = "VK_NV_device_diagnostic_checkpoints";
12636 
12637 struct VkQueueFamilyCheckpointPropertiesNV {
12638     VkStructureType       sType = VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV;
12639     void*                 pNext;
12640     VkPipelineStageFlags  checkpointExecutionStageMask;
12641 }
12642 
12643 struct VkCheckpointDataNV {
12644     VkStructureType          sType = VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV;
12645     void*                    pNext;
12646     VkPipelineStageFlagBits  stage;
12647     void*                    pCheckpointMarker;
12648 }
12649 
12650 
12651 // - VK_INTEL_shader_integer_functions2 -
12652 enum VK_INTEL_shader_integer_functions2 = 1;
12653 
12654 enum VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION = 1;
12655 enum const( char )* VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME = "VK_INTEL_shader_integer_functions2";
12656 
12657 struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
12658     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL;
12659     void*            pNext;
12660     VkBool32         shaderIntegerFunctions2;
12661 }
12662 
12663 
12664 // - VK_INTEL_performance_query -
12665 enum VK_INTEL_performance_query = 1;
12666 
12667 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkPerformanceConfigurationINTEL} );
12668 
12669 enum VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION = 2;
12670 enum const( char )* VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME = "VK_INTEL_performance_query";
12671 
12672 enum VkPerformanceConfigurationTypeINTEL {
12673     VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL    = 0,
12674     VK_PERFORMANCE_CONFIGURATION_TYPE_BEGIN_RANGE_INTEL                                  = VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL,
12675     VK_PERFORMANCE_CONFIGURATION_TYPE_END_RANGE_INTEL                                    = VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL,
12676     VK_PERFORMANCE_CONFIGURATION_TYPE_RANGE_SIZE_INTEL                                   = VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL - VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL + 1,
12677     VK_PERFORMANCE_CONFIGURATION_TYPE_MAX_ENUM_INTEL                                     = 0x7FFFFFFF
12678 }
12679 
12680 enum VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL   = VkPerformanceConfigurationTypeINTEL.VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL;
12681 enum VK_PERFORMANCE_CONFIGURATION_TYPE_BEGIN_RANGE_INTEL                                 = VkPerformanceConfigurationTypeINTEL.VK_PERFORMANCE_CONFIGURATION_TYPE_BEGIN_RANGE_INTEL;
12682 enum VK_PERFORMANCE_CONFIGURATION_TYPE_END_RANGE_INTEL                                   = VkPerformanceConfigurationTypeINTEL.VK_PERFORMANCE_CONFIGURATION_TYPE_END_RANGE_INTEL;
12683 enum VK_PERFORMANCE_CONFIGURATION_TYPE_RANGE_SIZE_INTEL                                  = VkPerformanceConfigurationTypeINTEL.VK_PERFORMANCE_CONFIGURATION_TYPE_RANGE_SIZE_INTEL;
12684 enum VK_PERFORMANCE_CONFIGURATION_TYPE_MAX_ENUM_INTEL                                    = VkPerformanceConfigurationTypeINTEL.VK_PERFORMANCE_CONFIGURATION_TYPE_MAX_ENUM_INTEL;
12685 
12686 enum VkQueryPoolSamplingModeINTEL {
12687     VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL     = 0,
12688     VK_QUERY_POOL_SAMPLING_MODE_BEGIN_RANGE_INTEL = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL,
12689     VK_QUERY_POOL_SAMPLING_MODE_END_RANGE_INTEL  = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL,
12690     VK_QUERY_POOL_SAMPLING_MODE_RANGE_SIZE_INTEL = VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL - VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL + 1,
12691     VK_QUERY_POOL_SAMPLING_MODE_MAX_ENUM_INTEL   = 0x7FFFFFFF
12692 }
12693 
12694 enum VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL    = VkQueryPoolSamplingModeINTEL.VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL;
12695 enum VK_QUERY_POOL_SAMPLING_MODE_BEGIN_RANGE_INTEL = VkQueryPoolSamplingModeINTEL.VK_QUERY_POOL_SAMPLING_MODE_BEGIN_RANGE_INTEL;
12696 enum VK_QUERY_POOL_SAMPLING_MODE_END_RANGE_INTEL = VkQueryPoolSamplingModeINTEL.VK_QUERY_POOL_SAMPLING_MODE_END_RANGE_INTEL;
12697 enum VK_QUERY_POOL_SAMPLING_MODE_RANGE_SIZE_INTEL = VkQueryPoolSamplingModeINTEL.VK_QUERY_POOL_SAMPLING_MODE_RANGE_SIZE_INTEL;
12698 enum VK_QUERY_POOL_SAMPLING_MODE_MAX_ENUM_INTEL  = VkQueryPoolSamplingModeINTEL.VK_QUERY_POOL_SAMPLING_MODE_MAX_ENUM_INTEL;
12699 
12700 enum VkPerformanceOverrideTypeINTEL {
12701     VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL     = 0,
12702     VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL  = 1,
12703     VK_PERFORMANCE_OVERRIDE_TYPE_BEGIN_RANGE_INTEL       = VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL,
12704     VK_PERFORMANCE_OVERRIDE_TYPE_END_RANGE_INTEL         = VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL,
12705     VK_PERFORMANCE_OVERRIDE_TYPE_RANGE_SIZE_INTEL        = VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL - VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL + 1,
12706     VK_PERFORMANCE_OVERRIDE_TYPE_MAX_ENUM_INTEL          = 0x7FFFFFFF
12707 }
12708 
12709 enum VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL    = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL;
12710 enum VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL;
12711 enum VK_PERFORMANCE_OVERRIDE_TYPE_BEGIN_RANGE_INTEL      = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_BEGIN_RANGE_INTEL;
12712 enum VK_PERFORMANCE_OVERRIDE_TYPE_END_RANGE_INTEL        = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_END_RANGE_INTEL;
12713 enum VK_PERFORMANCE_OVERRIDE_TYPE_RANGE_SIZE_INTEL       = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_RANGE_SIZE_INTEL;
12714 enum VK_PERFORMANCE_OVERRIDE_TYPE_MAX_ENUM_INTEL         = VkPerformanceOverrideTypeINTEL.VK_PERFORMANCE_OVERRIDE_TYPE_MAX_ENUM_INTEL;
12715 
12716 enum VkPerformanceParameterTypeINTEL {
12717     VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL            = 0,
12718     VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL         = 1,
12719     VK_PERFORMANCE_PARAMETER_TYPE_BEGIN_RANGE_INTEL                      = VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL,
12720     VK_PERFORMANCE_PARAMETER_TYPE_END_RANGE_INTEL                        = VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL,
12721     VK_PERFORMANCE_PARAMETER_TYPE_RANGE_SIZE_INTEL                       = VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL - VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL + 1,
12722     VK_PERFORMANCE_PARAMETER_TYPE_MAX_ENUM_INTEL                         = 0x7FFFFFFF
12723 }
12724 
12725 enum VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL           = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL;
12726 enum VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL        = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL;
12727 enum VK_PERFORMANCE_PARAMETER_TYPE_BEGIN_RANGE_INTEL                     = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_BEGIN_RANGE_INTEL;
12728 enum VK_PERFORMANCE_PARAMETER_TYPE_END_RANGE_INTEL                       = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_END_RANGE_INTEL;
12729 enum VK_PERFORMANCE_PARAMETER_TYPE_RANGE_SIZE_INTEL                      = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_RANGE_SIZE_INTEL;
12730 enum VK_PERFORMANCE_PARAMETER_TYPE_MAX_ENUM_INTEL                        = VkPerformanceParameterTypeINTEL.VK_PERFORMANCE_PARAMETER_TYPE_MAX_ENUM_INTEL;
12731 
12732 enum VkPerformanceValueTypeINTEL {
12733     VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL       = 0,
12734     VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL       = 1,
12735     VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL        = 2,
12736     VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL         = 3,
12737     VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL       = 4,
12738     VK_PERFORMANCE_VALUE_TYPE_BEGIN_RANGE_INTEL  = VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL,
12739     VK_PERFORMANCE_VALUE_TYPE_END_RANGE_INTEL    = VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL,
12740     VK_PERFORMANCE_VALUE_TYPE_RANGE_SIZE_INTEL   = VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL - VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL + 1,
12741     VK_PERFORMANCE_VALUE_TYPE_MAX_ENUM_INTEL     = 0x7FFFFFFF
12742 }
12743 
12744 enum VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL      = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL;
12745 enum VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL      = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL;
12746 enum VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL       = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL;
12747 enum VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL        = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL;
12748 enum VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL      = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL;
12749 enum VK_PERFORMANCE_VALUE_TYPE_BEGIN_RANGE_INTEL = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_BEGIN_RANGE_INTEL;
12750 enum VK_PERFORMANCE_VALUE_TYPE_END_RANGE_INTEL   = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_END_RANGE_INTEL;
12751 enum VK_PERFORMANCE_VALUE_TYPE_RANGE_SIZE_INTEL  = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_RANGE_SIZE_INTEL;
12752 enum VK_PERFORMANCE_VALUE_TYPE_MAX_ENUM_INTEL    = VkPerformanceValueTypeINTEL.VK_PERFORMANCE_VALUE_TYPE_MAX_ENUM_INTEL;
12753 
12754 union VkPerformanceValueDataINTEL {
12755     uint32_t        value32;
12756     uint64_t        value64;
12757     float           valueFloat;
12758     VkBool32        valueBool;
12759     const( char )*  valueString;
12760 }
12761 
12762 struct VkPerformanceValueINTEL {
12763     VkPerformanceValueTypeINTEL  type;
12764     VkPerformanceValueDataINTEL  data;
12765 }
12766 
12767 struct VkInitializePerformanceApiInfoINTEL {
12768     VkStructureType  sType = VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL;
12769     const( void )*   pNext;
12770     void*            pUserData;
12771 }
12772 
12773 struct VkQueryPoolPerformanceQueryCreateInfoINTEL {
12774     VkStructureType               sType = VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL;
12775     const( void )*                pNext;
12776     VkQueryPoolSamplingModeINTEL  performanceCountersSampling;
12777 }
12778 alias VkQueryPoolCreateInfoINTEL = VkQueryPoolPerformanceQueryCreateInfoINTEL;
12779 
12780 struct VkPerformanceMarkerInfoINTEL {
12781     VkStructureType  sType = VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL;
12782     const( void )*   pNext;
12783     uint64_t         marker;
12784 }
12785 
12786 struct VkPerformanceStreamMarkerInfoINTEL {
12787     VkStructureType  sType = VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL;
12788     const( void )*   pNext;
12789     uint32_t         marker;
12790 }
12791 
12792 struct VkPerformanceOverrideInfoINTEL {
12793     VkStructureType                 sType = VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL;
12794     const( void )*                  pNext;
12795     VkPerformanceOverrideTypeINTEL  type;
12796     VkBool32                        enable;
12797     uint64_t                        parameter;
12798 }
12799 
12800 struct VkPerformanceConfigurationAcquireInfoINTEL {
12801     VkStructureType                      sType = VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL;
12802     const( void )*                       pNext;
12803     VkPerformanceConfigurationTypeINTEL  type;
12804 }
12805 
12806 
12807 // - VK_EXT_pci_bus_info -
12808 enum VK_EXT_pci_bus_info = 1;
12809 
12810 enum VK_EXT_PCI_BUS_INFO_SPEC_VERSION = 2;
12811 enum const( char )* VK_EXT_PCI_BUS_INFO_EXTENSION_NAME = "VK_EXT_pci_bus_info";
12812 
12813 struct VkPhysicalDevicePCIBusInfoPropertiesEXT {
12814     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT;
12815     void*            pNext;
12816     uint32_t         pciDomain;
12817     uint32_t         pciBus;
12818     uint32_t         pciDevice;
12819     uint32_t         pciFunction;
12820 }
12821 
12822 
12823 // - VK_AMD_display_native_hdr -
12824 enum VK_AMD_display_native_hdr = 1;
12825 
12826 enum VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION = 1;
12827 enum const( char )* VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME = "VK_AMD_display_native_hdr";
12828 
12829 struct VkDisplayNativeHdrSurfaceCapabilitiesAMD {
12830     VkStructureType  sType = VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD;
12831     void*            pNext;
12832     VkBool32         localDimmingSupport;
12833 }
12834 
12835 struct VkSwapchainDisplayNativeHdrCreateInfoAMD {
12836     VkStructureType  sType = VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD;
12837     const( void )*   pNext;
12838     VkBool32         localDimmingEnable;
12839 }
12840 
12841 
12842 // - VK_EXT_fragment_density_map -
12843 enum VK_EXT_fragment_density_map = 1;
12844 
12845 enum VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION = 2;
12846 enum const( char )* VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME = "VK_EXT_fragment_density_map";
12847 
12848 struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT {
12849     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT;
12850     void*            pNext;
12851     VkBool32         fragmentDensityMap;
12852     VkBool32         fragmentDensityMapDynamic;
12853     VkBool32         fragmentDensityMapNonSubsampledImages;
12854 }
12855 
12856 struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT {
12857     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT;
12858     void*            pNext;
12859     VkExtent2D       minFragmentDensityTexelSize;
12860     VkExtent2D       maxFragmentDensityTexelSize;
12861     VkBool32         fragmentDensityInvocations;
12862 }
12863 
12864 struct VkRenderPassFragmentDensityMapCreateInfoEXT {
12865     VkStructureType        sType = VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT;
12866     const( void )*         pNext;
12867     VkAttachmentReference  fragmentDensityMapAttachment;
12868 }
12869 
12870 
12871 // - VK_EXT_scalar_block_layout -
12872 enum VK_EXT_scalar_block_layout = 1;
12873 
12874 enum VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION = 1;
12875 enum const( char )* VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME = "VK_EXT_scalar_block_layout";
12876 
12877 alias VkPhysicalDeviceScalarBlockLayoutFeaturesEXT = VkPhysicalDeviceScalarBlockLayoutFeatures;
12878 
12879 
12880 // - VK_GOOGLE_hlsl_functionality1 -
12881 enum VK_GOOGLE_hlsl_functionality1 = 1;
12882 
12883 enum VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION = 1;
12884 enum const( char )* VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME = "VK_GOOGLE_hlsl_functionality1";
12885 alias VK_GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION = VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION;
12886 alias VK_GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME = VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME;
12887 
12888 
12889 // - VK_GOOGLE_decorate_string -
12890 enum VK_GOOGLE_decorate_string = 1;
12891 
12892 enum VK_GOOGLE_DECORATE_STRING_SPEC_VERSION = 1;
12893 enum const( char )* VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME = "VK_GOOGLE_decorate_string";
12894 
12895 
12896 // - VK_EXT_subgroup_size_control -
12897 enum VK_EXT_subgroup_size_control = 1;
12898 
12899 enum VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION = 2;
12900 enum const( char )* VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME = "VK_EXT_subgroup_size_control";
12901 
12902 alias VkPhysicalDeviceSubgroupSizeControlFeaturesEXT = VkPhysicalDeviceSubgroupSizeControlFeatures;
12903 alias VkPhysicalDeviceSubgroupSizeControlPropertiesEXT = VkPhysicalDeviceSubgroupSizeControlProperties;
12904 alias VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT = VkPipelineShaderStageRequiredSubgroupSizeCreateInfo;
12905 
12906 
12907 // - VK_AMD_shader_core_properties2 -
12908 enum VK_AMD_shader_core_properties2 = 1;
12909 
12910 enum VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION = 1;
12911 enum const( char )* VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME = "VK_AMD_shader_core_properties2";
12912 
12913 alias VkShaderCorePropertiesFlagsAMD = VkFlags;
12914 enum VkShaderCorePropertiesFlagBitsAMD : VkShaderCorePropertiesFlagsAMD {
12915     VK_SHADER_CORE_PROPERTIES_FLAG_BITS_MAX_ENUM_AMD     = 0x7FFFFFFF
12916 }
12917 
12918 enum VK_SHADER_CORE_PROPERTIES_FLAG_BITS_MAX_ENUM_AMD    = VkShaderCorePropertiesFlagBitsAMD.VK_SHADER_CORE_PROPERTIES_FLAG_BITS_MAX_ENUM_AMD;
12919 
12920 struct VkPhysicalDeviceShaderCoreProperties2AMD {
12921     VkStructureType                 sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD;
12922     void*                           pNext;
12923     VkShaderCorePropertiesFlagsAMD  shaderCoreFeatures;
12924     uint32_t                        activeComputeUnitCount;
12925 }
12926 
12927 
12928 // - VK_AMD_device_coherent_memory -
12929 enum VK_AMD_device_coherent_memory = 1;
12930 
12931 enum VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION = 1;
12932 enum const( char )* VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME = "VK_AMD_device_coherent_memory";
12933 
12934 struct VkPhysicalDeviceCoherentMemoryFeaturesAMD {
12935     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD;
12936     void*            pNext;
12937     VkBool32         deviceCoherentMemory;
12938 }
12939 
12940 
12941 // - VK_EXT_shader_image_atomic_int64 -
12942 enum VK_EXT_shader_image_atomic_int64 = 1;
12943 
12944 enum VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION = 1;
12945 enum const( char )* VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME = "VK_EXT_shader_image_atomic_int64";
12946 
12947 struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT {
12948     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT;
12949     void*            pNext;
12950     VkBool32         shaderImageInt64Atomics;
12951     VkBool32         sparseImageInt64Atomics;
12952 }
12953 
12954 
12955 // - VK_EXT_memory_budget -
12956 enum VK_EXT_memory_budget = 1;
12957 
12958 enum VK_EXT_MEMORY_BUDGET_SPEC_VERSION = 1;
12959 enum const( char )* VK_EXT_MEMORY_BUDGET_EXTENSION_NAME = "VK_EXT_memory_budget";
12960 
12961 struct VkPhysicalDeviceMemoryBudgetPropertiesEXT {
12962     VkStructureType                      sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT;
12963     void*                                pNext;
12964     VkDeviceSize[ VK_MAX_MEMORY_HEAPS ]  heapBudget;
12965     VkDeviceSize[ VK_MAX_MEMORY_HEAPS ]  heapUsage;
12966 }
12967 
12968 
12969 // - VK_EXT_memory_priority -
12970 enum VK_EXT_memory_priority = 1;
12971 
12972 enum VK_EXT_MEMORY_PRIORITY_SPEC_VERSION = 1;
12973 enum const( char )* VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME = "VK_EXT_memory_priority";
12974 
12975 struct VkPhysicalDeviceMemoryPriorityFeaturesEXT {
12976     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT;
12977     void*            pNext;
12978     VkBool32         memoryPriority;
12979 }
12980 
12981 struct VkMemoryPriorityAllocateInfoEXT {
12982     VkStructureType  sType = VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT;
12983     const( void )*   pNext;
12984     float            priority;
12985 }
12986 
12987 
12988 // - VK_NV_dedicated_allocation_image_aliasing -
12989 enum VK_NV_dedicated_allocation_image_aliasing = 1;
12990 
12991 enum VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION = 1;
12992 enum const( char )* VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME = "VK_NV_dedicated_allocation_image_aliasing";
12993 
12994 struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV {
12995     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV;
12996     void*            pNext;
12997     VkBool32         dedicatedAllocationImageAliasing;
12998 }
12999 
13000 
13001 // - VK_EXT_buffer_device_address -
13002 enum VK_EXT_buffer_device_address = 1;
13003 
13004 enum VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION = 2;
13005 enum const( char )* VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME = "VK_EXT_buffer_device_address";
13006 
13007 struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {
13008     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT;
13009     void*            pNext;
13010     VkBool32         bufferDeviceAddress;
13011     VkBool32         bufferDeviceAddressCaptureReplay;
13012     VkBool32         bufferDeviceAddressMultiDevice;
13013 }
13014 alias VkPhysicalDeviceBufferAddressFeaturesEXT = VkPhysicalDeviceBufferDeviceAddressFeaturesEXT;
13015 alias VkBufferDeviceAddressInfoEXT = VkBufferDeviceAddressInfo;
13016 
13017 struct VkBufferDeviceAddressCreateInfoEXT {
13018     VkStructureType  sType = VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT;
13019     const( void )*   pNext;
13020     VkDeviceAddress  deviceAddress;
13021 }
13022 
13023 
13024 // - VK_EXT_tooling_info -
13025 enum VK_EXT_tooling_info = 1;
13026 
13027 enum VK_EXT_TOOLING_INFO_SPEC_VERSION = 1;
13028 enum const( char )* VK_EXT_TOOLING_INFO_EXTENSION_NAME = "VK_EXT_tooling_info";
13029 
13030 alias VkToolPurposeFlagBitsEXT = VkToolPurposeFlagBits;
13031 alias VkToolPurposeFlagsEXT = VkToolPurposeFlags;
13032 
13033 alias VkPhysicalDeviceToolPropertiesEXT = VkPhysicalDeviceToolProperties;
13034 
13035 
13036 // - VK_EXT_separate_stencil_usage -
13037 enum VK_EXT_separate_stencil_usage = 1;
13038 
13039 enum VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION = 1;
13040 enum const( char )* VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME = "VK_EXT_separate_stencil_usage";
13041 
13042 alias VkImageStencilUsageCreateInfoEXT = VkImageStencilUsageCreateInfo;
13043 
13044 
13045 // - VK_EXT_validation_features -
13046 enum VK_EXT_validation_features = 1;
13047 
13048 enum VK_EXT_VALIDATION_FEATURES_SPEC_VERSION = 5;
13049 enum const( char )* VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME = "VK_EXT_validation_features";
13050 
13051 enum VkValidationFeatureEnableEXT {
13052     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT                        = 0,
13053     VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT   = 1,
13054     VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT                      = 2,
13055     VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT                        = 3,
13056     VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT          = 4,
13057     VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT                         = VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT,
13058     VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT                           = VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT,
13059     VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT                          = VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT - VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT + 1,
13060     VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT                            = 0x7FFFFFFF
13061 }
13062 
13063 enum VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT                       = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT;
13064 enum VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT  = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT;
13065 enum VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT                     = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT;
13066 enum VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT                       = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT;
13067 enum VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT         = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT;
13068 enum VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT                        = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_BEGIN_RANGE_EXT;
13069 enum VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT                          = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_END_RANGE_EXT;
13070 enum VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT                         = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_RANGE_SIZE_EXT;
13071 enum VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT                           = VkValidationFeatureEnableEXT.VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT;
13072 
13073 enum VkValidationFeatureDisableEXT {
13074     VK_VALIDATION_FEATURE_DISABLE_ALL_EXT                        = 0,
13075     VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT                    = 1,
13076     VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT              = 2,
13077     VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT             = 3,
13078     VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT           = 4,
13079     VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT                = 5,
13080     VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT             = 6,
13081     VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT    = 7,
13082     VK_VALIDATION_FEATURE_DISABLE_BEGIN_RANGE_EXT                = VK_VALIDATION_FEATURE_DISABLE_ALL_EXT,
13083     VK_VALIDATION_FEATURE_DISABLE_END_RANGE_EXT                  = VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT,
13084     VK_VALIDATION_FEATURE_DISABLE_RANGE_SIZE_EXT                 = VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT - VK_VALIDATION_FEATURE_DISABLE_ALL_EXT + 1,
13085     VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT                   = 0x7FFFFFFF
13086 }
13087 
13088 enum VK_VALIDATION_FEATURE_DISABLE_ALL_EXT                       = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_ALL_EXT;
13089 enum VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT                   = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT;
13090 enum VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT             = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT;
13091 enum VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT            = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT;
13092 enum VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT          = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT;
13093 enum VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT               = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT;
13094 enum VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT            = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT;
13095 enum VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT   = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT;
13096 enum VK_VALIDATION_FEATURE_DISABLE_BEGIN_RANGE_EXT               = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_BEGIN_RANGE_EXT;
13097 enum VK_VALIDATION_FEATURE_DISABLE_END_RANGE_EXT                 = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_END_RANGE_EXT;
13098 enum VK_VALIDATION_FEATURE_DISABLE_RANGE_SIZE_EXT                = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_RANGE_SIZE_EXT;
13099 enum VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT                  = VkValidationFeatureDisableEXT.VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT;
13100 
13101 struct VkValidationFeaturesEXT {
13102     VkStructureType                          sType = VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT;
13103     const( void )*                           pNext;
13104     uint32_t                                 enabledValidationFeatureCount;
13105     const( VkValidationFeatureEnableEXT )*   pEnabledValidationFeatures;
13106     uint32_t                                 disabledValidationFeatureCount;
13107     const( VkValidationFeatureDisableEXT )*  pDisabledValidationFeatures;
13108 }
13109 
13110 
13111 // - VK_NV_cooperative_matrix -
13112 enum VK_NV_cooperative_matrix = 1;
13113 
13114 enum VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION = 1;
13115 enum const( char )* VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME = "VK_NV_cooperative_matrix";
13116 
13117 enum VkComponentTypeNV {
13118     VK_COMPONENT_TYPE_FLOAT16_NV         = 0,
13119     VK_COMPONENT_TYPE_FLOAT32_NV         = 1,
13120     VK_COMPONENT_TYPE_FLOAT64_NV         = 2,
13121     VK_COMPONENT_TYPE_SINT8_NV           = 3,
13122     VK_COMPONENT_TYPE_SINT16_NV          = 4,
13123     VK_COMPONENT_TYPE_SINT32_NV          = 5,
13124     VK_COMPONENT_TYPE_SINT64_NV          = 6,
13125     VK_COMPONENT_TYPE_UINT8_NV           = 7,
13126     VK_COMPONENT_TYPE_UINT16_NV          = 8,
13127     VK_COMPONENT_TYPE_UINT32_NV          = 9,
13128     VK_COMPONENT_TYPE_UINT64_NV          = 10,
13129     VK_COMPONENT_TYPE_BEGIN_RANGE_NV     = VK_COMPONENT_TYPE_FLOAT16_NV,
13130     VK_COMPONENT_TYPE_END_RANGE_NV       = VK_COMPONENT_TYPE_UINT64_NV,
13131     VK_COMPONENT_TYPE_RANGE_SIZE_NV      = VK_COMPONENT_TYPE_UINT64_NV - VK_COMPONENT_TYPE_FLOAT16_NV + 1,
13132     VK_COMPONENT_TYPE_MAX_ENUM_NV        = 0x7FFFFFFF
13133 }
13134 
13135 enum VK_COMPONENT_TYPE_FLOAT16_NV        = VkComponentTypeNV.VK_COMPONENT_TYPE_FLOAT16_NV;
13136 enum VK_COMPONENT_TYPE_FLOAT32_NV        = VkComponentTypeNV.VK_COMPONENT_TYPE_FLOAT32_NV;
13137 enum VK_COMPONENT_TYPE_FLOAT64_NV        = VkComponentTypeNV.VK_COMPONENT_TYPE_FLOAT64_NV;
13138 enum VK_COMPONENT_TYPE_SINT8_NV          = VkComponentTypeNV.VK_COMPONENT_TYPE_SINT8_NV;
13139 enum VK_COMPONENT_TYPE_SINT16_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_SINT16_NV;
13140 enum VK_COMPONENT_TYPE_SINT32_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_SINT32_NV;
13141 enum VK_COMPONENT_TYPE_SINT64_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_SINT64_NV;
13142 enum VK_COMPONENT_TYPE_UINT8_NV          = VkComponentTypeNV.VK_COMPONENT_TYPE_UINT8_NV;
13143 enum VK_COMPONENT_TYPE_UINT16_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_UINT16_NV;
13144 enum VK_COMPONENT_TYPE_UINT32_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_UINT32_NV;
13145 enum VK_COMPONENT_TYPE_UINT64_NV         = VkComponentTypeNV.VK_COMPONENT_TYPE_UINT64_NV;
13146 enum VK_COMPONENT_TYPE_BEGIN_RANGE_NV    = VkComponentTypeNV.VK_COMPONENT_TYPE_BEGIN_RANGE_NV;
13147 enum VK_COMPONENT_TYPE_END_RANGE_NV      = VkComponentTypeNV.VK_COMPONENT_TYPE_END_RANGE_NV;
13148 enum VK_COMPONENT_TYPE_RANGE_SIZE_NV     = VkComponentTypeNV.VK_COMPONENT_TYPE_RANGE_SIZE_NV;
13149 enum VK_COMPONENT_TYPE_MAX_ENUM_NV       = VkComponentTypeNV.VK_COMPONENT_TYPE_MAX_ENUM_NV;
13150 
13151 enum VkScopeNV {
13152     VK_SCOPE_DEVICE_NV           = 1,
13153     VK_SCOPE_WORKGROUP_NV        = 2,
13154     VK_SCOPE_SUBGROUP_NV         = 3,
13155     VK_SCOPE_QUEUE_FAMILY_NV     = 5,
13156     VK_SCOPE_BEGIN_RANGE_NV      = VK_SCOPE_DEVICE_NV,
13157     VK_SCOPE_END_RANGE_NV        = VK_SCOPE_QUEUE_FAMILY_NV,
13158     VK_SCOPE_RANGE_SIZE_NV       = VK_SCOPE_QUEUE_FAMILY_NV - VK_SCOPE_DEVICE_NV + 1,
13159     VK_SCOPE_MAX_ENUM_NV         = 0x7FFFFFFF
13160 }
13161 
13162 enum VK_SCOPE_DEVICE_NV          = VkScopeNV.VK_SCOPE_DEVICE_NV;
13163 enum VK_SCOPE_WORKGROUP_NV       = VkScopeNV.VK_SCOPE_WORKGROUP_NV;
13164 enum VK_SCOPE_SUBGROUP_NV        = VkScopeNV.VK_SCOPE_SUBGROUP_NV;
13165 enum VK_SCOPE_QUEUE_FAMILY_NV    = VkScopeNV.VK_SCOPE_QUEUE_FAMILY_NV;
13166 enum VK_SCOPE_BEGIN_RANGE_NV     = VkScopeNV.VK_SCOPE_BEGIN_RANGE_NV;
13167 enum VK_SCOPE_END_RANGE_NV       = VkScopeNV.VK_SCOPE_END_RANGE_NV;
13168 enum VK_SCOPE_RANGE_SIZE_NV      = VkScopeNV.VK_SCOPE_RANGE_SIZE_NV;
13169 enum VK_SCOPE_MAX_ENUM_NV        = VkScopeNV.VK_SCOPE_MAX_ENUM_NV;
13170 
13171 struct VkCooperativeMatrixPropertiesNV {
13172     VkStructureType    sType = VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV;
13173     void*              pNext;
13174     uint32_t           MSize;
13175     uint32_t           NSize;
13176     uint32_t           KSize;
13177     VkComponentTypeNV  AType;
13178     VkComponentTypeNV  BType;
13179     VkComponentTypeNV  CType;
13180     VkComponentTypeNV  DType;
13181     VkScopeNV          Scope;
13182     alias              scope_ = Scope;
13183     alias              _scope = Scope;
13184 }
13185 
13186 struct VkPhysicalDeviceCooperativeMatrixFeaturesNV {
13187     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV;
13188     void*            pNext;
13189     VkBool32         cooperativeMatrix;
13190     VkBool32         cooperativeMatrixRobustBufferAccess;
13191 }
13192 
13193 struct VkPhysicalDeviceCooperativeMatrixPropertiesNV {
13194     VkStructureType     sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV;
13195     void*               pNext;
13196     VkShaderStageFlags  cooperativeMatrixSupportedStages;
13197 }
13198 
13199 
13200 // - VK_NV_coverage_reduction_mode -
13201 enum VK_NV_coverage_reduction_mode = 1;
13202 
13203 enum VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION = 1;
13204 enum const( char )* VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME = "VK_NV_coverage_reduction_mode";
13205 
13206 enum VkCoverageReductionModeNV {
13207     VK_COVERAGE_REDUCTION_MODE_MERGE_NV          = 0,
13208     VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV       = 1,
13209     VK_COVERAGE_REDUCTION_MODE_BEGIN_RANGE_NV    = VK_COVERAGE_REDUCTION_MODE_MERGE_NV,
13210     VK_COVERAGE_REDUCTION_MODE_END_RANGE_NV      = VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV,
13211     VK_COVERAGE_REDUCTION_MODE_RANGE_SIZE_NV     = VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV - VK_COVERAGE_REDUCTION_MODE_MERGE_NV + 1,
13212     VK_COVERAGE_REDUCTION_MODE_MAX_ENUM_NV       = 0x7FFFFFFF
13213 }
13214 
13215 enum VK_COVERAGE_REDUCTION_MODE_MERGE_NV         = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_MERGE_NV;
13216 enum VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV      = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV;
13217 enum VK_COVERAGE_REDUCTION_MODE_BEGIN_RANGE_NV   = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_BEGIN_RANGE_NV;
13218 enum VK_COVERAGE_REDUCTION_MODE_END_RANGE_NV     = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_END_RANGE_NV;
13219 enum VK_COVERAGE_REDUCTION_MODE_RANGE_SIZE_NV    = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_RANGE_SIZE_NV;
13220 enum VK_COVERAGE_REDUCTION_MODE_MAX_ENUM_NV      = VkCoverageReductionModeNV.VK_COVERAGE_REDUCTION_MODE_MAX_ENUM_NV;
13221 
13222 alias VkPipelineCoverageReductionStateCreateFlagsNV = VkFlags;
13223 
13224 struct VkPhysicalDeviceCoverageReductionModeFeaturesNV {
13225     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV;
13226     void*            pNext;
13227     VkBool32         coverageReductionMode;
13228 }
13229 
13230 struct VkPipelineCoverageReductionStateCreateInfoNV {
13231     VkStructureType                                sType = VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV;
13232     const( void )*                                 pNext;
13233     VkPipelineCoverageReductionStateCreateFlagsNV  flags;
13234     VkCoverageReductionModeNV                      coverageReductionMode;
13235 }
13236 
13237 struct VkFramebufferMixedSamplesCombinationNV {
13238     VkStructureType            sType = VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV;
13239     void*                      pNext;
13240     VkCoverageReductionModeNV  coverageReductionMode;
13241     VkSampleCountFlagBits      rasterizationSamples;
13242     VkSampleCountFlags         depthStencilSamples;
13243     VkSampleCountFlags         colorSamples;
13244 }
13245 
13246 
13247 // - VK_EXT_fragment_shader_interlock -
13248 enum VK_EXT_fragment_shader_interlock = 1;
13249 
13250 enum VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION = 1;
13251 enum const( char )* VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME = "VK_EXT_fragment_shader_interlock";
13252 
13253 struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT {
13254     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT;
13255     void*            pNext;
13256     VkBool32         fragmentShaderSampleInterlock;
13257     VkBool32         fragmentShaderPixelInterlock;
13258     VkBool32         fragmentShaderShadingRateInterlock;
13259 }
13260 
13261 
13262 // - VK_EXT_ycbcr_image_arrays -
13263 enum VK_EXT_ycbcr_image_arrays = 1;
13264 
13265 enum VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION = 1;
13266 enum const( char )* VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME = "VK_EXT_ycbcr_image_arrays";
13267 
13268 struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT {
13269     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT;
13270     void*            pNext;
13271     VkBool32         ycbcrImageArrays;
13272 }
13273 
13274 
13275 // - VK_EXT_provoking_vertex -
13276 enum VK_EXT_provoking_vertex = 1;
13277 
13278 enum VK_EXT_PROVOKING_VERTEX_SPEC_VERSION = 1;
13279 enum const( char )* VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME = "VK_EXT_provoking_vertex";
13280 
13281 enum VkProvokingVertexModeEXT {
13282     VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT    = 0,
13283     VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT     = 1,
13284     VK_PROVOKING_VERTEX_MODE_BEGIN_RANGE_EXT     = VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT,
13285     VK_PROVOKING_VERTEX_MODE_END_RANGE_EXT       = VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT,
13286     VK_PROVOKING_VERTEX_MODE_RANGE_SIZE_EXT      = VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT - VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT + 1,
13287     VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT        = 0x7FFFFFFF
13288 }
13289 
13290 enum VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT   = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT;
13291 enum VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT    = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT;
13292 enum VK_PROVOKING_VERTEX_MODE_BEGIN_RANGE_EXT    = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_BEGIN_RANGE_EXT;
13293 enum VK_PROVOKING_VERTEX_MODE_END_RANGE_EXT      = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_END_RANGE_EXT;
13294 enum VK_PROVOKING_VERTEX_MODE_RANGE_SIZE_EXT     = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_RANGE_SIZE_EXT;
13295 enum VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT       = VkProvokingVertexModeEXT.VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT;
13296 
13297 struct VkPhysicalDeviceProvokingVertexFeaturesEXT {
13298     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT;
13299     void*            pNext;
13300     VkBool32         provokingVertexLast;
13301     VkBool32         transformFeedbackPreservesProvokingVertex;
13302 }
13303 
13304 struct VkPhysicalDeviceProvokingVertexPropertiesEXT {
13305     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT;
13306     void*            pNext;
13307     VkBool32         provokingVertexModePerPipeline;
13308     VkBool32         transformFeedbackPreservesTriangleFanProvokingVertex;
13309 }
13310 
13311 struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT {
13312     VkStructureType           sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT;
13313     const( void )*            pNext;
13314     VkProvokingVertexModeEXT  provokingVertexMode;
13315 }
13316 
13317 
13318 // - VK_EXT_headless_surface -
13319 enum VK_EXT_headless_surface = 1;
13320 
13321 enum VK_EXT_HEADLESS_SURFACE_SPEC_VERSION = 1;
13322 enum const( char )* VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME = "VK_EXT_headless_surface";
13323 
13324 alias VkHeadlessSurfaceCreateFlagsEXT = VkFlags;
13325 
13326 struct VkHeadlessSurfaceCreateInfoEXT {
13327     VkStructureType                  sType = VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT;
13328     const( void )*                   pNext;
13329     VkHeadlessSurfaceCreateFlagsEXT  flags;
13330 }
13331 
13332 
13333 // - VK_EXT_line_rasterization -
13334 enum VK_EXT_line_rasterization = 1;
13335 
13336 enum VK_EXT_LINE_RASTERIZATION_SPEC_VERSION = 1;
13337 enum const( char )* VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME = "VK_EXT_line_rasterization";
13338 
13339 enum VkLineRasterizationModeEXT {
13340     VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT               = 0,
13341     VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT           = 1,
13342     VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT             = 2,
13343     VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT    = 3,
13344     VK_LINE_RASTERIZATION_MODE_BEGIN_RANGE_EXT           = VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT,
13345     VK_LINE_RASTERIZATION_MODE_END_RANGE_EXT             = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT,
13346     VK_LINE_RASTERIZATION_MODE_RANGE_SIZE_EXT            = VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT - VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT + 1,
13347     VK_LINE_RASTERIZATION_MODE_MAX_ENUM_EXT              = 0x7FFFFFFF
13348 }
13349 
13350 enum VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT              = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT;
13351 enum VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT          = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT;
13352 enum VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT            = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT;
13353 enum VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT   = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT;
13354 enum VK_LINE_RASTERIZATION_MODE_BEGIN_RANGE_EXT          = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_BEGIN_RANGE_EXT;
13355 enum VK_LINE_RASTERIZATION_MODE_END_RANGE_EXT            = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_END_RANGE_EXT;
13356 enum VK_LINE_RASTERIZATION_MODE_RANGE_SIZE_EXT           = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_RANGE_SIZE_EXT;
13357 enum VK_LINE_RASTERIZATION_MODE_MAX_ENUM_EXT             = VkLineRasterizationModeEXT.VK_LINE_RASTERIZATION_MODE_MAX_ENUM_EXT;
13358 
13359 struct VkPhysicalDeviceLineRasterizationFeaturesEXT {
13360     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT;
13361     void*            pNext;
13362     VkBool32         rectangularLines;
13363     VkBool32         bresenhamLines;
13364     VkBool32         smoothLines;
13365     VkBool32         stippledRectangularLines;
13366     VkBool32         stippledBresenhamLines;
13367     VkBool32         stippledSmoothLines;
13368 }
13369 
13370 struct VkPhysicalDeviceLineRasterizationPropertiesEXT {
13371     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT;
13372     void*            pNext;
13373     uint32_t         lineSubPixelPrecisionBits;
13374 }
13375 
13376 struct VkPipelineRasterizationLineStateCreateInfoEXT {
13377     VkStructureType             sType = VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT;
13378     const( void )*              pNext;
13379     VkLineRasterizationModeEXT  lineRasterizationMode;
13380     VkBool32                    stippledLineEnable;
13381     uint32_t                    lineStippleFactor;
13382     uint16_t                    lineStipplePattern;
13383 }
13384 
13385 
13386 // - VK_EXT_shader_atomic_float -
13387 enum VK_EXT_shader_atomic_float = 1;
13388 
13389 enum VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION = 1;
13390 enum const( char )* VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME = "VK_EXT_shader_atomic_float";
13391 
13392 struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT {
13393     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT;
13394     void*            pNext;
13395     VkBool32         shaderBufferFloat32Atomics;
13396     VkBool32         shaderBufferFloat32AtomicAdd;
13397     VkBool32         shaderBufferFloat64Atomics;
13398     VkBool32         shaderBufferFloat64AtomicAdd;
13399     VkBool32         shaderSharedFloat32Atomics;
13400     VkBool32         shaderSharedFloat32AtomicAdd;
13401     VkBool32         shaderSharedFloat64Atomics;
13402     VkBool32         shaderSharedFloat64AtomicAdd;
13403     VkBool32         shaderImageFloat32Atomics;
13404     VkBool32         shaderImageFloat32AtomicAdd;
13405     VkBool32         sparseImageFloat32Atomics;
13406     VkBool32         sparseImageFloat32AtomicAdd;
13407 }
13408 
13409 
13410 // - VK_EXT_host_query_reset -
13411 enum VK_EXT_host_query_reset = 1;
13412 
13413 enum VK_EXT_HOST_QUERY_RESET_SPEC_VERSION = 1;
13414 enum const( char )* VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME = "VK_EXT_host_query_reset";
13415 
13416 alias VkPhysicalDeviceHostQueryResetFeaturesEXT = VkPhysicalDeviceHostQueryResetFeatures;
13417 
13418 
13419 // - VK_EXT_index_type_uint8 -
13420 enum VK_EXT_index_type_uint8 = 1;
13421 
13422 enum VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION = 1;
13423 enum const( char )* VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME = "VK_EXT_index_type_uint8";
13424 
13425 struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT {
13426     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT;
13427     void*            pNext;
13428     VkBool32         indexTypeUint8;
13429 }
13430 
13431 
13432 // - VK_EXT_extended_dynamic_state -
13433 enum VK_EXT_extended_dynamic_state = 1;
13434 
13435 enum VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION = 1;
13436 enum const( char )* VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME = "VK_EXT_extended_dynamic_state";
13437 
13438 struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT {
13439     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT;
13440     void*            pNext;
13441     VkBool32         extendedDynamicState;
13442 }
13443 
13444 
13445 // - VK_EXT_shader_atomic_float2 -
13446 enum VK_EXT_shader_atomic_float2 = 1;
13447 
13448 enum VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION = 1;
13449 enum const( char )* VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME = "VK_EXT_shader_atomic_float2";
13450 
13451 struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT {
13452     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT;
13453     void*            pNext;
13454     VkBool32         shaderBufferFloat16Atomics;
13455     VkBool32         shaderBufferFloat16AtomicAdd;
13456     VkBool32         shaderBufferFloat16AtomicMinMax;
13457     VkBool32         shaderBufferFloat32AtomicMinMax;
13458     VkBool32         shaderBufferFloat64AtomicMinMax;
13459     VkBool32         shaderSharedFloat16Atomics;
13460     VkBool32         shaderSharedFloat16AtomicAdd;
13461     VkBool32         shaderSharedFloat16AtomicMinMax;
13462     VkBool32         shaderSharedFloat32AtomicMinMax;
13463     VkBool32         shaderSharedFloat64AtomicMinMax;
13464     VkBool32         shaderImageFloat32AtomicMinMax;
13465     VkBool32         sparseImageFloat32AtomicMinMax;
13466 }
13467 
13468 
13469 // - VK_EXT_shader_demote_to_helper_invocation -
13470 enum VK_EXT_shader_demote_to_helper_invocation = 1;
13471 
13472 enum VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION = 1;
13473 enum const( char )* VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME = "VK_EXT_shader_demote_to_helper_invocation";
13474 
13475 alias VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT = VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures;
13476 
13477 
13478 // - VK_NV_device_generated_commands -
13479 enum VK_NV_device_generated_commands = 1;
13480 
13481 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkIndirectCommandsLayoutNV} );
13482 
13483 enum VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION = 3;
13484 enum const( char )* VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME = "VK_NV_device_generated_commands";
13485 
13486 enum VkIndirectCommandsTokenTypeNV {
13487     VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV      = 0,
13488     VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV       = 1,
13489     VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV      = 2,
13490     VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV     = 3,
13491     VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV     = 4,
13492     VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV      = 5,
13493     VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV              = 6,
13494     VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV        = 7,
13495     VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NV       = VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV,
13496     VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NV         = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV,
13497     VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NV        = VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV - VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV + 1,
13498     VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV          = 0x7FFFFFFF
13499 }
13500 
13501 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV     = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV;
13502 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV      = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV;
13503 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV     = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV;
13504 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV    = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV;
13505 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV    = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV;
13506 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV     = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV;
13507 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV             = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV;
13508 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV       = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV;
13509 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NV      = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_BEGIN_RANGE_NV;
13510 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NV        = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_END_RANGE_NV;
13511 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NV       = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_RANGE_SIZE_NV;
13512 enum VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV         = VkIndirectCommandsTokenTypeNV.VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV;
13513 
13514 alias VkIndirectStateFlagsNV = VkFlags;
13515 enum VkIndirectStateFlagBitsNV : VkIndirectStateFlagsNV {
13516     VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV      = 0x00000001,
13517     VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV      = 0x7FFFFFFF
13518 }
13519 
13520 enum VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV     = VkIndirectStateFlagBitsNV.VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV;
13521 enum VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV     = VkIndirectStateFlagBitsNV.VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV;
13522 
13523 alias VkIndirectCommandsLayoutUsageFlagsNV = VkFlags;
13524 enum VkIndirectCommandsLayoutUsageFlagBitsNV : VkIndirectCommandsLayoutUsageFlagsNV {
13525     VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV         = 0x00000001,
13526     VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV           = 0x00000002,
13527     VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV         = 0x00000004,
13528     VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV              = 0x7FFFFFFF
13529 }
13530 
13531 enum VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV        = VkIndirectCommandsLayoutUsageFlagBitsNV.VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV;
13532 enum VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV          = VkIndirectCommandsLayoutUsageFlagBitsNV.VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV;
13533 enum VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV        = VkIndirectCommandsLayoutUsageFlagBitsNV.VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV;
13534 enum VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV             = VkIndirectCommandsLayoutUsageFlagBitsNV.VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV;
13535 
13536 struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
13537     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV;
13538     void*            pNext;
13539     uint32_t         maxGraphicsShaderGroupCount;
13540     uint32_t         maxIndirectSequenceCount;
13541     uint32_t         maxIndirectCommandsTokenCount;
13542     uint32_t         maxIndirectCommandsStreamCount;
13543     uint32_t         maxIndirectCommandsTokenOffset;
13544     uint32_t         maxIndirectCommandsStreamStride;
13545     uint32_t         minSequencesCountBufferOffsetAlignment;
13546     uint32_t         minSequencesIndexBufferOffsetAlignment;
13547     uint32_t         minIndirectCommandsBufferOffsetAlignment;
13548 }
13549 
13550 struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
13551     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV;
13552     void*            pNext;
13553     VkBool32         deviceGeneratedCommands;
13554 }
13555 
13556 struct VkGraphicsShaderGroupCreateInfoNV {
13557     VkStructureType                                  sType = VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV;
13558     const( void )*                                   pNext;
13559     uint32_t                                         stageCount;
13560     const( VkPipelineShaderStageCreateInfo )*        pStages;
13561     const( VkPipelineVertexInputStateCreateInfo )*   pVertexInputState;
13562     const( VkPipelineTessellationStateCreateInfo )*  pTessellationState;
13563 }
13564 
13565 struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
13566     VkStructureType                              sType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV;
13567     const( void )*                               pNext;
13568     uint32_t                                     groupCount;
13569     const( VkGraphicsShaderGroupCreateInfoNV )*  pGroups;
13570     uint32_t                                     pipelineCount;
13571     const( VkPipeline )*                         pPipelines;
13572 }
13573 
13574 struct VkBindShaderGroupIndirectCommandNV {
13575     uint32_t  groupIndex;
13576 }
13577 
13578 struct VkBindIndexBufferIndirectCommandNV {
13579     VkDeviceAddress  bufferAddress;
13580     uint32_t         size;
13581     VkIndexType      indexType;
13582 }
13583 
13584 struct VkBindVertexBufferIndirectCommandNV {
13585     VkDeviceAddress  bufferAddress;
13586     uint32_t         size;
13587     uint32_t         stride;
13588 }
13589 
13590 struct VkSetStateFlagsIndirectCommandNV {
13591     uint32_t  data;
13592 }
13593 
13594 struct VkIndirectCommandsStreamNV {
13595     VkBuffer      buffer;
13596     VkDeviceSize  offset;
13597 }
13598 
13599 struct VkIndirectCommandsLayoutTokenNV {
13600     VkStructureType                sType = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV;
13601     const( void )*                 pNext;
13602     VkIndirectCommandsTokenTypeNV  tokenType;
13603     uint32_t                       stream;
13604     uint32_t                       offset;
13605     uint32_t                       vertexBindingUnit;
13606     VkBool32                       vertexDynamicStride;
13607     VkPipelineLayout               pushconstantPipelineLayout;
13608     VkShaderStageFlags             pushconstantShaderStageFlags;
13609     uint32_t                       pushconstantOffset;
13610     uint32_t                       pushconstantSize;
13611     VkIndirectStateFlagsNV         indirectStateFlags;
13612     uint32_t                       indexTypeCount;
13613     const( VkIndexType )*          pIndexTypes;
13614     const( uint32_t )*             pIndexTypeValues;
13615 }
13616 
13617 struct VkIndirectCommandsLayoutCreateInfoNV {
13618     VkStructureType                            sType = VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV;
13619     const( void )*                             pNext;
13620     VkIndirectCommandsLayoutUsageFlagsNV       flags;
13621     VkPipelineBindPoint                        pipelineBindPoint;
13622     uint32_t                                   tokenCount;
13623     const( VkIndirectCommandsLayoutTokenNV )*  pTokens;
13624     uint32_t                                   streamCount;
13625     const( uint32_t )*                         pStreamStrides;
13626 }
13627 
13628 struct VkGeneratedCommandsInfoNV {
13629     VkStructureType                       sType = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV;
13630     const( void )*                        pNext;
13631     VkPipelineBindPoint                   pipelineBindPoint;
13632     VkPipeline                            pipeline;
13633     VkIndirectCommandsLayoutNV            indirectCommandsLayout;
13634     uint32_t                              streamCount;
13635     const( VkIndirectCommandsStreamNV )*  pStreams;
13636     uint32_t                              sequencesCount;
13637     VkBuffer                              preprocessBuffer;
13638     VkDeviceSize                          preprocessOffset;
13639     VkDeviceSize                          preprocessSize;
13640     VkBuffer                              sequencesCountBuffer;
13641     VkDeviceSize                          sequencesCountOffset;
13642     VkBuffer                              sequencesIndexBuffer;
13643     VkDeviceSize                          sequencesIndexOffset;
13644 }
13645 
13646 struct VkGeneratedCommandsMemoryRequirementsInfoNV {
13647     VkStructureType             sType = VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV;
13648     const( void )*              pNext;
13649     VkPipelineBindPoint         pipelineBindPoint;
13650     VkPipeline                  pipeline;
13651     VkIndirectCommandsLayoutNV  indirectCommandsLayout;
13652     uint32_t                    maxSequencesCount;
13653 }
13654 
13655 
13656 // - VK_NV_inherited_viewport_scissor -
13657 enum VK_NV_inherited_viewport_scissor = 1;
13658 
13659 enum VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION = 1;
13660 enum const( char )* VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME = "VK_NV_inherited_viewport_scissor";
13661 
13662 struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV {
13663     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV;
13664     void*            pNext;
13665     VkBool32         inheritedViewportScissor2D;
13666 }
13667 
13668 struct VkCommandBufferInheritanceViewportScissorInfoNV {
13669     VkStructureType       sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV;
13670     const( void )*        pNext;
13671     VkBool32              viewportScissor2D;
13672     uint32_t              viewportDepthCount;
13673     const( VkViewport )*  pViewportDepths;
13674 }
13675 
13676 
13677 // - VK_EXT_texel_buffer_alignment -
13678 enum VK_EXT_texel_buffer_alignment = 1;
13679 
13680 enum VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION = 1;
13681 enum const( char )* VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME = "VK_EXT_texel_buffer_alignment";
13682 
13683 struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT {
13684     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT;
13685     void*            pNext;
13686     VkBool32         texelBufferAlignment;
13687 }
13688 alias VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT = VkPhysicalDeviceTexelBufferAlignmentProperties;
13689 
13690 
13691 // - VK_QCOM_render_pass_transform -
13692 enum VK_QCOM_render_pass_transform = 1;
13693 
13694 enum VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION = 2;
13695 enum const( char )* VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME = "VK_QCOM_render_pass_transform";
13696 
13697 struct VkRenderPassTransformBeginInfoQCOM {
13698     VkStructureType                sType = VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM;
13699     void*                          pNext;
13700     VkSurfaceTransformFlagBitsKHR  transform;
13701 }
13702 
13703 struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
13704     VkStructureType                sType = VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM;
13705     void*                          pNext;
13706     VkSurfaceTransformFlagBitsKHR  transform;
13707     VkRect2D                       renderArea;
13708 }
13709 
13710 
13711 // - VK_EXT_device_memory_report -
13712 enum VK_EXT_device_memory_report = 1;
13713 
13714 enum VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION = 2;
13715 enum const( char )* VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME = "VK_EXT_device_memory_report";
13716 
13717 enum VkDeviceMemoryReportEventTypeEXT {
13718     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT              = 0,
13719     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT                  = 1,
13720     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT                = 2,
13721     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT              = 3,
13722     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT     = 4,
13723     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_BEGIN_RANGE_EXT           = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT,
13724     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_END_RANGE_EXT             = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT,
13725     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_RANGE_SIZE_EXT            = VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT - VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT + 1,
13726     VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_MAX_ENUM_EXT              = 0x7FFFFFFF
13727 }
13728 
13729 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT             = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT;
13730 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT                 = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT;
13731 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT               = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT;
13732 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT             = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT;
13733 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT    = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT;
13734 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_BEGIN_RANGE_EXT          = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_BEGIN_RANGE_EXT;
13735 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_END_RANGE_EXT            = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_END_RANGE_EXT;
13736 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_RANGE_SIZE_EXT           = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_RANGE_SIZE_EXT;
13737 enum VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_MAX_ENUM_EXT             = VkDeviceMemoryReportEventTypeEXT.VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_MAX_ENUM_EXT;
13738 
13739 alias VkDeviceMemoryReportFlagsEXT = VkFlags;
13740 
13741 alias PFN_vkDeviceMemoryReportCallbackEXT = void function(
13742     const( VkDeviceMemoryReportCallbackDataEXT )*  pCallbackData,
13743     void*                                       pUserData
13744 );
13745 
13746 struct VkPhysicalDeviceDeviceMemoryReportFeaturesEXT {
13747     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT;
13748     void*            pNext;
13749     VkBool32         deviceMemoryReport;
13750 }
13751 
13752 struct VkDeviceMemoryReportCallbackDataEXT {
13753     VkStructureType                   sType = VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT;
13754     void*                             pNext;
13755     VkDeviceMemoryReportFlagsEXT      flags;
13756     VkDeviceMemoryReportEventTypeEXT  type;
13757     uint64_t                          memoryObjectId;
13758     VkDeviceSize                      size;
13759     VkObjectType                      objectType;
13760     uint64_t                          objectHandle;
13761     uint32_t                          heapIndex;
13762 }
13763 
13764 struct VkDeviceDeviceMemoryReportCreateInfoEXT {
13765     VkStructureType                      sType = VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT;
13766     const( void )*                       pNext;
13767     VkDeviceMemoryReportFlagsEXT         flags;
13768     PFN_vkDeviceMemoryReportCallbackEXT  pfnUserCallback;
13769     void*                                pUserData;
13770 }
13771 
13772 
13773 // - VK_EXT_acquire_drm_display -
13774 enum VK_EXT_acquire_drm_display = 1;
13775 
13776 enum VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION = 1;
13777 enum const( char )* VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME = "VK_EXT_acquire_drm_display";
13778 
13779 
13780 // - VK_EXT_robustness2 -
13781 enum VK_EXT_robustness2 = 1;
13782 
13783 enum VK_EXT_ROBUSTNESS_2_SPEC_VERSION = 1;
13784 enum const( char )* VK_EXT_ROBUSTNESS_2_EXTENSION_NAME = "VK_EXT_robustness2";
13785 
13786 struct VkPhysicalDeviceRobustness2FeaturesEXT {
13787     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT;
13788     void*            pNext;
13789     VkBool32         robustBufferAccess2;
13790     VkBool32         robustImageAccess2;
13791     VkBool32         nullDescriptor;
13792 }
13793 
13794 struct VkPhysicalDeviceRobustness2PropertiesEXT {
13795     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT;
13796     void*            pNext;
13797     VkDeviceSize     robustStorageBufferAccessSizeAlignment;
13798     VkDeviceSize     robustUniformBufferAccessSizeAlignment;
13799 }
13800 
13801 
13802 // - VK_EXT_custom_border_color -
13803 enum VK_EXT_custom_border_color = 1;
13804 
13805 enum VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION = 12;
13806 enum const( char )* VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME = "VK_EXT_custom_border_color";
13807 
13808 struct VkSamplerCustomBorderColorCreateInfoEXT {
13809     VkStructureType    sType = VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT;
13810     const( void )*     pNext;
13811     VkClearColorValue  customBorderColor;
13812     VkFormat           format;
13813 }
13814 
13815 struct VkPhysicalDeviceCustomBorderColorPropertiesEXT {
13816     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT;
13817     void*            pNext;
13818     uint32_t         maxCustomBorderColorSamplers;
13819 }
13820 
13821 struct VkPhysicalDeviceCustomBorderColorFeaturesEXT {
13822     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT;
13823     void*            pNext;
13824     VkBool32         customBorderColors;
13825     VkBool32         customBorderColorWithoutFormat;
13826 }
13827 
13828 
13829 // - VK_GOOGLE_user_type -
13830 enum VK_GOOGLE_user_type = 1;
13831 
13832 enum VK_GOOGLE_USER_TYPE_SPEC_VERSION = 1;
13833 enum const( char )* VK_GOOGLE_USER_TYPE_EXTENSION_NAME = "VK_GOOGLE_user_type";
13834 
13835 
13836 // - VK_EXT_private_data -
13837 enum VK_EXT_private_data = 1;
13838 
13839 alias VkPrivateDataSlotEXT = VkPrivateDataSlot;
13840 
13841 enum VK_EXT_PRIVATE_DATA_SPEC_VERSION = 1;
13842 enum const( char )* VK_EXT_PRIVATE_DATA_EXTENSION_NAME = "VK_EXT_private_data";
13843 
13844 alias VkPrivateDataSlotCreateFlagsEXT = VkPrivateDataSlotCreateFlags;
13845 
13846 alias VkPhysicalDevicePrivateDataFeaturesEXT = VkPhysicalDevicePrivateDataFeatures;
13847 alias VkDevicePrivateDataCreateInfoEXT = VkDevicePrivateDataCreateInfo;
13848 alias VkPrivateDataSlotCreateInfoEXT = VkPrivateDataSlotCreateInfo;
13849 
13850 
13851 // - VK_EXT_pipeline_creation_cache_control -
13852 enum VK_EXT_pipeline_creation_cache_control = 1;
13853 
13854 enum VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION = 3;
13855 enum const( char )* VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME = "VK_EXT_pipeline_creation_cache_control";
13856 
13857 alias VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT = VkPhysicalDevicePipelineCreationCacheControlFeatures;
13858 
13859 
13860 // - VK_NV_device_diagnostics_config -
13861 enum VK_NV_device_diagnostics_config = 1;
13862 
13863 enum VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION = 2;
13864 enum const( char )* VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME = "VK_NV_device_diagnostics_config";
13865 
13866 alias VkDeviceDiagnosticsConfigFlagsNV = VkFlags;
13867 enum VkDeviceDiagnosticsConfigFlagBitsNV : VkDeviceDiagnosticsConfigFlagsNV {
13868     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV         = 0x00000001,
13869     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV         = 0x00000002,
13870     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV     = 0x00000004,
13871     VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV    = 0x00000008,
13872     VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV                   = 0x7FFFFFFF
13873 }
13874 
13875 enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV        = VkDeviceDiagnosticsConfigFlagBitsNV.VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV;
13876 enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV        = VkDeviceDiagnosticsConfigFlagBitsNV.VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV;
13877 enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV    = VkDeviceDiagnosticsConfigFlagBitsNV.VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV;
13878 enum VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV   = VkDeviceDiagnosticsConfigFlagBitsNV.VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV;
13879 enum VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV                  = VkDeviceDiagnosticsConfigFlagBitsNV.VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV;
13880 
13881 struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
13882     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV;
13883     void*            pNext;
13884     VkBool32         diagnosticsConfig;
13885 }
13886 
13887 struct VkDeviceDiagnosticsConfigCreateInfoNV {
13888     VkStructureType                   sType = VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV;
13889     const( void )*                    pNext;
13890     VkDeviceDiagnosticsConfigFlagsNV  flags;
13891 }
13892 
13893 
13894 // - VK_QCOM_render_pass_store_ops -
13895 enum VK_QCOM_render_pass_store_ops = 1;
13896 
13897 enum VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION = 2;
13898 enum const( char )* VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME = "VK_QCOM_render_pass_store_ops";
13899 
13900 
13901 // - VK_EXT_graphics_pipeline_library -
13902 enum VK_EXT_graphics_pipeline_library = 1;
13903 
13904 enum VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION = 1;
13905 enum const( char )* VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME = "VK_EXT_graphics_pipeline_library";
13906 
13907 alias VkGraphicsPipelineLibraryFlagsEXT = VkFlags;
13908 enum VkGraphicsPipelineLibraryFlagBitsEXT : VkGraphicsPipelineLibraryFlagsEXT {
13909     VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT          = 0x00000001,
13910     VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT       = 0x00000002,
13911     VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT                 = 0x00000004,
13912     VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT       = 0x00000008,
13913     VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT                  = 0x7FFFFFFF
13914 }
13915 
13916 enum VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT         = VkGraphicsPipelineLibraryFlagBitsEXT.VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT;
13917 enum VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT      = VkGraphicsPipelineLibraryFlagBitsEXT.VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT;
13918 enum VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT                = VkGraphicsPipelineLibraryFlagBitsEXT.VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT;
13919 enum VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT      = VkGraphicsPipelineLibraryFlagBitsEXT.VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT;
13920 enum VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT                 = VkGraphicsPipelineLibraryFlagBitsEXT.VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT;
13921 
13922 struct VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT {
13923     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT;
13924     void*            pNext;
13925     VkBool32         graphicsPipelineLibrary;
13926 }
13927 
13928 struct VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT {
13929     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT;
13930     void*            pNext;
13931     VkBool32         graphicsPipelineLibraryFastLinking;
13932     VkBool32         graphicsPipelineLibraryIndependentInterpolationDecoration;
13933 }
13934 
13935 struct VkGraphicsPipelineLibraryCreateInfoEXT {
13936     VkStructureType                    sType = VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT;
13937     void*                              pNext;
13938     VkGraphicsPipelineLibraryFlagsEXT  flags;
13939 }
13940 
13941 
13942 // - VK_AMD_shader_early_and_late_fragment_tests -
13943 enum VK_AMD_shader_early_and_late_fragment_tests = 1;
13944 
13945 enum VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION = 1;
13946 enum const( char )* VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME = "VK_AMD_shader_early_and_late_fragment_tests";
13947 
13948 struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD {
13949     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD;
13950     void*            pNext;
13951     VkBool32         shaderEarlyAndLateFragmentTests;
13952 }
13953 
13954 
13955 // - VK_NV_fragment_shading_rate_enums -
13956 enum VK_NV_fragment_shading_rate_enums = 1;
13957 
13958 enum VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION = 1;
13959 enum const( char )* VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME = "VK_NV_fragment_shading_rate_enums";
13960 
13961 enum VkFragmentShadingRateTypeNV {
13962     VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV       = 0,
13963     VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV               = 1,
13964     VK_FRAGMENT_SHADING_RATE_TYPE_BEGIN_RANGE_NV         = VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV,
13965     VK_FRAGMENT_SHADING_RATE_TYPE_END_RANGE_NV           = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV,
13966     VK_FRAGMENT_SHADING_RATE_TYPE_RANGE_SIZE_NV          = VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV - VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV + 1,
13967     VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV            = 0x7FFFFFFF
13968 }
13969 
13970 enum VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV      = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV;
13971 enum VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV              = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV;
13972 enum VK_FRAGMENT_SHADING_RATE_TYPE_BEGIN_RANGE_NV        = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_BEGIN_RANGE_NV;
13973 enum VK_FRAGMENT_SHADING_RATE_TYPE_END_RANGE_NV          = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_END_RANGE_NV;
13974 enum VK_FRAGMENT_SHADING_RATE_TYPE_RANGE_SIZE_NV         = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_RANGE_SIZE_NV;
13975 enum VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV           = VkFragmentShadingRateTypeNV.VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV;
13976 
13977 enum VkFragmentShadingRateNV {
13978     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV           = 0,
13979     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV      = 1,
13980     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV      = 4,
13981     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV      = 5,
13982     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV      = 6,
13983     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV      = 9,
13984     VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV      = 10,
13985     VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV          = 11,
13986     VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV          = 12,
13987     VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV          = 13,
13988     VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV         = 14,
13989     VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV                   = 15,
13990     VK_FRAGMENT_SHADING_RATE_BEGIN_RANGE_NV                      = VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV,
13991     VK_FRAGMENT_SHADING_RATE_END_RANGE_NV                        = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV,
13992     VK_FRAGMENT_SHADING_RATE_RANGE_SIZE_NV                       = VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV - VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV + 1,
13993     VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV                         = 0x7FFFFFFF
13994 }
13995 
13996 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV          = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV;
13997 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV;
13998 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV;
13999 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV;
14000 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV;
14001 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV;
14002 enum VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV;
14003 enum VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV         = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV;
14004 enum VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV         = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV;
14005 enum VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV         = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV;
14006 enum VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV        = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV;
14007 enum VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV                  = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV;
14008 enum VK_FRAGMENT_SHADING_RATE_BEGIN_RANGE_NV                     = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_BEGIN_RANGE_NV;
14009 enum VK_FRAGMENT_SHADING_RATE_END_RANGE_NV                       = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_END_RANGE_NV;
14010 enum VK_FRAGMENT_SHADING_RATE_RANGE_SIZE_NV                      = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_RANGE_SIZE_NV;
14011 enum VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV                        = VkFragmentShadingRateNV.VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV;
14012 
14013 struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV {
14014     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV;
14015     void*            pNext;
14016     VkBool32         fragmentShadingRateEnums;
14017     VkBool32         supersampleFragmentShadingRates;
14018     VkBool32         noInvocationFragmentShadingRates;
14019 }
14020 
14021 struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV {
14022     VkStructureType        sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV;
14023     void*                  pNext;
14024     VkSampleCountFlagBits  maxFragmentShadingRateInvocationCount;
14025 }
14026 
14027 struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV {
14028     VkStructureType                        sType = VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV;
14029     const( void )*                         pNext;
14030     VkFragmentShadingRateTypeNV            shadingRateType;
14031     VkFragmentShadingRateNV                shadingRate;
14032     VkFragmentShadingRateCombinerOpKHR[2]  combinerOps;
14033 }
14034 
14035 
14036 // - VK_NV_ray_tracing_motion_blur -
14037 enum VK_NV_ray_tracing_motion_blur = 1;
14038 
14039 enum VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION = 1;
14040 enum const( char )* VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME = "VK_NV_ray_tracing_motion_blur";
14041 
14042 enum VkAccelerationStructureMotionInstanceTypeNV {
14043     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV             = 0,
14044     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV      = 1,
14045     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV         = 2,
14046     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_BEGIN_RANGE_NV        = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV,
14047     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_END_RANGE_NV          = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV,
14048     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_RANGE_SIZE_NV         = VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV - VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV + 1,
14049     VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV           = 0x7FFFFFFF
14050 }
14051 
14052 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV            = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV;
14053 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV     = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV;
14054 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV        = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV;
14055 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_BEGIN_RANGE_NV       = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_BEGIN_RANGE_NV;
14056 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_END_RANGE_NV         = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_END_RANGE_NV;
14057 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_RANGE_SIZE_NV        = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_RANGE_SIZE_NV;
14058 enum VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV          = VkAccelerationStructureMotionInstanceTypeNV.VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV;
14059 
14060 alias VkAccelerationStructureMotionInfoFlagsNV = VkFlags;
14061 alias VkAccelerationStructureMotionInstanceFlagsNV = VkFlags;
14062 
14063 union VkDeviceOrHostAddressConstKHR {
14064     VkDeviceAddress  deviceAddress;
14065     const( void )*   hostAddress;
14066 }
14067 
14068 struct VkAccelerationStructureGeometryMotionTrianglesDataNV {
14069     VkStructureType                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV;
14070     const( void )*                 pNext;
14071     VkDeviceOrHostAddressConstKHR  vertexData;
14072 }
14073 
14074 struct VkAccelerationStructureMotionInfoNV {
14075     VkStructureType                           sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV;
14076     const( void )*                            pNext;
14077     uint32_t                                  maxInstances;
14078     VkAccelerationStructureMotionInfoFlagsNV  flags;
14079 }
14080 
14081 struct VkAccelerationStructureMatrixMotionInstanceNV {
14082     VkTransformMatrixKHR            transformT0;
14083     VkTransformMatrixKHR            transformT1;
14084     mixin( bitfields!(
14085         uint32_t,                   "instanceCustomIndex",                    24,
14086         uint32_t,                   "mask",                                   8,
14087         uint32_t,                   "instanceShaderBindingTableRecordOffset", 24,
14088         VkGeometryInstanceFlagsKHR, "flags",                                  8,
14089     ));
14090     uint64_t                        accelerationStructureReference;
14091 }
14092 
14093 struct VkSRTDataNV {
14094     float  sx;
14095     float  a;
14096     float  b;
14097     float  pvx;
14098     float  sy;
14099     float  c;
14100     float  pvy;
14101     float  sz;
14102     float  pvz;
14103     float  qx;
14104     float  qy;
14105     float  qz;
14106     float  qw;
14107     float  tx;
14108     float  ty;
14109     float  tz;
14110 }
14111 
14112 struct VkAccelerationStructureSRTMotionInstanceNV {
14113     VkSRTDataNV                     transformT0;
14114     VkSRTDataNV                     transformT1;
14115     mixin( bitfields!(
14116         uint32_t,                   "instanceCustomIndex",                    24,
14117         uint32_t,                   "mask",                                   8,
14118         uint32_t,                   "instanceShaderBindingTableRecordOffset", 24,
14119         VkGeometryInstanceFlagsKHR, "flags",                                  8,
14120     ));
14121     uint64_t                        accelerationStructureReference;
14122 }
14123 
14124 union VkAccelerationStructureMotionInstanceDataNV {
14125     VkAccelerationStructureInstanceKHR             staticInstance;
14126     VkAccelerationStructureMatrixMotionInstanceNV  matrixMotionInstance;
14127     VkAccelerationStructureSRTMotionInstanceNV     srtMotionInstance;
14128 }
14129 
14130 struct VkAccelerationStructureMotionInstanceNV {
14131     VkAccelerationStructureMotionInstanceTypeNV   type;
14132     VkAccelerationStructureMotionInstanceFlagsNV  flags;
14133     VkAccelerationStructureMotionInstanceDataNV   data;
14134 }
14135 
14136 struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV {
14137     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV;
14138     void*            pNext;
14139     VkBool32         rayTracingMotionBlur;
14140     VkBool32         rayTracingMotionBlurPipelineTraceRaysIndirect;
14141 }
14142 
14143 
14144 // - VK_EXT_ycbcr_2plane_444_formats -
14145 enum VK_EXT_ycbcr_2plane_444_formats = 1;
14146 
14147 enum VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION = 1;
14148 enum const( char )* VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME = "VK_EXT_ycbcr_2plane_444_formats";
14149 
14150 struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT {
14151     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT;
14152     void*            pNext;
14153     VkBool32         ycbcr2plane444Formats;
14154 }
14155 
14156 
14157 // - VK_EXT_fragment_density_map2 -
14158 enum VK_EXT_fragment_density_map2 = 1;
14159 
14160 enum VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION = 1;
14161 enum const( char )* VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME = "VK_EXT_fragment_density_map2";
14162 
14163 struct VkPhysicalDeviceFragmentDensityMap2FeaturesEXT {
14164     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT;
14165     void*            pNext;
14166     VkBool32         fragmentDensityMapDeferred;
14167 }
14168 
14169 struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT {
14170     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT;
14171     void*            pNext;
14172     VkBool32         subsampledLoads;
14173     VkBool32         subsampledCoarseReconstructionEarlyAccess;
14174     uint32_t         maxSubsampledArrayLayers;
14175     uint32_t         maxDescriptorSetSubsampledSamplers;
14176 }
14177 
14178 
14179 // - VK_QCOM_rotated_copy_commands -
14180 enum VK_QCOM_rotated_copy_commands = 1;
14181 
14182 enum VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION = 1;
14183 enum const( char )* VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME = "VK_QCOM_rotated_copy_commands";
14184 
14185 struct VkCopyCommandTransformInfoQCOM {
14186     VkStructureType                sType = VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM;
14187     const( void )*                 pNext;
14188     VkSurfaceTransformFlagBitsKHR  transform;
14189 }
14190 
14191 
14192 // - VK_EXT_image_robustness -
14193 enum VK_EXT_image_robustness = 1;
14194 
14195 enum VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION = 1;
14196 enum const( char )* VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME = "VK_EXT_image_robustness";
14197 
14198 alias VkPhysicalDeviceImageRobustnessFeaturesEXT = VkPhysicalDeviceImageRobustnessFeatures;
14199 
14200 
14201 // - VK_EXT_image_compression_control -
14202 enum VK_EXT_image_compression_control = 1;
14203 
14204 enum VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION = 1;
14205 enum const( char )* VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME = "VK_EXT_image_compression_control";
14206 
14207 alias VkImageCompressionFlagsEXT = VkFlags;
14208 enum VkImageCompressionFlagBitsEXT : VkImageCompressionFlagsEXT {
14209     VK_IMAGE_COMPRESSION_DEFAULT_EXT                     = 0,
14210     VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT          = 0x00000001,
14211     VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT         = 0x00000002,
14212     VK_IMAGE_COMPRESSION_DISABLED_EXT                    = 0x00000004,
14213     VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT          = 0x7FFFFFFF
14214 }
14215 
14216 enum VK_IMAGE_COMPRESSION_DEFAULT_EXT                    = VkImageCompressionFlagBitsEXT.VK_IMAGE_COMPRESSION_DEFAULT_EXT;
14217 enum VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT         = VkImageCompressionFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT;
14218 enum VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT        = VkImageCompressionFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT;
14219 enum VK_IMAGE_COMPRESSION_DISABLED_EXT                   = VkImageCompressionFlagBitsEXT.VK_IMAGE_COMPRESSION_DISABLED_EXT;
14220 enum VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT         = VkImageCompressionFlagBitsEXT.VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT;
14221 
14222 alias VkImageCompressionFixedRateFlagsEXT = VkFlags;
14223 enum VkImageCompressionFixedRateFlagBitsEXT : VkImageCompressionFixedRateFlagsEXT {
14224     VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT                     = 0,
14225     VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT                 = 0x00000001,
14226     VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT                 = 0x00000002,
14227     VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT                 = 0x00000004,
14228     VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT                 = 0x00000008,
14229     VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT                 = 0x00000010,
14230     VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT                 = 0x00000020,
14231     VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT                 = 0x00000040,
14232     VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT                 = 0x00000080,
14233     VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT                 = 0x00000100,
14234     VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT                = 0x00000200,
14235     VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT                = 0x00000400,
14236     VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT                = 0x00000800,
14237     VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT                = 0x00001000,
14238     VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT                = 0x00002000,
14239     VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT                = 0x00004000,
14240     VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT                = 0x00008000,
14241     VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT                = 0x00010000,
14242     VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT                = 0x00020000,
14243     VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT                = 0x00040000,
14244     VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT                = 0x00080000,
14245     VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT                = 0x00100000,
14246     VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT                = 0x00200000,
14247     VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT                = 0x00400000,
14248     VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT                = 0x00800000,
14249     VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT       = 0x7FFFFFFF
14250 }
14251 
14252 enum VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT                    = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT;
14253 enum VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT;
14254 enum VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT;
14255 enum VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT;
14256 enum VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT;
14257 enum VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT;
14258 enum VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT;
14259 enum VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT;
14260 enum VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT;
14261 enum VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT                = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT;
14262 enum VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT;
14263 enum VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT;
14264 enum VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT;
14265 enum VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT;
14266 enum VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT;
14267 enum VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT;
14268 enum VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT;
14269 enum VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT;
14270 enum VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT;
14271 enum VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT;
14272 enum VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT;
14273 enum VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT;
14274 enum VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT;
14275 enum VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT;
14276 enum VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT               = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT;
14277 enum VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT      = VkImageCompressionFixedRateFlagBitsEXT.VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT;
14278 
14279 struct VkPhysicalDeviceImageCompressionControlFeaturesEXT {
14280     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT;
14281     void*            pNext;
14282     VkBool32         imageCompressionControl;
14283 }
14284 
14285 struct VkImageCompressionControlEXT {
14286     VkStructureType                       sType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT;
14287     const( void )*                        pNext;
14288     VkImageCompressionFlagsEXT            flags;
14289     uint32_t                              compressionControlPlaneCount;
14290     VkImageCompressionFixedRateFlagsEXT*  pFixedRateFlags;
14291 }
14292 
14293 struct VkSubresourceLayout2EXT {
14294     VkStructureType      sType = VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT;
14295     void*                pNext;
14296     VkSubresourceLayout  subresourceLayout;
14297 }
14298 
14299 struct VkImageSubresource2EXT {
14300     VkStructureType     sType = VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT;
14301     void*               pNext;
14302     VkImageSubresource  imageSubresource;
14303 }
14304 
14305 struct VkImageCompressionPropertiesEXT {
14306     VkStructureType                      sType = VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT;
14307     void*                                pNext;
14308     VkImageCompressionFlagsEXT           imageCompressionFlags;
14309     VkImageCompressionFixedRateFlagsEXT  imageCompressionFixedRateFlags;
14310 }
14311 
14312 
14313 // - VK_EXT_4444_formats -
14314 enum VK_EXT_4444_formats = 1;
14315 
14316 enum VK_EXT_4444_FORMATS_SPEC_VERSION = 1;
14317 enum const( char )* VK_EXT_4444_FORMATS_EXTENSION_NAME = "VK_EXT_4444_formats";
14318 
14319 struct VkPhysicalDevice4444FormatsFeaturesEXT {
14320     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT;
14321     void*            pNext;
14322     VkBool32         formatA4R4G4B4;
14323     VkBool32         formatA4B4G4R4;
14324 }
14325 
14326 
14327 // - VK_ARM_rasterization_order_attachment_access -
14328 enum VK_ARM_rasterization_order_attachment_access = 1;
14329 
14330 enum VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION = 1;
14331 enum const( char )* VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME = "VK_ARM_rasterization_order_attachment_access";
14332 
14333 struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM {
14334     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM;
14335     void*            pNext;
14336     VkBool32         rasterizationOrderColorAttachmentAccess;
14337     VkBool32         rasterizationOrderDepthAttachmentAccess;
14338     VkBool32         rasterizationOrderStencilAttachmentAccess;
14339 }
14340 
14341 
14342 // - VK_EXT_rgba10x6_formats -
14343 enum VK_EXT_rgba10x6_formats = 1;
14344 
14345 enum VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION = 1;
14346 enum const( char )* VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME = "VK_EXT_rgba10x6_formats";
14347 
14348 struct VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT {
14349     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT;
14350     void*            pNext;
14351     VkBool32         formatRgba10x6WithoutYCbCrSampler;
14352 }
14353 
14354 
14355 // - VK_VALVE_mutable_descriptor_type -
14356 enum VK_VALVE_mutable_descriptor_type = 1;
14357 
14358 enum VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION = 1;
14359 enum const( char )* VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME = "VK_VALVE_mutable_descriptor_type";
14360 
14361 struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE {
14362     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE;
14363     void*            pNext;
14364     VkBool32         mutableDescriptorType;
14365 }
14366 
14367 struct VkMutableDescriptorTypeListVALVE {
14368     uint32_t                    descriptorTypeCount;
14369     const( VkDescriptorType )*  pDescriptorTypes;
14370 }
14371 
14372 struct VkMutableDescriptorTypeCreateInfoVALVE {
14373     VkStructureType                             sType = VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE;
14374     const( void )*                              pNext;
14375     uint32_t                                    mutableDescriptorTypeListCount;
14376     const( VkMutableDescriptorTypeListVALVE )*  pMutableDescriptorTypeLists;
14377 }
14378 
14379 
14380 // - VK_EXT_vertex_input_dynamic_state -
14381 enum VK_EXT_vertex_input_dynamic_state = 1;
14382 
14383 enum VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION = 2;
14384 enum const( char )* VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME = "VK_EXT_vertex_input_dynamic_state";
14385 
14386 struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT {
14387     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT;
14388     void*            pNext;
14389     VkBool32         vertexInputDynamicState;
14390 }
14391 
14392 struct VkVertexInputBindingDescription2EXT {
14393     VkStructureType    sType = VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT;
14394     void*              pNext;
14395     uint32_t           binding;
14396     uint32_t           stride;
14397     VkVertexInputRate  inputRate;
14398     uint32_t           divisor;
14399 }
14400 
14401 struct VkVertexInputAttributeDescription2EXT {
14402     VkStructureType  sType = VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT;
14403     void*            pNext;
14404     uint32_t         location;
14405     uint32_t         binding;
14406     VkFormat         format;
14407     uint32_t         offset;
14408 }
14409 
14410 
14411 // - VK_EXT_physical_device_drm -
14412 enum VK_EXT_physical_device_drm = 1;
14413 
14414 enum VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION = 1;
14415 enum const( char )* VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME = "VK_EXT_physical_device_drm";
14416 
14417 struct VkPhysicalDeviceDrmPropertiesEXT {
14418     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT;
14419     void*            pNext;
14420     VkBool32         hasPrimary;
14421     VkBool32         hasRender;
14422     int64_t          primaryMajor;
14423     int64_t          primaryMinor;
14424     int64_t          renderMajor;
14425     int64_t          renderMinor;
14426 }
14427 
14428 
14429 // - VK_EXT_depth_clip_control -
14430 enum VK_EXT_depth_clip_control = 1;
14431 
14432 enum VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION = 1;
14433 enum const( char )* VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME = "VK_EXT_depth_clip_control";
14434 
14435 struct VkPhysicalDeviceDepthClipControlFeaturesEXT {
14436     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT;
14437     void*            pNext;
14438     VkBool32         depthClipControl;
14439 }
14440 
14441 struct VkPipelineViewportDepthClipControlCreateInfoEXT {
14442     VkStructureType  sType = VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT;
14443     const( void )*   pNext;
14444     VkBool32         negativeOneToOne;
14445 }
14446 
14447 
14448 // - VK_EXT_primitive_topology_list_restart -
14449 enum VK_EXT_primitive_topology_list_restart = 1;
14450 
14451 enum VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION = 1;
14452 enum const( char )* VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME = "VK_EXT_primitive_topology_list_restart";
14453 
14454 struct VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT {
14455     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT;
14456     void*            pNext;
14457     VkBool32         primitiveTopologyListRestart;
14458     VkBool32         primitiveTopologyPatchListRestart;
14459 }
14460 
14461 
14462 // - VK_HUAWEI_subpass_shading -
14463 enum VK_HUAWEI_subpass_shading = 1;
14464 
14465 enum VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION = 2;
14466 enum const( char )* VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME = "VK_HUAWEI_subpass_shading";
14467 
14468 struct VkSubpassShadingPipelineCreateInfoHUAWEI {
14469     VkStructureType  sType = VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI;
14470     void*            pNext;
14471     VkRenderPass     renderPass;
14472     uint32_t         subpass;
14473 }
14474 
14475 struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI {
14476     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI;
14477     void*            pNext;
14478     VkBool32         subpassShading;
14479 }
14480 
14481 struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI {
14482     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI;
14483     void*            pNext;
14484     uint32_t         maxSubpassShadingWorkgroupSizeAspectRatio;
14485 }
14486 
14487 
14488 // - VK_HUAWEI_invocation_mask -
14489 enum VK_HUAWEI_invocation_mask = 1;
14490 
14491 enum VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION = 1;
14492 enum const( char )* VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME = "VK_HUAWEI_invocation_mask";
14493 
14494 struct VkPhysicalDeviceInvocationMaskFeaturesHUAWEI {
14495     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI;
14496     void*            pNext;
14497     VkBool32         invocationMask;
14498 }
14499 
14500 
14501 // - VK_NV_external_memory_rdma -
14502 enum VK_NV_external_memory_rdma = 1;
14503 
14504 alias VkRemoteAddressNV = void;
14505 
14506 enum VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION = 1;
14507 enum const( char )* VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME = "VK_NV_external_memory_rdma";
14508 
14509 struct VkMemoryGetRemoteAddressInfoNV {
14510     VkStructureType                     sType = VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV;
14511     const( void )*                      pNext;
14512     VkDeviceMemory                      memory;
14513     VkExternalMemoryHandleTypeFlagBits  handleType;
14514 }
14515 
14516 struct VkPhysicalDeviceExternalMemoryRDMAFeaturesNV {
14517     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV;
14518     void*            pNext;
14519     VkBool32         externalMemoryRDMA;
14520 }
14521 
14522 
14523 // - VK_EXT_pipeline_properties -
14524 enum VK_EXT_pipeline_properties = 1;
14525 
14526 enum VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION = 1;
14527 enum const( char )* VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME = "VK_EXT_pipeline_properties";
14528 
14529 alias VkPipelineInfoEXT = VkPipelineInfoKHR;
14530 
14531 struct VkPipelinePropertiesIdentifierEXT {
14532     VkStructureType          sType = VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT;
14533     void*                    pNext;
14534     uint8_t[ VK_UUID_SIZE ]  pipelineIdentifier;
14535 }
14536 
14537 struct VkPhysicalDevicePipelinePropertiesFeaturesEXT {
14538     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT;
14539     void*            pNext;
14540     VkBool32         pipelinePropertiesIdentifier;
14541 }
14542 
14543 
14544 // - VK_EXT_multisampled_render_to_single_sampled -
14545 enum VK_EXT_multisampled_render_to_single_sampled = 1;
14546 
14547 enum VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION = 1;
14548 enum const( char )* VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME = "VK_EXT_multisampled_render_to_single_sampled";
14549 
14550 struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT {
14551     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT;
14552     void*            pNext;
14553     VkBool32         multisampledRenderToSingleSampled;
14554 }
14555 
14556 struct VkSubpassResolvePerformanceQueryEXT {
14557     VkStructureType  sType = VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT;
14558     void*            pNext;
14559     VkBool32         optimal;
14560 }
14561 
14562 struct VkMultisampledRenderToSingleSampledInfoEXT {
14563     VkStructureType        sType = VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT;
14564     const( void )*         pNext;
14565     VkBool32               multisampledRenderToSingleSampledEnable;
14566     VkSampleCountFlagBits  rasterizationSamples;
14567 }
14568 
14569 
14570 // - VK_EXT_extended_dynamic_state2 -
14571 enum VK_EXT_extended_dynamic_state2 = 1;
14572 
14573 enum VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION = 1;
14574 enum const( char )* VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME = "VK_EXT_extended_dynamic_state2";
14575 
14576 struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT {
14577     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT;
14578     void*            pNext;
14579     VkBool32         extendedDynamicState2;
14580     VkBool32         extendedDynamicState2LogicOp;
14581     VkBool32         extendedDynamicState2PatchControlPoints;
14582 }
14583 
14584 
14585 // - VK_EXT_color_write_enable -
14586 enum VK_EXT_color_write_enable = 1;
14587 
14588 enum VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION = 1;
14589 enum const( char )* VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME = "VK_EXT_color_write_enable";
14590 
14591 struct VkPhysicalDeviceColorWriteEnableFeaturesEXT {
14592     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT;
14593     void*            pNext;
14594     VkBool32         colorWriteEnable;
14595 }
14596 
14597 struct VkPipelineColorWriteCreateInfoEXT {
14598     VkStructureType     sType = VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT;
14599     const( void )*      pNext;
14600     uint32_t            attachmentCount;
14601     const( VkBool32 )*  pColorWriteEnables;
14602 }
14603 
14604 
14605 // - VK_EXT_primitives_generated_query -
14606 enum VK_EXT_primitives_generated_query = 1;
14607 
14608 enum VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION = 1;
14609 enum const( char )* VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME = "VK_EXT_primitives_generated_query";
14610 
14611 struct VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT {
14612     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT;
14613     void*            pNext;
14614     VkBool32         primitivesGeneratedQuery;
14615     VkBool32         primitivesGeneratedQueryWithRasterizerDiscard;
14616     VkBool32         primitivesGeneratedQueryWithNonZeroStreams;
14617 }
14618 
14619 
14620 // - VK_EXT_global_priority_query -
14621 enum VK_EXT_global_priority_query = 1;
14622 
14623 enum VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION = 1;
14624 enum const( char )* VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME = "VK_EXT_global_priority_query";
14625 alias VK_MAX_GLOBAL_PRIORITY_SIZE_EXT = VK_MAX_GLOBAL_PRIORITY_SIZE_KHR;
14626 
14627 alias VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT = VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR;
14628 alias VkQueueFamilyGlobalPriorityPropertiesEXT = VkQueueFamilyGlobalPriorityPropertiesKHR;
14629 
14630 
14631 // - VK_EXT_image_view_min_lod -
14632 enum VK_EXT_image_view_min_lod = 1;
14633 
14634 enum VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION = 1;
14635 enum const( char )* VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME = "VK_EXT_image_view_min_lod";
14636 
14637 struct VkPhysicalDeviceImageViewMinLodFeaturesEXT {
14638     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT;
14639     void*            pNext;
14640     VkBool32         minLod;
14641 }
14642 
14643 struct VkImageViewMinLodCreateInfoEXT {
14644     VkStructureType  sType = VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT;
14645     const( void )*   pNext;
14646     float            minLod;
14647 }
14648 
14649 
14650 // - VK_EXT_multi_draw -
14651 enum VK_EXT_multi_draw = 1;
14652 
14653 enum VK_EXT_MULTI_DRAW_SPEC_VERSION = 1;
14654 enum const( char )* VK_EXT_MULTI_DRAW_EXTENSION_NAME = "VK_EXT_multi_draw";
14655 
14656 struct VkPhysicalDeviceMultiDrawFeaturesEXT {
14657     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT;
14658     void*            pNext;
14659     VkBool32         multiDraw;
14660 }
14661 
14662 struct VkPhysicalDeviceMultiDrawPropertiesEXT {
14663     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT;
14664     void*            pNext;
14665     uint32_t         maxMultiDrawCount;
14666 }
14667 
14668 struct VkMultiDrawInfoEXT {
14669     uint32_t  firstVertex;
14670     uint32_t  vertexCount;
14671 }
14672 
14673 struct VkMultiDrawIndexedInfoEXT {
14674     uint32_t  firstIndex;
14675     uint32_t  indexCount;
14676     int32_t   vertexOffset;
14677 }
14678 
14679 
14680 // - VK_EXT_image_2d_view_of_3d -
14681 enum VK_EXT_image_2d_view_of_3d = 1;
14682 
14683 enum VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION = 1;
14684 enum const( char )* VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME = "VK_EXT_image_2d_view_of_3d";
14685 
14686 struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT {
14687     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT;
14688     void*            pNext;
14689     VkBool32         image2DViewOf3D;
14690     VkBool32         sampler2DViewOf3D;
14691 }
14692 
14693 
14694 // - VK_EXT_load_store_op_none -
14695 enum VK_EXT_load_store_op_none = 1;
14696 
14697 enum VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION = 1;
14698 enum const( char )* VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME = "VK_EXT_load_store_op_none";
14699 
14700 
14701 // - VK_EXT_border_color_swizzle -
14702 enum VK_EXT_border_color_swizzle = 1;
14703 
14704 enum VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION = 1;
14705 enum const( char )* VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME = "VK_EXT_border_color_swizzle";
14706 
14707 struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT {
14708     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT;
14709     void*            pNext;
14710     VkBool32         borderColorSwizzle;
14711     VkBool32         borderColorSwizzleFromImage;
14712 }
14713 
14714 struct VkSamplerBorderColorComponentMappingCreateInfoEXT {
14715     VkStructureType     sType = VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT;
14716     const( void )*      pNext;
14717     VkComponentMapping  components;
14718     VkBool32            srgb;
14719 }
14720 
14721 
14722 // - VK_EXT_pageable_device_local_memory -
14723 enum VK_EXT_pageable_device_local_memory = 1;
14724 
14725 enum VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION = 1;
14726 enum const( char )* VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME = "VK_EXT_pageable_device_local_memory";
14727 
14728 struct VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT {
14729     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT;
14730     void*            pNext;
14731     VkBool32         pageableDeviceLocalMemory;
14732 }
14733 
14734 
14735 // - VK_VALVE_descriptor_set_host_mapping -
14736 enum VK_VALVE_descriptor_set_host_mapping = 1;
14737 
14738 enum VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION = 1;
14739 enum const( char )* VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME = "VK_VALVE_descriptor_set_host_mapping";
14740 
14741 struct VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE {
14742     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE;
14743     void*            pNext;
14744     VkBool32         descriptorSetHostMapping;
14745 }
14746 
14747 struct VkDescriptorSetBindingReferenceVALVE {
14748     VkStructureType        sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE;
14749     const( void )*         pNext;
14750     VkDescriptorSetLayout  descriptorSetLayout;
14751     uint32_t               binding;
14752 }
14753 
14754 struct VkDescriptorSetLayoutHostMappingInfoVALVE {
14755     VkStructureType  sType = VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE;
14756     void*            pNext;
14757     size_t           descriptorOffset;
14758     uint32_t         descriptorSize;
14759 }
14760 
14761 
14762 // - VK_EXT_non_seamless_cube_map -
14763 enum VK_EXT_non_seamless_cube_map = 1;
14764 
14765 enum VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION = 1;
14766 enum const( char )* VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME = "VK_EXT_non_seamless_cube_map";
14767 
14768 struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT {
14769     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT;
14770     void*            pNext;
14771     VkBool32         nonSeamlessCubeMap;
14772 }
14773 
14774 
14775 // - VK_QCOM_fragment_density_map_offset -
14776 enum VK_QCOM_fragment_density_map_offset = 1;
14777 
14778 enum VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION = 1;
14779 enum const( char )* VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME = "VK_QCOM_fragment_density_map_offset";
14780 
14781 struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM {
14782     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM;
14783     void*            pNext;
14784     VkBool32         fragmentDensityMapOffset;
14785 }
14786 
14787 struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM {
14788     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM;
14789     void*            pNext;
14790     VkExtent2D       fragmentDensityOffsetGranularity;
14791 }
14792 
14793 struct VkSubpassFragmentDensityMapOffsetEndInfoQCOM {
14794     VkStructureType       sType = VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM;
14795     const( void )*        pNext;
14796     uint32_t              fragmentDensityOffsetCount;
14797     const( VkOffset2D )*  pFragmentDensityOffsets;
14798 }
14799 
14800 
14801 // - VK_NV_linear_color_attachment -
14802 enum VK_NV_linear_color_attachment = 1;
14803 
14804 enum VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION = 1;
14805 enum const( char )* VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME = "VK_NV_linear_color_attachment";
14806 
14807 struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV {
14808     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV;
14809     void*            pNext;
14810     VkBool32         linearColorAttachment;
14811 }
14812 
14813 
14814 // - VK_GOOGLE_surfaceless_query -
14815 enum VK_GOOGLE_surfaceless_query = 1;
14816 
14817 enum VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION = 1;
14818 enum const( char )* VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME = "VK_GOOGLE_surfaceless_query";
14819 
14820 
14821 // - VK_EXT_image_compression_control_swapchain -
14822 enum VK_EXT_image_compression_control_swapchain = 1;
14823 
14824 enum VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION = 1;
14825 enum const( char )* VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME = "VK_EXT_image_compression_control_swapchain";
14826 
14827 struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT {
14828     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT;
14829     void*            pNext;
14830     VkBool32         imageCompressionControlSwapchain;
14831 }
14832 
14833 
14834 // - VK_EXT_subpass_merge_feedback -
14835 enum VK_EXT_subpass_merge_feedback = 1;
14836 
14837 enum VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION = 2;
14838 enum const( char )* VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME = "VK_EXT_subpass_merge_feedback";
14839 
14840 enum VkSubpassMergeStatusEXT {
14841     VK_SUBPASS_MERGE_STATUS_MERGED_EXT                                           = 0,
14842     VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT                                       = 1,
14843     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT                          = 2,
14844     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT                      = 3,
14845     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT                        = 4,
14846     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT                              = 5,
14847     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT                          = 6,
14848     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT         = 7,
14849     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT                  = 8,
14850     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT                  = 9,
14851     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT                   = 10,
14852     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT              = 11,
14853     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT                        = 12,
14854     VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT                           = 13,
14855     VK_SUBPASS_MERGE_STATUS_BEGIN_RANGE_EXT                                      = VK_SUBPASS_MERGE_STATUS_MERGED_EXT,
14856     VK_SUBPASS_MERGE_STATUS_END_RANGE_EXT                                        = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT,
14857     VK_SUBPASS_MERGE_STATUS_RANGE_SIZE_EXT                                       = VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT - VK_SUBPASS_MERGE_STATUS_MERGED_EXT + 1,
14858     VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT                                         = 0x7FFFFFFF
14859 }
14860 
14861 enum VK_SUBPASS_MERGE_STATUS_MERGED_EXT                                          = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_MERGED_EXT;
14862 enum VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT                                      = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT;
14863 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT                         = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT;
14864 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT                     = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT;
14865 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT                       = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT;
14866 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT                             = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT;
14867 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT                         = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT;
14868 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT        = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT;
14869 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT                 = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT;
14870 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT                 = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT;
14871 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT                  = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT;
14872 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT             = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT;
14873 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT                       = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT;
14874 enum VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT                          = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT;
14875 enum VK_SUBPASS_MERGE_STATUS_BEGIN_RANGE_EXT                                     = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_BEGIN_RANGE_EXT;
14876 enum VK_SUBPASS_MERGE_STATUS_END_RANGE_EXT                                       = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_END_RANGE_EXT;
14877 enum VK_SUBPASS_MERGE_STATUS_RANGE_SIZE_EXT                                      = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_RANGE_SIZE_EXT;
14878 enum VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT                                        = VkSubpassMergeStatusEXT.VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT;
14879 
14880 struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT {
14881     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT;
14882     void*            pNext;
14883     VkBool32         subpassMergeFeedback;
14884 }
14885 
14886 struct VkRenderPassCreationControlEXT {
14887     VkStructureType  sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT;
14888     const( void )*   pNext;
14889     VkBool32         disallowMerging;
14890 }
14891 
14892 struct VkRenderPassCreationFeedbackInfoEXT {
14893     uint32_t  postMergeSubpassCount;
14894 }
14895 
14896 struct VkRenderPassCreationFeedbackCreateInfoEXT {
14897     VkStructureType                       sType = VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT;
14898     const( void )*                        pNext;
14899     VkRenderPassCreationFeedbackInfoEXT*  pRenderPassFeedback;
14900 }
14901 
14902 struct VkRenderPassSubpassFeedbackInfoEXT {
14903     VkSubpassMergeStatusEXT          subpassMergeStatus;
14904     char[ VK_MAX_DESCRIPTION_SIZE ]  description;
14905     uint32_t                         postMergeIndex;
14906 }
14907 
14908 struct VkRenderPassSubpassFeedbackCreateInfoEXT {
14909     VkStructureType                      sType = VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT;
14910     const( void )*                       pNext;
14911     VkRenderPassSubpassFeedbackInfoEXT*  pSubpassFeedback;
14912 }
14913 
14914 
14915 // - VK_EXT_shader_module_identifier -
14916 enum VK_EXT_shader_module_identifier = 1;
14917 
14918 enum VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT = 32;
14919 enum VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION = 1;
14920 enum const( char )* VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME = "VK_EXT_shader_module_identifier";
14921 
14922 struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT {
14923     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT;
14924     void*            pNext;
14925     VkBool32         shaderModuleIdentifier;
14926 }
14927 
14928 struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT {
14929     VkStructureType          sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT;
14930     void*                    pNext;
14931     uint8_t[ VK_UUID_SIZE ]  shaderModuleIdentifierAlgorithmUUID;
14932 }
14933 
14934 struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT {
14935     VkStructureType    sType = VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT;
14936     const( void )*     pNext;
14937     uint32_t           identifierSize;
14938     const( uint8_t )*  pIdentifier;
14939 }
14940 
14941 struct VkShaderModuleIdentifierEXT {
14942     VkStructureType                                      sType = VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT;
14943     void*                                                pNext;
14944     uint32_t                                             identifierSize;
14945     uint8_t[ VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT ]  identifier;
14946 }
14947 
14948 
14949 // - VK_KHR_acceleration_structure -
14950 enum VK_KHR_acceleration_structure = 1;
14951 
14952 mixin( VK_DEFINE_NON_DISPATCHABLE_HANDLE!q{VkAccelerationStructureKHR} );
14953 
14954 enum VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION = 13;
14955 enum const( char )* VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME = "VK_KHR_acceleration_structure";
14956 
14957 enum VkBuildAccelerationStructureModeKHR {
14958     VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR       = 0,
14959     VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR      = 1,
14960     VK_BUILD_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR = VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR,
14961     VK_BUILD_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR   = VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR,
14962     VK_BUILD_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR  = VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR - VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR + 1,
14963     VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR    = 0x7FFFFFFF
14964 }
14965 
14966 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR      = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR;
14967 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR     = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR;
14968 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_BEGIN_RANGE_KHR;
14969 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR  = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_END_RANGE_KHR;
14970 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_RANGE_SIZE_KHR;
14971 enum VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR   = VkBuildAccelerationStructureModeKHR.VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR;
14972 
14973 enum VkAccelerationStructureBuildTypeKHR {
14974     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR                = 0,
14975     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR              = 1,
14976     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR      = 2,
14977     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_BEGIN_RANGE_KHR         = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR,
14978     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_END_RANGE_KHR           = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR,
14979     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_RANGE_SIZE_KHR          = VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR - VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR + 1,
14980     VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR            = 0x7FFFFFFF
14981 }
14982 
14983 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR               = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR;
14984 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR             = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR;
14985 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR     = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR;
14986 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_BEGIN_RANGE_KHR        = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_BEGIN_RANGE_KHR;
14987 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_END_RANGE_KHR          = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_END_RANGE_KHR;
14988 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_RANGE_SIZE_KHR         = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_RANGE_SIZE_KHR;
14989 enum VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR           = VkAccelerationStructureBuildTypeKHR.VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR;
14990 
14991 enum VkAccelerationStructureCompatibilityKHR {
14992     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR       = 0,
14993     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR     = 1,
14994     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_BEGIN_RANGE_KHR      = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR,
14995     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_END_RANGE_KHR        = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR,
14996     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_RANGE_SIZE_KHR       = VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR - VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR + 1,
14997     VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR         = 0x7FFFFFFF
14998 }
14999 
15000 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR      = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR;
15001 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR    = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR;
15002 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_BEGIN_RANGE_KHR     = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_BEGIN_RANGE_KHR;
15003 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_END_RANGE_KHR       = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_END_RANGE_KHR;
15004 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_RANGE_SIZE_KHR      = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_RANGE_SIZE_KHR;
15005 enum VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR        = VkAccelerationStructureCompatibilityKHR.VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR;
15006 
15007 alias VkAccelerationStructureCreateFlagsKHR = VkFlags;
15008 enum VkAccelerationStructureCreateFlagBitsKHR : VkAccelerationStructureCreateFlagsKHR {
15009     VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR       = 0x00000001,
15010     VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV                               = 0x00000004,
15011     VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR                      = 0x7FFFFFFF
15012 }
15013 
15014 enum VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR      = VkAccelerationStructureCreateFlagBitsKHR.VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR;
15015 enum VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV                              = VkAccelerationStructureCreateFlagBitsKHR.VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV;
15016 enum VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR                     = VkAccelerationStructureCreateFlagBitsKHR.VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR;
15017 
15018 union VkDeviceOrHostAddressKHR {
15019     VkDeviceAddress  deviceAddress;
15020     void*            hostAddress;
15021 }
15022 
15023 struct VkAccelerationStructureBuildRangeInfoKHR {
15024     uint32_t  primitiveCount;
15025     uint32_t  primitiveOffset;
15026     uint32_t  firstVertex;
15027     uint32_t  transformOffset;
15028 }
15029 
15030 struct VkAccelerationStructureGeometryTrianglesDataKHR {
15031     VkStructureType                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR;
15032     const( void )*                 pNext;
15033     VkFormat                       vertexFormat;
15034     VkDeviceOrHostAddressConstKHR  vertexData;
15035     VkDeviceSize                   vertexStride;
15036     uint32_t                       maxVertex;
15037     VkIndexType                    indexType;
15038     VkDeviceOrHostAddressConstKHR  indexData;
15039     VkDeviceOrHostAddressConstKHR  transformData;
15040 }
15041 
15042 struct VkAccelerationStructureGeometryAabbsDataKHR {
15043     VkStructureType                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR;
15044     const( void )*                 pNext;
15045     VkDeviceOrHostAddressConstKHR  data;
15046     VkDeviceSize                   stride;
15047 }
15048 
15049 struct VkAccelerationStructureGeometryInstancesDataKHR {
15050     VkStructureType                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR;
15051     const( void )*                 pNext;
15052     VkBool32                       arrayOfPointers;
15053     VkDeviceOrHostAddressConstKHR  data;
15054 }
15055 
15056 union VkAccelerationStructureGeometryDataKHR {
15057     VkAccelerationStructureGeometryTrianglesDataKHR  triangles;
15058     VkAccelerationStructureGeometryAabbsDataKHR      aabbs;
15059     VkAccelerationStructureGeometryInstancesDataKHR  instances;
15060 }
15061 
15062 struct VkAccelerationStructureGeometryKHR {
15063     VkStructureType                         sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR;
15064     const( void )*                          pNext;
15065     VkGeometryTypeKHR                       geometryType;
15066     VkAccelerationStructureGeometryDataKHR  geometry;
15067     VkGeometryFlagsKHR                      flags;
15068 }
15069 
15070 struct VkAccelerationStructureBuildGeometryInfoKHR {
15071     VkStructureType                                sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR;
15072     const( void )*                                 pNext;
15073     VkAccelerationStructureTypeKHR                 type;
15074     VkBuildAccelerationStructureFlagsKHR           flags;
15075     VkBuildAccelerationStructureModeKHR            mode;
15076     VkAccelerationStructureKHR                     srcAccelerationStructure;
15077     VkAccelerationStructureKHR                     dstAccelerationStructure;
15078     uint32_t                                       geometryCount;
15079     const( VkAccelerationStructureGeometryKHR )*   pGeometries;
15080     const( VkAccelerationStructureGeometryKHR* )*  ppGeometries;
15081     VkDeviceOrHostAddressKHR                       scratchData;
15082 }
15083 
15084 struct VkAccelerationStructureCreateInfoKHR {
15085     VkStructureType                        sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR;
15086     const( void )*                         pNext;
15087     VkAccelerationStructureCreateFlagsKHR  createFlags;
15088     VkBuffer                               buffer;
15089     VkDeviceSize                           offset;
15090     VkDeviceSize                           size;
15091     VkAccelerationStructureTypeKHR         type;
15092     VkDeviceAddress                        deviceAddress;
15093 }
15094 
15095 struct VkWriteDescriptorSetAccelerationStructureKHR {
15096     VkStructureType                       sType = VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR;
15097     const( void )*                        pNext;
15098     uint32_t                              accelerationStructureCount;
15099     const( VkAccelerationStructureKHR )*  pAccelerationStructures;
15100 }
15101 
15102 struct VkPhysicalDeviceAccelerationStructureFeaturesKHR {
15103     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR;
15104     void*            pNext;
15105     VkBool32         accelerationStructure;
15106     VkBool32         accelerationStructureCaptureReplay;
15107     VkBool32         accelerationStructureIndirectBuild;
15108     VkBool32         accelerationStructureHostCommands;
15109     VkBool32         descriptorBindingAccelerationStructureUpdateAfterBind;
15110 }
15111 
15112 struct VkPhysicalDeviceAccelerationStructurePropertiesKHR {
15113     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR;
15114     void*            pNext;
15115     uint64_t         maxGeometryCount;
15116     uint64_t         maxInstanceCount;
15117     uint64_t         maxPrimitiveCount;
15118     uint32_t         maxPerStageDescriptorAccelerationStructures;
15119     uint32_t         maxPerStageDescriptorUpdateAfterBindAccelerationStructures;
15120     uint32_t         maxDescriptorSetAccelerationStructures;
15121     uint32_t         maxDescriptorSetUpdateAfterBindAccelerationStructures;
15122     uint32_t         minAccelerationStructureScratchOffsetAlignment;
15123 }
15124 
15125 struct VkAccelerationStructureDeviceAddressInfoKHR {
15126     VkStructureType             sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR;
15127     const( void )*              pNext;
15128     VkAccelerationStructureKHR  accelerationStructure;
15129 }
15130 
15131 struct VkAccelerationStructureVersionInfoKHR {
15132     VkStructureType    sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR;
15133     const( void )*     pNext;
15134     const( uint8_t )*  pVersionData;
15135 }
15136 
15137 struct VkCopyAccelerationStructureToMemoryInfoKHR {
15138     VkStructureType                     sType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR;
15139     const( void )*                      pNext;
15140     VkAccelerationStructureKHR          src;
15141     VkDeviceOrHostAddressKHR            dst;
15142     VkCopyAccelerationStructureModeKHR  mode;
15143 }
15144 
15145 struct VkCopyMemoryToAccelerationStructureInfoKHR {
15146     VkStructureType                     sType = VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR;
15147     const( void )*                      pNext;
15148     VkDeviceOrHostAddressConstKHR       src;
15149     VkAccelerationStructureKHR          dst;
15150     VkCopyAccelerationStructureModeKHR  mode;
15151 }
15152 
15153 struct VkCopyAccelerationStructureInfoKHR {
15154     VkStructureType                     sType = VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR;
15155     const( void )*                      pNext;
15156     VkAccelerationStructureKHR          src;
15157     VkAccelerationStructureKHR          dst;
15158     VkCopyAccelerationStructureModeKHR  mode;
15159 }
15160 
15161 struct VkAccelerationStructureBuildSizesInfoKHR {
15162     VkStructureType  sType = VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR;
15163     const( void )*   pNext;
15164     VkDeviceSize     accelerationStructureSize;
15165     VkDeviceSize     updateScratchSize;
15166     VkDeviceSize     buildScratchSize;
15167 }
15168 
15169 
15170 // - VK_KHR_ray_tracing_pipeline -
15171 enum VK_KHR_ray_tracing_pipeline = 1;
15172 
15173 enum VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION = 1;
15174 enum const( char )* VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME = "VK_KHR_ray_tracing_pipeline";
15175 
15176 enum VkShaderGroupShaderKHR {
15177     VK_SHADER_GROUP_SHADER_GENERAL_KHR           = 0,
15178     VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR       = 1,
15179     VK_SHADER_GROUP_SHADER_ANY_HIT_KHR           = 2,
15180     VK_SHADER_GROUP_SHADER_INTERSECTION_KHR      = 3,
15181     VK_SHADER_GROUP_SHADER_BEGIN_RANGE_KHR       = VK_SHADER_GROUP_SHADER_GENERAL_KHR,
15182     VK_SHADER_GROUP_SHADER_END_RANGE_KHR         = VK_SHADER_GROUP_SHADER_INTERSECTION_KHR,
15183     VK_SHADER_GROUP_SHADER_RANGE_SIZE_KHR        = VK_SHADER_GROUP_SHADER_INTERSECTION_KHR - VK_SHADER_GROUP_SHADER_GENERAL_KHR + 1,
15184     VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR          = 0x7FFFFFFF
15185 }
15186 
15187 enum VK_SHADER_GROUP_SHADER_GENERAL_KHR          = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_GENERAL_KHR;
15188 enum VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR      = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR;
15189 enum VK_SHADER_GROUP_SHADER_ANY_HIT_KHR          = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_ANY_HIT_KHR;
15190 enum VK_SHADER_GROUP_SHADER_INTERSECTION_KHR     = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_INTERSECTION_KHR;
15191 enum VK_SHADER_GROUP_SHADER_BEGIN_RANGE_KHR      = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_BEGIN_RANGE_KHR;
15192 enum VK_SHADER_GROUP_SHADER_END_RANGE_KHR        = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_END_RANGE_KHR;
15193 enum VK_SHADER_GROUP_SHADER_RANGE_SIZE_KHR       = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_RANGE_SIZE_KHR;
15194 enum VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR         = VkShaderGroupShaderKHR.VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR;
15195 
15196 struct VkRayTracingShaderGroupCreateInfoKHR {
15197     VkStructureType                 sType = VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR;
15198     const( void )*                  pNext;
15199     VkRayTracingShaderGroupTypeKHR  type;
15200     uint32_t                        generalShader;
15201     uint32_t                        closestHitShader;
15202     uint32_t                        anyHitShader;
15203     uint32_t                        intersectionShader;
15204     const( void )*                  pShaderGroupCaptureReplayHandle;
15205 }
15206 
15207 struct VkRayTracingPipelineInterfaceCreateInfoKHR {
15208     VkStructureType  sType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR;
15209     const( void )*   pNext;
15210     uint32_t         maxPipelineRayPayloadSize;
15211     uint32_t         maxPipelineRayHitAttributeSize;
15212 }
15213 
15214 struct VkRayTracingPipelineCreateInfoKHR {
15215     VkStructureType                                       sType = VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR;
15216     const( void )*                                        pNext;
15217     VkPipelineCreateFlags                                 flags;
15218     uint32_t                                              stageCount;
15219     const( VkPipelineShaderStageCreateInfo )*             pStages;
15220     uint32_t                                              groupCount;
15221     const( VkRayTracingShaderGroupCreateInfoKHR )*        pGroups;
15222     uint32_t                                              maxPipelineRayRecursionDepth;
15223     const( VkPipelineLibraryCreateInfoKHR )*              pLibraryInfo;
15224     const( VkRayTracingPipelineInterfaceCreateInfoKHR )*  pLibraryInterface;
15225     const( VkPipelineDynamicStateCreateInfo )*            pDynamicState;
15226     VkPipelineLayout                                      layout;
15227     VkPipeline                                            basePipelineHandle;
15228     int32_t                                               basePipelineIndex;
15229 }
15230 
15231 struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR {
15232     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR;
15233     void*            pNext;
15234     VkBool32         rayTracingPipeline;
15235     VkBool32         rayTracingPipelineShaderGroupHandleCaptureReplay;
15236     VkBool32         rayTracingPipelineShaderGroupHandleCaptureReplayMixed;
15237     VkBool32         rayTracingPipelineTraceRaysIndirect;
15238     VkBool32         rayTraversalPrimitiveCulling;
15239 }
15240 
15241 struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR {
15242     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR;
15243     void*            pNext;
15244     uint32_t         shaderGroupHandleSize;
15245     uint32_t         maxRayRecursionDepth;
15246     uint32_t         maxShaderGroupStride;
15247     uint32_t         shaderGroupBaseAlignment;
15248     uint32_t         shaderGroupHandleCaptureReplaySize;
15249     uint32_t         maxRayDispatchInvocationCount;
15250     uint32_t         shaderGroupHandleAlignment;
15251     uint32_t         maxRayHitAttributeSize;
15252 }
15253 
15254 struct VkStridedDeviceAddressRegionKHR {
15255     VkDeviceAddress  deviceAddress;
15256     VkDeviceSize     stride;
15257     VkDeviceSize     size;
15258 }
15259 
15260 struct VkTraceRaysIndirectCommandKHR {
15261     uint32_t  width;
15262     uint32_t  height;
15263     uint32_t  depth;
15264 }
15265 
15266 
15267 // - VK_KHR_ray_query -
15268 enum VK_KHR_ray_query = 1;
15269 
15270 enum VK_KHR_RAY_QUERY_SPEC_VERSION = 1;
15271 enum const( char )* VK_KHR_RAY_QUERY_EXTENSION_NAME = "VK_KHR_ray_query";
15272 
15273 struct VkPhysicalDeviceRayQueryFeaturesKHR {
15274     VkStructureType  sType = VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR;
15275     void*            pNext;
15276     VkBool32         rayQuery;
15277 }
15278 
15279