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