erupt/generated/extensions/
ext_memory_priority.rs1#[doc(alias = "VK_EXT_MEMORY_PRIORITY_SPEC_VERSION")]
4pub const EXT_MEMORY_PRIORITY_SPEC_VERSION: u32 = 1;
5#[doc(alias = "VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME")]
7pub const EXT_MEMORY_PRIORITY_EXTENSION_NAME: *const std::os::raw::c_char = crate::cstr!(
8 "VK_EXT_memory_priority"
9);
10impl crate::vk1_0::StructureType {
12 pub const PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT: Self = Self(1000238000);
13 pub const MEMORY_PRIORITY_ALLOCATE_INFO_EXT: Self = Self(1000238001);
14}
15impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceMemoryPriorityFeaturesEXT>
16for crate::vk1_0::DeviceCreateInfoBuilder<'a> {}
17impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'_>>
18for crate::vk1_0::DeviceCreateInfoBuilder<'a> {}
19impl<'a> crate::ExtendableFrom<'a, MemoryPriorityAllocateInfoEXT>
20for crate::vk1_0::MemoryAllocateInfoBuilder<'a> {}
21impl<'a> crate::ExtendableFrom<'a, MemoryPriorityAllocateInfoEXTBuilder<'_>>
22for crate::vk1_0::MemoryAllocateInfoBuilder<'a> {}
23impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceMemoryPriorityFeaturesEXT>
24for crate::vk1_1::PhysicalDeviceFeatures2Builder<'a> {}
25impl<'a> crate::ExtendableFrom<'a, PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'_>>
26for crate::vk1_1::PhysicalDeviceFeatures2Builder<'a> {}
27#[doc(alias = "VkPhysicalDeviceMemoryPriorityFeaturesEXT")]
29#[derive(Copy, Clone)]
30#[repr(C)]
31pub struct PhysicalDeviceMemoryPriorityFeaturesEXT {
32 pub s_type: crate::vk1_0::StructureType,
33 pub p_next: *mut std::ffi::c_void,
34 pub memory_priority: crate::vk1_0::Bool32,
35}
36impl PhysicalDeviceMemoryPriorityFeaturesEXT {
37 pub const STRUCTURE_TYPE: crate::vk1_0::StructureType = crate::vk1_0::StructureType::PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT;
38}
39impl Default for PhysicalDeviceMemoryPriorityFeaturesEXT {
40 fn default() -> Self {
41 Self {
42 s_type: Self::STRUCTURE_TYPE,
43 p_next: std::ptr::null_mut(),
44 memory_priority: Default::default(),
45 }
46 }
47}
48impl std::fmt::Debug for PhysicalDeviceMemoryPriorityFeaturesEXT {
49 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
50 f.debug_struct("PhysicalDeviceMemoryPriorityFeaturesEXT")
51 .field("s_type", &self.s_type)
52 .field("p_next", &self.p_next)
53 .field("memory_priority", &(self.memory_priority != 0))
54 .finish()
55 }
56}
57impl PhysicalDeviceMemoryPriorityFeaturesEXT {
58 #[inline]
59 pub fn into_builder<'a>(self) -> PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
60 PhysicalDeviceMemoryPriorityFeaturesEXTBuilder(self, std::marker::PhantomData)
61 }
62}
63#[derive(Copy, Clone)]
64#[repr(transparent)]
66pub struct PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a>(
67 PhysicalDeviceMemoryPriorityFeaturesEXT,
68 std::marker::PhantomData<&'a ()>,
69);
70impl<'a> PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
71 #[inline]
72 pub fn new() -> PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
73 PhysicalDeviceMemoryPriorityFeaturesEXTBuilder(
74 Default::default(),
75 std::marker::PhantomData,
76 )
77 }
78 #[inline]
79 #[must_use]
80 pub fn memory_priority(mut self, memory_priority: bool) -> Self {
81 self.0.memory_priority = memory_priority as _;
82 self
83 }
84 #[inline]
85 pub fn build_dangling(self) -> PhysicalDeviceMemoryPriorityFeaturesEXT {
88 self.0
89 }
90}
91impl<'a> std::default::Default for PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
92 fn default() -> PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
93 Self::new()
94 }
95}
96impl<'a> std::fmt::Debug for PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
97 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
98 std::fmt::Debug::fmt(&self.0, f)
99 }
100}
101impl<'a> std::ops::Deref for PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
102 type Target = PhysicalDeviceMemoryPriorityFeaturesEXT;
103 fn deref(&self) -> &Self::Target {
104 &self.0
105 }
106}
107impl<'a> std::ops::DerefMut for PhysicalDeviceMemoryPriorityFeaturesEXTBuilder<'a> {
108 fn deref_mut(&mut self) -> &mut Self::Target {
109 &mut self.0
110 }
111}
112#[doc(alias = "VkMemoryPriorityAllocateInfoEXT")]
114#[derive(Copy, Clone)]
115#[repr(C)]
116pub struct MemoryPriorityAllocateInfoEXT {
117 pub s_type: crate::vk1_0::StructureType,
118 pub p_next: *const std::ffi::c_void,
119 pub priority: std::os::raw::c_float,
120}
121impl MemoryPriorityAllocateInfoEXT {
122 pub const STRUCTURE_TYPE: crate::vk1_0::StructureType = crate::vk1_0::StructureType::MEMORY_PRIORITY_ALLOCATE_INFO_EXT;
123}
124impl Default for MemoryPriorityAllocateInfoEXT {
125 fn default() -> Self {
126 Self {
127 s_type: Self::STRUCTURE_TYPE,
128 p_next: std::ptr::null(),
129 priority: Default::default(),
130 }
131 }
132}
133impl std::fmt::Debug for MemoryPriorityAllocateInfoEXT {
134 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
135 f.debug_struct("MemoryPriorityAllocateInfoEXT")
136 .field("s_type", &self.s_type)
137 .field("p_next", &self.p_next)
138 .field("priority", &self.priority)
139 .finish()
140 }
141}
142impl MemoryPriorityAllocateInfoEXT {
143 #[inline]
144 pub fn into_builder<'a>(self) -> MemoryPriorityAllocateInfoEXTBuilder<'a> {
145 MemoryPriorityAllocateInfoEXTBuilder(self, std::marker::PhantomData)
146 }
147}
148#[derive(Copy, Clone)]
149#[repr(transparent)]
151pub struct MemoryPriorityAllocateInfoEXTBuilder<'a>(
152 MemoryPriorityAllocateInfoEXT,
153 std::marker::PhantomData<&'a ()>,
154);
155impl<'a> MemoryPriorityAllocateInfoEXTBuilder<'a> {
156 #[inline]
157 pub fn new() -> MemoryPriorityAllocateInfoEXTBuilder<'a> {
158 MemoryPriorityAllocateInfoEXTBuilder(
159 Default::default(),
160 std::marker::PhantomData,
161 )
162 }
163 #[inline]
164 #[must_use]
165 pub fn priority(mut self, priority: std::os::raw::c_float) -> Self {
166 self.0.priority = priority as _;
167 self
168 }
169 #[inline]
170 pub fn build_dangling(self) -> MemoryPriorityAllocateInfoEXT {
173 self.0
174 }
175}
176impl<'a> std::default::Default for MemoryPriorityAllocateInfoEXTBuilder<'a> {
177 fn default() -> MemoryPriorityAllocateInfoEXTBuilder<'a> {
178 Self::new()
179 }
180}
181impl<'a> std::fmt::Debug for MemoryPriorityAllocateInfoEXTBuilder<'a> {
182 fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
183 std::fmt::Debug::fmt(&self.0, f)
184 }
185}
186impl<'a> std::ops::Deref for MemoryPriorityAllocateInfoEXTBuilder<'a> {
187 type Target = MemoryPriorityAllocateInfoEXT;
188 fn deref(&self) -> &Self::Target {
189 &self.0
190 }
191}
192impl<'a> std::ops::DerefMut for MemoryPriorityAllocateInfoEXTBuilder<'a> {
193 fn deref_mut(&mut self) -> &mut Self::Target {
194 &mut self.0
195 }
196}