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