vulkanalia_sys/
bitmasks.rs1#![allow(
9 non_camel_case_types,
10 non_snake_case,
11 clippy::bad_bit_mask,
12 clippy::let_unit_value,
13 clippy::missing_safety_doc,
14 clippy::missing_transmute_annotations,
15 clippy::needless_lifetimes,
16 clippy::too_many_arguments,
17 clippy::type_complexity,
18 clippy::unnecessary_cast,
19 clippy::upper_case_acronyms,
20 clippy::useless_transmute
21)]
22
23use bitflags::bitflags;
24
25use crate::{Flags, Flags64};
26
27bitflags! {
28 #[repr(transparent)]
30 #[derive(Default)]
31 pub struct AccelerationStructureCreateFlagsKHR: Flags {
32 const DEVICE_ADDRESS_CAPTURE_REPLAY = 1;
33 const MOTION_NV = 1 << 2;
34 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT = 1 << 3;
35 }
36}
37
38bitflags! {
39 #[repr(transparent)]
41 #[derive(Default)]
42 pub struct AccelerationStructureMotionInfoFlagsNV: Flags { }
43}
44
45bitflags! {
46 #[repr(transparent)]
48 #[derive(Default)]
49 pub struct AccelerationStructureMotionInstanceFlagsNV: Flags { }
50}
51
52bitflags! {
53 #[repr(transparent)]
55 #[derive(Default)]
56 pub struct AccessFlags: Flags {
57 const INDIRECT_COMMAND_READ = 1;
58 const INDEX_READ = 1 << 1;
59 const VERTEX_ATTRIBUTE_READ = 1 << 2;
60 const UNIFORM_READ = 1 << 3;
61 const INPUT_ATTACHMENT_READ = 1 << 4;
62 const SHADER_READ = 1 << 5;
63 const SHADER_WRITE = 1 << 6;
64 const COLOR_ATTACHMENT_READ = 1 << 7;
65 const COLOR_ATTACHMENT_WRITE = 1 << 8;
66 const DEPTH_STENCIL_ATTACHMENT_READ = 1 << 9;
67 const DEPTH_STENCIL_ATTACHMENT_WRITE = 1 << 10;
68 const TRANSFER_READ = 1 << 11;
69 const TRANSFER_WRITE = 1 << 12;
70 const HOST_READ = 1 << 13;
71 const HOST_WRITE = 1 << 14;
72 const MEMORY_READ = 1 << 15;
73 const MEMORY_WRITE = 1 << 16;
74 const COMMAND_PREPROCESS_READ_EXT = 1 << 17;
75 const COMMAND_PREPROCESS_WRITE_EXT = 1 << 18;
76 const COLOR_ATTACHMENT_READ_NONCOHERENT_EXT = 1 << 19;
77 const CONDITIONAL_RENDERING_READ_EXT = 1 << 20;
78 const ACCELERATION_STRUCTURE_READ_KHR = 1 << 21;
79 const ACCELERATION_STRUCTURE_WRITE_KHR = 1 << 22;
80 const FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR = 1 << 23;
81 const FRAGMENT_DENSITY_MAP_READ_EXT = 1 << 24;
82 const TRANSFORM_FEEDBACK_WRITE_EXT = 1 << 25;
83 const TRANSFORM_FEEDBACK_COUNTER_READ_EXT = 1 << 26;
84 const TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT = 1 << 27;
85 }
86}
87
88bitflags! {
89 #[repr(transparent)]
91 #[derive(Default)]
92 pub struct AccessFlags2: Flags64 {
93 const NONE = 0;
94 const INDIRECT_COMMAND_READ = 1;
95 const INDEX_READ = 1 << 1;
96 const VERTEX_ATTRIBUTE_READ = 1 << 2;
97 const UNIFORM_READ = 1 << 3;
98 const INPUT_ATTACHMENT_READ = 1 << 4;
99 const SHADER_READ = 1 << 5;
100 const SHADER_WRITE = 1 << 6;
101 const COLOR_ATTACHMENT_READ = 1 << 7;
102 const COLOR_ATTACHMENT_WRITE = 1 << 8;
103 const DEPTH_STENCIL_ATTACHMENT_READ = 1 << 9;
104 const DEPTH_STENCIL_ATTACHMENT_WRITE = 1 << 10;
105 const TRANSFER_READ = 1 << 11;
106 const TRANSFER_WRITE = 1 << 12;
107 const HOST_READ = 1 << 13;
108 const HOST_WRITE = 1 << 14;
109 const MEMORY_READ = 1 << 15;
110 const MEMORY_WRITE = 1 << 16;
111 const COMMAND_PREPROCESS_READ_EXT = 1 << 17;
112 const COMMAND_PREPROCESS_WRITE_EXT = 1 << 18;
113 const COLOR_ATTACHMENT_READ_NONCOHERENT_EXT = 1 << 19;
114 const CONDITIONAL_RENDERING_READ_EXT = 1 << 20;
115 const ACCELERATION_STRUCTURE_READ_KHR = 1 << 21;
116 const ACCELERATION_STRUCTURE_WRITE_KHR = 1 << 22;
117 const FRAGMENT_SHADING_RATE_ATTACHMENT_READ_KHR = 1 << 23;
118 const FRAGMENT_DENSITY_MAP_READ_EXT = 1 << 24;
119 const TRANSFORM_FEEDBACK_WRITE_EXT = 1 << 25;
120 const TRANSFORM_FEEDBACK_COUNTER_READ_EXT = 1 << 26;
121 const TRANSFORM_FEEDBACK_COUNTER_WRITE_EXT = 1 << 27;
122 const SHADER_SAMPLED_READ = 1 << 32;
123 const SHADER_STORAGE_READ = 1 << 33;
124 const SHADER_STORAGE_WRITE = 1 << 34;
125 const VIDEO_DECODE_READ_KHR = 1 << 35;
126 const VIDEO_DECODE_WRITE_KHR = 1 << 36;
127 const VIDEO_ENCODE_READ_KHR = 1 << 37;
128 const VIDEO_ENCODE_WRITE_KHR = 1 << 38;
129 const INVOCATION_MASK_READ_HUAWEI = 1 << 39;
130 const SHADER_BINDING_TABLE_READ_KHR = 1 << 40;
131 const DESCRIPTOR_BUFFER_READ_EXT = 1 << 41;
132 const OPTICAL_FLOW_READ_NV = 1 << 42;
133 const OPTICAL_FLOW_WRITE_NV = 1 << 43;
134 const MICROMAP_READ_EXT = 1 << 44;
135 const MICROMAP_WRITE_EXT = 1 << 45;
136 const DATA_GRAPH_READ_ARM = 1 << 47;
137 const DATA_GRAPH_WRITE_ARM = 1 << 48;
138 const SHADER_TILE_ATTACHMENT_READ_QCOM = 1 << 51;
139 const SHADER_TILE_ATTACHMENT_WRITE_QCOM = 1 << 52;
140 const MEMORY_DECOMPRESSION_READ_EXT = 1 << 55;
141 const MEMORY_DECOMPRESSION_WRITE_EXT = 1 << 56;
142 }
143}
144
145bitflags! {
146 #[repr(transparent)]
148 #[derive(Default)]
149 pub struct AccessFlags3KHR: Flags {
150 const NONE = 0;
151 }
152}
153
154bitflags! {
155 #[repr(transparent)]
157 #[derive(Default)]
158 pub struct AcquireProfilingLockFlagsKHR: Flags { }
159}
160
161bitflags! {
162 #[repr(transparent)]
164 #[derive(Default)]
165 pub struct AddressCopyFlagsKHR: Flags {
166 const DEVICE_LOCAL = 1;
167 const SPARSE = 1 << 1;
168 const PROTECTED = 1 << 2;
169 }
170}
171
172bitflags! {
173 #[repr(transparent)]
175 #[derive(Default)]
176 pub struct AndroidSurfaceCreateFlagsKHR: Flags { }
177}
178
179bitflags! {
180 #[repr(transparent)]
182 #[derive(Default)]
183 pub struct AttachmentDescriptionFlags: Flags {
184 const MAY_ALIAS = 1;
185 const RESOLVE_SKIP_TRANSFER_FUNCTION_KHR = 1 << 1;
186 const RESOLVE_ENABLE_TRANSFER_FUNCTION_KHR = 1 << 2;
187 }
188}
189
190bitflags! {
191 #[repr(transparent)]
193 #[derive(Default)]
194 pub struct BufferCreateFlags: Flags {
195 const SPARSE_BINDING = 1;
196 const SPARSE_RESIDENCY = 1 << 1;
197 const SPARSE_ALIASED = 1 << 2;
198 const PROTECTED = 1 << 3;
199 const DEVICE_ADDRESS_CAPTURE_REPLAY = 1 << 4;
200 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT = 1 << 5;
201 const VIDEO_PROFILE_INDEPENDENT_KHR = 1 << 6;
202 }
203}
204
205bitflags! {
206 #[repr(transparent)]
208 #[derive(Default)]
209 pub struct BufferUsageFlags: Flags {
210 const TRANSFER_SRC = 1;
211 const TRANSFER_DST = 1 << 1;
212 const UNIFORM_TEXEL_BUFFER = 1 << 2;
213 const STORAGE_TEXEL_BUFFER = 1 << 3;
214 const UNIFORM_BUFFER = 1 << 4;
215 const STORAGE_BUFFER = 1 << 5;
216 const INDEX_BUFFER = 1 << 6;
217 const VERTEX_BUFFER = 1 << 7;
218 const INDIRECT_BUFFER = 1 << 8;
219 const CONDITIONAL_RENDERING_EXT = 1 << 9;
220 const SHADER_BINDING_TABLE_KHR = 1 << 10;
221 const TRANSFORM_FEEDBACK_BUFFER_EXT = 1 << 11;
222 const TRANSFORM_FEEDBACK_COUNTER_BUFFER_EXT = 1 << 12;
223 const VIDEO_DECODE_SRC_KHR = 1 << 13;
224 const VIDEO_DECODE_DST_KHR = 1 << 14;
225 const VIDEO_ENCODE_DST_KHR = 1 << 15;
226 const VIDEO_ENCODE_SRC_KHR = 1 << 16;
227 const SHADER_DEVICE_ADDRESS = 1 << 17;
228 const ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR = 1 << 19;
229 const ACCELERATION_STRUCTURE_STORAGE_KHR = 1 << 20;
230 const SAMPLER_DESCRIPTOR_BUFFER_EXT = 1 << 21;
231 const RESOURCE_DESCRIPTOR_BUFFER_EXT = 1 << 22;
232 const MICROMAP_BUILD_INPUT_READ_ONLY_EXT = 1 << 23;
233 const MICROMAP_STORAGE_EXT = 1 << 24;
234 const EXECUTION_GRAPH_SCRATCH_AMDX = 1 << 25;
235 const PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_EXT = 1 << 26;
236 const TILE_MEMORY_QCOM = 1 << 27;
237 }
238}
239
240bitflags! {
241 #[repr(transparent)]
243 #[derive(Default)]
244 pub struct BufferUsageFlags2: Flags64 {
245 const TRANSFER_SRC = 1;
246 const TRANSFER_DST = 1 << 1;
247 const UNIFORM_TEXEL_BUFFER = 1 << 2;
248 const STORAGE_TEXEL_BUFFER = 1 << 3;
249 const UNIFORM_BUFFER = 1 << 4;
250 const STORAGE_BUFFER = 1 << 5;
251 const INDEX_BUFFER = 1 << 6;
252 const VERTEX_BUFFER = 1 << 7;
253 const INDIRECT_BUFFER = 1 << 8;
254 const CONDITIONAL_RENDERING_EXT = 1 << 9;
255 const SHADER_BINDING_TABLE_KHR = 1 << 10;
256 const TRANSFORM_FEEDBACK_BUFFER_EXT = 1 << 11;
257 const TRANSFORM_FEEDBACK_COUNTER_BUFFER_EXT = 1 << 12;
258 const VIDEO_DECODE_SRC_KHR = 1 << 13;
259 const VIDEO_DECODE_DST_KHR = 1 << 14;
260 const VIDEO_ENCODE_DST_KHR = 1 << 15;
261 const VIDEO_ENCODE_SRC_KHR = 1 << 16;
262 const SHADER_DEVICE_ADDRESS = 1 << 17;
263 const ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR = 1 << 19;
264 const ACCELERATION_STRUCTURE_STORAGE_KHR = 1 << 20;
265 const SAMPLER_DESCRIPTOR_BUFFER_EXT = 1 << 21;
266 const RESOURCE_DESCRIPTOR_BUFFER_EXT = 1 << 22;
267 const MICROMAP_BUILD_INPUT_READ_ONLY_EXT = 1 << 23;
268 const MICROMAP_STORAGE_EXT = 1 << 24;
269 const EXECUTION_GRAPH_SCRATCH_AMDX = 1 << 25;
270 const PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_EXT = 1 << 26;
271 const TILE_MEMORY_QCOM = 1 << 27;
272 const DATA_GRAPH_FOREIGN_DESCRIPTOR_ARM = 1 << 29;
273 const PREPROCESS_BUFFER_EXT = 1 << 31;
274 const MEMORY_DECOMPRESSION_EXT = 1 << 32;
275 const COMPRESSED_DATA_DGF1_AMDX = 1 << 33;
276 }
277}
278
279bitflags! {
280 #[repr(transparent)]
282 #[derive(Default)]
283 pub struct BufferViewCreateFlags: Flags { }
284}
285
286bitflags! {
287 #[repr(transparent)]
289 #[derive(Default)]
290 pub struct BuildAccelerationStructureFlagsKHR: Flags {
291 const ALLOW_UPDATE = 1;
292 const ALLOW_COMPACTION = 1 << 1;
293 const PREFER_FAST_TRACE = 1 << 2;
294 const PREFER_FAST_BUILD = 1 << 3;
295 const LOW_MEMORY = 1 << 4;
296 const MOTION_NV = 1 << 5;
297 const ALLOW_OPACITY_MICROMAP_UPDATE_EXT = 1 << 6;
298 const ALLOW_DISABLE_OPACITY_MICROMAPS_EXT = 1 << 7;
299 const ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT = 1 << 8;
300 const ALLOW_DISPLACEMENT_MICROMAP_UPDATE_NV = 1 << 9;
301 const ALLOW_DATA_ACCESS = 1 << 11;
302 const ALLOW_CLUSTER_OPACITY_MICROMAPS_NV = 1 << 12;
303 }
304}
305
306bitflags! {
307 #[repr(transparent)]
309 #[derive(Default)]
310 pub struct BuildMicromapFlagsEXT: Flags {
311 const PREFER_FAST_TRACE = 1;
312 const PREFER_FAST_BUILD = 1 << 1;
313 const ALLOW_COMPACTION = 1 << 2;
314 }
315}
316
317bitflags! {
318 #[repr(transparent)]
320 #[derive(Default)]
321 pub struct ClusterAccelerationStructureAddressResolutionFlagsNV: Flags {
322 const NONE = 0;
323 const INDIRECTED_DST_IMPLICIT_DATA = 1;
324 const INDIRECTED_SCRATCH_DATA = 1 << 1;
325 const INDIRECTED_DST_ADDRESS_ARRAY = 1 << 2;
326 const INDIRECTED_DST_SIZES_ARRAY = 1 << 3;
327 const INDIRECTED_SRC_INFOS_ARRAY = 1 << 4;
328 const INDIRECTED_SRC_INFOS_COUNT = 1 << 5;
329 }
330}
331
332bitflags! {
333 #[repr(transparent)]
335 #[derive(Default)]
336 pub struct ClusterAccelerationStructureClusterFlagsNV: Flags {
337 const ALLOW_DISABLE_OPACITY_MICROMAPS = 1;
338 }
339}
340
341bitflags! {
342 #[repr(transparent)]
344 #[derive(Default)]
345 pub struct ClusterAccelerationStructureGeometryFlagsNV: Flags {
346 const CULL_DISABLE = 1;
347 const NO_DUPLICATE_ANYHIT_INVOCATION = 1 << 1;
348 const OPAQUE = 1 << 2;
349 }
350}
351
352bitflags! {
353 #[repr(transparent)]
355 #[derive(Default)]
356 pub struct ClusterAccelerationStructureIndexFormatFlagsNV: Flags {
357 const _8BIT = 1;
358 const _16BIT = 1 << 1;
359 const _32BIT = 1 << 2;
360 }
361}
362
363bitflags! {
364 #[repr(transparent)]
366 #[derive(Default)]
367 pub struct ColorComponentFlags: Flags {
368 const R = 1;
369 const G = 1 << 1;
370 const B = 1 << 2;
371 const A = 1 << 3;
372 }
373}
374
375bitflags! {
376 #[repr(transparent)]
378 #[derive(Default)]
379 pub struct CommandBufferResetFlags: Flags {
380 const RELEASE_RESOURCES = 1;
381 }
382}
383
384bitflags! {
385 #[repr(transparent)]
387 #[derive(Default)]
388 pub struct CommandBufferUsageFlags: Flags {
389 const ONE_TIME_SUBMIT = 1;
390 const RENDER_PASS_CONTINUE = 1 << 1;
391 const SIMULTANEOUS_USE = 1 << 2;
392 }
393}
394
395bitflags! {
396 #[repr(transparent)]
398 #[derive(Default)]
399 pub struct CommandPoolCreateFlags: Flags {
400 const TRANSIENT = 1;
401 const RESET_COMMAND_BUFFER = 1 << 1;
402 const PROTECTED = 1 << 2;
403 }
404}
405
406bitflags! {
407 #[repr(transparent)]
409 #[derive(Default)]
410 pub struct CommandPoolResetFlags: Flags {
411 const RELEASE_RESOURCES = 1;
412 }
413}
414
415bitflags! {
416 #[repr(transparent)]
418 #[derive(Default)]
419 pub struct CommandPoolTrimFlags: Flags { }
420}
421
422bitflags! {
423 #[repr(transparent)]
425 #[derive(Default)]
426 pub struct CompositeAlphaFlagsKHR: Flags {
427 const OPAQUE = 1;
428 const PRE_MULTIPLIED = 1 << 1;
429 const POST_MULTIPLIED = 1 << 2;
430 const INHERIT = 1 << 3;
431 }
432}
433
434bitflags! {
435 #[repr(transparent)]
437 #[derive(Default)]
438 pub struct ConditionalRenderingFlagsEXT: Flags {
439 const INVERTED = 1;
440 }
441}
442
443bitflags! {
444 #[repr(transparent)]
446 #[derive(Default)]
447 pub struct CullModeFlags: Flags {
448 const NONE = 0;
449 const FRONT = 1;
450 const BACK = 1 << 1;
451 const FRONT_AND_BACK = Self::FRONT.bits | Self::BACK.bits;
452 }
453}
454
455bitflags! {
456 #[repr(transparent)]
458 #[derive(Default)]
459 pub struct DataGraphPipelineDispatchFlagsARM: Flags { }
460}
461
462bitflags! {
463 #[repr(transparent)]
465 #[derive(Default)]
466 pub struct DataGraphPipelineSessionCreateFlagsARM: Flags {
467 const PROTECTED = 1;
468 }
469}
470
471bitflags! {
472 #[repr(transparent)]
474 #[derive(Default)]
475 pub struct DebugReportFlagsEXT: Flags {
476 const INFORMATION = 1;
477 const WARNING = 1 << 1;
478 const PERFORMANCE_WARNING = 1 << 2;
479 const ERROR = 1 << 3;
480 const DEBUG = 1 << 4;
481 }
482}
483
484bitflags! {
485 #[repr(transparent)]
487 #[derive(Default)]
488 pub struct DebugUtilsMessageSeverityFlagsEXT: Flags {
489 const VERBOSE = 1;
490 const INFO = 1 << 4;
491 const WARNING = 1 << 8;
492 const ERROR = 1 << 12;
493 }
494}
495
496bitflags! {
497 #[repr(transparent)]
499 #[derive(Default)]
500 pub struct DebugUtilsMessageTypeFlagsEXT: Flags {
501 const GENERAL = 1;
502 const VALIDATION = 1 << 1;
503 const PERFORMANCE = 1 << 2;
504 const DEVICE_ADDRESS_BINDING = 1 << 3;
505 }
506}
507
508bitflags! {
509 #[repr(transparent)]
511 #[derive(Default)]
512 pub struct DebugUtilsMessengerCallbackDataFlagsEXT: Flags { }
513}
514
515bitflags! {
516 #[repr(transparent)]
518 #[derive(Default)]
519 pub struct DebugUtilsMessengerCreateFlagsEXT: Flags { }
520}
521
522bitflags! {
523 #[repr(transparent)]
525 #[derive(Default)]
526 pub struct DependencyFlags: Flags {
527 const BY_REGION = 1;
528 const VIEW_LOCAL = 1 << 1;
529 const DEVICE_GROUP = 1 << 2;
530 const FEEDBACK_LOOP_EXT = 1 << 3;
531 const QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_KHR = 1 << 5;
532 const ASYMMETRIC_EVENT_KHR = 1 << 6;
533 }
534}
535
536bitflags! {
537 #[repr(transparent)]
539 #[derive(Default)]
540 pub struct DescriptorBindingFlags: Flags {
541 const UPDATE_AFTER_BIND = 1;
542 const UPDATE_UNUSED_WHILE_PENDING = 1 << 1;
543 const PARTIALLY_BOUND = 1 << 2;
544 const VARIABLE_DESCRIPTOR_COUNT = 1 << 3;
545 }
546}
547
548bitflags! {
549 #[repr(transparent)]
551 #[derive(Default)]
552 pub struct DescriptorPoolCreateFlags: Flags {
553 const FREE_DESCRIPTOR_SET = 1;
554 const UPDATE_AFTER_BIND = 1 << 1;
555 const HOST_ONLY_EXT = 1 << 2;
556 const ALLOW_OVERALLOCATION_SETS_NV = 1 << 3;
557 const ALLOW_OVERALLOCATION_POOLS_NV = 1 << 4;
558 }
559}
560
561bitflags! {
562 #[repr(transparent)]
564 #[derive(Default)]
565 pub struct DescriptorPoolResetFlags: Flags { }
566}
567
568bitflags! {
569 #[repr(transparent)]
571 #[derive(Default)]
572 pub struct DescriptorSetLayoutCreateFlags: Flags {
573 const PUSH_DESCRIPTOR = 1;
574 const UPDATE_AFTER_BIND_POOL = 1 << 1;
575 const HOST_ONLY_POOL_EXT = 1 << 2;
576 const DESCRIPTOR_BUFFER_EXT = 1 << 4;
577 const EMBEDDED_IMMUTABLE_SAMPLERS_EXT = 1 << 5;
578 const PER_STAGE_NV = 1 << 6;
579 const INDIRECT_BINDABLE_NV = 1 << 7;
580 }
581}
582
583bitflags! {
584 #[repr(transparent)]
586 #[derive(Default)]
587 pub struct DescriptorUpdateTemplateCreateFlags: Flags { }
588}
589
590bitflags! {
591 #[repr(transparent)]
593 #[derive(Default)]
594 pub struct DeviceAddressBindingFlagsEXT: Flags {
595 const INTERNAL_OBJECT = 1;
596 }
597}
598
599bitflags! {
600 #[repr(transparent)]
602 #[derive(Default)]
603 pub struct DeviceCreateFlags: Flags { }
604}
605
606bitflags! {
607 #[repr(transparent)]
609 #[derive(Default)]
610 pub struct DeviceDiagnosticsConfigFlagsNV: Flags {
611 const ENABLE_SHADER_DEBUG_INFO = 1;
612 const ENABLE_RESOURCE_TRACKING = 1 << 1;
613 const ENABLE_AUTOMATIC_CHECKPOINTS = 1 << 2;
614 const ENABLE_SHADER_ERROR_REPORTING = 1 << 3;
615 }
616}
617
618bitflags! {
619 #[repr(transparent)]
621 #[derive(Default)]
622 pub struct DeviceGroupPresentModeFlagsKHR: Flags {
623 const LOCAL = 1;
624 const REMOTE = 1 << 1;
625 const SUM = 1 << 2;
626 const LOCAL_MULTI_DEVICE = 1 << 3;
627 }
628}
629
630bitflags! {
631 #[repr(transparent)]
633 #[derive(Default)]
634 pub struct DeviceMemoryReportFlagsEXT: Flags { }
635}
636
637bitflags! {
638 #[repr(transparent)]
640 #[derive(Default)]
641 pub struct DeviceQueueCreateFlags: Flags {
642 const PROTECTED = 1;
643 }
644}
645
646bitflags! {
647 #[repr(transparent)]
649 #[derive(Default)]
650 pub struct DirectDriverLoadingFlagsLUNARG: Flags { }
651}
652
653bitflags! {
654 #[repr(transparent)]
656 #[derive(Default)]
657 pub struct DirectFBSurfaceCreateFlagsEXT: Flags { }
658}
659
660bitflags! {
661 #[repr(transparent)]
663 #[derive(Default)]
664 pub struct DisplayModeCreateFlagsKHR: Flags { }
665}
666
667bitflags! {
668 #[repr(transparent)]
670 #[derive(Default)]
671 pub struct DisplayPlaneAlphaFlagsKHR: Flags {
672 const OPAQUE = 1;
673 const GLOBAL = 1 << 1;
674 const PER_PIXEL = 1 << 2;
675 const PER_PIXEL_PREMULTIPLIED = 1 << 3;
676 }
677}
678
679bitflags! {
680 #[repr(transparent)]
682 #[derive(Default)]
683 pub struct DisplaySurfaceCreateFlagsKHR: Flags { }
684}
685
686bitflags! {
687 #[repr(transparent)]
689 #[derive(Default)]
690 pub struct EventCreateFlags: Flags {
691 const DEVICE_ONLY = 1;
692 }
693}
694
695bitflags! {
696 #[repr(transparent)]
698 #[derive(Default)]
699 pub struct ExportMetalObjectTypeFlagsEXT: Flags {
700 const METAL_DEVICE = 1;
701 const METAL_COMMAND_QUEUE = 1 << 1;
702 const METAL_BUFFER = 1 << 2;
703 const METAL_TEXTURE = 1 << 3;
704 const METAL_IOSURFACE = 1 << 4;
705 const METAL_SHARED_EVENT = 1 << 5;
706 }
707}
708
709bitflags! {
710 #[repr(transparent)]
712 #[derive(Default)]
713 pub struct ExternalFenceFeatureFlags: Flags {
714 const EXPORTABLE = 1;
715 const IMPORTABLE = 1 << 1;
716 }
717}
718
719bitflags! {
720 #[repr(transparent)]
722 #[derive(Default)]
723 pub struct ExternalFenceHandleTypeFlags: Flags {
724 const OPAQUE_FD = 1;
725 const OPAQUE_WIN32 = 1 << 1;
726 const OPAQUE_WIN32_KMT = 1 << 2;
727 const SYNC_FD = 1 << 3;
728 const SCI_SYNC_OBJ_NV = 1 << 4;
729 const SCI_SYNC_FENCE_NV = 1 << 5;
730 }
731}
732
733bitflags! {
734 #[repr(transparent)]
736 #[derive(Default)]
737 pub struct ExternalMemoryFeatureFlags: Flags {
738 const DEDICATED_ONLY = 1;
739 const EXPORTABLE = 1 << 1;
740 const IMPORTABLE = 1 << 2;
741 }
742}
743
744bitflags! {
745 #[repr(transparent)]
747 #[derive(Default)]
748 pub struct ExternalMemoryFeatureFlagsNV: Flags {
749 const DEDICATED_ONLY = 1;
750 const EXPORTABLE = 1 << 1;
751 const IMPORTABLE = 1 << 2;
752 }
753}
754
755bitflags! {
756 #[repr(transparent)]
758 #[derive(Default)]
759 pub struct ExternalMemoryHandleTypeFlags: Flags {
760 const OPAQUE_FD = 1;
761 const OPAQUE_WIN32 = 1 << 1;
762 const OPAQUE_WIN32_KMT = 1 << 2;
763 const D3D11_TEXTURE = 1 << 3;
764 const D3D11_TEXTURE_KMT = 1 << 4;
765 const D3D12_HEAP = 1 << 5;
766 const D3D12_RESOURCE = 1 << 6;
767 const HOST_ALLOCATION_EXT = 1 << 7;
768 const HOST_MAPPED_FOREIGN_MEMORY_EXT = 1 << 8;
769 const DMA_BUF_EXT = 1 << 9;
770 const ANDROID_HARDWARE_BUFFER_ANDROID = 1 << 10;
771 const ZIRCON_VMO_FUCHSIA = 1 << 11;
772 const RDMA_ADDRESS_NV = 1 << 12;
773 const SCI_BUF_NV = 1 << 13;
774 const SCREEN_BUFFER_QNX = 1 << 14;
775 const OH_NATIVE_BUFFER_OHOS = 1 << 15;
776 const MTLBUFFER_EXT = 1 << 16;
777 const MTLTEXTURE_EXT = 1 << 17;
778 const MTLHEAP_EXT = 1 << 18;
779 }
780}
781
782bitflags! {
783 #[repr(transparent)]
785 #[derive(Default)]
786 pub struct ExternalMemoryHandleTypeFlagsNV: Flags {
787 const OPAQUE_WIN32 = 1;
788 const OPAQUE_WIN32_KMT = 1 << 1;
789 const D3D11_IMAGE = 1 << 2;
790 const D3D11_IMAGE_KMT = 1 << 3;
791 }
792}
793
794bitflags! {
795 #[repr(transparent)]
797 #[derive(Default)]
798 pub struct ExternalSemaphoreFeatureFlags: Flags {
799 const EXPORTABLE = 1;
800 const IMPORTABLE = 1 << 1;
801 }
802}
803
804bitflags! {
805 #[repr(transparent)]
807 #[derive(Default)]
808 pub struct ExternalSemaphoreHandleTypeFlags: Flags {
809 const OPAQUE_FD = 1;
810 const OPAQUE_WIN32 = 1 << 1;
811 const OPAQUE_WIN32_KMT = 1 << 2;
812 const D3D12_FENCE = 1 << 3;
813 const SYNC_FD = 1 << 4;
814 const SCI_SYNC_OBJ_NV = 1 << 5;
815 const ZIRCON_EVENT_FUCHSIA = 1 << 7;
816 }
817}
818
819bitflags! {
820 #[repr(transparent)]
822 #[derive(Default)]
823 pub struct FenceCreateFlags: Flags {
824 const SIGNALED = 1;
825 }
826}
827
828bitflags! {
829 #[repr(transparent)]
831 #[derive(Default)]
832 pub struct FenceImportFlags: Flags {
833 const TEMPORARY = 1;
834 }
835}
836
837bitflags! {
838 #[repr(transparent)]
840 #[derive(Default)]
841 pub struct FormatFeatureFlags: Flags {
842 const SAMPLED_IMAGE = 1;
843 const STORAGE_IMAGE = 1 << 1;
844 const STORAGE_IMAGE_ATOMIC = 1 << 2;
845 const UNIFORM_TEXEL_BUFFER = 1 << 3;
846 const STORAGE_TEXEL_BUFFER = 1 << 4;
847 const STORAGE_TEXEL_BUFFER_ATOMIC = 1 << 5;
848 const VERTEX_BUFFER = 1 << 6;
849 const COLOR_ATTACHMENT = 1 << 7;
850 const COLOR_ATTACHMENT_BLEND = 1 << 8;
851 const DEPTH_STENCIL_ATTACHMENT = 1 << 9;
852 const BLIT_SRC = 1 << 10;
853 const BLIT_DST = 1 << 11;
854 const SAMPLED_IMAGE_FILTER_LINEAR = 1 << 12;
855 const SAMPLED_IMAGE_FILTER_CUBIC_EXT = 1 << 13;
856 const TRANSFER_SRC = 1 << 14;
857 const TRANSFER_DST = 1 << 15;
858 const SAMPLED_IMAGE_FILTER_MINMAX = 1 << 16;
859 const MIDPOINT_CHROMA_SAMPLES = 1 << 17;
860 const SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER = 1 << 18;
861 const SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER = 1 << 19;
862 const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT = 1 << 20;
863 const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE = 1 << 21;
864 const DISJOINT = 1 << 22;
865 const COSITED_CHROMA_SAMPLES = 1 << 23;
866 const FRAGMENT_DENSITY_MAP_EXT = 1 << 24;
867 const VIDEO_DECODE_OUTPUT_KHR = 1 << 25;
868 const VIDEO_DECODE_DPB_KHR = 1 << 26;
869 const VIDEO_ENCODE_INPUT_KHR = 1 << 27;
870 const VIDEO_ENCODE_DPB_KHR = 1 << 28;
871 const ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR = 1 << 29;
872 const FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 30;
873 }
874}
875
876bitflags! {
877 #[repr(transparent)]
879 #[derive(Default)]
880 pub struct FormatFeatureFlags2: Flags64 {
881 const SAMPLED_IMAGE = 1;
882 const STORAGE_IMAGE = 1 << 1;
883 const STORAGE_IMAGE_ATOMIC = 1 << 2;
884 const UNIFORM_TEXEL_BUFFER = 1 << 3;
885 const STORAGE_TEXEL_BUFFER = 1 << 4;
886 const STORAGE_TEXEL_BUFFER_ATOMIC = 1 << 5;
887 const VERTEX_BUFFER = 1 << 6;
888 const COLOR_ATTACHMENT = 1 << 7;
889 const COLOR_ATTACHMENT_BLEND = 1 << 8;
890 const DEPTH_STENCIL_ATTACHMENT = 1 << 9;
891 const BLIT_SRC = 1 << 10;
892 const BLIT_DST = 1 << 11;
893 const SAMPLED_IMAGE_FILTER_LINEAR = 1 << 12;
894 const SAMPLED_IMAGE_FILTER_CUBIC = 1 << 13;
895 const TRANSFER_SRC = 1 << 14;
896 const TRANSFER_DST = 1 << 15;
897 const SAMPLED_IMAGE_FILTER_MINMAX = 1 << 16;
898 const MIDPOINT_CHROMA_SAMPLES = 1 << 17;
899 const SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER = 1 << 18;
900 const SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER = 1 << 19;
901 const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT = 1 << 20;
902 const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE = 1 << 21;
903 const DISJOINT = 1 << 22;
904 const COSITED_CHROMA_SAMPLES = 1 << 23;
905 const FRAGMENT_DENSITY_MAP_EXT = 1 << 24;
906 const VIDEO_DECODE_OUTPUT_KHR = 1 << 25;
907 const VIDEO_DECODE_DPB_KHR = 1 << 26;
908 const VIDEO_ENCODE_INPUT_KHR = 1 << 27;
909 const VIDEO_ENCODE_DPB_KHR = 1 << 28;
910 const ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR = 1 << 29;
911 const FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 30;
912 const STORAGE_READ_WITHOUT_FORMAT = 1 << 31;
913 const STORAGE_WRITE_WITHOUT_FORMAT = 1 << 32;
914 const SAMPLED_IMAGE_DEPTH_COMPARISON = 1 << 33;
915 const WEIGHT_IMAGE_QCOM = 1 << 34;
916 const WEIGHT_SAMPLED_IMAGE_QCOM = 1 << 35;
917 const BLOCK_MATCHING_QCOM = 1 << 36;
918 const BOX_FILTER_SAMPLED_QCOM = 1 << 37;
919 const LINEAR_COLOR_ATTACHMENT_NV = 1 << 38;
920 const TENSOR_SHADER_ARM = 1 << 39;
921 const OPTICAL_FLOW_IMAGE_NV = 1 << 40;
922 const OPTICAL_FLOW_VECTOR_NV = 1 << 41;
923 const OPTICAL_FLOW_COST_NV = 1 << 42;
924 const TENSOR_IMAGE_ALIASING_ARM = 1 << 43;
925 const HOST_IMAGE_TRANSFER = 1 << 46;
926 const TENSOR_DATA_GRAPH_ARM = 1 << 48;
927 const VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_KHR = 1 << 49;
928 const VIDEO_ENCODE_EMPHASIS_MAP_KHR = 1 << 50;
929 const ACCELERATION_STRUCTURE_RADIUS_BUFFER_NV = 1 << 51;
930 const DEPTH_COPY_ON_COMPUTE_QUEUE_KHR = 1 << 52;
931 const DEPTH_COPY_ON_TRANSFER_QUEUE_KHR = 1 << 53;
932 const STENCIL_COPY_ON_COMPUTE_QUEUE_KHR = 1 << 54;
933 const STENCIL_COPY_ON_TRANSFER_QUEUE_KHR = 1 << 55;
934 const COPY_IMAGE_INDIRECT_DST_KHR = 1 << 59;
935 }
936}
937
938bitflags! {
939 #[repr(transparent)]
941 #[derive(Default)]
942 pub struct FrameBoundaryFlagsEXT: Flags {
943 const FRAME_END = 1;
944 }
945}
946
947bitflags! {
948 #[repr(transparent)]
950 #[derive(Default)]
951 pub struct FramebufferCreateFlags: Flags {
952 const IMAGELESS = 1;
953 }
954}
955
956bitflags! {
957 #[repr(transparent)]
959 #[derive(Default)]
960 pub struct GeometryFlagsKHR: Flags {
961 const OPAQUE = 1;
962 const NO_DUPLICATE_ANY_HIT_INVOCATION = 1 << 1;
963 }
964}
965
966bitflags! {
967 #[repr(transparent)]
969 #[derive(Default)]
970 pub struct GeometryInstanceFlagsKHR: Flags {
971 const TRIANGLE_FACING_CULL_DISABLE = 1;
972 const TRIANGLE_FLIP_FACING = 1 << 1;
973 const FORCE_OPAQUE = 1 << 2;
974 const FORCE_NO_OPAQUE = 1 << 3;
975 const FORCE_OPACITY_MICROMAP_2_STATE_EXT = 1 << 4;
976 const DISABLE_OPACITY_MICROMAPS_EXT = 1 << 5;
977 }
978}
979
980bitflags! {
981 #[repr(transparent)]
983 #[derive(Default)]
984 pub struct GraphicsPipelineLibraryFlagsEXT: Flags {
985 const VERTEX_INPUT_INTERFACE = 1;
986 const PRE_RASTERIZATION_SHADERS = 1 << 1;
987 const FRAGMENT_SHADER = 1 << 2;
988 const FRAGMENT_OUTPUT_INTERFACE = 1 << 3;
989 }
990}
991
992bitflags! {
993 #[repr(transparent)]
995 #[derive(Default)]
996 pub struct HeadlessSurfaceCreateFlagsEXT: Flags { }
997}
998
999bitflags! {
1000 #[repr(transparent)]
1002 #[derive(Default)]
1003 pub struct HostImageCopyFlags: Flags {
1004 const MEMCPY = 1;
1005 }
1006}
1007
1008bitflags! {
1009 #[repr(transparent)]
1011 #[derive(Default)]
1012 pub struct IOSSurfaceCreateFlagsMVK: Flags { }
1013}
1014
1015bitflags! {
1016 #[repr(transparent)]
1018 #[derive(Default)]
1019 pub struct ImageAspectFlags: Flags {
1020 const COLOR = 1;
1021 const DEPTH = 1 << 1;
1022 const STENCIL = 1 << 2;
1023 const METADATA = 1 << 3;
1024 const PLANE_0 = 1 << 4;
1025 const PLANE_1 = 1 << 5;
1026 const PLANE_2 = 1 << 6;
1027 const MEMORY_PLANE_0_EXT = 1 << 7;
1028 const MEMORY_PLANE_1_EXT = 1 << 8;
1029 const MEMORY_PLANE_2_EXT = 1 << 9;
1030 const MEMORY_PLANE_3_EXT = 1 << 10;
1031 }
1032}
1033
1034bitflags! {
1035 #[repr(transparent)]
1037 #[derive(Default)]
1038 pub struct ImageCompressionFixedRateFlagsEXT: Flags {
1039 const NONE = 0;
1040 const _1BPC = 1;
1041 const _2BPC = 1 << 1;
1042 const _3BPC = 1 << 2;
1043 const _4BPC = 1 << 3;
1044 const _5BPC = 1 << 4;
1045 const _6BPC = 1 << 5;
1046 const _7BPC = 1 << 6;
1047 const _8BPC = 1 << 7;
1048 const _9BPC = 1 << 8;
1049 const _10BPC = 1 << 9;
1050 const _11BPC = 1 << 10;
1051 const _12BPC = 1 << 11;
1052 const _13BPC = 1 << 12;
1053 const _14BPC = 1 << 13;
1054 const _15BPC = 1 << 14;
1055 const _16BPC = 1 << 15;
1056 const _17BPC = 1 << 16;
1057 const _18BPC = 1 << 17;
1058 const _19BPC = 1 << 18;
1059 const _20BPC = 1 << 19;
1060 const _21BPC = 1 << 20;
1061 const _22BPC = 1 << 21;
1062 const _23BPC = 1 << 22;
1063 const _24BPC = 1 << 23;
1064 }
1065}
1066
1067bitflags! {
1068 #[repr(transparent)]
1070 #[derive(Default)]
1071 pub struct ImageCompressionFlagsEXT: Flags {
1072 const DEFAULT = 0;
1073 const FIXED_RATE_DEFAULT = 1;
1074 const FIXED_RATE_EXPLICIT = 1 << 1;
1075 const DISABLED = 1 << 2;
1076 }
1077}
1078
1079bitflags! {
1080 #[repr(transparent)]
1082 #[derive(Default)]
1083 pub struct ImageConstraintsInfoFlagsFUCHSIA: Flags {
1084 const CPU_READ_RARELY = 1;
1085 const CPU_READ_OFTEN = 1 << 1;
1086 const CPU_WRITE_RARELY = 1 << 2;
1087 const CPU_WRITE_OFTEN = 1 << 3;
1088 const PROTECTED_OPTIONAL = 1 << 4;
1089 }
1090}
1091
1092bitflags! {
1093 #[repr(transparent)]
1095 #[derive(Default)]
1096 pub struct ImageCreateFlags: Flags {
1097 const SPARSE_BINDING = 1;
1098 const SPARSE_RESIDENCY = 1 << 1;
1099 const SPARSE_ALIASED = 1 << 2;
1100 const MUTABLE_FORMAT = 1 << 3;
1101 const CUBE_COMPATIBLE = 1 << 4;
1102 const _2D_ARRAY_COMPATIBLE = 1 << 5;
1103 const SPLIT_INSTANCE_BIND_REGIONS = 1 << 6;
1104 const BLOCK_TEXEL_VIEW_COMPATIBLE = 1 << 7;
1105 const EXTENDED_USAGE = 1 << 8;
1106 const DISJOINT = 1 << 9;
1107 const ALIAS = 1 << 10;
1108 const PROTECTED = 1 << 11;
1109 const SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_EXT = 1 << 12;
1110 const CORNER_SAMPLED_NV = 1 << 13;
1111 const SUBSAMPLED_EXT = 1 << 14;
1112 const FRAGMENT_DENSITY_MAP_OFFSET_EXT = 1 << 15;
1113 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT = 1 << 16;
1114 const _2D_VIEW_COMPATIBLE_EXT = 1 << 17;
1115 const MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXT = 1 << 18;
1116 const VIDEO_PROFILE_INDEPENDENT_KHR = 1 << 20;
1117 }
1118}
1119
1120bitflags! {
1121 #[repr(transparent)]
1123 #[derive(Default)]
1124 pub struct ImageFormatConstraintsFlagsFUCHSIA: Flags { }
1125}
1126
1127bitflags! {
1128 #[repr(transparent)]
1130 #[derive(Default)]
1131 pub struct ImagePipeSurfaceCreateFlagsFUCHSIA: Flags { }
1132}
1133
1134bitflags! {
1135 #[repr(transparent)]
1137 #[derive(Default)]
1138 pub struct ImageUsageFlags: Flags {
1139 const TRANSFER_SRC = 1;
1140 const TRANSFER_DST = 1 << 1;
1141 const SAMPLED = 1 << 2;
1142 const STORAGE = 1 << 3;
1143 const COLOR_ATTACHMENT = 1 << 4;
1144 const DEPTH_STENCIL_ATTACHMENT = 1 << 5;
1145 const TRANSIENT_ATTACHMENT = 1 << 6;
1146 const INPUT_ATTACHMENT = 1 << 7;
1147 const FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 8;
1148 const FRAGMENT_DENSITY_MAP_EXT = 1 << 9;
1149 const VIDEO_DECODE_DST_KHR = 1 << 10;
1150 const VIDEO_DECODE_SRC_KHR = 1 << 11;
1151 const VIDEO_DECODE_DPB_KHR = 1 << 12;
1152 const VIDEO_ENCODE_DST_KHR = 1 << 13;
1153 const VIDEO_ENCODE_SRC_KHR = 1 << 14;
1154 const VIDEO_ENCODE_DPB_KHR = 1 << 15;
1155 const INVOCATION_MASK_HUAWEI = 1 << 18;
1156 const ATTACHMENT_FEEDBACK_LOOP_EXT = 1 << 19;
1157 const SAMPLE_WEIGHT_QCOM = 1 << 20;
1158 const SAMPLE_BLOCK_MATCH_QCOM = 1 << 21;
1159 const HOST_TRANSFER = 1 << 22;
1160 const TENSOR_ALIASING_ARM = 1 << 23;
1161 const VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_KHR = 1 << 25;
1162 const VIDEO_ENCODE_EMPHASIS_MAP_KHR = 1 << 26;
1163 const TILE_MEMORY_QCOM = 1 << 27;
1164 }
1165}
1166
1167bitflags! {
1168 #[repr(transparent)]
1170 #[derive(Default)]
1171 pub struct ImageViewCreateFlags: Flags {
1172 const FRAGMENT_DENSITY_MAP_DYNAMIC_EXT = 1;
1173 const FRAGMENT_DENSITY_MAP_DEFERRED_EXT = 1 << 1;
1174 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT = 1 << 2;
1175 }
1176}
1177
1178bitflags! {
1179 #[repr(transparent)]
1181 #[derive(Default)]
1182 pub struct IndirectCommandsInputModeFlagsEXT: Flags {
1183 const VULKAN_INDEX_BUFFER = 1;
1184 const DXGI_INDEX_BUFFER = 1 << 1;
1185 }
1186}
1187
1188bitflags! {
1189 #[repr(transparent)]
1191 #[derive(Default)]
1192 pub struct IndirectCommandsLayoutUsageFlagsEXT: Flags {
1193 const EXPLICIT_PREPROCESS = 1;
1194 const UNORDERED_SEQUENCES = 1 << 1;
1195 }
1196}
1197
1198bitflags! {
1199 #[repr(transparent)]
1201 #[derive(Default)]
1202 pub struct IndirectCommandsLayoutUsageFlagsNV: Flags {
1203 const EXPLICIT_PREPROCESS = 1;
1204 const INDEXED_SEQUENCES = 1 << 1;
1205 const UNORDERED_SEQUENCES = 1 << 2;
1206 }
1207}
1208
1209bitflags! {
1210 #[repr(transparent)]
1212 #[derive(Default)]
1213 pub struct IndirectStateFlagsNV: Flags {
1214 const FLAG_FRONTFACE = 1;
1215 }
1216}
1217
1218bitflags! {
1219 #[repr(transparent)]
1221 #[derive(Default)]
1222 pub struct InstanceCreateFlags: Flags {
1223 const ENUMERATE_PORTABILITY_KHR = 1;
1224 }
1225}
1226
1227bitflags! {
1228 #[repr(transparent)]
1230 #[derive(Default)]
1231 pub struct MacOSSurfaceCreateFlagsMVK: Flags { }
1232}
1233
1234bitflags! {
1235 #[repr(transparent)]
1237 #[derive(Default)]
1238 pub struct MemoryAllocateFlags: Flags {
1239 const DEVICE_MASK = 1;
1240 const DEVICE_ADDRESS = 1 << 1;
1241 const DEVICE_ADDRESS_CAPTURE_REPLAY = 1 << 2;
1242 const ZERO_INITIALIZE_EXT = 1 << 3;
1243 }
1244}
1245
1246bitflags! {
1247 #[repr(transparent)]
1249 #[derive(Default)]
1250 pub struct MemoryDecompressionMethodFlagsEXT: Flags {
1251 const GDEFLATE_1_0 = 1;
1252 }
1253}
1254
1255bitflags! {
1256 #[repr(transparent)]
1258 #[derive(Default)]
1259 pub struct MemoryHeapFlags: Flags {
1260 const DEVICE_LOCAL = 1;
1261 const MULTI_INSTANCE = 1 << 1;
1262 const TILE_MEMORY_QCOM = 1 << 3;
1263 }
1264}
1265
1266bitflags! {
1267 #[repr(transparent)]
1269 #[derive(Default)]
1270 pub struct MemoryMapFlags: Flags {
1271 const PLACED_EXT = 1;
1272 }
1273}
1274
1275bitflags! {
1276 #[repr(transparent)]
1278 #[derive(Default)]
1279 pub struct MemoryPropertyFlags: Flags {
1280 const DEVICE_LOCAL = 1;
1281 const HOST_VISIBLE = 1 << 1;
1282 const HOST_COHERENT = 1 << 2;
1283 const HOST_CACHED = 1 << 3;
1284 const LAZILY_ALLOCATED = 1 << 4;
1285 const PROTECTED = 1 << 5;
1286 const DEVICE_COHERENT_AMD = 1 << 6;
1287 const DEVICE_UNCACHED_AMD = 1 << 7;
1288 const RDMA_CAPABLE_NV = 1 << 8;
1289 }
1290}
1291
1292bitflags! {
1293 #[repr(transparent)]
1295 #[derive(Default)]
1296 pub struct MemoryUnmapFlags: Flags {
1297 const RESERVE_EXT = 1;
1298 }
1299}
1300
1301bitflags! {
1302 #[repr(transparent)]
1304 #[derive(Default)]
1305 pub struct MetalSurfaceCreateFlagsEXT: Flags { }
1306}
1307
1308bitflags! {
1309 #[repr(transparent)]
1311 #[derive(Default)]
1312 pub struct MicromapCreateFlagsEXT: Flags {
1313 const DEVICE_ADDRESS_CAPTURE_REPLAY = 1;
1314 }
1315}
1316
1317bitflags! {
1318 #[repr(transparent)]
1320 #[derive(Default)]
1321 pub struct OpticalFlowExecuteFlagsNV: Flags {
1322 const DISABLE_TEMPORAL_HINTS = 1;
1323 }
1324}
1325
1326bitflags! {
1327 #[repr(transparent)]
1329 #[derive(Default)]
1330 pub struct OpticalFlowGridSizeFlagsNV: Flags {
1331 const UNKNOWN = 0;
1332 const _1X1 = 1;
1333 const _2X2 = 1 << 1;
1334 const _4X4 = 1 << 2;
1335 const _8X8 = 1 << 3;
1336 }
1337}
1338
1339bitflags! {
1340 #[repr(transparent)]
1342 #[derive(Default)]
1343 pub struct OpticalFlowSessionCreateFlagsNV: Flags {
1344 const ENABLE_HINT = 1;
1345 const ENABLE_COST = 1 << 1;
1346 const ENABLE_GLOBAL_FLOW = 1 << 2;
1347 const ALLOW_REGIONS = 1 << 3;
1348 const BOTH_DIRECTIONS = 1 << 4;
1349 }
1350}
1351
1352bitflags! {
1353 #[repr(transparent)]
1355 #[derive(Default)]
1356 pub struct OpticalFlowUsageFlagsNV: Flags {
1357 const UNKNOWN = 0;
1358 const INPUT = 1;
1359 const OUTPUT = 1 << 1;
1360 const HINT = 1 << 2;
1361 const COST = 1 << 3;
1362 const GLOBAL_FLOW = 1 << 4;
1363 }
1364}
1365
1366bitflags! {
1367 #[repr(transparent)]
1369 #[derive(Default)]
1370 pub struct PartitionedAccelerationStructureInstanceFlagsNV: Flags {
1371 const FLAG_TRIANGLE_FACING_CULL_DISABLE = 1;
1372 const FLAG_TRIANGLE_FLIP_FACING = 1 << 1;
1373 const FLAG_FORCE_OPAQUE = 1 << 2;
1374 const FLAG_FORCE_NO_OPAQUE = 1 << 3;
1375 const FLAG_ENABLE_EXPLICIT_BOUNDING_BOX = 1 << 4;
1376 }
1377}
1378
1379bitflags! {
1380 #[repr(transparent)]
1382 #[derive(Default)]
1383 pub struct PastPresentationTimingFlagsEXT: Flags {
1384 const ALLOW_PARTIAL_RESULTS = 1;
1385 const ALLOW_OUT_OF_ORDER_RESULTS = 1 << 1;
1386 }
1387}
1388
1389bitflags! {
1390 #[repr(transparent)]
1392 #[derive(Default)]
1393 pub struct PeerMemoryFeatureFlags: Flags {
1394 const COPY_SRC = 1;
1395 const COPY_DST = 1 << 1;
1396 const GENERIC_SRC = 1 << 2;
1397 const GENERIC_DST = 1 << 3;
1398 }
1399}
1400
1401bitflags! {
1402 #[repr(transparent)]
1404 #[derive(Default)]
1405 pub struct PerformanceCounterDescriptionFlagsARM: Flags { }
1406}
1407
1408bitflags! {
1409 #[repr(transparent)]
1411 #[derive(Default)]
1412 pub struct PerformanceCounterDescriptionFlagsKHR: Flags {
1413 const PERFORMANCE_IMPACTING = 1;
1414 const CONCURRENTLY_IMPACTED = 1 << 1;
1415 }
1416}
1417
1418bitflags! {
1419 #[repr(transparent)]
1421 #[derive(Default)]
1422 pub struct PhysicalDeviceSchedulingControlsFlagsARM: Flags {
1423 const SHADER_CORE_COUNT = 1;
1424 }
1425}
1426
1427bitflags! {
1428 #[repr(transparent)]
1430 #[derive(Default)]
1431 pub struct PipelineCacheCreateFlags: Flags {
1432 const EXTERNALLY_SYNCHRONIZED = 1;
1433 const INTERNALLY_SYNCHRONIZED_MERGE_KHR = 1 << 3;
1434 }
1435}
1436
1437bitflags! {
1438 #[repr(transparent)]
1440 #[derive(Default)]
1441 pub struct PipelineColorBlendStateCreateFlags: Flags {
1442 const RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXT = 1;
1443 }
1444}
1445
1446bitflags! {
1447 #[repr(transparent)]
1449 #[derive(Default)]
1450 pub struct PipelineCompilerControlFlagsAMD: Flags { }
1451}
1452
1453bitflags! {
1454 #[repr(transparent)]
1456 #[derive(Default)]
1457 pub struct PipelineCoverageModulationStateCreateFlagsNV: Flags { }
1458}
1459
1460bitflags! {
1461 #[repr(transparent)]
1463 #[derive(Default)]
1464 pub struct PipelineCoverageReductionStateCreateFlagsNV: Flags { }
1465}
1466
1467bitflags! {
1468 #[repr(transparent)]
1470 #[derive(Default)]
1471 pub struct PipelineCoverageToColorStateCreateFlagsNV: Flags { }
1472}
1473
1474bitflags! {
1475 #[repr(transparent)]
1477 #[derive(Default)]
1478 pub struct PipelineCreateFlags: Flags {
1479 const DISABLE_OPTIMIZATION = 1;
1480 const ALLOW_DERIVATIVES = 1 << 1;
1481 const DERIVATIVE = 1 << 2;
1482 const VIEW_INDEX_FROM_DEVICE_INDEX = 1 << 3;
1483 const DISPATCH_BASE = 1 << 4;
1484 const DEFER_COMPILE_NV = 1 << 5;
1485 const CAPTURE_STATISTICS_KHR = 1 << 6;
1486 const CAPTURE_INTERNAL_REPRESENTATIONS_KHR = 1 << 7;
1487 const FAIL_ON_PIPELINE_COMPILE_REQUIRED = 1 << 8;
1488 const EARLY_RETURN_ON_FAILURE = 1 << 9;
1489 const LINK_TIME_OPTIMIZATION_EXT = 1 << 10;
1490 const LIBRARY_KHR = 1 << 11;
1491 const RAY_TRACING_SKIP_TRIANGLES_KHR = 1 << 12;
1492 const RAY_TRACING_SKIP_AABBS_KHR = 1 << 13;
1493 const RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_KHR = 1 << 14;
1494 const RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_KHR = 1 << 15;
1495 const RAY_TRACING_NO_NULL_MISS_SHADERS_KHR = 1 << 16;
1496 const RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_KHR = 1 << 17;
1497 const INDIRECT_BINDABLE_NV = 1 << 18;
1498 const RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_KHR = 1 << 19;
1499 const RAY_TRACING_ALLOW_MOTION_NV = 1 << 20;
1500 const RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 21;
1501 const RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_EXT = 1 << 22;
1502 const RETAIN_LINK_TIME_OPTIMIZATION_INFO_EXT = 1 << 23;
1503 const RAY_TRACING_OPACITY_MICROMAP_EXT = 1 << 24;
1504 const COLOR_ATTACHMENT_FEEDBACK_LOOP_EXT = 1 << 25;
1505 const DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_EXT = 1 << 26;
1506 const NO_PROTECTED_ACCESS = 1 << 27;
1507 const RAY_TRACING_DISPLACEMENT_MICROMAP_NV = 1 << 28;
1508 const DESCRIPTOR_BUFFER_EXT = 1 << 29;
1509 const PROTECTED_ACCESS_ONLY = 1 << 30;
1510 }
1511}
1512
1513bitflags! {
1514 #[repr(transparent)]
1516 #[derive(Default)]
1517 pub struct PipelineCreateFlags2: Flags64 {
1518 const DISABLE_OPTIMIZATION = 1;
1519 const ALLOW_DERIVATIVES = 1 << 1;
1520 const DERIVATIVE = 1 << 2;
1521 const VIEW_INDEX_FROM_DEVICE_INDEX = 1 << 3;
1522 const DISPATCH_BASE = 1 << 4;
1523 const DEFER_COMPILE_NV = 1 << 5;
1524 const CAPTURE_STATISTICS_KHR = 1 << 6;
1525 const CAPTURE_INTERNAL_REPRESENTATIONS_KHR = 1 << 7;
1526 const FAIL_ON_PIPELINE_COMPILE_REQUIRED = 1 << 8;
1527 const EARLY_RETURN_ON_FAILURE = 1 << 9;
1528 const LINK_TIME_OPTIMIZATION_EXT = 1 << 10;
1529 const LIBRARY_KHR = 1 << 11;
1530 const RAY_TRACING_SKIP_TRIANGLES_KHR = 1 << 12;
1531 const RAY_TRACING_SKIP_AABBS_KHR = 1 << 13;
1532 const RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_KHR = 1 << 14;
1533 const RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_KHR = 1 << 15;
1534 const RAY_TRACING_NO_NULL_MISS_SHADERS_KHR = 1 << 16;
1535 const RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_KHR = 1 << 17;
1536 const INDIRECT_BINDABLE_NV = 1 << 18;
1537 const RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_KHR = 1 << 19;
1538 const RAY_TRACING_ALLOW_MOTION_NV = 1 << 20;
1539 const RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 21;
1540 const RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_EXT = 1 << 22;
1541 const RETAIN_LINK_TIME_OPTIMIZATION_INFO_EXT = 1 << 23;
1542 const RAY_TRACING_OPACITY_MICROMAP_EXT = 1 << 24;
1543 const COLOR_ATTACHMENT_FEEDBACK_LOOP_EXT = 1 << 25;
1544 const DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_EXT = 1 << 26;
1545 const NO_PROTECTED_ACCESS = 1 << 27;
1546 const RAY_TRACING_DISPLACEMENT_MICROMAP_NV = 1 << 28;
1547 const DESCRIPTOR_BUFFER_EXT = 1 << 29;
1548 const PROTECTED_ACCESS_ONLY = 1 << 30;
1549 const CAPTURE_DATA_KHR = 1 << 31;
1550 const EXECUTION_GRAPH_AMDX = 1 << 32;
1551 const RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_NV = 1 << 33;
1552 const ENABLE_LEGACY_DITHERING_EXT = 1 << 34;
1553 const DISALLOW_OPACITY_MICROMAP_ARM = 1 << 37;
1554 const INDIRECT_BINDABLE_EXT = 1 << 38;
1555 const PER_LAYER_FRAGMENT_DENSITY_VALVE = 1 << 40;
1556 const _64_BIT_INDEXING_EXT = 1 << 43;
1557 }
1558}
1559
1560bitflags! {
1561 #[repr(transparent)]
1563 #[derive(Default)]
1564 pub struct PipelineCreationFeedbackFlags: Flags {
1565 const VALID = 1;
1566 const APPLICATION_PIPELINE_CACHE_HIT = 1 << 1;
1567 const BASE_PIPELINE_ACCELERATION = 1 << 2;
1568 }
1569}
1570
1571bitflags! {
1572 #[repr(transparent)]
1574 #[derive(Default)]
1575 pub struct PipelineDepthStencilStateCreateFlags: Flags {
1576 const RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_EXT = 1;
1577 const RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_EXT = 1 << 1;
1578 }
1579}
1580
1581bitflags! {
1582 #[repr(transparent)]
1584 #[derive(Default)]
1585 pub struct PipelineDiscardRectangleStateCreateFlagsEXT: Flags { }
1586}
1587
1588bitflags! {
1589 #[repr(transparent)]
1591 #[derive(Default)]
1592 pub struct PipelineDynamicStateCreateFlags: Flags { }
1593}
1594
1595bitflags! {
1596 #[repr(transparent)]
1598 #[derive(Default)]
1599 pub struct PipelineInputAssemblyStateCreateFlags: Flags { }
1600}
1601
1602bitflags! {
1603 #[repr(transparent)]
1605 #[derive(Default)]
1606 pub struct PipelineLayoutCreateFlags: Flags {
1607 const INDEPENDENT_SETS_EXT = 1 << 1;
1608 }
1609}
1610
1611bitflags! {
1612 #[repr(transparent)]
1614 #[derive(Default)]
1615 pub struct PipelineMultisampleStateCreateFlags: Flags { }
1616}
1617
1618bitflags! {
1619 #[repr(transparent)]
1621 #[derive(Default)]
1622 pub struct PipelineRasterizationConservativeStateCreateFlagsEXT: Flags { }
1623}
1624
1625bitflags! {
1626 #[repr(transparent)]
1628 #[derive(Default)]
1629 pub struct PipelineRasterizationDepthClipStateCreateFlagsEXT: Flags { }
1630}
1631
1632bitflags! {
1633 #[repr(transparent)]
1635 #[derive(Default)]
1636 pub struct PipelineRasterizationStateCreateFlags: Flags { }
1637}
1638
1639bitflags! {
1640 #[repr(transparent)]
1642 #[derive(Default)]
1643 pub struct PipelineRasterizationStateStreamCreateFlagsEXT: Flags { }
1644}
1645
1646bitflags! {
1647 #[repr(transparent)]
1649 #[derive(Default)]
1650 pub struct PipelineShaderStageCreateFlags: Flags {
1651 const ALLOW_VARYING_SUBGROUP_SIZE = 1;
1652 const REQUIRE_FULL_SUBGROUPS = 1 << 1;
1653 }
1654}
1655
1656bitflags! {
1657 #[repr(transparent)]
1659 #[derive(Default)]
1660 pub struct PipelineStageFlags: Flags {
1661 const TOP_OF_PIPE = 1;
1662 const DRAW_INDIRECT = 1 << 1;
1663 const VERTEX_INPUT = 1 << 2;
1664 const VERTEX_SHADER = 1 << 3;
1665 const TESSELLATION_CONTROL_SHADER = 1 << 4;
1666 const TESSELLATION_EVALUATION_SHADER = 1 << 5;
1667 const GEOMETRY_SHADER = 1 << 6;
1668 const FRAGMENT_SHADER = 1 << 7;
1669 const EARLY_FRAGMENT_TESTS = 1 << 8;
1670 const LATE_FRAGMENT_TESTS = 1 << 9;
1671 const COLOR_ATTACHMENT_OUTPUT = 1 << 10;
1672 const COMPUTE_SHADER = 1 << 11;
1673 const TRANSFER = 1 << 12;
1674 const BOTTOM_OF_PIPE = 1 << 13;
1675 const HOST = 1 << 14;
1676 const ALL_GRAPHICS = 1 << 15;
1677 const ALL_COMMANDS = 1 << 16;
1678 const COMMAND_PREPROCESS_EXT = 1 << 17;
1679 const CONDITIONAL_RENDERING_EXT = 1 << 18;
1680 const TASK_SHADER_EXT = 1 << 19;
1681 const MESH_SHADER_EXT = 1 << 20;
1682 const RAY_TRACING_SHADER_KHR = 1 << 21;
1683 const FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 22;
1684 const FRAGMENT_DENSITY_PROCESS_EXT = 1 << 23;
1685 const TRANSFORM_FEEDBACK_EXT = 1 << 24;
1686 const ACCELERATION_STRUCTURE_BUILD_KHR = 1 << 25;
1687 }
1688}
1689
1690bitflags! {
1691 #[repr(transparent)]
1693 #[derive(Default)]
1694 pub struct PipelineStageFlags2: Flags64 {
1695 const NONE = 0;
1696 const TOP_OF_PIPE = 1;
1697 const DRAW_INDIRECT = 1 << 1;
1698 const VERTEX_INPUT = 1 << 2;
1699 const VERTEX_SHADER = 1 << 3;
1700 const TESSELLATION_CONTROL_SHADER = 1 << 4;
1701 const TESSELLATION_EVALUATION_SHADER = 1 << 5;
1702 const GEOMETRY_SHADER = 1 << 6;
1703 const FRAGMENT_SHADER = 1 << 7;
1704 const EARLY_FRAGMENT_TESTS = 1 << 8;
1705 const LATE_FRAGMENT_TESTS = 1 << 9;
1706 const COLOR_ATTACHMENT_OUTPUT = 1 << 10;
1707 const COMPUTE_SHADER = 1 << 11;
1708 const ALL_TRANSFER = 1 << 12;
1709 const BOTTOM_OF_PIPE = 1 << 13;
1710 const HOST = 1 << 14;
1711 const ALL_GRAPHICS = 1 << 15;
1712 const ALL_COMMANDS = 1 << 16;
1713 const COMMAND_PREPROCESS_EXT = 1 << 17;
1714 const CONDITIONAL_RENDERING_EXT = 1 << 18;
1715 const TASK_SHADER_EXT = 1 << 19;
1716 const MESH_SHADER_EXT = 1 << 20;
1717 const RAY_TRACING_SHADER_KHR = 1 << 21;
1718 const FRAGMENT_SHADING_RATE_ATTACHMENT_KHR = 1 << 22;
1719 const FRAGMENT_DENSITY_PROCESS_EXT = 1 << 23;
1720 const TRANSFORM_FEEDBACK_EXT = 1 << 24;
1721 const ACCELERATION_STRUCTURE_BUILD_KHR = 1 << 25;
1722 const VIDEO_DECODE_KHR = 1 << 26;
1723 const VIDEO_ENCODE_KHR = 1 << 27;
1724 const ACCELERATION_STRUCTURE_COPY_KHR = 1 << 28;
1725 const OPTICAL_FLOW_NV = 1 << 29;
1726 const MICROMAP_BUILD_EXT = 1 << 30;
1727 const COPY = 1 << 32;
1728 const RESOLVE = 1 << 33;
1729 const BLIT = 1 << 34;
1730 const CLEAR = 1 << 35;
1731 const INDEX_INPUT = 1 << 36;
1732 const VERTEX_ATTRIBUTE_INPUT = 1 << 37;
1733 const PRE_RASTERIZATION_SHADERS = 1 << 38;
1734 const SUBPASS_SHADER_HUAWEI = 1 << 39;
1735 const INVOCATION_MASK_HUAWEI = 1 << 40;
1736 const CLUSTER_CULLING_SHADER_HUAWEI = 1 << 41;
1737 const DATA_GRAPH_ARM = 1 << 42;
1738 const CONVERT_COOPERATIVE_VECTOR_MATRIX_NV = 1 << 44;
1739 const MEMORY_DECOMPRESSION_EXT = 1 << 45;
1740 const COPY_INDIRECT_KHR = 1 << 46;
1741 }
1742}
1743
1744bitflags! {
1745 #[repr(transparent)]
1747 #[derive(Default)]
1748 pub struct PipelineTessellationStateCreateFlags: Flags { }
1749}
1750
1751bitflags! {
1752 #[repr(transparent)]
1754 #[derive(Default)]
1755 pub struct PipelineVertexInputStateCreateFlags: Flags { }
1756}
1757
1758bitflags! {
1759 #[repr(transparent)]
1761 #[derive(Default)]
1762 pub struct PipelineViewportStateCreateFlags: Flags { }
1763}
1764
1765bitflags! {
1766 #[repr(transparent)]
1768 #[derive(Default)]
1769 pub struct PipelineViewportSwizzleStateCreateFlagsNV: Flags { }
1770}
1771
1772bitflags! {
1773 #[repr(transparent)]
1775 #[derive(Default)]
1776 pub struct PresentGravityFlagsKHR: Flags {
1777 const MIN = 1;
1778 const MAX = 1 << 1;
1779 const CENTERED = 1 << 2;
1780 }
1781}
1782
1783bitflags! {
1784 #[repr(transparent)]
1786 #[derive(Default)]
1787 pub struct PresentScalingFlagsKHR: Flags {
1788 const ONE_TO_ONE = 1;
1789 const ASPECT_RATIO_STRETCH = 1 << 1;
1790 const STRETCH = 1 << 2;
1791 }
1792}
1793
1794bitflags! {
1795 #[repr(transparent)]
1797 #[derive(Default)]
1798 pub struct PresentStageFlagsEXT: Flags {
1799 const QUEUE_OPERATIONS_END = 1;
1800 const REQUEST_DEQUEUED = 1 << 1;
1801 const IMAGE_FIRST_PIXEL_OUT = 1 << 2;
1802 const IMAGE_FIRST_PIXEL_VISIBLE = 1 << 3;
1803 }
1804}
1805
1806bitflags! {
1807 #[repr(transparent)]
1809 #[derive(Default)]
1810 pub struct PresentTimingInfoFlagsEXT: Flags {
1811 const PRESENT_AT_RELATIVE_TIME = 1;
1812 const PRESENT_AT_NEAREST_REFRESH_CYCLE = 1 << 1;
1813 }
1814}
1815
1816bitflags! {
1817 #[repr(transparent)]
1819 #[derive(Default)]
1820 pub struct PrivateDataSlotCreateFlags: Flags { }
1821}
1822
1823bitflags! {
1824 #[repr(transparent)]
1826 #[derive(Default)]
1827 pub struct QueryControlFlags: Flags {
1828 const PRECISE = 1;
1829 }
1830}
1831
1832bitflags! {
1833 #[repr(transparent)]
1835 #[derive(Default)]
1836 pub struct QueryPipelineStatisticFlags: Flags {
1837 const INPUT_ASSEMBLY_VERTICES = 1;
1838 const INPUT_ASSEMBLY_PRIMITIVES = 1 << 1;
1839 const VERTEX_SHADER_INVOCATIONS = 1 << 2;
1840 const GEOMETRY_SHADER_INVOCATIONS = 1 << 3;
1841 const GEOMETRY_SHADER_PRIMITIVES = 1 << 4;
1842 const CLIPPING_INVOCATIONS = 1 << 5;
1843 const CLIPPING_PRIMITIVES = 1 << 6;
1844 const FRAGMENT_SHADER_INVOCATIONS = 1 << 7;
1845 const TESSELLATION_CONTROL_SHADER_PATCHES = 1 << 8;
1846 const TESSELLATION_EVALUATION_SHADER_INVOCATIONS = 1 << 9;
1847 const COMPUTE_SHADER_INVOCATIONS = 1 << 10;
1848 const TASK_SHADER_INVOCATIONS_EXT = 1 << 11;
1849 const MESH_SHADER_INVOCATIONS_EXT = 1 << 12;
1850 const CLUSTER_CULLING_SHADER_INVOCATIONS_HUAWEI = 1 << 13;
1851 }
1852}
1853
1854bitflags! {
1855 #[repr(transparent)]
1857 #[derive(Default)]
1858 pub struct QueryPoolCreateFlags: Flags {
1859 const RESET_KHR = 1;
1860 }
1861}
1862
1863bitflags! {
1864 #[repr(transparent)]
1866 #[derive(Default)]
1867 pub struct QueryResultFlags: Flags {
1868 const _64 = 1;
1869 const WAIT = 1 << 1;
1870 const WITH_AVAILABILITY = 1 << 2;
1871 const PARTIAL = 1 << 3;
1872 const WITH_STATUS_KHR = 1 << 4;
1873 }
1874}
1875
1876bitflags! {
1877 #[repr(transparent)]
1879 #[derive(Default)]
1880 pub struct QueueFlags: Flags {
1881 const GRAPHICS = 1;
1882 const COMPUTE = 1 << 1;
1883 const TRANSFER = 1 << 2;
1884 const SPARSE_BINDING = 1 << 3;
1885 const PROTECTED = 1 << 4;
1886 const VIDEO_DECODE_KHR = 1 << 5;
1887 const VIDEO_ENCODE_KHR = 1 << 6;
1888 const OPTICAL_FLOW_NV = 1 << 8;
1889 const DATA_GRAPH_ARM = 1 << 10;
1890 }
1891}
1892
1893bitflags! {
1894 #[repr(transparent)]
1896 #[derive(Default)]
1897 pub struct RefreshObjectFlagsKHR: Flags { }
1898}
1899
1900bitflags! {
1901 #[repr(transparent)]
1903 #[derive(Default)]
1904 pub struct RenderPassCreateFlags: Flags {
1905 const TRANSFORM_QCOM = 1 << 1;
1906 const PER_LAYER_FRAGMENT_DENSITY_VALVE = 1 << 2;
1907 }
1908}
1909
1910bitflags! {
1911 #[repr(transparent)]
1913 #[derive(Default)]
1914 pub struct RenderingAttachmentFlagsKHR: Flags {
1915 const INPUT_ATTACHMENT_FEEDBACK = 1;
1916 const RESOLVE_SKIP_TRANSFER_FUNCTION = 1 << 1;
1917 const RESOLVE_ENABLE_TRANSFER_FUNCTION = 1 << 2;
1918 }
1919}
1920
1921bitflags! {
1922 #[repr(transparent)]
1924 #[derive(Default)]
1925 pub struct RenderingFlags: Flags {
1926 const CONTENTS_SECONDARY_COMMAND_BUFFERS = 1;
1927 const SUSPENDING = 1 << 1;
1928 const RESUMING = 1 << 2;
1929 const ENABLE_LEGACY_DITHERING_EXT = 1 << 3;
1930 const CONTENTS_INLINE_KHR = 1 << 4;
1931 const PER_LAYER_FRAGMENT_DENSITY_VALVE = 1 << 5;
1932 const FRAGMENT_REGION_EXT = 1 << 6;
1933 const CUSTOM_RESOLVE_EXT = 1 << 7;
1934 const LOCAL_READ_CONCURRENT_ACCESS_CONTROL_KHR = 1 << 8;
1935 }
1936}
1937
1938bitflags! {
1939 #[repr(transparent)]
1941 #[derive(Default)]
1942 pub struct ResolveImageFlagsKHR: Flags {
1943 const SKIP_TRANSFER_FUNCTION = 1;
1944 const ENABLE_TRANSFER_FUNCTION = 1 << 1;
1945 }
1946}
1947
1948bitflags! {
1949 #[repr(transparent)]
1951 #[derive(Default)]
1952 pub struct ResolveModeFlags: Flags {
1953 const NONE = 0;
1954 const SAMPLE_ZERO = 1;
1955 const AVERAGE = 1 << 1;
1956 const MIN = 1 << 2;
1957 const MAX = 1 << 3;
1958 const EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID = 1 << 4;
1959 const CUSTOM_EXT = 1 << 5;
1960 }
1961}
1962
1963bitflags! {
1964 #[repr(transparent)]
1966 #[derive(Default)]
1967 pub struct SampleCountFlags: Flags {
1968 const _1 = 1;
1969 const _2 = 1 << 1;
1970 const _4 = 1 << 2;
1971 const _8 = 1 << 3;
1972 const _16 = 1 << 4;
1973 const _32 = 1 << 5;
1974 const _64 = 1 << 6;
1975 }
1976}
1977
1978bitflags! {
1979 #[repr(transparent)]
1981 #[derive(Default)]
1982 pub struct SamplerCreateFlags: Flags {
1983 const SUBSAMPLED_EXT = 1;
1984 const SUBSAMPLED_COARSE_RECONSTRUCTION_EXT = 1 << 1;
1985 const NON_SEAMLESS_CUBE_MAP_EXT = 1 << 2;
1986 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY_EXT = 1 << 3;
1987 const IMAGE_PROCESSING_QCOM = 1 << 4;
1988 }
1989}
1990
1991bitflags! {
1992 #[repr(transparent)]
1994 #[derive(Default)]
1995 pub struct ScreenSurfaceCreateFlagsQNX: Flags { }
1996}
1997
1998bitflags! {
1999 #[repr(transparent)]
2001 #[derive(Default)]
2002 pub struct SemaphoreCreateFlags: Flags { }
2003}
2004
2005bitflags! {
2006 #[repr(transparent)]
2008 #[derive(Default)]
2009 pub struct SemaphoreImportFlags: Flags {
2010 const TEMPORARY = 1;
2011 }
2012}
2013
2014bitflags! {
2015 #[repr(transparent)]
2017 #[derive(Default)]
2018 pub struct SemaphoreWaitFlags: Flags {
2019 const ANY = 1;
2020 }
2021}
2022
2023bitflags! {
2024 #[repr(transparent)]
2026 #[derive(Default)]
2027 pub struct ShaderCorePropertiesFlagsAMD: Flags { }
2028}
2029
2030bitflags! {
2031 #[repr(transparent)]
2033 #[derive(Default)]
2034 pub struct ShaderCreateFlagsEXT: Flags {
2035 const LINK_STAGE = 1;
2036 const ALLOW_VARYING_SUBGROUP_SIZE = 1 << 1;
2037 const REQUIRE_FULL_SUBGROUPS = 1 << 2;
2038 const NO_TASK_SHADER = 1 << 3;
2039 const DISPATCH_BASE = 1 << 4;
2040 const FRAGMENT_SHADING_RATE_ATTACHMENT = 1 << 5;
2041 const FRAGMENT_DENSITY_MAP_ATTACHMENT = 1 << 6;
2042 const INDIRECT_BINDABLE = 1 << 7;
2043 const _64_BIT_INDEXING = 1 << 15;
2044 }
2045}
2046
2047bitflags! {
2048 #[repr(transparent)]
2050 #[derive(Default)]
2051 pub struct ShaderModuleCreateFlags: Flags { }
2052}
2053
2054bitflags! {
2055 #[repr(transparent)]
2057 #[derive(Default)]
2058 pub struct ShaderStageFlags: Flags {
2059 const VERTEX = 1;
2060 const TESSELLATION_CONTROL = 1 << 1;
2061 const TESSELLATION_EVALUATION = 1 << 2;
2062 const GEOMETRY = 1 << 3;
2063 const FRAGMENT = 1 << 4;
2064 const ALL_GRAPHICS = Self::VERTEX.bits | Self::TESSELLATION_CONTROL.bits | Self::TESSELLATION_EVALUATION.bits | Self::GEOMETRY.bits | Self::FRAGMENT.bits;
2065 const COMPUTE = 1 << 5;
2066 const TASK_EXT = 1 << 6;
2067 const MESH_EXT = 1 << 7;
2068 const RAYGEN_KHR = 1 << 8;
2069 const ANY_HIT_KHR = 1 << 9;
2070 const CLOSEST_HIT_KHR = 1 << 10;
2071 const MISS_KHR = 1 << 11;
2072 const INTERSECTION_KHR = 1 << 12;
2073 const CALLABLE_KHR = 1 << 13;
2074 const SUBPASS_SHADING_HUAWEI = 1 << 14;
2075 const CLUSTER_CULLING_HUAWEI = 1 << 19;
2076 const ALL = i32::MAX as u32;
2077 }
2078}
2079
2080bitflags! {
2081 #[repr(transparent)]
2083 #[derive(Default)]
2084 pub struct SparseImageFormatFlags: Flags {
2085 const SINGLE_MIPTAIL = 1;
2086 const ALIGNED_MIP_SIZE = 1 << 1;
2087 const NONSTANDARD_BLOCK_SIZE = 1 << 2;
2088 }
2089}
2090
2091bitflags! {
2092 #[repr(transparent)]
2094 #[derive(Default)]
2095 pub struct SparseMemoryBindFlags: Flags {
2096 const METADATA = 1;
2097 }
2098}
2099
2100bitflags! {
2101 #[repr(transparent)]
2103 #[derive(Default)]
2104 pub struct StencilFaceFlags: Flags {
2105 const FRONT = 1;
2106 const BACK = 1 << 1;
2107 const FRONT_AND_BACK = Self::FRONT.bits | Self::BACK.bits;
2108 }
2109}
2110
2111bitflags! {
2112 #[repr(transparent)]
2114 #[derive(Default)]
2115 pub struct StreamDescriptorSurfaceCreateFlagsGGP: Flags { }
2116}
2117
2118bitflags! {
2119 #[repr(transparent)]
2121 #[derive(Default)]
2122 pub struct SubgroupFeatureFlags: Flags {
2123 const BASIC = 1;
2124 const VOTE = 1 << 1;
2125 const ARITHMETIC = 1 << 2;
2126 const BALLOT = 1 << 3;
2127 const SHUFFLE = 1 << 4;
2128 const SHUFFLE_RELATIVE = 1 << 5;
2129 const CLUSTERED = 1 << 6;
2130 const QUAD = 1 << 7;
2131 const PARTITIONED_NV = 1 << 8;
2132 const ROTATE = 1 << 9;
2133 const ROTATE_CLUSTERED = 1 << 10;
2134 }
2135}
2136
2137bitflags! {
2138 #[repr(transparent)]
2140 #[derive(Default)]
2141 pub struct SubmitFlags: Flags {
2142 const PROTECTED = 1;
2143 }
2144}
2145
2146bitflags! {
2147 #[repr(transparent)]
2149 #[derive(Default)]
2150 pub struct SubpassDescriptionFlags: Flags {
2151 const PER_VIEW_ATTRIBUTES_NVX = 1;
2152 const PER_VIEW_POSITION_X_ONLY_NVX = 1 << 1;
2153 const FRAGMENT_REGION_EXT = 1 << 2;
2154 const CUSTOM_RESOLVE_EXT = 1 << 3;
2155 const RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_EXT = 1 << 4;
2156 const RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_EXT = 1 << 5;
2157 const RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_EXT = 1 << 6;
2158 const ENABLE_LEGACY_DITHERING_EXT = 1 << 7;
2159 const TILE_SHADING_APRON_QCOM = 1 << 8;
2160 }
2161}
2162
2163bitflags! {
2164 #[repr(transparent)]
2166 #[derive(Default)]
2167 pub struct SurfaceCounterFlagsEXT: Flags {
2168 const VBLANK = 1;
2169 }
2170}
2171
2172bitflags! {
2173 #[repr(transparent)]
2175 #[derive(Default)]
2176 pub struct SurfaceCreateFlagsOHOS: Flags { }
2177}
2178
2179bitflags! {
2180 #[repr(transparent)]
2182 #[derive(Default)]
2183 pub struct SurfaceTransformFlagsKHR: Flags {
2184 const IDENTITY = 1;
2185 const ROTATE_90 = 1 << 1;
2186 const ROTATE_180 = 1 << 2;
2187 const ROTATE_270 = 1 << 3;
2188 const HORIZONTAL_MIRROR = 1 << 4;
2189 const HORIZONTAL_MIRROR_ROTATE_90 = 1 << 5;
2190 const HORIZONTAL_MIRROR_ROTATE_180 = 1 << 6;
2191 const HORIZONTAL_MIRROR_ROTATE_270 = 1 << 7;
2192 const INHERIT = 1 << 8;
2193 }
2194}
2195
2196bitflags! {
2197 #[repr(transparent)]
2199 #[derive(Default)]
2200 pub struct SwapchainCreateFlagsKHR: Flags {
2201 const SPLIT_INSTANCE_BIND_REGIONS = 1;
2202 const PROTECTED = 1 << 1;
2203 const MUTABLE_FORMAT = 1 << 2;
2204 const DEFERRED_MEMORY_ALLOCATION = 1 << 3;
2205 const PRESENT_ID_2 = 1 << 6;
2206 const PRESENT_WAIT_2 = 1 << 7;
2207 const PRESENT_TIMING_EXT = 1 << 9;
2208 }
2209}
2210
2211bitflags! {
2212 #[repr(transparent)]
2214 #[derive(Default)]
2215 pub struct TensorCreateFlagsARM: Flags {
2216 const MUTABLE_FORMAT = 1;
2217 const PROTECTED = 1 << 1;
2218 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY = 1 << 2;
2219 }
2220}
2221
2222bitflags! {
2223 #[repr(transparent)]
2225 #[derive(Default)]
2226 pub struct TensorUsageFlagsARM: Flags {
2227 const SHADER = 1 << 1;
2228 const TRANSFER_SRC = 1 << 2;
2229 const TRANSFER_DST = 1 << 3;
2230 const IMAGE_ALIASING = 1 << 4;
2231 const DATA_GRAPH = 1 << 5;
2232 }
2233}
2234
2235bitflags! {
2236 #[repr(transparent)]
2238 #[derive(Default)]
2239 pub struct TensorViewCreateFlagsARM: Flags {
2240 const DESCRIPTOR_BUFFER_CAPTURE_REPLAY = 1;
2241 }
2242}
2243
2244bitflags! {
2245 #[repr(transparent)]
2247 #[derive(Default)]
2248 pub struct TileShadingRenderPassFlagsQCOM: Flags {
2249 const ENABLE = 1;
2250 const PER_TILE_EXECUTION = 1 << 1;
2251 }
2252}
2253
2254bitflags! {
2255 #[repr(transparent)]
2257 #[derive(Default)]
2258 pub struct ToolPurposeFlags: Flags {
2259 const VALIDATION = 1;
2260 const PROFILING = 1 << 1;
2261 const TRACING = 1 << 2;
2262 const ADDITIONAL_FEATURES = 1 << 3;
2263 const MODIFYING_FEATURES = 1 << 4;
2264 const DEBUG_REPORTING_EXT = 1 << 5;
2265 const DEBUG_MARKERS_EXT = 1 << 6;
2266 }
2267}
2268
2269bitflags! {
2270 #[repr(transparent)]
2272 #[derive(Default)]
2273 pub struct ValidationCacheCreateFlagsEXT: Flags { }
2274}
2275
2276bitflags! {
2277 #[repr(transparent)]
2279 #[derive(Default)]
2280 pub struct ViSurfaceCreateFlagsNN: Flags { }
2281}
2282
2283bitflags! {
2284 #[repr(transparent)]
2286 #[derive(Default)]
2287 pub struct VideoBeginCodingFlagsKHR: Flags { }
2288}
2289
2290bitflags! {
2291 #[repr(transparent)]
2293 #[derive(Default)]
2294 pub struct VideoCapabilityFlagsKHR: Flags {
2295 const PROTECTED_CONTENT = 1;
2296 const SEPARATE_REFERENCE_IMAGES = 1 << 1;
2297 }
2298}
2299
2300bitflags! {
2301 #[repr(transparent)]
2303 #[derive(Default)]
2304 pub struct VideoChromaSubsamplingFlagsKHR: Flags {
2305 const INVALID = 0;
2306 const MONOCHROME = 1;
2307 const _420 = 1 << 1;
2308 const _422 = 1 << 2;
2309 const _444 = 1 << 3;
2310 }
2311}
2312
2313bitflags! {
2314 #[repr(transparent)]
2316 #[derive(Default)]
2317 pub struct VideoCodecOperationFlagsKHR: Flags {
2318 const NONE = 0;
2319 const DECODE_H264 = 1;
2320 const DECODE_H265 = 1 << 1;
2321 const DECODE_AV1 = 1 << 2;
2322 const DECODE_VP9 = 1 << 3;
2323 const ENCODE_H264 = 1 << 16;
2324 const ENCODE_H265 = 1 << 17;
2325 const ENCODE_AV1 = 1 << 18;
2326 }
2327}
2328
2329bitflags! {
2330 #[repr(transparent)]
2332 #[derive(Default)]
2333 pub struct VideoCodingControlFlagsKHR: Flags {
2334 const RESET = 1;
2335 const ENCODE_RATE_CONTROL = 1 << 1;
2336 const ENCODE_QUALITY_LEVEL = 1 << 2;
2337 }
2338}
2339
2340bitflags! {
2341 #[repr(transparent)]
2343 #[derive(Default)]
2344 pub struct VideoComponentBitDepthFlagsKHR: Flags {
2345 const INVALID = 0;
2346 const _8 = 1;
2347 const _10 = 1 << 2;
2348 const _12 = 1 << 4;
2349 }
2350}
2351
2352bitflags! {
2353 #[repr(transparent)]
2355 #[derive(Default)]
2356 pub struct VideoDecodeCapabilityFlagsKHR: Flags {
2357 const DPB_AND_OUTPUT_COINCIDE = 1;
2358 const DPB_AND_OUTPUT_DISTINCT = 1 << 1;
2359 }
2360}
2361
2362bitflags! {
2363 #[repr(transparent)]
2365 #[derive(Default)]
2366 pub struct VideoDecodeFlagsKHR: Flags { }
2367}
2368
2369bitflags! {
2370 #[repr(transparent)]
2372 #[derive(Default)]
2373 pub struct VideoDecodeH264PictureLayoutFlagsKHR: Flags {
2374 const PROGRESSIVE = 0;
2375 const INTERLACED_INTERLEAVED_LINES = 1;
2376 const INTERLACED_SEPARATE_PLANES = 1 << 1;
2377 }
2378}
2379
2380bitflags! {
2381 #[repr(transparent)]
2383 #[derive(Default)]
2384 pub struct VideoDecodeUsageFlagsKHR: Flags {
2385 const DEFAULT = 0;
2386 const TRANSCODING = 1;
2387 const OFFLINE = 1 << 1;
2388 const STREAMING = 1 << 2;
2389 }
2390}
2391
2392bitflags! {
2393 #[repr(transparent)]
2395 #[derive(Default)]
2396 pub struct VideoEncodeAV1CapabilityFlagsKHR: Flags {
2397 const VIDEO_ENCODE_AV1_CAPABILITY_PER_RATE_CONTROL_GROUP_MIN_MAX_Q_INDEX = 1;
2398 const VIDEO_ENCODE_AV1_CAPABILITY_GENERATE_OBU_EXTENSION_HEADER = 1 << 1;
2399 const VIDEO_ENCODE_AV1_CAPABILITY_PRIMARY_REFERENCE_CDF_ONLY = 1 << 2;
2400 const VIDEO_ENCODE_AV1_CAPABILITY_FRAME_SIZE_OVERRIDE = 1 << 3;
2401 const VIDEO_ENCODE_AV1_CAPABILITY_MOTION_VECTOR_SCALING = 1 << 4;
2402 const VIDEO_ENCODE_AV1_CAPABILITY_COMPOUND_PREDICTION_INTRA_REFRESH = 1 << 5;
2403 }
2404}
2405
2406bitflags! {
2407 #[repr(transparent)]
2409 #[derive(Default)]
2410 pub struct VideoEncodeAV1RateControlFlagsKHR: Flags {
2411 const VIDEO_ENCODE_AV1_RATE_CONTROL_REGULAR_GOP = 1;
2412 const VIDEO_ENCODE_AV1_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC = 1 << 1;
2413 const VIDEO_ENCODE_AV1_RATE_CONTROL_REFERENCE_PATTERN_FLAT = 1 << 2;
2414 const VIDEO_ENCODE_AV1_RATE_CONTROL_REFERENCE_PATTERN_DYADIC = 1 << 3;
2415 }
2416}
2417
2418bitflags! {
2419 #[repr(transparent)]
2421 #[derive(Default)]
2422 pub struct VideoEncodeAV1StdFlagsKHR: Flags {
2423 const VIDEO_ENCODE_AV1_STD_UNIFORM_TILE_SPACING_FLAG_SET = 1;
2424 const VIDEO_ENCODE_AV1_STD_SKIP_MODE_PRESENT_UNSET = 1 << 1;
2425 const VIDEO_ENCODE_AV1_STD_PRIMARY_REF_FRAME = 1 << 2;
2426 const VIDEO_ENCODE_AV1_STD_DELTA_Q = 1 << 3;
2427 }
2428}
2429
2430bitflags! {
2431 #[repr(transparent)]
2433 #[derive(Default)]
2434 pub struct VideoEncodeAV1SuperblockSizeFlagsKHR: Flags {
2435 const VIDEO_ENCODE_AV1_SUPERBLOCK_SIZE_64 = 1;
2436 const VIDEO_ENCODE_AV1_SUPERBLOCK_SIZE_128 = 1 << 1;
2437 }
2438}
2439
2440bitflags! {
2441 #[repr(transparent)]
2443 #[derive(Default)]
2444 pub struct VideoEncodeCapabilityFlagsKHR: Flags {
2445 const PRECEDING_EXTERNALLY_ENCODED_BYTES = 1;
2446 const INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION = 1 << 1;
2447 const QUANTIZATION_DELTA_MAP = 1 << 2;
2448 const EMPHASIS_MAP = 1 << 3;
2449 }
2450}
2451
2452bitflags! {
2453 #[repr(transparent)]
2455 #[derive(Default)]
2456 pub struct VideoEncodeContentFlagsKHR: Flags {
2457 const DEFAULT = 0;
2458 const CAMERA = 1;
2459 const DESKTOP = 1 << 1;
2460 const RENDERED = 1 << 2;
2461 }
2462}
2463
2464bitflags! {
2465 #[repr(transparent)]
2467 #[derive(Default)]
2468 pub struct VideoEncodeFeedbackFlagsKHR: Flags {
2469 const BITSTREAM_BUFFER_OFFSET = 1;
2470 const BITSTREAM_BYTES_WRITTEN = 1 << 1;
2471 const BITSTREAM_HAS_OVERRIDES = 1 << 2;
2472 }
2473}
2474
2475bitflags! {
2476 #[repr(transparent)]
2478 #[derive(Default)]
2479 pub struct VideoEncodeFlagsKHR: Flags {
2480 const WITH_QUANTIZATION_DELTA_MAP = 1;
2481 const WITH_EMPHASIS_MAP = 1 << 1;
2482 const INTRA_REFRESH = 1 << 2;
2483 }
2484}
2485
2486bitflags! {
2487 #[repr(transparent)]
2489 #[derive(Default)]
2490 pub struct VideoEncodeH264CapabilityFlagsKHR: Flags {
2491 const HRD_COMPLIANCE = 1;
2492 const PREDICTION_WEIGHT_TABLE_GENERATED = 1 << 1;
2493 const ROW_UNALIGNED_SLICE = 1 << 2;
2494 const DIFFERENT_SLICE_TYPE = 1 << 3;
2495 const B_FRAME_IN_L0_LIST = 1 << 4;
2496 const B_FRAME_IN_L1_LIST = 1 << 5;
2497 const PER_PICTURE_TYPE_MIN_MAX_QP = 1 << 6;
2498 const PER_SLICE_CONSTANT_QP = 1 << 7;
2499 const GENERATE_PREFIX_NALU = 1 << 8;
2500 const MB_QP_DIFF_WRAPAROUND = 1 << 9;
2501 const B_PICTURE_INTRA_REFRESH = 1 << 10;
2502 }
2503}
2504
2505bitflags! {
2506 #[repr(transparent)]
2508 #[derive(Default)]
2509 pub struct VideoEncodeH264RateControlFlagsKHR: Flags {
2510 const ATTEMPT_HRD_COMPLIANCE = 1;
2511 const REGULAR_GOP = 1 << 1;
2512 const REFERENCE_PATTERN_FLAT = 1 << 2;
2513 const REFERENCE_PATTERN_DYADIC = 1 << 3;
2514 const TEMPORAL_LAYER_PATTERN_DYADIC = 1 << 4;
2515 }
2516}
2517
2518bitflags! {
2519 #[repr(transparent)]
2521 #[derive(Default)]
2522 pub struct VideoEncodeH264StdFlagsKHR: Flags {
2523 const SEPARATE_COLOR_PLANE_FLAG_SET = 1;
2524 const QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET = 1 << 1;
2525 const SCALING_MATRIX_PRESENT_FLAG_SET = 1 << 2;
2526 const CHROMA_QP_INDEX_OFFSET = 1 << 3;
2527 const SECOND_CHROMA_QP_INDEX_OFFSET = 1 << 4;
2528 const PIC_INIT_QP_MINUS26 = 1 << 5;
2529 const WEIGHTED_PRED_FLAG_SET = 1 << 6;
2530 const WEIGHTED_BIPRED_IDC_EXPLICIT = 1 << 7;
2531 const WEIGHTED_BIPRED_IDC_IMPLICIT = 1 << 8;
2532 const TRANSFORM_8X8_MODE_FLAG_SET = 1 << 9;
2533 const DIRECT_SPATIAL_MV_PRED_FLAG_UNSET = 1 << 10;
2534 const ENTROPY_CODING_MODE_FLAG_UNSET = 1 << 11;
2535 const ENTROPY_CODING_MODE_FLAG_SET = 1 << 12;
2536 const DIRECT_8X8_INFERENCE_FLAG_UNSET = 1 << 13;
2537 const CONSTRAINED_INTRA_PRED_FLAG_SET = 1 << 14;
2538 const DEBLOCKING_FILTER_DISABLED = 1 << 15;
2539 const DEBLOCKING_FILTER_ENABLED = 1 << 16;
2540 const DEBLOCKING_FILTER_PARTIAL = 1 << 17;
2541 const SLICE_QP_DELTA = 1 << 19;
2542 const DIFFERENT_SLICE_QP_DELTA = 1 << 20;
2543 }
2544}
2545
2546bitflags! {
2547 #[repr(transparent)]
2549 #[derive(Default)]
2550 pub struct VideoEncodeH265CapabilityFlagsKHR: Flags {
2551 const HRD_COMPLIANCE = 1;
2552 const PREDICTION_WEIGHT_TABLE_GENERATED = 1 << 1;
2553 const ROW_UNALIGNED_SLICE_SEGMENT = 1 << 2;
2554 const DIFFERENT_SLICE_SEGMENT_TYPE = 1 << 3;
2555 const B_FRAME_IN_L0_LIST = 1 << 4;
2556 const B_FRAME_IN_L1_LIST = 1 << 5;
2557 const PER_PICTURE_TYPE_MIN_MAX_QP = 1 << 6;
2558 const PER_SLICE_SEGMENT_CONSTANT_QP = 1 << 7;
2559 const MULTIPLE_TILES_PER_SLICE_SEGMENT = 1 << 8;
2560 const MULTIPLE_SLICE_SEGMENTS_PER_TILE = 1 << 9;
2561 const CU_QP_DIFF_WRAPAROUND = 1 << 10;
2562 const B_PICTURE_INTRA_REFRESH = 1 << 11;
2563 }
2564}
2565
2566bitflags! {
2567 #[repr(transparent)]
2569 #[derive(Default)]
2570 pub struct VideoEncodeH265CtbSizeFlagsKHR: Flags {
2571 const _16 = 1;
2572 const _32 = 1 << 1;
2573 const _64 = 1 << 2;
2574 }
2575}
2576
2577bitflags! {
2578 #[repr(transparent)]
2580 #[derive(Default)]
2581 pub struct VideoEncodeH265RateControlFlagsKHR: Flags {
2582 const ATTEMPT_HRD_COMPLIANCE = 1;
2583 const REGULAR_GOP = 1 << 1;
2584 const REFERENCE_PATTERN_FLAT = 1 << 2;
2585 const REFERENCE_PATTERN_DYADIC = 1 << 3;
2586 const TEMPORAL_SUB_LAYER_PATTERN_DYADIC = 1 << 4;
2587 }
2588}
2589
2590bitflags! {
2591 #[repr(transparent)]
2593 #[derive(Default)]
2594 pub struct VideoEncodeH265StdFlagsKHR: Flags {
2595 const SEPARATE_COLOR_PLANE_FLAG_SET = 1;
2596 const SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET = 1 << 1;
2597 const SCALING_LIST_DATA_PRESENT_FLAG_SET = 1 << 2;
2598 const PCM_ENABLED_FLAG_SET = 1 << 3;
2599 const SPS_TEMPORAL_MVP_ENABLED_FLAG_SET = 1 << 4;
2600 const INIT_QP_MINUS26 = 1 << 5;
2601 const WEIGHTED_PRED_FLAG_SET = 1 << 6;
2602 const WEIGHTED_BIPRED_FLAG_SET = 1 << 7;
2603 const LOG2_PARALLEL_MERGE_LEVEL_MINUS2 = 1 << 8;
2604 const SIGN_DATA_HIDING_ENABLED_FLAG_SET = 1 << 9;
2605 const TRANSFORM_SKIP_ENABLED_FLAG_SET = 1 << 10;
2606 const TRANSFORM_SKIP_ENABLED_FLAG_UNSET = 1 << 11;
2607 const PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET = 1 << 12;
2608 const TRANSQUANT_BYPASS_ENABLED_FLAG_SET = 1 << 13;
2609 const CONSTRAINED_INTRA_PRED_FLAG_SET = 1 << 14;
2610 const ENTROPY_CODING_SYNC_ENABLED_FLAG_SET = 1 << 15;
2611 const DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET = 1 << 16;
2612 const DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET = 1 << 17;
2613 const DEPENDENT_SLICE_SEGMENT_FLAG_SET = 1 << 18;
2614 const SLICE_QP_DELTA = 1 << 19;
2615 const DIFFERENT_SLICE_QP_DELTA = 1 << 20;
2616 }
2617}
2618
2619bitflags! {
2620 #[repr(transparent)]
2622 #[derive(Default)]
2623 pub struct VideoEncodeH265TransformBlockSizeFlagsKHR: Flags {
2624 const _4 = 1;
2625 const _8 = 1 << 1;
2626 const _16 = 1 << 2;
2627 const _32 = 1 << 3;
2628 }
2629}
2630
2631bitflags! {
2632 #[repr(transparent)]
2634 #[derive(Default)]
2635 pub struct VideoEncodeIntraRefreshModeFlagsKHR: Flags {
2636 const NONE = 0;
2637 const PER_PICTURE_PARTITION = 1;
2638 const BLOCK_BASED = 1 << 1;
2639 const BLOCK_ROW_BASED = 1 << 2;
2640 const BLOCK_COLUMN_BASED = 1 << 3;
2641 }
2642}
2643
2644bitflags! {
2645 #[repr(transparent)]
2647 #[derive(Default)]
2648 pub struct VideoEncodeRateControlFlagsKHR: Flags { }
2649}
2650
2651bitflags! {
2652 #[repr(transparent)]
2654 #[derive(Default)]
2655 pub struct VideoEncodeRateControlModeFlagsKHR: Flags {
2656 const DEFAULT = 0;
2657 const DISABLED = 1;
2658 const CBR = 1 << 1;
2659 const VBR = 1 << 2;
2660 }
2661}
2662
2663bitflags! {
2664 #[repr(transparent)]
2666 #[derive(Default)]
2667 pub struct VideoEncodeRgbChromaOffsetFlagsVALVE: Flags {
2668 const COSITED_EVEN = 1;
2669 const MIDPOINT = 1 << 1;
2670 }
2671}
2672
2673bitflags! {
2674 #[repr(transparent)]
2676 #[derive(Default)]
2677 pub struct VideoEncodeRgbModelConversionFlagsVALVE: Flags {
2678 const RGB_IDENTITY = 1;
2679 const YCBCR_IDENTITY = 1 << 1;
2680 const YCBCR_709 = 1 << 2;
2681 const YCBCR_601 = 1 << 3;
2682 const YCBCR_2020 = 1 << 4;
2683 }
2684}
2685
2686bitflags! {
2687 #[repr(transparent)]
2689 #[derive(Default)]
2690 pub struct VideoEncodeRgbRangeCompressionFlagsVALVE: Flags {
2691 const FULL_RANGE = 1;
2692 const NARROW_RANGE = 1 << 1;
2693 }
2694}
2695
2696bitflags! {
2697 #[repr(transparent)]
2699 #[derive(Default)]
2700 pub struct VideoEncodeUsageFlagsKHR: Flags {
2701 const DEFAULT = 0;
2702 const TRANSCODING = 1;
2703 const STREAMING = 1 << 1;
2704 const RECORDING = 1 << 2;
2705 const CONFERENCING = 1 << 3;
2706 }
2707}
2708
2709bitflags! {
2710 #[repr(transparent)]
2712 #[derive(Default)]
2713 pub struct VideoEndCodingFlagsKHR: Flags { }
2714}
2715
2716bitflags! {
2717 #[repr(transparent)]
2719 #[derive(Default)]
2720 pub struct VideoSessionCreateFlagsKHR: Flags {
2721 const PROTECTED_CONTENT = 1;
2722 const ALLOW_ENCODE_PARAMETER_OPTIMIZATIONS = 1 << 1;
2723 const INLINE_QUERIES = 1 << 2;
2724 const ALLOW_ENCODE_QUANTIZATION_DELTA_MAP = 1 << 3;
2725 const ALLOW_ENCODE_EMPHASIS_MAP = 1 << 4;
2726 const INLINE_SESSION_PARAMETERS = 1 << 5;
2727 }
2728}
2729
2730bitflags! {
2731 #[repr(transparent)]
2733 #[derive(Default)]
2734 pub struct VideoSessionParametersCreateFlagsKHR: Flags {
2735 const QUANTIZATION_MAP_COMPATIBLE = 1;
2736 }
2737}
2738
2739bitflags! {
2740 #[repr(transparent)]
2742 #[derive(Default)]
2743 pub struct WaylandSurfaceCreateFlagsKHR: Flags { }
2744}
2745
2746bitflags! {
2747 #[repr(transparent)]
2749 #[derive(Default)]
2750 pub struct Win32SurfaceCreateFlagsKHR: Flags { }
2751}
2752
2753bitflags! {
2754 #[repr(transparent)]
2756 #[derive(Default)]
2757 pub struct XcbSurfaceCreateFlagsKHR: Flags { }
2758}
2759
2760bitflags! {
2761 #[repr(transparent)]
2763 #[derive(Default)]
2764 pub struct XlibSurfaceCreateFlagsKHR: Flags { }
2765}
2766
2767pub type AccessFlags2KHR = AccessFlags2;
2769pub type BufferUsageFlags2KHR = BufferUsageFlags2;
2771pub type BuildAccelerationStructureFlagsNV = BuildAccelerationStructureFlagsKHR;
2773pub type CommandPoolTrimFlagsKHR = CommandPoolTrimFlags;
2775pub type DescriptorBindingFlagsEXT = DescriptorBindingFlags;
2777pub type DescriptorUpdateTemplateCreateFlagsKHR = DescriptorUpdateTemplateCreateFlags;
2779pub type ExternalFenceFeatureFlagsKHR = ExternalFenceFeatureFlags;
2781pub type ExternalFenceHandleTypeFlagsKHR = ExternalFenceHandleTypeFlags;
2783pub type ExternalMemoryFeatureFlagsKHR = ExternalMemoryFeatureFlags;
2785pub type ExternalMemoryHandleTypeFlagsKHR = ExternalMemoryHandleTypeFlags;
2787pub type ExternalSemaphoreFeatureFlagsKHR = ExternalSemaphoreFeatureFlags;
2789pub type ExternalSemaphoreHandleTypeFlagsKHR = ExternalSemaphoreHandleTypeFlags;
2791pub type FenceImportFlagsKHR = FenceImportFlags;
2793pub type FormatFeatureFlags2KHR = FormatFeatureFlags2;
2795pub type GeometryFlagsNV = GeometryFlagsKHR;
2797pub type GeometryInstanceFlagsNV = GeometryInstanceFlagsKHR;
2799pub type HostImageCopyFlagsEXT = HostImageCopyFlags;
2801pub type MemoryAllocateFlagsKHR = MemoryAllocateFlags;
2803pub type MemoryDecompressionMethodFlagsNV = MemoryDecompressionMethodFlagsEXT;
2805pub type MemoryUnmapFlagsKHR = MemoryUnmapFlags;
2807pub type PeerMemoryFeatureFlagsKHR = PeerMemoryFeatureFlags;
2809pub type PipelineCreateFlags2KHR = PipelineCreateFlags2;
2811pub type PipelineCreationFeedbackFlagsEXT = PipelineCreationFeedbackFlags;
2813pub type PipelineStageFlags2KHR = PipelineStageFlags2;
2815pub type PresentGravityFlagsEXT = PresentGravityFlagsKHR;
2817pub type PresentScalingFlagsEXT = PresentScalingFlagsKHR;
2819pub type PrivateDataSlotCreateFlagsEXT = PrivateDataSlotCreateFlags;
2821pub type RenderingFlagsKHR = RenderingFlags;
2823pub type ResolveModeFlagsKHR = ResolveModeFlags;
2825pub type SemaphoreImportFlagsKHR = SemaphoreImportFlags;
2827pub type SemaphoreWaitFlagsKHR = SemaphoreWaitFlags;
2829pub type SubmitFlagsKHR = SubmitFlags;
2831pub type ToolPurposeFlagsEXT = ToolPurposeFlags;