Update Vulkan-Headers to 1.3.260 (#763)

* Update Vulkan-Headers to 1.3.255

* Update Vulkan-Headers to 1.3.257

* Update Vulkan-Headers to 1.3.258

* Update Vulkan-Headers to 1.3.259

* Update Vulkan-Headers to 1.3.260
This commit is contained in:
Marijn Suijten 2023-07-29 10:44:49 +02:00 committed by GitHub
parent 6b56444e79
commit 010df1b1b3
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 2733 additions and 90 deletions

View file

@ -11,7 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
- Added `Handle::is_null()` to allow checking if a handle is a `NULL` value (#694)
- Allow building `Entry`/`Instance`/`Device` from handle+fns (see their `from_parts_1_x()` associated functions) (#748)
- Update Vulkan-Headers to 1.3.254 (#760)
- Update Vulkan-Headers to 1.3.260 (#760, #763)
- Added `VK_NV_memory_decompression` device extension (#761)
- Added `VK_GOOGLE_display_timing` device extension (#765)
- Added `VK_ANDROID_external_memory_android_hardware_buffer` device extension (#769)

View file

@ -1,6 +1,6 @@
[package]
name = "ash"
version = "0.37.0+1.3.254"
version = "0.37.0+1.3.260"
authors = [
"Maik Klein <maikklein@googlemail.com>",
"Benjamin Saunders <ben.e.saunders@gmail.com>",

View file

@ -38,6 +38,8 @@ pub type CopyAccelerationStructureModeNV = CopyAccelerationStructureModeKHR;
pub type AccelerationStructureTypeNV = AccelerationStructureTypeKHR;
pub type GeometryTypeNV = GeometryTypeKHR;
pub type RayTracingShaderGroupTypeNV = RayTracingShaderGroupTypeKHR;
pub type ScopeNV = ScopeKHR;
pub type ComponentTypeNV = ComponentTypeKHR;
pub type TessellationDomainOriginKHR = TessellationDomainOrigin;
pub type SamplerYcbcrModelConversionKHR = SamplerYcbcrModelConversion;
pub type SamplerYcbcrRangeKHR = SamplerYcbcrRange;
@ -269,3 +271,5 @@ pub type CommandBufferInheritanceRenderingInfoKHR<'a> = CommandBufferInheritance
pub type AttachmentSampleCountInfoNV<'a> = AttachmentSampleCountInfoAMD<'a>;
pub type PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM<'a> =
PhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT<'a>;
pub type ImageSubresource2EXT<'a> = ImageSubresource2KHR<'a>;
pub type SubresourceLayout2EXT<'a> = SubresourceLayout2KHR<'a>;

View file

@ -137,6 +137,22 @@ impl BufferUsageFlags {
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferUsageFlagBits2KHR.html>"]
pub struct BufferUsageFlags2KHR(pub(crate) Flags64);
vk_bitflags_wrapped!(BufferUsageFlags2KHR, Flags64);
impl BufferUsageFlags2KHR {
pub const TRANSFER_SRC: Self = Self(0b1);
pub const TRANSFER_DST: Self = Self(0b10);
pub const UNIFORM_TEXEL_BUFFER: Self = Self(0b100);
pub const STORAGE_TEXEL_BUFFER: Self = Self(0b1000);
pub const UNIFORM_BUFFER: Self = Self(0b1_0000);
pub const STORAGE_BUFFER: Self = Self(0b10_0000);
pub const INDEX_BUFFER: Self = Self(0b100_0000);
pub const VERTEX_BUFFER: Self = Self(0b1000_0000);
pub const INDIRECT_BUFFER: Self = Self(0b1_0000_0000);
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferCreateFlagBits.html>"]
pub struct BufferCreateFlags(pub(crate) Flags);
vk_bitflags_wrapped!(BufferCreateFlags, Flags);
@ -227,6 +243,16 @@ impl PipelineCreateFlags {
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPipelineCreateFlagBits2KHR.html>"]
pub struct PipelineCreateFlags2KHR(pub(crate) Flags64);
vk_bitflags_wrapped!(PipelineCreateFlags2KHR, Flags64);
impl PipelineCreateFlags2KHR {
pub const DISABLE_OPTIMIZATION: Self = Self(0b1);
pub const ALLOW_DERIVATIVES: Self = Self(0b10);
pub const DERIVATIVE: Self = Self(0b100);
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPipelineShaderStageCreateFlagBits.html>"]
pub struct PipelineShaderStageCreateFlags(pub(crate) Flags);
vk_bitflags_wrapped!(PipelineShaderStageCreateFlags, Flags);
@ -1354,6 +1380,14 @@ impl VideoEncodeH264RateControlFlagsEXT {
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkHostImageCopyFlagBitsEXT.html>"]
pub struct HostImageCopyFlagsEXT(pub(crate) Flags);
vk_bitflags_wrapped!(HostImageCopyFlagsEXT, Flags);
impl HostImageCopyFlagsEXT {
pub const MEMCPY: Self = Self(0b1);
}
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkImageFormatConstraintsFlagBitsFUCHSIA.html>"]
pub struct ImageFormatConstraintsFlagsFUCHSIA(pub(crate) Flags);
vk_bitflags_wrapped!(ImageFormatConstraintsFlagsFUCHSIA, Flags);

View file

@ -561,6 +561,10 @@ impl fmt::Debug for BufferUsageFlags {
BufferUsageFlags::CONDITIONAL_RENDERING_EXT.0,
"CONDITIONAL_RENDERING_EXT",
),
(
BufferUsageFlags::EXECUTION_GRAPH_SCRATCH_AMDX.0,
"EXECUTION_GRAPH_SCRATCH_AMDX",
),
(
BufferUsageFlags::ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR.0,
"ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_KHR",
@ -609,6 +613,81 @@ impl fmt::Debug for BufferUsageFlags {
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for BufferUsageFlags2KHR {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags64, &str)] = &[
(BufferUsageFlags2KHR::TRANSFER_SRC.0, "TRANSFER_SRC"),
(BufferUsageFlags2KHR::TRANSFER_DST.0, "TRANSFER_DST"),
(
BufferUsageFlags2KHR::UNIFORM_TEXEL_BUFFER.0,
"UNIFORM_TEXEL_BUFFER",
),
(
BufferUsageFlags2KHR::STORAGE_TEXEL_BUFFER.0,
"STORAGE_TEXEL_BUFFER",
),
(BufferUsageFlags2KHR::UNIFORM_BUFFER.0, "UNIFORM_BUFFER"),
(BufferUsageFlags2KHR::STORAGE_BUFFER.0, "STORAGE_BUFFER"),
(BufferUsageFlags2KHR::INDEX_BUFFER.0, "INDEX_BUFFER"),
(BufferUsageFlags2KHR::VERTEX_BUFFER.0, "VERTEX_BUFFER"),
(BufferUsageFlags2KHR::INDIRECT_BUFFER.0, "INDIRECT_BUFFER"),
(
BufferUsageFlags2KHR::EXECUTION_GRAPH_SCRATCH_AMDX.0,
"EXECUTION_GRAPH_SCRATCH_AMDX",
),
(
BufferUsageFlags2KHR::CONDITIONAL_RENDERING.0,
"CONDITIONAL_RENDERING",
),
(
BufferUsageFlags2KHR::SHADER_BINDING_TABLE.0,
"SHADER_BINDING_TABLE",
),
(
BufferUsageFlags2KHR::TRANSFORM_FEEDBACK_BUFFER.0,
"TRANSFORM_FEEDBACK_BUFFER",
),
(
BufferUsageFlags2KHR::TRANSFORM_FEEDBACK_COUNTER_BUFFER.0,
"TRANSFORM_FEEDBACK_COUNTER_BUFFER",
),
(BufferUsageFlags2KHR::VIDEO_DECODE_SRC.0, "VIDEO_DECODE_SRC"),
(BufferUsageFlags2KHR::VIDEO_DECODE_DST.0, "VIDEO_DECODE_DST"),
(BufferUsageFlags2KHR::VIDEO_ENCODE_DST.0, "VIDEO_ENCODE_DST"),
(BufferUsageFlags2KHR::VIDEO_ENCODE_SRC.0, "VIDEO_ENCODE_SRC"),
(
BufferUsageFlags2KHR::SHADER_DEVICE_ADDRESS.0,
"SHADER_DEVICE_ADDRESS",
),
(
BufferUsageFlags2KHR::ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY.0,
"ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY",
),
(
BufferUsageFlags2KHR::ACCELERATION_STRUCTURE_STORAGE.0,
"ACCELERATION_STRUCTURE_STORAGE",
),
(
BufferUsageFlags2KHR::SAMPLER_DESCRIPTOR_BUFFER.0,
"SAMPLER_DESCRIPTOR_BUFFER",
),
(
BufferUsageFlags2KHR::RESOURCE_DESCRIPTOR_BUFFER.0,
"RESOURCE_DESCRIPTOR_BUFFER",
),
(
BufferUsageFlags2KHR::PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER.0,
"PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER",
),
(
BufferUsageFlags2KHR::MICROMAP_BUILD_INPUT_READ_ONLY.0,
"MICROMAP_BUILD_INPUT_READ_ONLY",
),
(BufferUsageFlags2KHR::MICROMAP_STORAGE.0, "MICROMAP_STORAGE"),
];
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for BufferViewCreateFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[];
@ -887,7 +966,7 @@ impl fmt::Debug for ComponentSwizzle {
}
}
}
impl fmt::Debug for ComponentTypeNV {
impl fmt::Debug for ComponentTypeKHR {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let name = match *self {
Self::FLOAT16 => Some("FLOAT16"),
@ -1203,6 +1282,10 @@ impl fmt::Debug for DescriptorSetLayoutCreateFlags {
DescriptorSetLayoutCreateFlags::EMBEDDED_IMMUTABLE_SAMPLERS_EXT.0,
"EMBEDDED_IMMUTABLE_SAMPLERS_EXT",
),
(
DescriptorSetLayoutCreateFlags::INDIRECT_BINDABLE_NV.0,
"INDIRECT_BINDABLE_NV",
),
(
DescriptorSetLayoutCreateFlags::HOST_ONLY_POOL_EXT.0,
"HOST_ONLY_POOL_EXT",
@ -2067,6 +2150,8 @@ impl fmt::Debug for Format {
Self::PVRTC2_2BPP_SRGB_BLOCK_IMG => Some("PVRTC2_2BPP_SRGB_BLOCK_IMG"),
Self::PVRTC2_4BPP_SRGB_BLOCK_IMG => Some("PVRTC2_4BPP_SRGB_BLOCK_IMG"),
Self::R16G16_S10_5_NV => Some("R16G16_S10_5_NV"),
Self::A1B5G5R5_UNORM_PACK16_KHR => Some("A1B5G5R5_UNORM_PACK16_KHR"),
Self::A8_UNORM_KHR => Some("A8_UNORM_KHR"),
Self::G8B8G8R8_422_UNORM => Some("G8B8G8R8_422_UNORM"),
Self::B8G8R8G8_422_UNORM => Some("B8G8R8G8_422_UNORM"),
Self::G8_B8_R8_3PLANE_420_UNORM => Some("G8_B8_R8_3PLANE_420_UNORM"),
@ -2170,7 +2255,7 @@ impl fmt::Debug for FormatFeatureFlags {
}
impl fmt::Debug for FormatFeatureFlags2 {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN : & [(Flags64 , & str)] = & [(FormatFeatureFlags2 :: SAMPLED_IMAGE . 0 , "SAMPLED_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE . 0 , "STORAGE_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE_ATOMIC . 0 , "STORAGE_IMAGE_ATOMIC") , (FormatFeatureFlags2 :: UNIFORM_TEXEL_BUFFER . 0 , "UNIFORM_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER . 0 , "STORAGE_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER_ATOMIC . 0 , "STORAGE_TEXEL_BUFFER_ATOMIC") , (FormatFeatureFlags2 :: VERTEX_BUFFER . 0 , "VERTEX_BUFFER") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT . 0 , "COLOR_ATTACHMENT") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT_BLEND . 0 , "COLOR_ATTACHMENT_BLEND") , (FormatFeatureFlags2 :: DEPTH_STENCIL_ATTACHMENT . 0 , "DEPTH_STENCIL_ATTACHMENT") , (FormatFeatureFlags2 :: BLIT_SRC . 0 , "BLIT_SRC") , (FormatFeatureFlags2 :: BLIT_DST . 0 , "BLIT_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_LINEAR . 0 , "SAMPLED_IMAGE_FILTER_LINEAR") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_CUBIC . 0 , "SAMPLED_IMAGE_FILTER_CUBIC") , (FormatFeatureFlags2 :: TRANSFER_SRC . 0 , "TRANSFER_SRC") , (FormatFeatureFlags2 :: TRANSFER_DST . 0 , "TRANSFER_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_MINMAX . 0 , "SAMPLED_IMAGE_FILTER_MINMAX") , (FormatFeatureFlags2 :: MIDPOINT_CHROMA_SAMPLES . 0 , "MIDPOINT_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE") , (FormatFeatureFlags2 :: DISJOINT . 0 , "DISJOINT") , (FormatFeatureFlags2 :: COSITED_CHROMA_SAMPLES . 0 , "COSITED_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: STORAGE_READ_WITHOUT_FORMAT . 0 , "STORAGE_READ_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: STORAGE_WRITE_WITHOUT_FORMAT . 0 , "STORAGE_WRITE_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_DEPTH_COMPARISON . 0 , "SAMPLED_IMAGE_DEPTH_COMPARISON") , (FormatFeatureFlags2 :: VIDEO_DECODE_OUTPUT_KHR . 0 , "VIDEO_DECODE_OUTPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_DECODE_DPB_KHR . 0 , "VIDEO_DECODE_DPB_KHR") , (FormatFeatureFlags2 :: ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR . 0 , "ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR") , (FormatFeatureFlags2 :: FRAGMENT_DENSITY_MAP_EXT . 0 , "FRAGMENT_DENSITY_MAP_EXT") , (FormatFeatureFlags2 :: FRAGMENT_SHADING_RATE_ATTACHMENT_KHR . 0 , "FRAGMENT_SHADING_RATE_ATTACHMENT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_INPUT_KHR . 0 , "VIDEO_ENCODE_INPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_DPB_KHR . 0 , "VIDEO_ENCODE_DPB_KHR") , (FormatFeatureFlags2 :: LINEAR_COLOR_ATTACHMENT_NV . 0 , "LINEAR_COLOR_ATTACHMENT_NV") , (FormatFeatureFlags2 :: WEIGHT_IMAGE_QCOM . 0 , "WEIGHT_IMAGE_QCOM") , (FormatFeatureFlags2 :: WEIGHT_SAMPLED_IMAGE_QCOM . 0 , "WEIGHT_SAMPLED_IMAGE_QCOM") , (FormatFeatureFlags2 :: BLOCK_MATCHING_QCOM . 0 , "BLOCK_MATCHING_QCOM") , (FormatFeatureFlags2 :: BOX_FILTER_SAMPLED_QCOM . 0 , "BOX_FILTER_SAMPLED_QCOM") , (FormatFeatureFlags2 :: OPTICAL_FLOW_IMAGE_NV . 0 , "OPTICAL_FLOW_IMAGE_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_VECTOR_NV . 0 , "OPTICAL_FLOW_VECTOR_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_COST_NV . 0 , "OPTICAL_FLOW_COST_NV")] ;
const KNOWN : & [(Flags64 , & str)] = & [(FormatFeatureFlags2 :: SAMPLED_IMAGE . 0 , "SAMPLED_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE . 0 , "STORAGE_IMAGE") , (FormatFeatureFlags2 :: STORAGE_IMAGE_ATOMIC . 0 , "STORAGE_IMAGE_ATOMIC") , (FormatFeatureFlags2 :: UNIFORM_TEXEL_BUFFER . 0 , "UNIFORM_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER . 0 , "STORAGE_TEXEL_BUFFER") , (FormatFeatureFlags2 :: STORAGE_TEXEL_BUFFER_ATOMIC . 0 , "STORAGE_TEXEL_BUFFER_ATOMIC") , (FormatFeatureFlags2 :: VERTEX_BUFFER . 0 , "VERTEX_BUFFER") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT . 0 , "COLOR_ATTACHMENT") , (FormatFeatureFlags2 :: COLOR_ATTACHMENT_BLEND . 0 , "COLOR_ATTACHMENT_BLEND") , (FormatFeatureFlags2 :: DEPTH_STENCIL_ATTACHMENT . 0 , "DEPTH_STENCIL_ATTACHMENT") , (FormatFeatureFlags2 :: BLIT_SRC . 0 , "BLIT_SRC") , (FormatFeatureFlags2 :: BLIT_DST . 0 , "BLIT_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_LINEAR . 0 , "SAMPLED_IMAGE_FILTER_LINEAR") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_CUBIC . 0 , "SAMPLED_IMAGE_FILTER_CUBIC") , (FormatFeatureFlags2 :: TRANSFER_SRC . 0 , "TRANSFER_SRC") , (FormatFeatureFlags2 :: TRANSFER_DST . 0 , "TRANSFER_DST") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_FILTER_MINMAX . 0 , "SAMPLED_IMAGE_FILTER_MINMAX") , (FormatFeatureFlags2 :: MIDPOINT_CHROMA_SAMPLES . 0 , "MIDPOINT_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE . 0 , "SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE") , (FormatFeatureFlags2 :: DISJOINT . 0 , "DISJOINT") , (FormatFeatureFlags2 :: COSITED_CHROMA_SAMPLES . 0 , "COSITED_CHROMA_SAMPLES") , (FormatFeatureFlags2 :: STORAGE_READ_WITHOUT_FORMAT . 0 , "STORAGE_READ_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: STORAGE_WRITE_WITHOUT_FORMAT . 0 , "STORAGE_WRITE_WITHOUT_FORMAT") , (FormatFeatureFlags2 :: SAMPLED_IMAGE_DEPTH_COMPARISON . 0 , "SAMPLED_IMAGE_DEPTH_COMPARISON") , (FormatFeatureFlags2 :: VIDEO_DECODE_OUTPUT_KHR . 0 , "VIDEO_DECODE_OUTPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_DECODE_DPB_KHR . 0 , "VIDEO_DECODE_DPB_KHR") , (FormatFeatureFlags2 :: ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR . 0 , "ACCELERATION_STRUCTURE_VERTEX_BUFFER_KHR") , (FormatFeatureFlags2 :: FRAGMENT_DENSITY_MAP_EXT . 0 , "FRAGMENT_DENSITY_MAP_EXT") , (FormatFeatureFlags2 :: FRAGMENT_SHADING_RATE_ATTACHMENT_KHR . 0 , "FRAGMENT_SHADING_RATE_ATTACHMENT_KHR") , (FormatFeatureFlags2 :: HOST_IMAGE_TRANSFER_EXT . 0 , "HOST_IMAGE_TRANSFER_EXT") , (FormatFeatureFlags2 :: VIDEO_ENCODE_INPUT_KHR . 0 , "VIDEO_ENCODE_INPUT_KHR") , (FormatFeatureFlags2 :: VIDEO_ENCODE_DPB_KHR . 0 , "VIDEO_ENCODE_DPB_KHR") , (FormatFeatureFlags2 :: LINEAR_COLOR_ATTACHMENT_NV . 0 , "LINEAR_COLOR_ATTACHMENT_NV") , (FormatFeatureFlags2 :: WEIGHT_IMAGE_QCOM . 0 , "WEIGHT_IMAGE_QCOM") , (FormatFeatureFlags2 :: WEIGHT_SAMPLED_IMAGE_QCOM . 0 , "WEIGHT_SAMPLED_IMAGE_QCOM") , (FormatFeatureFlags2 :: BLOCK_MATCHING_QCOM . 0 , "BLOCK_MATCHING_QCOM") , (FormatFeatureFlags2 :: BOX_FILTER_SAMPLED_QCOM . 0 , "BOX_FILTER_SAMPLED_QCOM") , (FormatFeatureFlags2 :: OPTICAL_FLOW_IMAGE_NV . 0 , "OPTICAL_FLOW_IMAGE_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_VECTOR_NV . 0 , "OPTICAL_FLOW_VECTOR_NV") , (FormatFeatureFlags2 :: OPTICAL_FLOW_COST_NV . 0 , "OPTICAL_FLOW_COST_NV")] ;
debug_flags(f, KNOWN, self.0)
}
}
@ -2349,6 +2434,12 @@ impl fmt::Debug for HeadlessSurfaceCreateFlagsEXT {
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for HostImageCopyFlagsEXT {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[(HostImageCopyFlagsEXT::MEMCPY.0, "MEMCPY")];
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for IOSSurfaceCreateFlagsMVK {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[];
@ -2672,6 +2763,7 @@ impl fmt::Debug for ImageUsageFlags {
ImageUsageFlags::FRAGMENT_SHADING_RATE_ATTACHMENT_KHR.0,
"FRAGMENT_SHADING_RATE_ATTACHMENT_KHR",
),
(ImageUsageFlags::HOST_TRANSFER_EXT.0, "HOST_TRANSFER_EXT"),
(
ImageUsageFlags::VIDEO_ENCODE_DST_KHR.0,
"VIDEO_ENCODE_DST_KHR",
@ -2786,6 +2878,8 @@ impl fmt::Debug for IndirectCommandsTokenTypeNV {
Self::DRAW => Some("DRAW"),
Self::DRAW_TASKS => Some("DRAW_TASKS"),
Self::DRAW_MESH_TASKS => Some("DRAW_MESH_TASKS"),
Self::PIPELINE => Some("PIPELINE"),
Self::DISPATCH => Some("DISPATCH"),
_ => None,
};
if let Some(x) = name {
@ -3275,6 +3369,7 @@ impl fmt::Debug for PipelineBindPoint {
let name = match *self {
Self::GRAPHICS => Some("GRAPHICS"),
Self::COMPUTE => Some("COMPUTE"),
Self::EXECUTION_GRAPH_AMDX => Some("EXECUTION_GRAPH_AMDX"),
Self::RAY_TRACING_KHR => Some("RAY_TRACING_KHR"),
Self::SUBPASS_SHADING_HUAWEI => Some("SUBPASS_SHADING_HUAWEI"),
_ => None,
@ -3460,6 +3555,122 @@ impl fmt::Debug for PipelineCreateFlags {
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for PipelineCreateFlags2KHR {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags64, &str)] = &[
(
PipelineCreateFlags2KHR::DISABLE_OPTIMIZATION.0,
"DISABLE_OPTIMIZATION",
),
(
PipelineCreateFlags2KHR::ALLOW_DERIVATIVES.0,
"ALLOW_DERIVATIVES",
),
(PipelineCreateFlags2KHR::DERIVATIVE.0, "DERIVATIVE"),
(PipelineCreateFlags2KHR::RESERVED_28_NV.0, "RESERVED_28_NV"),
(
PipelineCreateFlags2KHR::VIEW_INDEX_FROM_DEVICE_INDEX.0,
"VIEW_INDEX_FROM_DEVICE_INDEX",
),
(PipelineCreateFlags2KHR::DISPATCH_BASE.0, "DISPATCH_BASE"),
(PipelineCreateFlags2KHR::DEFER_COMPILE.0, "DEFER_COMPILE"),
(
PipelineCreateFlags2KHR::CAPTURE_STATISTICS.0,
"CAPTURE_STATISTICS",
),
(
PipelineCreateFlags2KHR::CAPTURE_INTERNAL_REPRESENTATIONS.0,
"CAPTURE_INTERNAL_REPRESENTATIONS",
),
(
PipelineCreateFlags2KHR::FAIL_ON_PIPELINE_COMPILE_REQUIRED.0,
"FAIL_ON_PIPELINE_COMPILE_REQUIRED",
),
(
PipelineCreateFlags2KHR::EARLY_RETURN_ON_FAILURE.0,
"EARLY_RETURN_ON_FAILURE",
),
(
PipelineCreateFlags2KHR::LINK_TIME_OPTIMIZATION.0,
"LINK_TIME_OPTIMIZATION",
),
(
PipelineCreateFlags2KHR::RETAIN_LINK_TIME_OPTIMIZATION_INFO.0,
"RETAIN_LINK_TIME_OPTIMIZATION_INFO",
),
(PipelineCreateFlags2KHR::LIBRARY.0, "LIBRARY"),
(
PipelineCreateFlags2KHR::RAY_TRACING_SKIP_TRIANGLES.0,
"RAY_TRACING_SKIP_TRIANGLES",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_SKIP_AABBS.0,
"RAY_TRACING_SKIP_AABBS",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_NO_NULL_ANY_HIT_SHADERS.0,
"RAY_TRACING_NO_NULL_ANY_HIT_SHADERS",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS.0,
"RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_NO_NULL_MISS_SHADERS.0,
"RAY_TRACING_NO_NULL_MISS_SHADERS",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_NO_NULL_INTERSECTION_SHADERS.0,
"RAY_TRACING_NO_NULL_INTERSECTION_SHADERS",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY.0,
"RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY",
),
(
PipelineCreateFlags2KHR::INDIRECT_BINDABLE.0,
"INDIRECT_BINDABLE",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_ALLOW_MOTION.0,
"RAY_TRACING_ALLOW_MOTION",
),
(
PipelineCreateFlags2KHR::RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT.0,
"RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT",
),
(
PipelineCreateFlags2KHR::RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT.0,
"RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT",
),
(
PipelineCreateFlags2KHR::RAY_TRACING_OPACITY_MICROMAP.0,
"RAY_TRACING_OPACITY_MICROMAP",
),
(
PipelineCreateFlags2KHR::COLOR_ATTACHMENT_FEEDBACK_LOOP.0,
"COLOR_ATTACHMENT_FEEDBACK_LOOP",
),
(
PipelineCreateFlags2KHR::DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP.0,
"DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP",
),
(
PipelineCreateFlags2KHR::NO_PROTECTED_ACCESS.0,
"NO_PROTECTED_ACCESS",
),
(
PipelineCreateFlags2KHR::PROTECTED_ACCESS_ONLY.0,
"PROTECTED_ACCESS_ONLY",
),
(
PipelineCreateFlags2KHR::DESCRIPTOR_BUFFER.0,
"DESCRIPTOR_BUFFER",
),
];
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for PipelineCreationFeedbackFlags {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[
@ -3754,8 +3965,8 @@ impl fmt::Debug for PipelineStageFlags2 {
(PipelineStageFlags2::TASK_SHADER_EXT.0, "TASK_SHADER_EXT"),
(PipelineStageFlags2::MESH_SHADER_EXT.0, "MESH_SHADER_EXT"),
(
PipelineStageFlags2::SUBPASS_SHADING_HUAWEI.0,
"SUBPASS_SHADING_HUAWEI",
PipelineStageFlags2::SUBPASS_SHADER_HUAWEI.0,
"SUBPASS_SHADER_HUAWEI",
),
(
PipelineStageFlags2::INVOCATION_MASK_HUAWEI.0,
@ -4293,7 +4504,7 @@ impl fmt::Debug for SamplerYcbcrRange {
}
}
}
impl fmt::Debug for ScopeNV {
impl fmt::Debug for ScopeKHR {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let name = match *self {
Self::DEVICE => Some("DEVICE"),
@ -4998,6 +5209,21 @@ impl fmt::Debug for StructureType {
Self::ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID => {
Some("ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID")
}
Self::PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX => {
Some("PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX")
}
Self::PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX => {
Some("PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX")
}
Self::EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX => {
Some("EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX")
}
Self::EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX => {
Some("EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX")
}
Self::PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX => {
Some("PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX")
}
Self::SAMPLE_LOCATIONS_INFO_EXT => Some("SAMPLE_LOCATIONS_INFO_EXT"),
Self::RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT => {
Some("RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT")
@ -5396,6 +5622,24 @@ impl fmt::Debug for StructureType {
Self::PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR => {
Some("PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR")
}
Self::PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT => {
Some("PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT")
}
Self::PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT => {
Some("PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT")
}
Self::MEMORY_TO_IMAGE_COPY_EXT => Some("MEMORY_TO_IMAGE_COPY_EXT"),
Self::IMAGE_TO_MEMORY_COPY_EXT => Some("IMAGE_TO_MEMORY_COPY_EXT"),
Self::COPY_IMAGE_TO_MEMORY_INFO_EXT => Some("COPY_IMAGE_TO_MEMORY_INFO_EXT"),
Self::COPY_MEMORY_TO_IMAGE_INFO_EXT => Some("COPY_MEMORY_TO_IMAGE_INFO_EXT"),
Self::HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT => {
Some("HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT")
}
Self::COPY_IMAGE_TO_IMAGE_INFO_EXT => Some("COPY_IMAGE_TO_IMAGE_INFO_EXT"),
Self::SUBRESOURCE_HOST_MEMCPY_SIZE_EXT => Some("SUBRESOURCE_HOST_MEMCPY_SIZE_EXT"),
Self::HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT => {
Some("HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT")
}
Self::MEMORY_MAP_INFO_KHR => Some("MEMORY_MAP_INFO_KHR"),
Self::MEMORY_UNMAP_INFO_KHR => Some("MEMORY_UNMAP_INFO_KHR"),
Self::PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT => {
@ -5645,8 +5889,6 @@ impl fmt::Debug for StructureType {
Some("PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT")
}
Self::IMAGE_COMPRESSION_CONTROL_EXT => Some("IMAGE_COMPRESSION_CONTROL_EXT"),
Self::SUBRESOURCE_LAYOUT_2_EXT => Some("SUBRESOURCE_LAYOUT_2_EXT"),
Self::IMAGE_SUBRESOURCE_2_EXT => Some("IMAGE_SUBRESOURCE_2_EXT"),
Self::IMAGE_COMPRESSION_PROPERTIES_EXT => Some("IMAGE_COMPRESSION_PROPERTIES_EXT"),
Self::PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT => {
Some("PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT")
@ -5872,6 +6114,15 @@ impl fmt::Debug for StructureType {
Self::PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV => {
Some("PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV")
}
Self::PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV => {
Some("PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV")
}
Self::COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV => {
Some("COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV")
}
Self::PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV => {
Some("PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV")
}
Self::PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV => {
Some("PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV")
}
@ -5944,6 +6195,22 @@ impl fmt::Debug for StructureType {
Self::PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT => {
Some("PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT")
}
Self::PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR => {
Some("PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR")
}
Self::PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR => {
Some("PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR")
}
Self::RENDERING_AREA_INFO_KHR => Some("RENDERING_AREA_INFO_KHR"),
Self::DEVICE_IMAGE_SUBRESOURCE_INFO_KHR => Some("DEVICE_IMAGE_SUBRESOURCE_INFO_KHR"),
Self::SUBRESOURCE_LAYOUT_2_KHR => Some("SUBRESOURCE_LAYOUT_2_KHR"),
Self::IMAGE_SUBRESOURCE_2_KHR => Some("IMAGE_SUBRESOURCE_2_KHR"),
Self::PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR => {
Some("PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR")
}
Self::BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR => {
Some("BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR")
}
Self::PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR => {
Some("PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR")
}
@ -5989,6 +6256,13 @@ impl fmt::Debug for StructureType {
Self::PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT => {
Some("PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT")
}
Self::PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR => {
Some("PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR")
}
Self::COOPERATIVE_MATRIX_PROPERTIES_KHR => Some("COOPERATIVE_MATRIX_PROPERTIES_KHR"),
Self::PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR => {
Some("PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR")
}
Self::PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM => {
Some("PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM")
}

View file

@ -25,4 +25,5 @@ pub const MAX_DRIVER_INFO_SIZE: usize = 256;
pub const SHADER_UNUSED_KHR: u32 = !0;
pub const MAX_GLOBAL_PRIORITY_SIZE_KHR: usize = 16;
pub const MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT: usize = 32;
pub const SHADER_INDEX_UNUSED_AMDX: u32 = !0;
pub const SHADER_UNUSED_NV: u32 = SHADER_UNUSED_KHR;

File diff suppressed because it is too large Load diff

View file

@ -2053,53 +2053,6 @@ impl MemoryOverallocationBehaviorAMD {
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkScopeNV.html>"]
pub struct ScopeNV(pub(crate) i32);
impl ScopeNV {
#[inline]
pub const fn from_raw(x: i32) -> Self {
Self(x)
}
#[inline]
pub const fn as_raw(self) -> i32 {
self.0
}
}
impl ScopeNV {
pub const DEVICE: Self = Self(1);
pub const WORKGROUP: Self = Self(2);
pub const SUBGROUP: Self = Self(3);
pub const QUEUE_FAMILY: Self = Self(5);
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkComponentTypeNV.html>"]
pub struct ComponentTypeNV(pub(crate) i32);
impl ComponentTypeNV {
#[inline]
pub const fn from_raw(x: i32) -> Self {
Self(x)
}
#[inline]
pub const fn as_raw(self) -> i32 {
self.0
}
}
impl ComponentTypeNV {
pub const FLOAT16: Self = Self(0);
pub const FLOAT32: Self = Self(1);
pub const FLOAT64: Self = Self(2);
pub const SINT8: Self = Self(3);
pub const SINT16: Self = Self(4);
pub const SINT32: Self = Self(5);
pub const SINT64: Self = Self(6);
pub const UINT8: Self = Self(7);
pub const UINT16: Self = Self(8);
pub const UINT32: Self = Self(9);
pub const UINT64: Self = Self(10);
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkFullScreenExclusiveEXT.html>"]
pub struct FullScreenExclusiveEXT(pub(crate) i32);
impl FullScreenExclusiveEXT {
@ -2802,6 +2755,53 @@ impl ShaderCodeTypeEXT {
pub const BINARY: Self = Self(0);
pub const SPIRV: Self = Self(1);
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkScopeKHR.html>"]
pub struct ScopeKHR(pub(crate) i32);
impl ScopeKHR {
#[inline]
pub const fn from_raw(x: i32) -> Self {
Self(x)
}
#[inline]
pub const fn as_raw(self) -> i32 {
self.0
}
}
impl ScopeKHR {
pub const DEVICE: Self = Self(1);
pub const WORKGROUP: Self = Self(2);
pub const SUBGROUP: Self = Self(3);
pub const QUEUE_FAMILY: Self = Self(5);
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkComponentTypeKHR.html>"]
pub struct ComponentTypeKHR(pub(crate) i32);
impl ComponentTypeKHR {
#[inline]
pub const fn from_raw(x: i32) -> Self {
Self(x)
}
#[inline]
pub const fn as_raw(self) -> i32 {
self.0
}
}
impl ComponentTypeKHR {
pub const FLOAT16: Self = Self(0);
pub const FLOAT32: Self = Self(1);
pub const FLOAT64: Self = Self(2);
pub const SINT8: Self = Self(3);
pub const SINT16: Self = Self(4);
pub const SINT32: Self = Self(5);
pub const SINT64: Self = Self(6);
pub const UINT8: Self = Self(7);
pub const UINT16: Self = Self(8);
pub const UINT32: Self = Self(9);
pub const UINT64: Self = Self(10);
}
impl fmt::Debug for ObjectType {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let name = match *self {

View file

@ -6985,6 +6985,245 @@ impl AmdGpuShaderInt16Fn {
}
#[derive(Clone)]
pub struct AmdGpuShaderInt16Fn;
impl AmdxShaderEnqueueFn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_AMDX_shader_enqueue\0") };
pub const SPEC_VERSION: u32 = 1u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkCreateExecutionGraphPipelinesAMDX = unsafe extern "system" fn(
device: Device,
pipeline_cache: PipelineCache,
create_info_count: u32,
p_create_infos: *const ExecutionGraphPipelineCreateInfoAMDX,
p_allocator: *const AllocationCallbacks,
p_pipelines: *mut Pipeline,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkGetExecutionGraphPipelineScratchSizeAMDX = unsafe extern "system" fn(
device: Device,
execution_graph: Pipeline,
p_size_info: *mut ExecutionGraphPipelineScratchSizeAMDX,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkGetExecutionGraphPipelineNodeIndexAMDX = unsafe extern "system" fn(
device: Device,
execution_graph: Pipeline,
p_node_info: *const PipelineShaderStageNodeCreateInfoAMDX,
p_node_index: *mut u32,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkCmdInitializeGraphScratchMemoryAMDX =
unsafe extern "system" fn(command_buffer: CommandBuffer, scratch: DeviceAddress);
#[allow(non_camel_case_types)]
pub type PFN_vkCmdDispatchGraphAMDX = unsafe extern "system" fn(
command_buffer: CommandBuffer,
scratch: DeviceAddress,
p_count_info: *const DispatchGraphCountInfoAMDX,
);
#[allow(non_camel_case_types)]
pub type PFN_vkCmdDispatchGraphIndirectAMDX = unsafe extern "system" fn(
command_buffer: CommandBuffer,
scratch: DeviceAddress,
p_count_info: *const DispatchGraphCountInfoAMDX,
);
#[allow(non_camel_case_types)]
pub type PFN_vkCmdDispatchGraphIndirectCountAMDX = unsafe extern "system" fn(
command_buffer: CommandBuffer,
scratch: DeviceAddress,
count_info: DeviceAddress,
);
#[derive(Clone)]
pub struct AmdxShaderEnqueueFn {
pub create_execution_graph_pipelines_amdx: PFN_vkCreateExecutionGraphPipelinesAMDX,
pub get_execution_graph_pipeline_scratch_size_amdx:
PFN_vkGetExecutionGraphPipelineScratchSizeAMDX,
pub get_execution_graph_pipeline_node_index_amdx: PFN_vkGetExecutionGraphPipelineNodeIndexAMDX,
pub cmd_initialize_graph_scratch_memory_amdx: PFN_vkCmdInitializeGraphScratchMemoryAMDX,
pub cmd_dispatch_graph_amdx: PFN_vkCmdDispatchGraphAMDX,
pub cmd_dispatch_graph_indirect_amdx: PFN_vkCmdDispatchGraphIndirectAMDX,
pub cmd_dispatch_graph_indirect_count_amdx: PFN_vkCmdDispatchGraphIndirectCountAMDX,
}
unsafe impl Send for AmdxShaderEnqueueFn {}
unsafe impl Sync for AmdxShaderEnqueueFn {}
impl AmdxShaderEnqueueFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {
create_execution_graph_pipelines_amdx: unsafe {
unsafe extern "system" fn create_execution_graph_pipelines_amdx(
_device: Device,
_pipeline_cache: PipelineCache,
_create_info_count: u32,
_p_create_infos: *const ExecutionGraphPipelineCreateInfoAMDX,
_p_allocator: *const AllocationCallbacks,
_p_pipelines: *mut Pipeline,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(create_execution_graph_pipelines_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkCreateExecutionGraphPipelinesAMDX\0",
);
let val = _f(cname);
if val.is_null() {
create_execution_graph_pipelines_amdx
} else {
::std::mem::transmute(val)
}
},
get_execution_graph_pipeline_scratch_size_amdx: unsafe {
unsafe extern "system" fn get_execution_graph_pipeline_scratch_size_amdx(
_device: Device,
_execution_graph: Pipeline,
_p_size_info: *mut ExecutionGraphPipelineScratchSizeAMDX,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(get_execution_graph_pipeline_scratch_size_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetExecutionGraphPipelineScratchSizeAMDX\0",
);
let val = _f(cname);
if val.is_null() {
get_execution_graph_pipeline_scratch_size_amdx
} else {
::std::mem::transmute(val)
}
},
get_execution_graph_pipeline_node_index_amdx: unsafe {
unsafe extern "system" fn get_execution_graph_pipeline_node_index_amdx(
_device: Device,
_execution_graph: Pipeline,
_p_node_info: *const PipelineShaderStageNodeCreateInfoAMDX,
_p_node_index: *mut u32,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(get_execution_graph_pipeline_node_index_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetExecutionGraphPipelineNodeIndexAMDX\0",
);
let val = _f(cname);
if val.is_null() {
get_execution_graph_pipeline_node_index_amdx
} else {
::std::mem::transmute(val)
}
},
cmd_initialize_graph_scratch_memory_amdx: unsafe {
unsafe extern "system" fn cmd_initialize_graph_scratch_memory_amdx(
_command_buffer: CommandBuffer,
_scratch: DeviceAddress,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_initialize_graph_scratch_memory_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkCmdInitializeGraphScratchMemoryAMDX\0",
);
let val = _f(cname);
if val.is_null() {
cmd_initialize_graph_scratch_memory_amdx
} else {
::std::mem::transmute(val)
}
},
cmd_dispatch_graph_amdx: unsafe {
unsafe extern "system" fn cmd_dispatch_graph_amdx(
_command_buffer: CommandBuffer,
_scratch: DeviceAddress,
_p_count_info: *const DispatchGraphCountInfoAMDX,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_dispatch_graph_amdx)
))
}
let cname =
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"vkCmdDispatchGraphAMDX\0");
let val = _f(cname);
if val.is_null() {
cmd_dispatch_graph_amdx
} else {
::std::mem::transmute(val)
}
},
cmd_dispatch_graph_indirect_amdx: unsafe {
unsafe extern "system" fn cmd_dispatch_graph_indirect_amdx(
_command_buffer: CommandBuffer,
_scratch: DeviceAddress,
_p_count_info: *const DispatchGraphCountInfoAMDX,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_dispatch_graph_indirect_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkCmdDispatchGraphIndirectAMDX\0",
);
let val = _f(cname);
if val.is_null() {
cmd_dispatch_graph_indirect_amdx
} else {
::std::mem::transmute(val)
}
},
cmd_dispatch_graph_indirect_count_amdx: unsafe {
unsafe extern "system" fn cmd_dispatch_graph_indirect_count_amdx(
_command_buffer: CommandBuffer,
_scratch: DeviceAddress,
_count_info: DeviceAddress,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_dispatch_graph_indirect_count_amdx)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkCmdDispatchGraphIndirectCountAMDX\0",
);
let val = _f(cname);
if val.is_null() {
cmd_dispatch_graph_indirect_count_amdx
} else {
::std::mem::transmute(val)
}
},
}
}
}
#[doc = "Generated from 'VK_AMDX_shader_enqueue'"]
impl BufferUsageFlags {
pub const EXECUTION_GRAPH_SCRATCH_AMDX: Self = Self(0b10_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_AMDX_shader_enqueue'"]
impl BufferUsageFlags2KHR {
pub const EXECUTION_GRAPH_SCRATCH_AMDX: Self = Self(0b10_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_AMDX_shader_enqueue'"]
impl PipelineBindPoint {
pub const EXECUTION_GRAPH_AMDX: Self = Self(1_000_134_000);
}
#[doc = "Generated from 'VK_AMDX_shader_enqueue'"]
impl StructureType {
pub const PHYSICAL_DEVICE_SHADER_ENQUEUE_FEATURES_AMDX: Self = Self(1_000_134_000);
pub const PHYSICAL_DEVICE_SHADER_ENQUEUE_PROPERTIES_AMDX: Self = Self(1_000_134_001);
pub const EXECUTION_GRAPH_PIPELINE_SCRATCH_SIZE_AMDX: Self = Self(1_000_134_002);
pub const EXECUTION_GRAPH_PIPELINE_CREATE_INFO_AMDX: Self = Self(1_000_134_003);
pub const PIPELINE_SHADER_STAGE_NODE_CREATE_INFO_AMDX: Self = Self(1_000_134_004);
}
impl AmdMixedAttachmentSamplesFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_AMD_mixed_attachment_samples\0")
@ -11561,6 +11800,27 @@ impl NvCooperativeMatrixFn {
}
}
#[doc = "Generated from 'VK_NV_cooperative_matrix'"]
impl ComponentTypeKHR {
pub const FLOAT16_NV: Self = Self::FLOAT16;
pub const FLOAT32_NV: Self = Self::FLOAT32;
pub const FLOAT64_NV: Self = Self::FLOAT64;
pub const SINT8_NV: Self = Self::SINT8;
pub const SINT16_NV: Self = Self::SINT16;
pub const SINT32_NV: Self = Self::SINT32;
pub const SINT64_NV: Self = Self::SINT64;
pub const UINT8_NV: Self = Self::UINT8;
pub const UINT16_NV: Self = Self::UINT16;
pub const UINT32_NV: Self = Self::UINT32;
pub const UINT64_NV: Self = Self::UINT64;
}
#[doc = "Generated from 'VK_NV_cooperative_matrix'"]
impl ScopeKHR {
pub const DEVICE_NV: Self = Self::DEVICE;
pub const WORKGROUP_NV: Self = Self::WORKGROUP;
pub const SUBGROUP_NV: Self = Self::SUBGROUP;
pub const QUEUE_FAMILY_NV: Self = Self::QUEUE_FAMILY;
}
#[doc = "Generated from 'VK_NV_cooperative_matrix'"]
impl StructureType {
pub const PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV: Self = Self(1_000_249_000);
pub const COOPERATIVE_MATRIX_PROPERTIES_NV: Self = Self(1_000_249_001);
@ -12757,6 +13017,182 @@ impl StructureType {
pub const PIPELINE_EXECUTABLE_STATISTIC_KHR: Self = Self(1_000_269_004);
pub const PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR: Self = Self(1_000_269_005);
}
impl ExtHostImageCopyFn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_EXT_host_image_copy\0") };
pub const SPEC_VERSION: u32 = 1u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkCopyMemoryToImageEXT = unsafe extern "system" fn(
device: Device,
p_copy_memory_to_image_info: *const CopyMemoryToImageInfoEXT,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkCopyImageToMemoryEXT = unsafe extern "system" fn(
device: Device,
p_copy_image_to_memory_info: *const CopyImageToMemoryInfoEXT,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkCopyImageToImageEXT = unsafe extern "system" fn(
device: Device,
p_copy_image_to_image_info: *const CopyImageToImageInfoEXT,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkTransitionImageLayoutEXT = unsafe extern "system" fn(
device: Device,
transition_count: u32,
p_transitions: *const HostImageLayoutTransitionInfoEXT,
) -> Result;
#[allow(non_camel_case_types)]
pub type PFN_vkGetImageSubresourceLayout2KHR = unsafe extern "system" fn(
device: Device,
image: Image,
p_subresource: *const ImageSubresource2KHR,
p_layout: *mut SubresourceLayout2KHR,
);
#[derive(Clone)]
pub struct ExtHostImageCopyFn {
pub copy_memory_to_image_ext: PFN_vkCopyMemoryToImageEXT,
pub copy_image_to_memory_ext: PFN_vkCopyImageToMemoryEXT,
pub copy_image_to_image_ext: PFN_vkCopyImageToImageEXT,
pub transition_image_layout_ext: PFN_vkTransitionImageLayoutEXT,
pub get_image_subresource_layout2_ext: PFN_vkGetImageSubresourceLayout2KHR,
}
unsafe impl Send for ExtHostImageCopyFn {}
unsafe impl Sync for ExtHostImageCopyFn {}
impl ExtHostImageCopyFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {
copy_memory_to_image_ext: unsafe {
unsafe extern "system" fn copy_memory_to_image_ext(
_device: Device,
_p_copy_memory_to_image_info: *const CopyMemoryToImageInfoEXT,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(copy_memory_to_image_ext)
))
}
let cname =
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"vkCopyMemoryToImageEXT\0");
let val = _f(cname);
if val.is_null() {
copy_memory_to_image_ext
} else {
::std::mem::transmute(val)
}
},
copy_image_to_memory_ext: unsafe {
unsafe extern "system" fn copy_image_to_memory_ext(
_device: Device,
_p_copy_image_to_memory_info: *const CopyImageToMemoryInfoEXT,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(copy_image_to_memory_ext)
))
}
let cname =
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"vkCopyImageToMemoryEXT\0");
let val = _f(cname);
if val.is_null() {
copy_image_to_memory_ext
} else {
::std::mem::transmute(val)
}
},
copy_image_to_image_ext: unsafe {
unsafe extern "system" fn copy_image_to_image_ext(
_device: Device,
_p_copy_image_to_image_info: *const CopyImageToImageInfoEXT,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(copy_image_to_image_ext)
))
}
let cname =
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"vkCopyImageToImageEXT\0");
let val = _f(cname);
if val.is_null() {
copy_image_to_image_ext
} else {
::std::mem::transmute(val)
}
},
transition_image_layout_ext: unsafe {
unsafe extern "system" fn transition_image_layout_ext(
_device: Device,
_transition_count: u32,
_p_transitions: *const HostImageLayoutTransitionInfoEXT,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(transition_image_layout_ext)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkTransitionImageLayoutEXT\0",
);
let val = _f(cname);
if val.is_null() {
transition_image_layout_ext
} else {
::std::mem::transmute(val)
}
},
get_image_subresource_layout2_ext: unsafe {
unsafe extern "system" fn get_image_subresource_layout2_ext(
_device: Device,
_image: Image,
_p_subresource: *const ImageSubresource2KHR,
_p_layout: *mut SubresourceLayout2KHR,
) {
panic!(concat!(
"Unable to load ",
stringify!(get_image_subresource_layout2_ext)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetImageSubresourceLayout2EXT\0",
);
let val = _f(cname);
if val.is_null() {
get_image_subresource_layout2_ext
} else {
::std::mem::transmute(val)
}
},
}
}
}
#[doc = "Generated from 'VK_EXT_host_image_copy'"]
impl FormatFeatureFlags2 {
#[doc = "Host image copies are supported"]
pub const HOST_IMAGE_TRANSFER_EXT: Self =
Self(0b100_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_EXT_host_image_copy'"]
impl ImageUsageFlags {
#[doc = "Can be used with host image copies"]
pub const HOST_TRANSFER_EXT: Self = Self(0b100_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_EXT_host_image_copy'"]
impl StructureType {
pub const PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT: Self = Self(1_000_270_000);
pub const PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT: Self = Self(1_000_270_001);
pub const MEMORY_TO_IMAGE_COPY_EXT: Self = Self(1_000_270_002);
pub const IMAGE_TO_MEMORY_COPY_EXT: Self = Self(1_000_270_003);
pub const COPY_IMAGE_TO_MEMORY_INFO_EXT: Self = Self(1_000_270_004);
pub const COPY_MEMORY_TO_IMAGE_INFO_EXT: Self = Self(1_000_270_005);
pub const HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT: Self = Self(1_000_270_006);
pub const COPY_IMAGE_TO_IMAGE_INFO_EXT: Self = Self(1_000_270_007);
pub const SUBRESOURCE_HOST_MEMCPY_SIZE_EXT: Self = Self(1_000_270_008);
pub const HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT: Self = Self(1_000_270_009);
}
impl KhrMapMemory2Fn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_KHR_map_memory2\0") };
@ -15132,16 +15568,9 @@ impl ExtImageCompressionControlFn {
};
pub const SPEC_VERSION: u32 = 1u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkGetImageSubresourceLayout2EXT = unsafe extern "system" fn(
device: Device,
image: Image,
p_subresource: *const ImageSubresource2EXT,
p_layout: *mut SubresourceLayout2EXT,
);
#[derive(Clone)]
pub struct ExtImageCompressionControlFn {
pub get_image_subresource_layout2_ext: PFN_vkGetImageSubresourceLayout2EXT,
pub get_image_subresource_layout2_ext: crate::vk::PFN_vkGetImageSubresourceLayout2KHR,
}
unsafe impl Send for ExtImageCompressionControlFn {}
unsafe impl Sync for ExtImageCompressionControlFn {}
@ -15155,8 +15584,8 @@ impl ExtImageCompressionControlFn {
unsafe extern "system" fn get_image_subresource_layout2_ext(
_device: Device,
_image: Image,
_p_subresource: *const ImageSubresource2EXT,
_p_layout: *mut SubresourceLayout2EXT,
_p_subresource: *const ImageSubresource2KHR,
_p_layout: *mut SubresourceLayout2KHR,
) {
panic!(concat!(
"Unable to load ",
@ -15184,8 +15613,8 @@ impl Result {
impl StructureType {
pub const PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT: Self = Self(1_000_338_000);
pub const IMAGE_COMPRESSION_CONTROL_EXT: Self = Self(1_000_338_001);
pub const SUBRESOURCE_LAYOUT_2_EXT: Self = Self(1_000_338_002);
pub const IMAGE_SUBRESOURCE_2_EXT: Self = Self(1_000_338_003);
pub const SUBRESOURCE_LAYOUT_2_EXT: Self = Self::SUBRESOURCE_LAYOUT_2_KHR;
pub const IMAGE_SUBRESOURCE_2_EXT: Self = Self::IMAGE_SUBRESOURCE_2_KHR;
pub const IMAGE_COMPRESSION_PROPERTIES_EXT: Self = Self(1_000_338_004);
}
impl ExtAttachmentFeedbackLoopLayoutFn {
@ -15997,7 +16426,7 @@ impl StructureType {
impl HuaweiSubpassShadingFn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_HUAWEI_subpass_shading\0") };
pub const SPEC_VERSION: u32 = 2u32;
pub const SPEC_VERSION: u32 = 3u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI = unsafe extern "system" fn(
@ -16069,7 +16498,7 @@ impl PipelineBindPoint {
}
#[doc = "Generated from 'VK_HUAWEI_subpass_shading'"]
impl PipelineStageFlags2 {
pub const SUBPASS_SHADING_HUAWEI: Self =
pub const SUBPASS_SHADER_HUAWEI: Self =
Self(0b1000_0000_0000_0000_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_HUAWEI_subpass_shading'"]
@ -17271,7 +17700,7 @@ impl NvDisplacementMicromapFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_NV_displacement_micromap\0")
};
pub const SPEC_VERSION: u32 = 1u32;
pub const SPEC_VERSION: u32 = 2u32;
}
#[derive(Clone)]
pub struct NvDisplacementMicromapFn;
@ -17289,6 +17718,10 @@ impl PipelineCreateFlags {
Self(0b1_0000_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_NV_displacement_micromap'"]
impl PipelineCreateFlags2KHR {
pub const RESERVED_28_NV: Self = Self(0b1_0000_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_NV_displacement_micromap'"]
impl StructureType {
pub const PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_FEATURES_NV: Self = Self(1_000_397_000);
pub const PHYSICAL_DEVICE_DISPLACEMENT_MICROMAP_PROPERTIES_NV: Self = Self(1_000_397_001);
@ -17908,6 +18341,126 @@ impl StructureType {
pub const PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV: Self = Self(1_000_427_000);
pub const PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV: Self = Self(1_000_427_001);
}
impl NvDeviceGeneratedCommandsComputeFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"VK_NV_device_generated_commands_compute\0",
)
};
pub const SPEC_VERSION: u32 = 2u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkGetPipelineIndirectMemoryRequirementsNV = unsafe extern "system" fn(
device: Device,
p_create_info: *const ComputePipelineCreateInfo,
p_memory_requirements: *mut MemoryRequirements2,
);
#[allow(non_camel_case_types)]
pub type PFN_vkCmdUpdatePipelineIndirectBufferNV = unsafe extern "system" fn(
command_buffer: CommandBuffer,
pipeline_bind_point: PipelineBindPoint,
pipeline: Pipeline,
);
#[allow(non_camel_case_types)]
pub type PFN_vkGetPipelineIndirectDeviceAddressNV = unsafe extern "system" fn(
device: Device,
p_info: *const PipelineIndirectDeviceAddressInfoNV,
) -> DeviceAddress;
#[derive(Clone)]
pub struct NvDeviceGeneratedCommandsComputeFn {
pub get_pipeline_indirect_memory_requirements_nv: PFN_vkGetPipelineIndirectMemoryRequirementsNV,
pub cmd_update_pipeline_indirect_buffer_nv: PFN_vkCmdUpdatePipelineIndirectBufferNV,
pub get_pipeline_indirect_device_address_nv: PFN_vkGetPipelineIndirectDeviceAddressNV,
}
unsafe impl Send for NvDeviceGeneratedCommandsComputeFn {}
unsafe impl Sync for NvDeviceGeneratedCommandsComputeFn {}
impl NvDeviceGeneratedCommandsComputeFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {
get_pipeline_indirect_memory_requirements_nv: unsafe {
unsafe extern "system" fn get_pipeline_indirect_memory_requirements_nv(
_device: Device,
_p_create_info: *const ComputePipelineCreateInfo,
_p_memory_requirements: *mut MemoryRequirements2,
) {
panic!(concat!(
"Unable to load ",
stringify!(get_pipeline_indirect_memory_requirements_nv)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetPipelineIndirectMemoryRequirementsNV\0",
);
let val = _f(cname);
if val.is_null() {
get_pipeline_indirect_memory_requirements_nv
} else {
::std::mem::transmute(val)
}
},
cmd_update_pipeline_indirect_buffer_nv: unsafe {
unsafe extern "system" fn cmd_update_pipeline_indirect_buffer_nv(
_command_buffer: CommandBuffer,
_pipeline_bind_point: PipelineBindPoint,
_pipeline: Pipeline,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_update_pipeline_indirect_buffer_nv)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkCmdUpdatePipelineIndirectBufferNV\0",
);
let val = _f(cname);
if val.is_null() {
cmd_update_pipeline_indirect_buffer_nv
} else {
::std::mem::transmute(val)
}
},
get_pipeline_indirect_device_address_nv: unsafe {
unsafe extern "system" fn get_pipeline_indirect_device_address_nv(
_device: Device,
_p_info: *const PipelineIndirectDeviceAddressInfoNV,
) -> DeviceAddress {
panic!(concat!(
"Unable to load ",
stringify!(get_pipeline_indirect_device_address_nv)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetPipelineIndirectDeviceAddressNV\0",
);
let val = _f(cname);
if val.is_null() {
get_pipeline_indirect_device_address_nv
} else {
::std::mem::transmute(val)
}
},
}
}
}
#[doc = "Generated from 'VK_NV_device_generated_commands_compute'"]
impl DescriptorSetLayoutCreateFlags {
pub const INDIRECT_BINDABLE_NV: Self = Self(0b1000_0000);
}
#[doc = "Generated from 'VK_NV_device_generated_commands_compute'"]
impl IndirectCommandsTokenTypeNV {
pub const PIPELINE: Self = Self(1_000_428_003);
pub const DISPATCH: Self = Self(1_000_428_004);
}
#[doc = "Generated from 'VK_NV_device_generated_commands_compute'"]
impl StructureType {
pub const PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV: Self =
Self(1_000_428_000);
pub const COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV: Self = Self(1_000_428_001);
pub const PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV: Self = Self(1_000_428_002);
}
impl NvLinearColorAttachmentFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_NV_linear_color_attachment\0")
@ -19243,6 +19796,205 @@ impl PipelineCreateFlags {
impl StructureType {
pub const PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT: Self = Self(1_000_466_000);
}
impl KhrMaintenance5Fn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_KHR_maintenance5\0") };
pub const SPEC_VERSION: u32 = 1u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkCmdBindIndexBuffer2KHR = unsafe extern "system" fn(
command_buffer: CommandBuffer,
buffer: Buffer,
offset: DeviceSize,
size: DeviceSize,
index_type: IndexType,
);
#[allow(non_camel_case_types)]
pub type PFN_vkGetRenderingAreaGranularityKHR = unsafe extern "system" fn(
device: Device,
p_rendering_area_info: *const RenderingAreaInfoKHR,
p_granularity: *mut Extent2D,
);
#[allow(non_camel_case_types)]
pub type PFN_vkGetDeviceImageSubresourceLayoutKHR = unsafe extern "system" fn(
device: Device,
p_info: *const DeviceImageSubresourceInfoKHR,
p_layout: *mut SubresourceLayout2KHR,
);
#[derive(Clone)]
pub struct KhrMaintenance5Fn {
pub cmd_bind_index_buffer2_khr: PFN_vkCmdBindIndexBuffer2KHR,
pub get_rendering_area_granularity_khr: PFN_vkGetRenderingAreaGranularityKHR,
pub get_device_image_subresource_layout_khr: PFN_vkGetDeviceImageSubresourceLayoutKHR,
pub get_image_subresource_layout2_khr: crate::vk::PFN_vkGetImageSubresourceLayout2KHR,
}
unsafe impl Send for KhrMaintenance5Fn {}
unsafe impl Sync for KhrMaintenance5Fn {}
impl KhrMaintenance5Fn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {
cmd_bind_index_buffer2_khr: unsafe {
unsafe extern "system" fn cmd_bind_index_buffer2_khr(
_command_buffer: CommandBuffer,
_buffer: Buffer,
_offset: DeviceSize,
_size: DeviceSize,
_index_type: IndexType,
) {
panic!(concat!(
"Unable to load ",
stringify!(cmd_bind_index_buffer2_khr)
))
}
let cname =
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"vkCmdBindIndexBuffer2KHR\0");
let val = _f(cname);
if val.is_null() {
cmd_bind_index_buffer2_khr
} else {
::std::mem::transmute(val)
}
},
get_rendering_area_granularity_khr: unsafe {
unsafe extern "system" fn get_rendering_area_granularity_khr(
_device: Device,
_p_rendering_area_info: *const RenderingAreaInfoKHR,
_p_granularity: *mut Extent2D,
) {
panic!(concat!(
"Unable to load ",
stringify!(get_rendering_area_granularity_khr)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetRenderingAreaGranularityKHR\0",
);
let val = _f(cname);
if val.is_null() {
get_rendering_area_granularity_khr
} else {
::std::mem::transmute(val)
}
},
get_device_image_subresource_layout_khr: unsafe {
unsafe extern "system" fn get_device_image_subresource_layout_khr(
_device: Device,
_p_info: *const DeviceImageSubresourceInfoKHR,
_p_layout: *mut SubresourceLayout2KHR,
) {
panic!(concat!(
"Unable to load ",
stringify!(get_device_image_subresource_layout_khr)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetDeviceImageSubresourceLayoutKHR\0",
);
let val = _f(cname);
if val.is_null() {
get_device_image_subresource_layout_khr
} else {
::std::mem::transmute(val)
}
},
get_image_subresource_layout2_khr: unsafe {
unsafe extern "system" fn get_image_subresource_layout2_khr(
_device: Device,
_image: Image,
_p_subresource: *const ImageSubresource2KHR,
_p_layout: *mut SubresourceLayout2KHR,
) {
panic!(concat!(
"Unable to load ",
stringify!(get_image_subresource_layout2_khr)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetImageSubresourceLayout2KHR\0",
);
let val = _f(cname);
if val.is_null() {
get_image_subresource_layout2_khr
} else {
::std::mem::transmute(val)
}
},
}
}
}
#[doc = "Generated from 'VK_KHR_maintenance5'"]
impl BufferUsageFlags2KHR {
pub const CONDITIONAL_RENDERING: Self = Self(0b10_0000_0000);
pub const SHADER_BINDING_TABLE: Self = Self(0b100_0000_0000);
pub const RAY_TRACING: Self = Self::SHADER_BINDING_TABLE;
pub const TRANSFORM_FEEDBACK_BUFFER: Self = Self(0b1000_0000_0000);
pub const TRANSFORM_FEEDBACK_COUNTER_BUFFER: Self = Self(0b1_0000_0000_0000);
pub const VIDEO_DECODE_SRC: Self = Self(0b10_0000_0000_0000);
pub const VIDEO_DECODE_DST: Self = Self(0b100_0000_0000_0000);
pub const VIDEO_ENCODE_DST: Self = Self(0b1000_0000_0000_0000);
pub const VIDEO_ENCODE_SRC: Self = Self(0b1_0000_0000_0000_0000);
pub const SHADER_DEVICE_ADDRESS: Self = Self(0b10_0000_0000_0000_0000);
pub const ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY: Self = Self(0b1000_0000_0000_0000_0000);
pub const ACCELERATION_STRUCTURE_STORAGE: Self = Self(0b1_0000_0000_0000_0000_0000);
pub const SAMPLER_DESCRIPTOR_BUFFER: Self = Self(0b10_0000_0000_0000_0000_0000);
pub const RESOURCE_DESCRIPTOR_BUFFER: Self = Self(0b100_0000_0000_0000_0000_0000);
pub const PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER: Self = Self(0b100_0000_0000_0000_0000_0000_0000);
pub const MICROMAP_BUILD_INPUT_READ_ONLY: Self = Self(0b1000_0000_0000_0000_0000_0000);
pub const MICROMAP_STORAGE: Self = Self(0b1_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_KHR_maintenance5'"]
impl Format {
pub const A1B5G5R5_UNORM_PACK16_KHR: Self = Self(1_000_470_000);
pub const A8_UNORM_KHR: Self = Self(1_000_470_001);
}
#[doc = "Generated from 'VK_KHR_maintenance5'"]
impl PipelineCreateFlags2KHR {
pub const VIEW_INDEX_FROM_DEVICE_INDEX: Self = Self(0b1000);
pub const DISPATCH_BASE: Self = Self(0b1_0000);
pub const DEFER_COMPILE: Self = Self(0b10_0000);
pub const CAPTURE_STATISTICS: Self = Self(0b100_0000);
pub const CAPTURE_INTERNAL_REPRESENTATIONS: Self = Self(0b1000_0000);
pub const FAIL_ON_PIPELINE_COMPILE_REQUIRED: Self = Self(0b1_0000_0000);
pub const EARLY_RETURN_ON_FAILURE: Self = Self(0b10_0000_0000);
pub const LINK_TIME_OPTIMIZATION: Self = Self(0b100_0000_0000);
pub const RETAIN_LINK_TIME_OPTIMIZATION_INFO: Self = Self(0b1000_0000_0000_0000_0000_0000);
pub const LIBRARY: Self = Self(0b1000_0000_0000);
pub const RAY_TRACING_SKIP_TRIANGLES: Self = Self(0b1_0000_0000_0000);
pub const RAY_TRACING_SKIP_AABBS: Self = Self(0b10_0000_0000_0000);
pub const RAY_TRACING_NO_NULL_ANY_HIT_SHADERS: Self = Self(0b100_0000_0000_0000);
pub const RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS: Self = Self(0b1000_0000_0000_0000);
pub const RAY_TRACING_NO_NULL_MISS_SHADERS: Self = Self(0b1_0000_0000_0000_0000);
pub const RAY_TRACING_NO_NULL_INTERSECTION_SHADERS: Self = Self(0b10_0000_0000_0000_0000);
pub const RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY: Self =
Self(0b1000_0000_0000_0000_0000);
pub const INDIRECT_BINDABLE: Self = Self(0b100_0000_0000_0000_0000);
pub const RAY_TRACING_ALLOW_MOTION: Self = Self(0b1_0000_0000_0000_0000_0000);
pub const RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT: Self =
Self(0b10_0000_0000_0000_0000_0000);
pub const RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT: Self =
Self(0b100_0000_0000_0000_0000_0000);
pub const RAY_TRACING_OPACITY_MICROMAP: Self = Self(0b1_0000_0000_0000_0000_0000_0000);
pub const COLOR_ATTACHMENT_FEEDBACK_LOOP: Self = Self(0b10_0000_0000_0000_0000_0000_0000);
pub const DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP: Self =
Self(0b100_0000_0000_0000_0000_0000_0000);
pub const NO_PROTECTED_ACCESS: Self = Self(0b1000_0000_0000_0000_0000_0000_0000);
pub const PROTECTED_ACCESS_ONLY: Self = Self(0b100_0000_0000_0000_0000_0000_0000_0000);
pub const DESCRIPTOR_BUFFER: Self = Self(0b10_0000_0000_0000_0000_0000_0000_0000);
}
#[doc = "Generated from 'VK_KHR_maintenance5'"]
impl StructureType {
pub const PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR: Self = Self(1_000_470_000);
pub const PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR: Self = Self(1_000_470_001);
pub const RENDERING_AREA_INFO_KHR: Self = Self(1_000_470_003);
pub const DEVICE_IMAGE_SUBRESOURCE_INFO_KHR: Self = Self(1_000_470_004);
pub const SUBRESOURCE_LAYOUT_2_KHR: Self = Self(1_000_338_002);
pub const IMAGE_SUBRESOURCE_2_KHR: Self = Self(1_000_338_003);
pub const PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR: Self = Self(1_000_470_005);
pub const BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR: Self = Self(1_000_470_006);
}
impl KhrRayTracingPositionFetchFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_KHR_ray_tracing_position_fetch\0")
@ -20644,6 +21396,61 @@ impl StructureType {
pub const PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT: Self =
Self(1_000_499_000);
}
impl KhrCooperativeMatrixFn {
pub const NAME: &'static ::std::ffi::CStr =
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_KHR_cooperative_matrix\0") };
pub const SPEC_VERSION: u32 = 2u32;
}
#[allow(non_camel_case_types)]
pub type PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR =
unsafe extern "system" fn(
physical_device: PhysicalDevice,
p_property_count: *mut u32,
p_properties: *mut CooperativeMatrixPropertiesKHR,
) -> Result;
#[derive(Clone)]
pub struct KhrCooperativeMatrixFn {
pub get_physical_device_cooperative_matrix_properties_khr:
PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR,
}
unsafe impl Send for KhrCooperativeMatrixFn {}
unsafe impl Sync for KhrCooperativeMatrixFn {}
impl KhrCooperativeMatrixFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {
get_physical_device_cooperative_matrix_properties_khr: unsafe {
unsafe extern "system" fn get_physical_device_cooperative_matrix_properties_khr(
_physical_device: PhysicalDevice,
_p_property_count: *mut u32,
_p_properties: *mut CooperativeMatrixPropertiesKHR,
) -> Result {
panic!(concat!(
"Unable to load ",
stringify!(get_physical_device_cooperative_matrix_properties_khr)
))
}
let cname = ::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR\0",
);
let val = _f(cname);
if val.is_null() {
get_physical_device_cooperative_matrix_properties_khr
} else {
::std::mem::transmute(val)
}
},
}
}
}
#[doc = "Generated from 'VK_KHR_cooperative_matrix'"]
impl StructureType {
pub const PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR: Self = Self(1_000_506_000);
pub const COOPERATIVE_MATRIX_PROPERTIES_KHR: Self = Self(1_000_506_001);
pub const PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR: Self = Self(1_000_506_002);
}
impl QcomMultiviewPerViewRenderAreasFn {
pub const NAME: &'static ::std::ffi::CStr = unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(

@ -1 +1 @@
Subproject commit c1a8560c5cf5e7bd6dbc71fe69b1a317411c36b8
Subproject commit 94bb3c998b9156b9101421f7614617dfcf7f4256