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