erupt 0.23.0+213

Vulkan API bindings
Documentation
// DO NOT EDIT: @generated by erupt's generator
///<s>Vulkan Manual Page</s> · Constant
#[doc(alias = "VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION")]
pub const KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION: u32 = 1;
///<s>Vulkan Manual Page</s> · Constant
#[doc(alias = "VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME")]
pub const KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME: *const std::os::raw::c_char = crate::cstr!(
    "VK_KHR_buffer_device_address"
);
///<s>Vulkan Manual Page</s> · Constant
pub const FN_GET_BUFFER_OPAQUE_CAPTURE_ADDRESS_KHR: *const std::os::raw::c_char = crate::cstr!(
    "vkGetBufferOpaqueCaptureAddressKHR"
);
///<s>Vulkan Manual Page</s> · Constant
pub const FN_GET_BUFFER_DEVICE_ADDRESS_KHR: *const std::os::raw::c_char = crate::cstr!(
    "vkGetBufferDeviceAddressKHR"
);
///<s>Vulkan Manual Page</s> · Constant
pub const FN_GET_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_KHR: *const std::os::raw::c_char = crate::cstr!(
    "vkGetDeviceMemoryOpaqueCaptureAddressKHR"
);
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceBufferDeviceAddressFeaturesKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceBufferDeviceAddressFeaturesKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceBufferDeviceAddressFeaturesKHR = crate::vk1_2::PhysicalDeviceBufferDeviceAddressFeatures;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkPhysicalDeviceBufferDeviceAddressFeaturesKHR.html) · Alias
#[doc(alias = "VkPhysicalDeviceBufferDeviceAddressFeaturesKHR")]
#[allow(non_camel_case_types)]
pub type PhysicalDeviceBufferDeviceAddressFeaturesKHRBuilder<'a> = crate::vk1_2::PhysicalDeviceBufferDeviceAddressFeaturesBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferDeviceAddressInfoKHR.html) · Alias
#[doc(alias = "VkBufferDeviceAddressInfoKHR")]
#[allow(non_camel_case_types)]
pub type BufferDeviceAddressInfoKHR = crate::vk1_2::BufferDeviceAddressInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferDeviceAddressInfoKHR.html) · Alias
#[doc(alias = "VkBufferDeviceAddressInfoKHR")]
#[allow(non_camel_case_types)]
pub type BufferDeviceAddressInfoKHRBuilder<'a> = crate::vk1_2::BufferDeviceAddressInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferOpaqueCaptureAddressCreateInfoKHR.html) · Alias
#[doc(alias = "VkBufferOpaqueCaptureAddressCreateInfoKHR")]
#[allow(non_camel_case_types)]
pub type BufferOpaqueCaptureAddressCreateInfoKHR = crate::vk1_2::BufferOpaqueCaptureAddressCreateInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkBufferOpaqueCaptureAddressCreateInfoKHR.html) · Alias
#[doc(alias = "VkBufferOpaqueCaptureAddressCreateInfoKHR")]
#[allow(non_camel_case_types)]
pub type BufferOpaqueCaptureAddressCreateInfoKHRBuilder<'a> = crate::vk1_2::BufferOpaqueCaptureAddressCreateInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkMemoryOpaqueCaptureAddressAllocateInfoKHR.html) · Alias
#[doc(alias = "VkMemoryOpaqueCaptureAddressAllocateInfoKHR")]
#[allow(non_camel_case_types)]
pub type MemoryOpaqueCaptureAddressAllocateInfoKHR = crate::vk1_2::MemoryOpaqueCaptureAddressAllocateInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkMemoryOpaqueCaptureAddressAllocateInfoKHR.html) · Alias
#[doc(alias = "VkMemoryOpaqueCaptureAddressAllocateInfoKHR")]
#[allow(non_camel_case_types)]
pub type MemoryOpaqueCaptureAddressAllocateInfoKHRBuilder<'a> = crate::vk1_2::MemoryOpaqueCaptureAddressAllocateInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDeviceMemoryOpaqueCaptureAddressInfoKHR.html) · Alias
#[doc(alias = "VkDeviceMemoryOpaqueCaptureAddressInfoKHR")]
#[allow(non_camel_case_types)]
pub type DeviceMemoryOpaqueCaptureAddressInfoKHR = crate::vk1_2::DeviceMemoryOpaqueCaptureAddressInfo;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VkDeviceMemoryOpaqueCaptureAddressInfoKHR.html) · Alias
#[doc(alias = "VkDeviceMemoryOpaqueCaptureAddressInfoKHR")]
#[allow(non_camel_case_types)]
pub type DeviceMemoryOpaqueCaptureAddressInfoKHRBuilder<'a> = crate::vk1_2::DeviceMemoryOpaqueCaptureAddressInfoBuilder<
    'a,
