1#[repr(i32)]
5#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
6pub enum VkStructureType {
7 ApplicationInfo = 0,
8 InstanceCreateInfo = 1,
9 DeviceQueueCreateInfo = 2,
10 DeviceCreateInfo = 3,
11 SubmitInfo = 4,
12 MemoryAllocateInfo = 5,
13 MappedMemoryRange = 6,
14 FenceCreateInfo = 8,
15 SemaphoreCreateInfo = 9,
16 EventCreateInfo = 10,
17 QueryPoolCreateInfo = 11,
18 BufferCreateInfo = 12,
19 PipelineShaderStageCreateInfo = 18,
20 ComputePipelineCreateInfo = 28,
22 PipelineLayoutCreateInfo = 30,
23 DescriptorSetLayoutCreateInfo = 32,
24 DescriptorPoolCreateInfo = 33,
25 DescriptorSetAllocateInfo = 34,
26 WriteDescriptorSet = 35,
27 CopyDescriptorSet = 36,
28 ShaderModuleCreateInfo = 15,
30 CommandPoolCreateInfo = 39,
31 CommandBufferAllocateInfo = 40,
32 CommandBufferBeginInfo = 42,
33 BufferMemoryBarrier = 44,
34 MemoryBarrier = 46,
35 PipelineCacheCreateInfo = 17,
37 SemaphoreTypeCreateInfo = 1000207002,
39 TimelineSemaphoreSubmitInfo = 1000207003,
40 SemaphoreWaitInfo = 1000207004,
41}
42
43#[repr(u32)]
45#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
46pub enum VkQueueFlagBits {
47 Compute = 0x00000002,
48 Transfer = 0x00000004,
49 SparseBinding = 0x00000008,
50}
51
52#[repr(u32)]
54#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
55pub enum VkMemoryPropertyFlagBits {
56 DeviceLocal = 0x00000001,
57 HostVisible = 0x00000002,
58 HostCoherent = 0x00000004,
59 HostCached = 0x00000008,
60 LazilyAllocated = 0x00000010,
61}
62
63#[repr(u32)]
65#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
66pub enum VkBufferUsageFlagBits {
67 TransferSrc = 0x00000001,
68 TransferDst = 0x00000002,
69 UniformBuffer = 0x00000010,
70 StorageBuffer = 0x00000020,
71 IndexBuffer = 0x00000040,
72 VertexBuffer = 0x00000080,
73 IndirectBuffer = 0x00000100,
74}
75
76#[repr(i32)]
78#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
79pub enum VkSharingMode {
80 Exclusive = 0,
81 Concurrent = 1,
82}
83
84#[repr(i32)]
86#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
87pub enum VkPipelineBindPoint {
88 Compute = 1,
89}
90
91#[repr(i32)]
93#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
94pub enum VkCommandBufferLevel {
95 Primary = 0,
96 Secondary = 1,
97}
98
99#[repr(u32)]
101#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
102pub enum VkCommandBufferUsageFlagBits {
103 OneTimeSubmit = 0x00000001,
104 SimultaneousUse = 0x00000004,
105}
106
107#[repr(u32)]
109#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
110pub enum VkShaderStageFlagBits {
111 Compute = 0x00000020,
112}
113
114#[repr(i32)]
116#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
117pub enum VkDescriptorType {
118 Sampler = 0,
119 SampledImage = 2,
120 StorageImage = 3,
121 UniformBuffer = 6,
122 StorageBuffer = 7,
123 UniformBufferDynamic = 8,
124 StorageBufferDynamic = 9,
125}
126
127#[repr(u32)]
129#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
130pub enum VkPipelineStageFlagBits {
131 TopOfPipe = 0x00000001,
132 ComputeShader = 0x00000800,
133 BottomOfPipe = 0x00002000,
134 Host = 0x00004000,
135 AllCommands = 0x00010000,
136}
137
138#[repr(u32)]
140#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
141pub enum VkAccessFlagBits {
142 IndirectCommandRead = 0x00000001,
143 IndexRead = 0x00000002,
144 VertexAttributeRead = 0x00000004,
145 UniformRead = 0x00000008,
146 InputAttachmentRead = 0x00000010,
147 ShaderRead = 0x00000020,
148 ShaderWrite = 0x00000040,
149 TransferRead = 0x00000800,
150 TransferWrite = 0x00001000,
151 HostRead = 0x00002000,
152 HostWrite = 0x00004000,
153 MemoryRead = 0x00008000,
154 MemoryWrite = 0x00010000,
155}
156
157#[repr(i32)]
159#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
160pub enum VkSemaphoreType {
161 Binary = 0,
162 Timeline = 1,
163}
164
165#[repr(i32)]
167#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash)]
168pub enum VkPhysicalDeviceType {
169 Other = 0,
170 IntegratedGpu = 1,
171 DiscreteGpu = 2,
172 VirtualGpu = 3,
173 Cpu = 4,
174}