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