Skip to content

Commit

Permalink
Update Vulkan-Headers to 1.3.236
Browse files Browse the repository at this point in the history
  • Loading branch information
MarijnS95 committed Dec 1, 2022
1 parent 69c56ea commit cbc39bc
Show file tree
Hide file tree
Showing 6 changed files with 246 additions and 25 deletions.
2 changes: 1 addition & 1 deletion ash/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "ash"
version = "0.37.0+1.3.235"
version = "0.37.0+1.3.236"
authors = ["maik klein <maikklein@googlemail.com>"]
description = "Vulkan bindings for Rust"
license = "MIT OR Apache-2.0"
Expand Down
25 changes: 25 additions & 0 deletions ash/src/vk/const_debugs.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1404,6 +1404,26 @@ impl fmt::Debug for DeviceQueueCreateFlags {
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for DirectDriverLoadingFlagsLUNARG {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[];
debug_flags(f, KNOWN, self.0)
}
}
impl fmt::Debug for DirectDriverLoadingModeLUNARG {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
let name = match *self {
Self::EXCLUSIVE => Some("EXCLUSIVE"),
Self::INCLUSIVE => Some("INCLUSIVE"),
_ => None,
};
if let Some(x) = name {
f.write_str(x)
} else {
self.0.fmt(f)
}
}
}
impl fmt::Debug for DirectFBSurfaceCreateFlagsEXT {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
const KNOWN: &[(Flags, &str)] = &[];
Expand Down Expand Up @@ -5766,6 +5786,8 @@ impl fmt::Debug for StructureType {
Self::RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT => {
Some("RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT")
}
Self::DIRECT_DRIVER_LOADING_INFO_LUNARG => Some("DIRECT_DRIVER_LOADING_INFO_LUNARG"),
Self::DIRECT_DRIVER_LOADING_LIST_LUNARG => Some("DIRECT_DRIVER_LOADING_LIST_LUNARG"),
Self::PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT => {
Some("PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT")
}
Expand Down Expand Up @@ -5810,6 +5832,9 @@ impl fmt::Debug for StructureType {
Some("PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC")
}
Self::AMIGO_PROFILING_SUBMIT_INFO_SEC => Some("AMIGO_PROFILING_SUBMIT_INFO_SEC"),
Self::PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM => {
Some("PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM")
}
Self::PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV => {
Some("PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV")
}
Expand Down
159 changes: 151 additions & 8 deletions ash/src/vk/definitions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ pub const API_VERSION_1_1: u32 = make_api_version(0, 1, 1, 0);
pub const API_VERSION_1_2: u32 = make_api_version(0, 1, 2, 0);
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_API_VERSION_1_3.html>"]
pub const API_VERSION_1_3: u32 = make_api_version(0, 1, 3, 0);
pub const HEADER_VERSION: u32 = 235u32;
pub const HEADER_VERSION: u32 = 236u32;
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_HEADER_VERSION_COMPLETE.html>"]
pub const HEADER_VERSION_COMPLETE: u32 = make_api_version(0, 1, 3, HEADER_VERSION);
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkSampleMask.html>"]
Expand Down Expand Up @@ -149,6 +149,11 @@ pub struct AccelerationStructureMotionInstanceFlagsNV(pub(crate) Flags);
vk_bitflags_wrapped!(AccelerationStructureMotionInstanceFlagsNV, Flags);
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingFlagsLUNARG.html>"]
pub struct DirectDriverLoadingFlagsLUNARG(pub(crate) Flags);
vk_bitflags_wrapped!(DirectDriverLoadingFlagsLUNARG, Flags);
#[repr(transparent)]
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDisplayModeCreateFlagsKHR.html>"]
pub struct DisplayModeCreateFlagsKHR(pub(crate) Flags);
vk_bitflags_wrapped!(DisplayModeCreateFlagsKHR, Flags);
Expand Down Expand Up @@ -520,6 +525,11 @@ pub type PFN_vkDeviceMemoryReportCallbackEXT = Option<
p_user_data: *mut c_void,
),
>;
#[allow(non_camel_case_types)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/PFN_vkGetInstanceProcAddr.html>"]
pub type PFN_vkGetInstanceProcAddr = Option<
unsafe extern "system" fn(instance: Instance, p_name: *const c_char) -> PFN_vkVoidFunction,
>;
#[repr(C)]
#[cfg_attr(feature = "debug", derive(Debug))]
#[derive(Copy, Clone)]
Expand Down Expand Up @@ -36925,8 +36935,8 @@ pub struct VideoDecodeH265PictureInfoEXT<'a> {
pub s_type: StructureType,
pub p_next: *const c_void,
pub p_std_picture_info: *mut StdVideoDecodeH265PictureInfo,
pub slice_count: u32,
pub p_slice_offsets: *const u32,
pub slice_segment_count: u32,
pub p_slice_segment_offsets: *const u32,
pub _marker: PhantomData<&'a ()>,
}
impl ::std::default::Default for VideoDecodeH265PictureInfoEXT<'_> {
Expand All @@ -36936,8 +36946,8 @@ impl ::std::default::Default for VideoDecodeH265PictureInfoEXT<'_> {
s_type: Self::STRUCTURE_TYPE,
p_next: ::std::ptr::null(),
p_std_picture_info: ::std::ptr::null_mut(),
slice_count: u32::default(),
p_slice_offsets: ::std::ptr::null(),
slice_segment_count: u32::default(),
p_slice_segment_offsets: ::std::ptr::null(),
_marker: PhantomData,
}
}
Expand All @@ -36956,9 +36966,9 @@ impl<'a> VideoDecodeH265PictureInfoEXT<'a> {
self
}
#[inline]
pub fn slice_offsets(mut self, slice_offsets: &'a [u32]) -> Self {
self.slice_count = slice_offsets.len() as _;
self.p_slice_offsets = slice_offsets.as_ptr();
pub fn slice_segment_offsets(mut self, slice_segment_offsets: &'a [u32]) -> Self {
self.slice_segment_count = slice_segment_offsets.len() as _;
self.p_slice_segment_offsets = slice_segment_offsets.as_ptr();
self
}
}
Expand Down Expand Up @@ -46490,3 +46500,136 @@ impl<'a> PhysicalDeviceRayTracingInvocationReorderPropertiesNV<'a> {
self
}
}
#[repr(C)]
#[derive(Copy, Clone)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingInfoLUNARG.html>"]
pub struct DirectDriverLoadingInfoLUNARG<'a> {
pub s_type: StructureType,
pub p_next: *mut c_void,
pub flags: DirectDriverLoadingFlagsLUNARG,
pub pfn_get_instance_proc_addr: PFN_vkGetInstanceProcAddr,
pub _marker: PhantomData<&'a ()>,
}
#[cfg(feature = "debug")]
impl fmt::Debug for DirectDriverLoadingInfoLUNARG<'_> {
fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result {
fmt.debug_struct("DirectDriverLoadingInfoLUNARG")
.field("s_type", &self.s_type)
.field("p_next", &self.p_next)
.field("flags", &self.flags)
.field(
"pfn_get_instance_proc_addr",
&(self.pfn_get_instance_proc_addr.map(|x| x as *const ())),
)
.finish()
}
}
impl ::std::default::Default for DirectDriverLoadingInfoLUNARG<'_> {
#[inline]
fn default() -> Self {
Self {
s_type: Self::STRUCTURE_TYPE,
p_next: ::std::ptr::null_mut(),
flags: DirectDriverLoadingFlagsLUNARG::default(),
pfn_get_instance_proc_addr: PFN_vkGetInstanceProcAddr::default(),
_marker: PhantomData,
}
}
}
unsafe impl<'a> TaggedStructure for DirectDriverLoadingInfoLUNARG<'a> {
const STRUCTURE_TYPE: StructureType = StructureType::DIRECT_DRIVER_LOADING_INFO_LUNARG;
}
impl<'a> DirectDriverLoadingInfoLUNARG<'a> {
#[inline]
pub fn flags(mut self, flags: DirectDriverLoadingFlagsLUNARG) -> Self {
self.flags = flags;
self
}
#[inline]
pub fn pfn_get_instance_proc_addr(
mut self,
pfn_get_instance_proc_addr: PFN_vkGetInstanceProcAddr,
) -> Self {
self.pfn_get_instance_proc_addr = pfn_get_instance_proc_addr;
self
}
}
#[repr(C)]
#[cfg_attr(feature = "debug", derive(Debug))]
#[derive(Copy, Clone)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingListLUNARG.html>"]
pub struct DirectDriverLoadingListLUNARG<'a> {
pub s_type: StructureType,
pub p_next: *mut c_void,
pub mode: DirectDriverLoadingModeLUNARG,
pub driver_count: u32,
pub p_drivers: *const DirectDriverLoadingInfoLUNARG<'a>,
pub _marker: PhantomData<&'a ()>,
}
impl ::std::default::Default for DirectDriverLoadingListLUNARG<'_> {
#[inline]
fn default() -> Self {
Self {
s_type: Self::STRUCTURE_TYPE,
p_next: ::std::ptr::null_mut(),
mode: DirectDriverLoadingModeLUNARG::default(),
driver_count: u32::default(),
p_drivers: ::std::ptr::null(),
_marker: PhantomData,
}
}
}
unsafe impl<'a> TaggedStructure for DirectDriverLoadingListLUNARG<'a> {
const STRUCTURE_TYPE: StructureType = StructureType::DIRECT_DRIVER_LOADING_LIST_LUNARG;
}
unsafe impl ExtendsInstanceCreateInfo for DirectDriverLoadingListLUNARG<'_> {}
impl<'a> DirectDriverLoadingListLUNARG<'a> {
#[inline]
pub fn mode(mut self, mode: DirectDriverLoadingModeLUNARG) -> Self {
self.mode = mode;
self
}
#[inline]
pub fn drivers(mut self, drivers: &'a [DirectDriverLoadingInfoLUNARG]) -> Self {
self.driver_count = drivers.len() as _;
self.p_drivers = drivers.as_ptr();
self
}
}
#[repr(C)]
#[cfg_attr(feature = "debug", derive(Debug))]
#[derive(Copy, Clone)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.html>"]
pub struct PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'a> {
pub s_type: StructureType,
pub p_next: *mut c_void,
pub multiview_per_view_viewports: Bool32,
pub _marker: PhantomData<&'a ()>,
}
impl ::std::default::Default for PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'_> {
#[inline]
fn default() -> Self {
Self {
s_type: Self::STRUCTURE_TYPE,
p_next: ::std::ptr::null_mut(),
multiview_per_view_viewports: Bool32::default(),
_marker: PhantomData,
}
}
}
unsafe impl<'a> TaggedStructure for PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'a> {
const STRUCTURE_TYPE: StructureType =
StructureType::PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM;
}
unsafe impl ExtendsPhysicalDeviceFeatures2
for PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'_>
{
}
unsafe impl ExtendsDeviceCreateInfo for PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'_> {}
impl<'a> PhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM<'a> {
#[inline]
pub fn multiview_per_view_viewports(mut self, multiview_per_view_viewports: bool) -> Self {
self.multiview_per_view_viewports = multiview_per_view_viewports.into();
self
}
}
18 changes: 18 additions & 0 deletions ash/src/vk/enums.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1136,6 +1136,24 @@ impl RayTracingInvocationReorderModeNV {
}
#[derive(Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Default)]
#[repr(transparent)]
#[doc = "<https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDirectDriverLoadingModeLUNARG.html>"]
pub struct DirectDriverLoadingModeLUNARG(pub(crate) i32);
impl DirectDriverLoadingModeLUNARG {
#[inline]
pub const fn from_raw(x: i32) -> Self {
Self(x)
}
#[inline]
pub const fn as_raw(self) -> i32 {
self.0
}
}
impl DirectDriverLoadingModeLUNARG {
pub const EXCLUSIVE: Self = Self(0);
pub const INCLUSIVE: 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/VkSemaphoreType.html>"]
pub struct SemaphoreType(pub(crate) i32);
impl SemaphoreType {
Expand Down
65 changes: 50 additions & 15 deletions ash/src/vk/extensions.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11687,7 +11687,7 @@ impl ExtVideoDecodeH265Fn {
pub const fn name() -> &'static ::std::ffi::CStr {
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_EXT_video_decode_h265\0") }
}
pub const SPEC_VERSION: u32 = 5u32;
pub const SPEC_VERSION: u32 = 6u32;
}
#[derive(Clone)]
pub struct ExtVideoDecodeH265Fn {}
Expand Down Expand Up @@ -23945,25 +23945,32 @@ impl StructureType {
pub const RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT: Self = Self(1_000_458_002);
pub const RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT: Self = Self(1_000_458_003);
}
impl ExtExtension460Fn {
impl LunargDirectDriverLoadingFn {
#[inline]
pub const fn name() -> &'static ::std::ffi::CStr {
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_EXT_extension_460\0") }
unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_LUNARG_direct_driver_loading\0")
}
}
pub const SPEC_VERSION: u32 = 0u32;
pub const SPEC_VERSION: u32 = 1u32;
}
#[derive(Clone)]
pub struct ExtExtension460Fn {}
unsafe impl Send for ExtExtension460Fn {}
unsafe impl Sync for ExtExtension460Fn {}
impl ExtExtension460Fn {
pub struct LunargDirectDriverLoadingFn {}
unsafe impl Send for LunargDirectDriverLoadingFn {}
unsafe impl Sync for LunargDirectDriverLoadingFn {}
impl LunargDirectDriverLoadingFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {}
}
}
#[doc = "Generated from 'VK_LUNARG_direct_driver_loading'"]
impl StructureType {
pub const DIRECT_DRIVER_LOADING_INFO_LUNARG: Self = Self(1_000_459_000);
pub const DIRECT_DRIVER_LOADING_LIST_LUNARG: Self = Self(1_000_459_001);
}
impl ExtExtension461Fn {
#[inline]
pub const fn name() -> &'static ::std::ffi::CStr {
Expand Down Expand Up @@ -24882,25 +24889,34 @@ impl ExtExtension488Fn {
Self {}
}
}
impl QcomExtension489Fn {
impl QcomMultiviewPerViewViewportsFn {
#[inline]
pub const fn name() -> &'static ::std::ffi::CStr {
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_QCOM_extension_489\0") }
unsafe {
::std::ffi::CStr::from_bytes_with_nul_unchecked(
b"VK_QCOM_multiview_per_view_viewports\0",
)
}
}
pub const SPEC_VERSION: u32 = 0u32;
pub const SPEC_VERSION: u32 = 1u32;
}
#[derive(Clone)]
pub struct QcomExtension489Fn {}
unsafe impl Send for QcomExtension489Fn {}
unsafe impl Sync for QcomExtension489Fn {}
impl QcomExtension489Fn {
pub struct QcomMultiviewPerViewViewportsFn {}
unsafe impl Send for QcomMultiviewPerViewViewportsFn {}
unsafe impl Sync for QcomMultiviewPerViewViewportsFn {}
impl QcomMultiviewPerViewViewportsFn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {}
}
}
#[doc = "Generated from 'VK_QCOM_multiview_per_view_viewports'"]
impl StructureType {
pub const PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM: Self =
Self(1_000_488_000);
}
impl NvExtension490Fn {
#[inline]
pub const fn name() -> &'static ::std::ffi::CStr {
Expand Down Expand Up @@ -25221,3 +25237,22 @@ impl NvExtension504Fn {
Self {}
}
}
impl ExtExtension505Fn {
#[inline]
pub const fn name() -> &'static ::std::ffi::CStr {
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(b"VK_EXT_extension_505\0") }
}
pub const SPEC_VERSION: u32 = 0u32;
}
#[derive(Clone)]
pub struct ExtExtension505Fn {}
unsafe impl Send for ExtExtension505Fn {}
unsafe impl Sync for ExtExtension505Fn {}
impl ExtExtension505Fn {
pub fn load<F>(mut _f: F) -> Self
where
F: FnMut(&::std::ffi::CStr) -> *const c_void,
{
Self {}
}
}
Loading

0 comments on commit cbc39bc

Please sign in to comment.