ash/extensions/khr/
buffer_device_address.rs

1//! <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/VK_KHR_buffer_device_address.html>
2
3use crate::vk;
4
5impl crate::khr::buffer_device_address::Device {
6    /// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetBufferDeviceAddressKHR.html>
7    #[inline]
8    pub unsafe fn get_buffer_device_address(
9        &self,
10        info: &vk::BufferDeviceAddressInfoKHR<'_>,
11    ) -> vk::DeviceAddress {
12        (self.fp.get_buffer_device_address_khr)(self.handle, info)
13    }
14
15    /// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetBufferOpaqueCaptureAddressKHR.html>
16    #[inline]
17    pub unsafe fn get_buffer_opaque_capture_address(
18        &self,
19        info: &vk::BufferDeviceAddressInfoKHR<'_>,
20    ) -> u64 {
21        (self.fp.get_buffer_opaque_capture_address_khr)(self.handle, info)
22    }
23
24    /// <https://registry.khronos.org/vulkan/specs/1.3-extensions/man/html/vkGetDeviceMemoryOpaqueCaptureAddressKHR.html>
25    #[inline]
26    pub unsafe fn get_device_memory_opaque_capture_address(
27        &self,
28        info: &vk::DeviceMemoryOpaqueCaptureAddressInfoKHR<'_>,
29    ) -> u64 {
30        (self.fp.get_device_memory_opaque_capture_address_khr)(self.handle, info)
31    }
32}