erupt/generated/extensions/
khr_sampler_ycbcr_conversion.rs1#[doc(alias = "VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION")]
4pub const KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION: u32 = 14;
5#[doc(alias = "VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME")]
7pub const KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME: *const std::os::raw::c_char = crate::cstr!(
8 "VK_KHR_sampler_ycbcr_conversion"
9);
10pub const FN_CREATE_SAMPLER_YCBCR_CONVERSION_KHR: *const std::os::raw::c_char = crate::cstr!(
12 "vkCreateSamplerYcbcrConversionKHR"
13);
14pub const FN_DESTROY_SAMPLER_YCBCR_CONVERSION_KHR: *const std::os::raw::c_char = crate::cstr!(
16 "vkDestroySamplerYcbcrConversionKHR"
17);
18#[doc(alias = "VkSamplerYcbcrConversionKHR")]
20#[allow(non_camel_case_types)]
21pub type SamplerYcbcrConversionKHR = crate::vk1_1::SamplerYcbcrConversion;
22#[doc(alias = "VkSamplerYcbcrModelConversionKHR")]
24#[allow(non_camel_case_types)]
25pub type SamplerYcbcrModelConversionKHR = crate::vk1_1::SamplerYcbcrModelConversion;
26#[doc(alias = "VkSamplerYcbcrRangeKHR")]
28#[allow(non_camel_case_types)]
29pub type SamplerYcbcrRangeKHR = crate::vk1_1::SamplerYcbcrRange;
30#[doc(alias = "VkChromaLocationKHR")]
32#[allow(non_camel_case_types)]
33pub type ChromaLocationKHR = crate::vk1_1::ChromaLocation;
34#[doc(alias = "VkSamplerYcbcrConversionInfoKHR")]
36#[allow(non_camel_case_types)]
37pub type SamplerYcbcrConversionInfoKHR = crate::vk1_1::SamplerYcbcrConversionInfo;
38#[doc(alias = "VkSamplerYcbcrConversionInfoKHR")]
40#[allow(non_camel_case_types)]
41pub type SamplerYcbcrConversionInfoKHRBuilder<'a> = crate::vk1_1::SamplerYcbcrConversionInfoBuilder<
42 'a,
43>;
44#[doc(alias = "VkSamplerYcbcrConversionCreateInfoKHR")]
46#[allow(non_camel_case_types)]
47pub type SamplerYcbcrConversionCreateInfoKHR = crate::vk1_1::SamplerYcbcrConversionCreateInfo;
48#[doc(alias = "VkSamplerYcbcrConversionCreateInfoKHR")]
50#[allow(non_camel_case_types)]
51pub type SamplerYcbcrConversionCreateInfoKHRBuilder<'a> = crate::vk1_1::SamplerYcbcrConversionCreateInfoBuilder<
52 'a,
53>;
54#[doc(alias = "VkBindImagePlaneMemoryInfoKHR")]
56#[allow(non_camel_case_types)]
57pub type BindImagePlaneMemoryInfoKHR = crate::vk1_1::BindImagePlaneMemoryInfo;
58#[doc(alias = "VkBindImagePlaneMemoryInfoKHR")]
60#[allow(non_camel_case_types)]
61pub type BindImagePlaneMemoryInfoKHRBuilder<'a> = crate::vk1_1::BindImagePlaneMemoryInfoBuilder<
62 'a,
63>;
64#[doc(alias = "VkImagePlaneMemoryRequirementsInfoKHR")]
66#[allow(non_camel_case_types)]
67pub type ImagePlaneMemoryRequirementsInfoKHR = crate::vk1_1::ImagePlaneMemoryRequirementsInfo;
68#[doc(alias = "VkImagePlaneMemoryRequirementsInfoKHR")]
70#[allow(non_camel_case_types)]
71pub type ImagePlaneMemoryRequirementsInfoKHRBuilder<'a> = crate::vk1_1::ImagePlaneMemoryRequirementsInfoBuilder<
72 'a,
73>;
74#[doc(alias = "VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR")]
76#[allow(non_camel_case_types)]
77pub type PhysicalDeviceSamplerYcbcrConversionFeaturesKHR = crate::vk1_1::PhysicalDeviceSamplerYcbcrConversionFeatures;
78#[doc(alias = "VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR")]
80#[allow(non_camel_case_types)]
81pub type PhysicalDeviceSamplerYcbcrConversionFeaturesKHRBuilder<'a> = crate::vk1_1::PhysicalDeviceSamplerYcbcrConversionFeaturesBuilder<
82 'a,
83>;
84#[doc(alias = "VkSamplerYcbcrConversionImageFormatPropertiesKHR")]
86#[allow(non_camel_case_types)]
87pub type SamplerYcbcrConversionImageFormatPropertiesKHR = crate::vk1_1::SamplerYcbcrConversionImageFormatProperties;
88#[doc(alias = "VkSamplerYcbcrConversionImageFormatPropertiesKHR")]
90#[allow(non_camel_case_types)]
91pub type SamplerYcbcrConversionImageFormatPropertiesKHRBuilder<'a> = crate::vk1_1::SamplerYcbcrConversionImageFormatPropertiesBuilder<
92 'a,
93>;
94#[allow(non_camel_case_types)]
96pub type PFN_vkCreateSamplerYcbcrConversionKHR = crate::vk1_1::PFN_vkCreateSamplerYcbcrConversion;
97#[allow(non_camel_case_types)]
99pub type PFN_vkDestroySamplerYcbcrConversionKHR = crate::vk1_1::PFN_vkDestroySamplerYcbcrConversion;
100impl crate::vk1_0::Format {
102 pub const G8B8G8R8_422_UNORM_KHR: Self = Self::G8B8G8R8_422_UNORM;
103 pub const B8G8R8G8_422_UNORM_KHR: Self = Self::B8G8R8G8_422_UNORM;
104 pub const G8_B8_R8_3PLANE_420_UNORM_KHR: Self = Self::G8_B8_R8_3PLANE_420_UNORM;
105 pub const G8_B8R8_2PLANE_420_UNORM_KHR: Self = Self::G8_B8R8_2PLANE_420_UNORM;
106 pub const G8_B8_R8_3PLANE_422_UNORM_KHR: Self = Self::G8_B8_R8_3PLANE_422_UNORM;
107 pub const G8_B8R8_2PLANE_422_UNORM_KHR: Self = Self::G8_B8R8_2PLANE_422_UNORM;
108 pub const G8_B8_R8_3PLANE_444_UNORM_KHR: Self = Self::G8_B8_R8_3PLANE_444_UNORM;
109 pub const R10X6_UNORM_PACK16_KHR: Self = Self::R10X6_UNORM_PACK16;
110 pub const R10X6G10X6_UNORM_2PACK16_KHR: Self = Self::R10X6G10X6_UNORM_2PACK16;
111 pub const R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR: Self = Self::R10X6G10X6B10X6A10X6_UNORM_4PACK16;
112 pub const G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR: Self = Self::G10X6B10X6G10X6R10X6_422_UNORM_4PACK16;
113 pub const B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR: Self = Self::B10X6G10X6R10X6G10X6_422_UNORM_4PACK16;
114 pub const G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR: Self = Self::G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16;
115 pub const G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR: Self = Self::G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16;
116 pub const G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR: Self = Self::G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16;
117 pub const G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR: Self = Self::G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16;
118 pub const G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR: Self = Self::G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16;
119 pub const R12X4_UNORM_PACK16_KHR: Self = Self::R12X4_UNORM_PACK16;
120 pub const R12X4G12X4_UNORM_2PACK16_KHR: Self = Self::R12X4G12X4_UNORM_2PACK16;
121 pub const R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR: Self = Self::R12X4G12X4B12X4A12X4_UNORM_4PACK16;
122 pub const G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR: Self = Self::G12X4B12X4G12X4R12X4_422_UNORM_4PACK16;
123 pub const B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR: Self = Self::B12X4G12X4R12X4G12X4_422_UNORM_4PACK16;
124 pub const G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR: Self = Self::G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16;
125 pub const G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR: Self = Self::G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16;
126 pub const G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR: Self = Self::G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16;
127 pub const G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR: Self = Self::G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16;
128 pub const G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR: Self = Self::G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16;
129 pub const G16B16G16R16_422_UNORM_KHR: Self = Self::G16B16G16R16_422_UNORM;
130 pub const B16G16R16G16_422_UNORM_KHR: Self = Self::B16G16R16G16_422_UNORM;
131 pub const G16_B16_R16_3PLANE_420_UNORM_KHR: Self = Self::G16_B16_R16_3PLANE_420_UNORM;
132 pub const G16_B16R16_2PLANE_420_UNORM_KHR: Self = Self::G16_B16R16_2PLANE_420_UNORM;
133 pub const G16_B16_R16_3PLANE_422_UNORM_KHR: Self = Self::G16_B16_R16_3PLANE_422_UNORM;
134 pub const G16_B16R16_2PLANE_422_UNORM_KHR: Self = Self::G16_B16R16_2PLANE_422_UNORM;
135 pub const G16_B16_R16_3PLANE_444_UNORM_KHR: Self = Self::G16_B16_R16_3PLANE_444_UNORM;
136}
137impl crate::vk1_0::FormatFeatureFlagBits {
139 pub const MIDPOINT_CHROMA_SAMPLES_KHR: Self = Self::MIDPOINT_CHROMA_SAMPLES;
140 pub const SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_KHR: Self = Self::SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER;
141 pub const SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_KHR: Self = Self::SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER;
142 pub const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_KHR: Self = Self::SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT;
143 pub const SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_KHR: Self = Self::SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE;
144 pub const DISJOINT_KHR: Self = Self::DISJOINT;
145 pub const COSITED_CHROMA_SAMPLES_KHR: Self = Self::COSITED_CHROMA_SAMPLES;
146}
147impl crate::vk1_0::ImageAspectFlagBits {
149 pub const PLANE_0_KHR: Self = Self::PLANE_0;
150 pub const PLANE_1_KHR: Self = Self::PLANE_1;
151 pub const PLANE_2_KHR: Self = Self::PLANE_2;
152}
153impl crate::vk1_0::ImageCreateFlagBits {
155 pub const DISJOINT_KHR: Self = Self::DISJOINT;
156}
157impl crate::vk1_0::StructureType {
159 pub const SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR: Self = Self::SAMPLER_YCBCR_CONVERSION_CREATE_INFO;
160 pub const SAMPLER_YCBCR_CONVERSION_INFO_KHR: Self = Self::SAMPLER_YCBCR_CONVERSION_INFO;
161 pub const BIND_IMAGE_PLANE_MEMORY_INFO_KHR: Self = Self::BIND_IMAGE_PLANE_MEMORY_INFO;
162 pub const IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR: Self = Self::IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO;
163 pub const PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR: Self = Self::PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES;
164 pub const SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR: Self = Self::SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES;
165}
166impl crate::vk1_0::ObjectType {
168 pub const SAMPLER_YCBCR_CONVERSION_KHR: Self = Self::SAMPLER_YCBCR_CONVERSION;
169}
170impl crate::extensions::ext_debug_report::DebugReportObjectTypeEXT {
172 pub const SAMPLER_YCBCR_CONVERSION_KHR_EXT: Self = Self::SAMPLER_YCBCR_CONVERSION_EXT;
173}
174impl crate::vk1_1::SamplerYcbcrModelConversion {
176 pub const RGB_IDENTITY_KHR: Self = Self::RGB_IDENTITY;
177 pub const YCBCR_IDENTITY_KHR: Self = Self::YCBCR_IDENTITY;
178 pub const YCBCR_709_KHR: Self = Self::YCBCR_709;
179 pub const YCBCR_601_KHR: Self = Self::YCBCR_601;
180 pub const YCBCR_2020_KHR: Self = Self::YCBCR_2020;
181}
182impl crate::vk1_1::SamplerYcbcrRange {
184 pub const ITU_FULL_KHR: Self = Self::ITU_FULL;
185 pub const ITU_NARROW_KHR: Self = Self::ITU_NARROW;
186}
187impl crate::vk1_1::ChromaLocation {
189 pub const COSITED_EVEN_KHR: Self = Self::COSITED_EVEN;
190 pub const MIDPOINT_KHR: Self = Self::MIDPOINT;
191}
192impl crate::DeviceLoader {
194 #[inline]
195 #[track_caller]
196 #[doc(alias = "vkCreateSamplerYcbcrConversionKHR")]
198 pub unsafe fn create_sampler_ycbcr_conversion_khr(
199 &self,
200 create_info: &crate::vk1_1::SamplerYcbcrConversionCreateInfo,
201 allocator: Option<&crate::vk1_0::AllocationCallbacks>,
202 ) -> crate::utils::VulkanResult<crate::vk1_1::SamplerYcbcrConversion> {
203 let _function = self
204 .create_sampler_ycbcr_conversion_khr
205 .expect(crate::NOT_LOADED_MESSAGE);
206 let mut ycbcr_conversion = Default::default();
207 let _return = _function(
208 self.handle,
209 create_info as _,
210 match allocator {
211 Some(v) => v,
212 None => std::ptr::null(),
213 },
214 &mut ycbcr_conversion,
215 );
216 crate::utils::VulkanResult::new(_return, ycbcr_conversion)
217 }
218 #[inline]
219 #[track_caller]
220 #[doc(alias = "vkDestroySamplerYcbcrConversionKHR")]
222 pub unsafe fn destroy_sampler_ycbcr_conversion_khr(
223 &self,
224 ycbcr_conversion: crate::vk1_1::SamplerYcbcrConversion,
225 allocator: Option<&crate::vk1_0::AllocationCallbacks>,
226 ) -> () {
227 let _function = self
228 .destroy_sampler_ycbcr_conversion_khr
229 .expect(crate::NOT_LOADED_MESSAGE);
230 let _return = _function(
231 self.handle,
232 ycbcr_conversion as _,
233 match allocator {
234 Some(v) => v,
235 None => std::ptr::null(),
236 },
237 );
238 ()
239 }
240}