>;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferOpaqueCaptureAddressKHR.html) · Alias
#[allow(non_camel_case_types)]
pub type PFN_vkGetBufferOpaqueCaptureAddressKHR = crate::vk1_2::PFN_vkGetBufferOpaqueCaptureAddress;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferDeviceAddressKHR.html) · Alias
#[allow(non_camel_case_types)]
pub type PFN_vkGetBufferDeviceAddressKHR = crate::vk1_2::PFN_vkGetBufferDeviceAddress;
///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceMemoryOpaqueCaptureAddressKHR.html) · Alias
#[allow(non_camel_case_types)]
pub type PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR = crate::vk1_2::PFN_vkGetDeviceMemoryOpaqueCaptureAddress;
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::vk1_0::BufferCreateFlagBits {
    pub const DEVICE_ADDRESS_CAPTURE_REPLAY_KHR: Self = Self::DEVICE_ADDRESS_CAPTURE_REPLAY;
}
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::vk1_0::BufferUsageFlagBits {
    pub const SHADER_DEVICE_ADDRESS_KHR: Self = Self::SHADER_DEVICE_ADDRESS;
}
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::vk1_0::Result {
    pub const ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR: Self = Self::ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS;
}
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::vk1_0::StructureType {
    pub const PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR: Self = Self::PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES;
    pub const BUFFER_DEVICE_ADDRESS_INFO_KHR: Self = Self::BUFFER_DEVICE_ADDRESS_INFO;
    pub const BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR: Self = Self::BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO;
    pub const MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR: Self = Self::MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO;
    pub const DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR: Self = Self::DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO;
}
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::vk1_1::MemoryAllocateFlagBits {
    pub const DEVICE_ADDRESS_KHR: Self = Self::DEVICE_ADDRESS;
    pub const DEVICE_ADDRESS_CAPTURE_REPLAY_KHR: Self = Self::DEVICE_ADDRESS_CAPTURE_REPLAY;
}
///Provided by [`crate::extensions::khr_buffer_device_address`]
impl crate::DeviceLoader {
    #[inline]
    #[track_caller]
    ///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferOpaqueCaptureAddressKHR.html) · Function
    #[doc(alias = "vkGetBufferOpaqueCaptureAddressKHR")]
    pub unsafe fn get_buffer_opaque_capture_address_khr(
        &self,
        info: &crate::vk1_2::BufferDeviceAddressInfo,
    ) -> u64 {
        let _function = self
            .get_buffer_opaque_capture_address_khr
            .expect(crate::NOT_LOADED_MESSAGE);
        let _return = _function(self.handle, info as _);
        _return
    }
    #[inline]
    #[track_caller]
    ///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferDeviceAddressKHR.html) · Function
    #[doc(alias = "vkGetBufferDeviceAddressKHR")]
    pub unsafe fn get_buffer_device_address_khr(
        &self,
        info: &crate::vk1_2::BufferDeviceAddressInfo,
    ) -> crate::vk1_0::DeviceAddress {
        let _function = self
            .get_buffer_device_address_khr
            .expect(crate::NOT_LOADED_MESSAGE);
        let _return = _function(self.handle, info as _);
        _return
    }
    #[inline]
    #[track_caller]
    ///[Vulkan Manual Page](https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceMemoryOpaqueCaptureAddressKHR.html) · Function
    #[doc(alias = "vkGetDeviceMemoryOpaqueCaptureAddressKHR")]
    pub unsafe fn get_device_memory_opaque_capture_address_khr(
        &self,
        info: &crate::vk1_2::DeviceMemoryOpaqueCaptureAddressInfo,
    ) -> u64 {
        let _function = self
            .get_device_memory_opaque_capture_address_khr
            .expect(crate::NOT_LOADED_MESSAGE);
        let _return = _function(self.handle, info as _);
        _return
    }
}