extensions: Inline all trivial functions (#638)
* extensions: Inline simple getter functions * extensions: Inline all `unsafe fn` helper functions * instance: Inline "skipped" `read_into_uninitialized_vector()` functions * enums: Inline `from_raw`/`as_raw` functions
This commit is contained in:
parent
ce2ee4812c
commit
79f63e1cbc
|
@ -19,6 +19,7 @@ impl BufferDeviceAddress {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferDeviceAddressEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_buffer_device_address(
|
||||
&self,
|
||||
info: &vk::BufferDeviceAddressInfoEXT,
|
||||
|
@ -26,14 +27,17 @@ impl BufferDeviceAddress {
|
|||
(self.fp.get_buffer_device_address_ext)(self.handle, info)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtBufferDeviceAddressFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtBufferDeviceAddressFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl CalibratedTimestamps {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceCalibrateableTimeDomainsEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_calibrateable_time_domains(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -36,6 +37,7 @@ impl CalibratedTimestamps {
|
|||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetCalibratedTimestampsEXT.html>
|
||||
///
|
||||
/// Returns a tuple containing `(timestamps, max_deviation)`
|
||||
#[inline]
|
||||
pub unsafe fn get_calibrated_timestamps(
|
||||
&self,
|
||||
device: vk::Device,
|
||||
|
@ -53,14 +55,17 @@ impl CalibratedTimestamps {
|
|||
.result_with_success((timestamps, max_deviation))
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtCalibratedTimestampsFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtCalibratedTimestampsFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl DebugMarker {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDebugMarkerSetObjectNameEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn debug_marker_set_object_name(
|
||||
&self,
|
||||
name_info: &vk::DebugMarkerObjectNameInfoEXT,
|
||||
|
@ -28,6 +29,7 @@ impl DebugMarker {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDebugMarkerBeginEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_debug_marker_begin(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -37,11 +39,13 @@ impl DebugMarker {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDebugMarkerEndEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_debug_marker_end(&self, command_buffer: vk::CommandBuffer) {
|
||||
(self.fp.cmd_debug_marker_end_ext)(command_buffer);
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDebugMarkerInsertEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_debug_marker_insert(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -50,14 +54,17 @@ impl DebugMarker {
|
|||
(self.fp.cmd_debug_marker_insert_ext)(command_buffer, marker_info);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtDebugMarkerFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtDebugMarkerFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl DebugReport {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyDebugReportCallbackEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_debug_report_callback(
|
||||
&self,
|
||||
debug: vk::DebugReportCallbackEXT,
|
||||
|
@ -34,6 +35,7 @@ impl DebugReport {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateDebugReportCallbackEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_debug_report_callback(
|
||||
&self,
|
||||
create_info: &vk::DebugReportCallbackCreateInfoEXT,
|
||||
|
@ -49,14 +51,17 @@ impl DebugReport {
|
|||
.result_with_success(debug_cb)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtDebugReportFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtDebugReportFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkSetDebugUtilsObjectNameEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn debug_utils_set_object_name(
|
||||
&self,
|
||||
device: vk::Device,
|
||||
|
@ -29,6 +30,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkSetDebugUtilsObjectTagEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn debug_utils_set_object_tag(
|
||||
&self,
|
||||
device: vk::Device,
|
||||
|
@ -38,6 +40,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBeginDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_begin_debug_utils_label(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -47,11 +50,13 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdEndDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_end_debug_utils_label(&self, command_buffer: vk::CommandBuffer) {
|
||||
(self.fp.cmd_end_debug_utils_label_ext)(command_buffer);
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdInsertDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_insert_debug_utils_label(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -61,6 +66,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkQueueBeginDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn queue_begin_debug_utils_label(
|
||||
&self,
|
||||
queue: vk::Queue,
|
||||
|
@ -70,11 +76,13 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkQueueEndDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn queue_end_debug_utils_label(&self, queue: vk::Queue) {
|
||||
(self.fp.queue_end_debug_utils_label_ext)(queue);
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkQueueInsertDebugUtilsLabelEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn queue_insert_debug_utils_label(
|
||||
&self,
|
||||
queue: vk::Queue,
|
||||
|
@ -84,6 +92,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateDebugUtilsMessengerEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_debug_utils_messenger(
|
||||
&self,
|
||||
create_info: &vk::DebugUtilsMessengerCreateInfoEXT,
|
||||
|
@ -100,6 +109,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyDebugUtilsMessengerEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_debug_utils_messenger(
|
||||
&self,
|
||||
messenger: vk::DebugUtilsMessengerEXT,
|
||||
|
@ -109,6 +119,7 @@ impl DebugUtils {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkSubmitDebugUtilsMessageEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn submit_debug_utils_message(
|
||||
&self,
|
||||
message_severity: vk::DebugUtilsMessageSeverityFlagsEXT,
|
||||
|
@ -123,14 +134,17 @@ impl DebugUtils {
|
|||
);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtDebugUtilsFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtDebugUtilsFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetCullModeEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_cull_mode(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -27,6 +28,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetFrontFaceEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_front_face(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -36,6 +38,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetPrimitiveTopologyEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_primitive_topology(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -45,6 +48,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetViewportWithCountEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_viewport_with_count(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -58,6 +62,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetScissorWithCountEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_scissor_with_count(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -71,6 +76,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBindVertexBuffers2EXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_bind_vertex_buffers2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -105,6 +111,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDepthTestEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_depth_test_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -114,6 +121,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDepthWriteEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_depth_write_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -123,6 +131,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDepthCompareOpEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_depth_compare_op(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -132,6 +141,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDepthBoundsTestEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_depth_bounds_test_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -144,6 +154,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetStencilTestEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_stencil_test_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -153,6 +164,7 @@ impl ExtendedDynamicState {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetStencilOpEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_stencil_op(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -172,10 +184,12 @@ impl ExtendedDynamicState {
|
|||
)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtExtendedDynamicStateFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtExtendedDynamicStateFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl ExtendedDynamicState2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetPatchControlPointsEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_patch_control_points(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -27,6 +28,7 @@ impl ExtendedDynamicState2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetRasterizerDiscardEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_rasterizer_discard_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -39,6 +41,7 @@ impl ExtendedDynamicState2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDepthBiasEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_depth_bias_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -48,6 +51,7 @@ impl ExtendedDynamicState2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetLogicOpEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_logic_op(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -57,6 +61,7 @@ impl ExtendedDynamicState2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetPrimitiveRestartEnableEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_primitive_restart_enable(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -68,10 +73,12 @@ impl ExtendedDynamicState2 {
|
|||
)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtExtendedDynamicState2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtExtendedDynamicState2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl FullScreenExclusive {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkAcquireFullScreenExclusiveModeEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn acquire_full_screen_exclusive_mode(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -28,6 +29,7 @@ impl FullScreenExclusive {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfacePresentModes2EXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_present_modes2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -44,6 +46,7 @@ impl FullScreenExclusive {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkReleaseFullScreenExclusiveModeEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn release_full_screen_exclusive_mode(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -52,6 +55,7 @@ impl FullScreenExclusive {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceGroupSurfacePresentModes2EXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_surface_present_modes2(
|
||||
&self,
|
||||
surface_info: &vk::PhysicalDeviceSurfaceInfo2KHR,
|
||||
|
@ -65,14 +69,17 @@ impl FullScreenExclusive {
|
|||
.result_with_success(present_modes)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtFullScreenExclusiveFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtFullScreenExclusiveFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ impl HeadlessSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateHeadlessSurfaceEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_headless_surface(
|
||||
&self,
|
||||
create_info: &vk::HeadlessSurfaceCreateInfoEXT,
|
||||
|
@ -37,14 +38,17 @@ impl HeadlessSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtHeadlessSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtHeadlessSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl ImageDrmFormatModifier {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetImageDrmFormatModifierPropertiesEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_image_drm_format_modifier_properties(
|
||||
&self,
|
||||
image: vk::Image,
|
||||
|
@ -30,14 +31,17 @@ impl ImageDrmFormatModifier {
|
|||
.result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtImageDrmFormatModifierFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtImageDrmFormatModifierFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl MetalSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateMetalSurfaceEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_metal_surface(
|
||||
&self,
|
||||
create_info: &vk::MetalSurfaceCreateInfoEXT,
|
||||
|
@ -36,14 +37,17 @@ impl MetalSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtMetalSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtMetalSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -6,6 +6,7 @@ use std::ffi::CStr;
|
|||
pub struct PhysicalDeviceDrm;
|
||||
|
||||
impl PhysicalDeviceDrm {
|
||||
#[inline]
|
||||
pub unsafe fn get_properties(
|
||||
instance: &Instance,
|
||||
pdevice: vk::PhysicalDevice,
|
||||
|
@ -18,6 +19,7 @@ impl PhysicalDeviceDrm {
|
|||
props_drm
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtPhysicalDeviceDrmFn::name()
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ impl PrivateData {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreatePrivateDataSlotEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_private_data_slot(
|
||||
&self,
|
||||
create_info: &vk::PrivateDataSlotCreateInfoEXT,
|
||||
|
@ -38,6 +39,7 @@ impl PrivateData {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyPrivateDataSlotEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_private_data_slot(
|
||||
&self,
|
||||
private_data_slot: vk::PrivateDataSlotEXT,
|
||||
|
@ -51,6 +53,7 @@ impl PrivateData {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkSetPrivateDataEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn set_private_data<T: vk::Handle>(
|
||||
&self,
|
||||
object: T,
|
||||
|
@ -68,6 +71,7 @@ impl PrivateData {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPrivateDataEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_private_data<T: vk::Handle>(
|
||||
&self,
|
||||
object: T,
|
||||
|
@ -84,14 +88,17 @@ impl PrivateData {
|
|||
data
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtPrivateDataFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtPrivateDataFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl SampleLocations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceMultisamplePropertiesEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_multisample_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -32,6 +33,7 @@ impl SampleLocations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetSampleLocationsEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_sample_locations(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -40,10 +42,12 @@ impl SampleLocations {
|
|||
(self.fp.cmd_set_sample_locations_ext)(command_buffer, sample_locations_info)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtSampleLocationsFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtSampleLocationsFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl ToolingInfo {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceToolPropertiesEXT.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_tool_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -27,10 +28,12 @@ impl ToolingInfo {
|
|||
})
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::ExtToolingInfoFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::ExtToolingInfoFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl AccelerationStructure {
|
|||
Self { handle, fp }
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub unsafe fn get_properties(
|
||||
instance: &Instance,
|
||||
pdevice: vk::PhysicalDevice,
|
||||
|
@ -33,6 +34,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_acceleration_structure(
|
||||
&self,
|
||||
create_info: &vk::AccelerationStructureCreateInfoKHR,
|
||||
|
@ -49,6 +51,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_acceleration_structure(
|
||||
&self,
|
||||
accel_struct: vk::AccelerationStructureKHR,
|
||||
|
@ -62,6 +65,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBuildAccelerationStructuresKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_build_acceleration_structures(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -88,6 +92,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBuildAccelerationStructuresIndirectKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_build_acceleration_structures_indirect(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -120,6 +125,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkBuildAccelerationStructuresKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn build_acceleration_structures(
|
||||
&self,
|
||||
deferred_operation: vk::DeferredOperationKHR,
|
||||
|
@ -148,6 +154,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCopyAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn copy_acceleration_structure(
|
||||
&self,
|
||||
deferred_operation: vk::DeferredOperationKHR,
|
||||
|
@ -157,6 +164,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCopyAccelerationStructureToMemoryKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn copy_acceleration_structure_to_memory(
|
||||
&self,
|
||||
deferred_operation: vk::DeferredOperationKHR,
|
||||
|
@ -167,6 +175,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCopyMemoryToAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn copy_memory_to_acceleration_structure(
|
||||
&self,
|
||||
deferred_operation: vk::DeferredOperationKHR,
|
||||
|
@ -177,6 +186,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkWriteAccelerationStructuresPropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn write_acceleration_structures_properties(
|
||||
&self,
|
||||
acceleration_structures: &[vk::AccelerationStructureKHR],
|
||||
|
@ -197,6 +207,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_acceleration_structure(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -206,6 +217,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyAccelerationStructureToMemoryKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_acceleration_structure_to_memory(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -215,6 +227,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyMemoryToAccelerationStructureKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_memory_to_acceleration_structure(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -224,6 +237,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetAccelerationStructureHandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_acceleration_structure_device_address(
|
||||
&self,
|
||||
info: &vk::AccelerationStructureDeviceAddressInfoKHR,
|
||||
|
@ -232,6 +246,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdWriteAccelerationStructuresPropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_write_acceleration_structures_properties(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -251,6 +266,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceAccelerationStructureCompatibilityKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_acceleration_structure_compatibility(
|
||||
&self,
|
||||
version: &vk::AccelerationStructureVersionInfoKHR,
|
||||
|
@ -267,6 +283,7 @@ impl AccelerationStructure {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetAccelerationStructureBuildSizesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_acceleration_structure_build_sizes(
|
||||
&self,
|
||||
build_type: vk::AccelerationStructureBuildTypeKHR,
|
||||
|
@ -288,14 +305,17 @@ impl AccelerationStructure {
|
|||
size_info
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrAccelerationStructureFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrAccelerationStructureFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl AndroidSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateAndroidSurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_android_surface(
|
||||
&self,
|
||||
create_info: &vk::AndroidSurfaceCreateInfoKHR,
|
||||
|
@ -36,14 +37,17 @@ impl AndroidSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrAndroidSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrAndroidSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl BufferDeviceAddress {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferDeviceAddressKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_buffer_device_address(
|
||||
&self,
|
||||
info: &vk::BufferDeviceAddressInfoKHR,
|
||||
|
@ -27,6 +28,7 @@ impl BufferDeviceAddress {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferOpaqueCaptureAddressKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_buffer_opaque_capture_address(
|
||||
&self,
|
||||
info: &vk::BufferDeviceAddressInfoKHR,
|
||||
|
@ -35,6 +37,7 @@ impl BufferDeviceAddress {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceMemoryOpaqueCaptureAddressKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_memory_opaque_capture_address(
|
||||
&self,
|
||||
info: &vk::DeviceMemoryOpaqueCaptureAddressInfoKHR,
|
||||
|
@ -42,14 +45,17 @@ impl BufferDeviceAddress {
|
|||
(self.fp.get_device_memory_opaque_capture_address_khr)(self.handle, info)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrBufferDeviceAddressFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrBufferDeviceAddressFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl CopyCommands2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyBuffer2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_buffer2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -26,6 +27,7 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_copy_buffer2_khr)(command_buffer, copy_buffer_info)
|
||||
}
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyImage2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_image2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -34,6 +36,7 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_copy_image2_khr)(command_buffer, copy_image_info)
|
||||
}
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyBufferToImage2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_buffer_to_image2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -42,6 +45,7 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_copy_buffer_to_image2_khr)(command_buffer, copy_buffer_to_image_info)
|
||||
}
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyImageToBuffer2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_image_to_buffer2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -50,6 +54,7 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_copy_image_to_buffer2_khr)(command_buffer, copy_image_to_buffer_info)
|
||||
}
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBlitImage2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_blit_image2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -58,6 +63,7 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_blit_image2_khr)(command_buffer, blit_image_info)
|
||||
}
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdResolveImage2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_resolve_image2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -66,10 +72,12 @@ impl CopyCommands2 {
|
|||
(self.fp.cmd_resolve_image2_khr)(command_buffer, resolve_image_info)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrCopyCommands2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrCopyCommands2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl CreateRenderPass2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateRenderPass2.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_render_pass2(
|
||||
&self,
|
||||
create_info: &vk::RenderPassCreateInfo2,
|
||||
|
@ -37,6 +38,7 @@ impl CreateRenderPass2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBeginRenderPass2.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_begin_render_pass2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -51,6 +53,7 @@ impl CreateRenderPass2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdNextSubpass2.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_next_subpass2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -61,6 +64,7 @@ impl CreateRenderPass2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdEndRenderPass2.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_end_render_pass2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -69,14 +73,17 @@ impl CreateRenderPass2 {
|
|||
(self.fp.cmd_end_render_pass2_khr)(command_buffer, subpass_end_info);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrCreateRenderpass2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrCreateRenderpass2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl DeferredHostOperations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateDeferredOperationKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_deferred_operation(
|
||||
&self,
|
||||
allocation_callbacks: Option<&vk::AllocationCallbacks>,
|
||||
|
@ -35,6 +36,7 @@ impl DeferredHostOperations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDeferredOperationJoinKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn deferred_operation_join(
|
||||
&self,
|
||||
operation: vk::DeferredOperationKHR,
|
||||
|
@ -43,6 +45,7 @@ impl DeferredHostOperations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyDeferredOperationKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_deferred_operation(
|
||||
&self,
|
||||
operation: vk::DeferredOperationKHR,
|
||||
|
@ -56,6 +59,7 @@ impl DeferredHostOperations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeferredOperationMaxConcurrencyKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_deferred_operation_max_concurrency(
|
||||
&self,
|
||||
operation: vk::DeferredOperationKHR,
|
||||
|
@ -64,6 +68,7 @@ impl DeferredHostOperations {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeferredOperationResultKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_deferred_operation_result(
|
||||
&self,
|
||||
operation: vk::DeferredOperationKHR,
|
||||
|
@ -71,14 +76,17 @@ impl DeferredHostOperations {
|
|||
(self.fp.get_deferred_operation_result_khr)(self.handle, operation).result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDeferredHostOperationsFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDeferredHostOperationsFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ impl DeviceGroup {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceGroupPeerMemoryFeaturesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_peer_memory_features(
|
||||
&self,
|
||||
heap_index: u32,
|
||||
|
@ -41,11 +42,13 @@ impl DeviceGroup {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetDeviceMaskKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_device_mask(&self, command_buffer: vk::CommandBuffer, device_mask: u32) {
|
||||
(self.fp.cmd_set_device_mask_khr)(command_buffer, device_mask)
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDispatchBaseKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_dispatch_base(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -71,6 +74,7 @@ impl DeviceGroup {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_present_capabilities(
|
||||
&self,
|
||||
device_group_present_capabilities: &mut vk::DeviceGroupPresentCapabilitiesKHR,
|
||||
|
@ -90,6 +94,7 @@ impl DeviceGroup {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_surface_present_modes(
|
||||
&self,
|
||||
surface: vk::SurfaceKHR,
|
||||
|
@ -107,6 +112,7 @@ impl DeviceGroup {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_present_rectangles(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -132,6 +138,7 @@ impl DeviceGroup {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_swapchain`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_swapchain.html
|
||||
#[inline]
|
||||
pub unsafe fn acquire_next_image2(
|
||||
&self,
|
||||
acquire_info: &vk::AcquireNextImageInfoKHR,
|
||||
|
@ -145,14 +152,17 @@ impl DeviceGroup {
|
|||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDeviceGroupFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDeviceGroupFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -49,14 +49,17 @@ impl DeviceGroupCreation {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDeviceGroupCreationFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDeviceGroupCreationFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceDisplayPropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_display_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -31,6 +32,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceDisplayPlanePropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_display_plane_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -41,6 +43,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDisplayPlaneSupportedDisplaysKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_display_plane_supported_displays(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -57,6 +60,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDisplayModePropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_display_mode_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -68,6 +72,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateDisplayModeKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_display_mode(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -87,6 +92,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDisplayPlaneCapabilitiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_display_plane_capabilities(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -104,6 +110,7 @@ impl Display {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateDisplayPlaneSurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_display_plane_surface(
|
||||
&self,
|
||||
create_info: &vk::DisplaySurfaceCreateInfoKHR,
|
||||
|
@ -119,14 +126,17 @@ impl Display {
|
|||
.result_with_success(surface.assume_init())
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDisplayFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDisplayFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl DisplaySwapchain {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateSharedSwapchainsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_shared_swapchains(
|
||||
&self,
|
||||
create_infos: &[vk::SwapchainCreateInfoKHR],
|
||||
|
@ -38,14 +39,17 @@ impl DisplaySwapchain {
|
|||
err_code.result_with_success(swapchains)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDisplaySwapchainFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDisplaySwapchainFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -17,6 +17,7 @@ impl DrawIndirectCount {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDrawIndexedIndirectCountKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_draw_indexed_indirect_count(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -39,6 +40,7 @@ impl DrawIndirectCount {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDrawIndirectCountKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_draw_indirect_count(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -60,10 +62,12 @@ impl DrawIndirectCount {
|
|||
);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDrawIndirectCountFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDrawIndirectCountFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -17,6 +17,7 @@ impl DynamicRendering {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBeginRenderingKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_begin_rendering(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -26,14 +27,17 @@ impl DynamicRendering {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdEndRenderingKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_end_rendering(&self, command_buffer: vk::CommandBuffer) {
|
||||
(self.fp.cmd_end_rendering_khr)(command_buffer)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrDynamicRenderingFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrDynamicRenderingFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,24 +20,29 @@ impl ExternalFenceFd {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkImportFenceFdKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn import_fence_fd(&self, import_info: &vk::ImportFenceFdInfoKHR) -> VkResult<()> {
|
||||
(self.fp.import_fence_fd_khr)(self.handle, import_info).result()
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetFenceFdKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_fence_fd(&self, get_info: &vk::FenceGetFdInfoKHR) -> VkResult<i32> {
|
||||
let mut fd = -1;
|
||||
(self.fp.get_fence_fd_khr)(self.handle, get_info, &mut fd).result_with_success(fd)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalFenceFdFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalFenceFdFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ impl ExternalFenceWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkImportFenceWin32HandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn import_fence_win32_handle(
|
||||
&self,
|
||||
import_info: &vk::ImportFenceWin32HandleInfoKHR,
|
||||
|
@ -30,6 +31,7 @@ impl ExternalFenceWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetFenceWin32HandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_fence_win32_handle(
|
||||
&self,
|
||||
get_info: &vk::FenceGetWin32HandleInfoKHR,
|
||||
|
@ -39,14 +41,17 @@ impl ExternalFenceWin32 {
|
|||
.result_with_success(handle)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalFenceWin32Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalFenceWin32Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,12 +20,14 @@ impl ExternalMemoryFd {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetMemoryFdKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_memory_fd(&self, create_info: &vk::MemoryGetFdInfoKHR) -> VkResult<i32> {
|
||||
let mut fd = -1;
|
||||
(self.fp.get_memory_fd_khr)(self.handle, create_info, &mut fd).result_with_success(fd)
|
||||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetMemoryFdPropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_memory_fd_properties(
|
||||
&self,
|
||||
handle_type: vk::ExternalMemoryHandleTypeFlags,
|
||||
|
@ -41,14 +43,17 @@ impl ExternalMemoryFd {
|
|||
.result_with_success(memory_fd_properties)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalMemoryFdFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalMemoryFdFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ impl ExternalMemoryWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetMemoryWin32HandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_memory_win32_handle(
|
||||
&self,
|
||||
create_info: &vk::MemoryGetWin32HandleInfoKHR,
|
||||
|
@ -32,6 +33,7 @@ impl ExternalMemoryWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetMemoryWin32HandlePropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_memory_win32_handle_properties(
|
||||
&self,
|
||||
handle_type: vk::ExternalMemoryHandleTypeFlags,
|
||||
|
@ -47,14 +49,17 @@ impl ExternalMemoryWin32 {
|
|||
.result_with_success(memory_win32_handle_properties)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalMemoryWin32Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalMemoryWin32Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl ExternalSemaphoreFd {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkImportSemaphoreFdKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn import_semaphore_fd(
|
||||
&self,
|
||||
import_info: &vk::ImportSemaphoreFdInfoKHR,
|
||||
|
@ -28,19 +29,23 @@ impl ExternalSemaphoreFd {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetSemaphoreFdKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_semaphore_fd(&self, get_info: &vk::SemaphoreGetFdInfoKHR) -> VkResult<i32> {
|
||||
let mut fd = -1;
|
||||
(self.fp.get_semaphore_fd_khr)(self.handle, get_info, &mut fd).result_with_success(fd)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalSemaphoreFdFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalSemaphoreFdFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -22,6 +22,7 @@ impl ExternalSemaphoreWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkImportSemaphoreWin32HandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn import_semaphore_win32_handle(
|
||||
&self,
|
||||
import_info: &vk::ImportSemaphoreWin32HandleInfoKHR,
|
||||
|
@ -30,6 +31,7 @@ impl ExternalSemaphoreWin32 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetSemaphoreWin32HandleKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_semaphore_win32_handle(
|
||||
&self,
|
||||
get_info: &vk::SemaphoreGetWin32HandleInfoKHR,
|
||||
|
@ -39,14 +41,17 @@ impl ExternalSemaphoreWin32 {
|
|||
.result_with_success(handle)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrExternalSemaphoreWin32Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrExternalSemaphoreWin32Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl GetMemoryRequirements2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetBufferMemoryRequirements2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_buffer_memory_requirements2(
|
||||
&self,
|
||||
info: &vk::BufferMemoryRequirementsInfo2KHR,
|
||||
|
@ -29,6 +30,7 @@ impl GetMemoryRequirements2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetImageMemoryRequirements2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_image_memory_requirements2(
|
||||
&self,
|
||||
info: &vk::ImageMemoryRequirementsInfo2KHR,
|
||||
|
@ -38,6 +40,7 @@ impl GetMemoryRequirements2 {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_image_sparse_memory_requirements2()`][Self::get_image_sparse_memory_requirements2()]
|
||||
#[inline]
|
||||
pub unsafe fn get_image_sparse_memory_requirements2_len(
|
||||
&self,
|
||||
info: &vk::ImageSparseMemoryRequirementsInfo2KHR,
|
||||
|
@ -56,6 +59,7 @@ impl GetMemoryRequirements2 {
|
|||
///
|
||||
/// Call [`get_image_sparse_memory_requirements2_len()`][Self::get_image_sparse_memory_requirements2_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_image_sparse_memory_requirements2(
|
||||
&self,
|
||||
info: &vk::ImageSparseMemoryRequirementsInfo2KHR,
|
||||
|
@ -71,14 +75,17 @@ impl GetMemoryRequirements2 {
|
|||
assert_eq!(count as usize, out.len());
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrGetMemoryRequirements2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrGetMemoryRequirements2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceFeatures2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_features2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -28,6 +29,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceFormatProperties2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_format_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -42,6 +44,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceImageFormatProperties2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_image_format_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -57,6 +60,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceMemoryProperties2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_memory_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -66,6 +70,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceProperties2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -75,6 +80,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_physical_device_queue_family_properties2()`][Self::get_physical_device_queue_family_properties2()]
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_queue_family_properties2_len(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -92,6 +98,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
///
|
||||
/// Call [`get_physical_device_queue_family_properties2_len()`][Self::get_physical_device_queue_family_properties2_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_queue_family_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -107,6 +114,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_physical_device_sparse_image_format_properties2()`][Self::get_physical_device_sparse_image_format_properties2()]
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_sparse_image_format_properties2_len(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -128,6 +136,7 @@ impl GetPhysicalDeviceProperties2 {
|
|||
///
|
||||
/// Call [`get_physical_device_sparse_image_format_properties2_len()`][Self::get_physical_device_sparse_image_format_properties2_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_sparse_image_format_properties2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -146,10 +155,12 @@ impl GetPhysicalDeviceProperties2 {
|
|||
assert_eq!(count as usize, out.len());
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrGetPhysicalDeviceProperties2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrGetPhysicalDeviceProperties2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl GetSurfaceCapabilities2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilities2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_capabilities2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -33,6 +34,7 @@ impl GetSurfaceCapabilities2 {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_physical_device_surface_formats2()`][Self::get_physical_device_surface_formats2()]
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_formats2_len(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -52,6 +54,7 @@ impl GetSurfaceCapabilities2 {
|
|||
///
|
||||
/// Call [`get_physical_device_surface_formats2_len()`][Self::get_physical_device_surface_formats2_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_formats2(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -69,10 +72,12 @@ impl GetSurfaceCapabilities2 {
|
|||
err_code.result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrGetSurfaceCapabilities2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrGetSurfaceCapabilities2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl Maintenance1 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkTrimCommandPoolKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn trim_command_pool(
|
||||
&self,
|
||||
command_pool: vk::CommandPool,
|
||||
|
@ -27,14 +28,17 @@ impl Maintenance1 {
|
|||
(self.fp.trim_command_pool_khr)(self.handle, command_pool, flags);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrMaintenance1Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrMaintenance1Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl Maintenance3 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDescriptorSetLayoutSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_descriptor_set_layout_support(
|
||||
&self,
|
||||
create_info: &vk::DescriptorSetLayoutCreateInfo,
|
||||
|
@ -27,14 +28,17 @@ impl Maintenance3 {
|
|||
(self.fp.get_descriptor_set_layout_support_khr)(self.handle, create_info, out);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrMaintenance3Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrMaintenance3Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl Maintenance4 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceBufferMemoryRequirementsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_buffer_memory_requirements(
|
||||
&self,
|
||||
create_info: &vk::DeviceBufferMemoryRequirementsKHR,
|
||||
|
@ -28,6 +29,7 @@ impl Maintenance4 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetDeviceImageMemoryRequirementsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_device_image_memory_requirements(
|
||||
&self,
|
||||
create_info: &vk::DeviceImageMemoryRequirementsKHR,
|
||||
|
@ -37,6 +39,7 @@ impl Maintenance4 {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_device_image_sparse_memory_requirements()`][Self::get_device_image_sparse_memory_requirements()]
|
||||
#[inline]
|
||||
pub unsafe fn get_device_image_sparse_memory_requirements_len(
|
||||
&self,
|
||||
create_info: &vk::DeviceImageMemoryRequirementsKHR,
|
||||
|
@ -55,6 +58,7 @@ impl Maintenance4 {
|
|||
///
|
||||
/// Call [`get_device_image_sparse_memory_requirements_len()`][Self::get_device_image_sparse_memory_requirements_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_device_image_sparse_memory_requirements(
|
||||
&self,
|
||||
create_info: &vk::DeviceImageMemoryRequirementsKHR,
|
||||
|
@ -70,14 +74,17 @@ impl Maintenance4 {
|
|||
assert_eq!(count as usize, out.len());
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrMaintenance4Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrMaintenance4Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl PipelineExecutableProperties {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineExecutableInternalRepresentationsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_pipeline_executable_internal_representations(
|
||||
&self,
|
||||
executable_info: &vk::PipelineExecutableInfoKHR,
|
||||
|
@ -35,6 +36,7 @@ impl PipelineExecutableProperties {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineExecutablePropertiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_pipeline_executable_properties(
|
||||
&self,
|
||||
pipeline_info: &vk::PipelineInfoKHR,
|
||||
|
@ -50,6 +52,7 @@ impl PipelineExecutableProperties {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPipelineExecutableStatisticsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_pipeline_executable_statistics(
|
||||
&self,
|
||||
executable_info: &vk::PipelineExecutableInfoKHR,
|
||||
|
@ -64,14 +67,17 @@ impl PipelineExecutableProperties {
|
|||
})
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrPipelineExecutablePropertiesFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrPipelineExecutablePropertiesFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl PresentWait {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkWaitForPresentKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn wait_for_present(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -29,14 +30,17 @@ impl PresentWait {
|
|||
(self.fp.wait_for_present_khr)(self.handle, swapchain, present_id, timeout).result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrPresentWaitFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrPresentWaitFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl PushDescriptor {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdPushDescriptorSetKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_push_descriptor_set(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -37,6 +38,7 @@ impl PushDescriptor {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdPushDescriptorSetWithTemplateKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_push_descriptor_set_with_template(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -54,10 +56,12 @@ impl PushDescriptor {
|
|||
);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrPushDescriptorFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrPushDescriptorFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl RayTracingPipeline {
|
|||
Self { handle, fp }
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub unsafe fn get_properties(
|
||||
instance: &Instance,
|
||||
pdevice: vk::PhysicalDevice,
|
||||
|
@ -33,6 +34,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdTraceRaysKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_trace_rays(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -57,6 +59,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateRayTracingPipelinesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_ray_tracing_pipelines(
|
||||
&self,
|
||||
deferred_operation: vk::DeferredOperationKHR,
|
||||
|
@ -78,6 +81,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetRayTracingShaderGroupHandlesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_ray_tracing_shader_group_handles(
|
||||
&self,
|
||||
pipeline: vk::Pipeline,
|
||||
|
@ -99,6 +103,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetRayTracingCaptureReplayShaderGroupHandlesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_ray_tracing_capture_replay_shader_group_handles(
|
||||
&self,
|
||||
pipeline: vk::Pipeline,
|
||||
|
@ -124,6 +129,7 @@ impl RayTracingPipeline {
|
|||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdTraceRaysIndirectKHR.html>
|
||||
///
|
||||
/// `indirect_device_address` is a buffer device address which is a pointer to a [`vk::TraceRaysIndirectCommandKHR`] structure containing the trace ray parameters.
|
||||
#[inline]
|
||||
pub unsafe fn cmd_trace_rays_indirect(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -144,6 +150,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetRayTracingShaderGroupStackSizeKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_ray_tracing_shader_group_stack_size(
|
||||
&self,
|
||||
pipeline: vk::Pipeline,
|
||||
|
@ -159,6 +166,7 @@ impl RayTracingPipeline {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetRayTracingPipelineStackSizeKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_ray_tracing_pipeline_stack_size(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -167,14 +175,17 @@ impl RayTracingPipeline {
|
|||
(self.fp.cmd_set_ray_tracing_pipeline_stack_size_khr)(command_buffer, pipeline_stack_size);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrRayTracingPipelineFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrRayTracingPipelineFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfaceSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_support(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -38,6 +39,7 @@ impl Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfacePresentModesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_present_modes(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -54,6 +56,7 @@ impl Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfaceCapabilitiesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_capabilities(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -69,6 +72,7 @@ impl Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSurfaceFormatsKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_surface_formats(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -80,6 +84,7 @@ impl Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroySurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_surface(
|
||||
&self,
|
||||
surface: vk::SurfaceKHR,
|
||||
|
@ -88,14 +93,17 @@ impl Surface {
|
|||
(self.fp.destroy_surface_khr)(self.handle, surface, allocation_callbacks.as_raw_ptr());
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -23,6 +23,7 @@ impl Swapchain {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateSwapchainKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_swapchain(
|
||||
&self,
|
||||
create_info: &vk::SwapchainCreateInfoKHR,
|
||||
|
@ -39,6 +40,7 @@ impl Swapchain {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroySwapchainKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_swapchain(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -48,6 +50,7 @@ impl Swapchain {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetSwapchainImagesKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_swapchain_images(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -60,6 +63,7 @@ impl Swapchain {
|
|||
/// On success, returns the next image's index and whether the swapchain is suboptimal for the surface.
|
||||
///
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkAcquireNextImageKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn acquire_next_image(
|
||||
&self,
|
||||
swapchain: vk::SwapchainKHR,
|
||||
|
@ -86,6 +90,7 @@ impl Swapchain {
|
|||
/// On success, returns whether the swapchain is suboptimal for the surface.
|
||||
///
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkQueuePresentKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn queue_present(
|
||||
&self,
|
||||
queue: vk::Queue,
|
||||
|
@ -108,6 +113,7 @@ impl Swapchain {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_present_capabilities(
|
||||
&self,
|
||||
device_group_present_capabilities: &mut vk::DeviceGroupPresentCapabilitiesKHR,
|
||||
|
@ -128,6 +134,7 @@ impl Swapchain {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_device_group_surface_present_modes(
|
||||
&self,
|
||||
surface: vk::SurfaceKHR,
|
||||
|
@ -146,6 +153,7 @@ impl Swapchain {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_surface`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_surface.html
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_present_rectangles(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -172,6 +180,7 @@ impl Swapchain {
|
|||
///
|
||||
/// [Vulkan 1.1]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_VERSION_1_1.html
|
||||
/// [`VK_KHR_swapchain`]: https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/VK_KHR_swapchain.html
|
||||
#[inline]
|
||||
pub unsafe fn acquire_next_image2(
|
||||
&self,
|
||||
acquire_info: &vk::AcquireNextImageInfoKHR,
|
||||
|
@ -185,14 +194,17 @@ impl Swapchain {
|
|||
}
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrSwapchainFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrSwapchainFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdPipelineBarrier2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_pipeline_barrier2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -27,6 +28,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdResetEvent2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_reset_event2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -37,6 +39,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetEvent2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_event2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -47,6 +50,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdWaitEvents2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_wait_events2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -63,6 +67,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdWriteTimestamp2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_write_timestamp2(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -74,6 +79,7 @@ impl Synchronization2 {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkQueueSubmit2KHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn queue_submit2(
|
||||
&self,
|
||||
queue: vk::Queue,
|
||||
|
@ -83,10 +89,12 @@ impl Synchronization2 {
|
|||
(self.fp.queue_submit2_khr)(queue, submits.len() as u32, submits.as_ptr(), fence).result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrSynchronization2Fn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrSynchronization2Fn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl TimelineSemaphore {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetSemaphoreCounterValue.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_semaphore_counter_value(&self, semaphore: vk::Semaphore) -> VkResult<u64> {
|
||||
let mut value = 0;
|
||||
(self.fp.get_semaphore_counter_value_khr)(self.handle, semaphore, &mut value)
|
||||
|
@ -27,6 +28,7 @@ impl TimelineSemaphore {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkWaitSemaphores.html>
|
||||
#[inline]
|
||||
pub unsafe fn wait_semaphores(
|
||||
&self,
|
||||
wait_info: &vk::SemaphoreWaitInfo,
|
||||
|
@ -36,18 +38,22 @@ impl TimelineSemaphore {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkSignalSemaphore.html>
|
||||
#[inline]
|
||||
pub unsafe fn signal_semaphore(&self, signal_info: &vk::SemaphoreSignalInfo) -> VkResult<()> {
|
||||
(self.fp.signal_semaphore_khr)(self.handle, signal_info).result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrTimelineSemaphoreFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrTimelineSemaphoreFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl WaylandSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateWaylandSurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_wayland_surface(
|
||||
&self,
|
||||
create_info: &vk::WaylandSurfaceCreateInfoKHR,
|
||||
|
@ -37,6 +38,7 @@ impl WaylandSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceWaylandPresentationSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_wayland_presentation_support(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -52,14 +54,17 @@ impl WaylandSurface {
|
|||
b > 0
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrWaylandSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrWaylandSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl Win32Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateWin32SurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_win32_surface(
|
||||
&self,
|
||||
create_info: &vk::Win32SurfaceCreateInfoKHR,
|
||||
|
@ -37,6 +38,7 @@ impl Win32Surface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceWin32PresentationSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_win32_presentation_support(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -50,14 +52,17 @@ impl Win32Surface {
|
|||
b > 0
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrWin32SurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrWin32SurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl XcbSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateXcbSurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_xcb_surface(
|
||||
&self,
|
||||
create_info: &vk::XcbSurfaceCreateInfoKHR,
|
||||
|
@ -37,6 +38,7 @@ impl XcbSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceXcbPresentationSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_xcb_presentation_support(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -54,14 +56,17 @@ impl XcbSurface {
|
|||
b > 0
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrXcbSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrXcbSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl XlibSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateXlibSurfaceKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_xlib_surface(
|
||||
&self,
|
||||
create_info: &vk::XlibSurfaceCreateInfoKHR,
|
||||
|
@ -37,6 +38,7 @@ impl XlibSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceXlibPresentationSupportKHR.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_xlib_presentation_support(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -54,14 +56,17 @@ impl XlibSurface {
|
|||
b > 0
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::KhrXlibSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::KhrXlibSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl IOSSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateIOSSurfaceMVK.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_ios_surface(
|
||||
&self,
|
||||
create_info: &vk::IOSSurfaceCreateInfoMVK,
|
||||
|
@ -36,14 +37,17 @@ impl IOSSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::MvkIosSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::MvkIosSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl MacOSSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateMacOSSurfaceMVK.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_mac_os_surface(
|
||||
&self,
|
||||
create_info: &vk::MacOSSurfaceCreateInfoMVK,
|
||||
|
@ -36,14 +37,17 @@ impl MacOSSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::MvkMacosSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::MvkMacosSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -21,6 +21,7 @@ impl ViSurface {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateViSurfaceNN.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_vi_surface(
|
||||
&self,
|
||||
create_info: &vk::ViSurfaceCreateInfoNN,
|
||||
|
@ -36,14 +37,17 @@ impl ViSurface {
|
|||
.result_with_success(surface)
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::NnViSurfaceFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::NnViSurfaceFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn instance(&self) -> vk::Instance {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl CoverageReductionMode {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_physical_device_supported_framebuffer_mixed_samples_combinations()`][Self::get_physical_device_supported_framebuffer_mixed_samples_combinations()]
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_supported_framebuffer_mixed_samples_combinations_len(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -38,6 +39,7 @@ impl CoverageReductionMode {
|
|||
///
|
||||
/// Call [`get_physical_device_supported_framebuffer_mixed_samples_combinations_len()`][Self::get_physical_device_supported_framebuffer_mixed_samples_combinations_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_supported_framebuffer_mixed_samples_combinations(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -56,10 +58,12 @@ impl CoverageReductionMode {
|
|||
Ok(())
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::NvCoverageReductionModeFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::NvCoverageReductionModeFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@ impl DeviceDiagnosticCheckpoints {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdSetCheckpointNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_set_checkpoint(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -28,6 +29,7 @@ impl DeviceDiagnosticCheckpoints {
|
|||
}
|
||||
|
||||
/// Retrieve the number of elements to pass to [`get_queue_checkpoint_data()`][Self::get_queue_checkpoint_data()]
|
||||
#[inline]
|
||||
pub unsafe fn get_queue_checkpoint_data_len(&self, queue: vk::Queue) -> usize {
|
||||
let mut count = 0;
|
||||
(self.fp.get_queue_checkpoint_data_nv)(queue, &mut count, std::ptr::null_mut());
|
||||
|
@ -38,6 +40,7 @@ impl DeviceDiagnosticCheckpoints {
|
|||
///
|
||||
/// Call [`get_queue_checkpoint_data_len()`][Self::get_queue_checkpoint_data_len()] to query the number of elements to pass to `out`.
|
||||
/// Be sure to [`Default::default()`]-initialize these elements and optionally set their `p_next` pointer.
|
||||
#[inline]
|
||||
pub unsafe fn get_queue_checkpoint_data(
|
||||
&self,
|
||||
queue: vk::Queue,
|
||||
|
@ -48,10 +51,12 @@ impl DeviceDiagnosticCheckpoints {
|
|||
assert_eq!(count as usize, out.len());
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::NvDeviceDiagnosticCheckpointsFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::NvDeviceDiagnosticCheckpointsFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -17,6 +17,7 @@ impl MeshShader {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDrawMeshTasksNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_draw_mesh_tasks(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -27,6 +28,7 @@ impl MeshShader {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDrawMeshTasksIndirectNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_draw_mesh_tasks_indirect(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -45,6 +47,7 @@ impl MeshShader {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdDrawMeshTasksIndirectCountNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_draw_mesh_tasks_indirect_count(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -66,10 +69,12 @@ impl MeshShader {
|
|||
);
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::NvMeshShaderFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::NvMeshShaderFn {
|
||||
&self.fp
|
||||
}
|
||||
|
|
|
@ -20,6 +20,7 @@ impl RayTracing {
|
|||
Self { handle, fp }
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub unsafe fn get_properties(
|
||||
instance: &Instance,
|
||||
pdevice: vk::PhysicalDevice,
|
||||
|
@ -33,6 +34,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateAccelerationStructureNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_acceleration_structure(
|
||||
&self,
|
||||
create_info: &vk::AccelerationStructureCreateInfoNV,
|
||||
|
@ -49,6 +51,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkDestroyAccelerationStructureNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn destroy_acceleration_structure(
|
||||
&self,
|
||||
accel_struct: vk::AccelerationStructureNV,
|
||||
|
@ -62,6 +65,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetAccelerationStructureMemoryRequirementsNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_acceleration_structure_memory_requirements(
|
||||
&self,
|
||||
info: &vk::AccelerationStructureMemoryRequirementsInfoNV,
|
||||
|
@ -76,6 +80,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkBindAccelerationStructureMemoryNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn bind_acceleration_structure_memory(
|
||||
&self,
|
||||
bind_info: &[vk::BindAccelerationStructureMemoryInfoNV],
|
||||
|
@ -89,6 +94,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdBuildAccelerationStructureNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_build_acceleration_structure(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -115,6 +121,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdCopyAccelerationStructureNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_copy_acceleration_structure(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -126,6 +133,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdTraceRaysNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_trace_rays(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -164,6 +172,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCreateRayTracingPipelinesNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn create_ray_tracing_pipelines(
|
||||
&self,
|
||||
pipeline_cache: vk::PipelineCache,
|
||||
|
@ -183,6 +192,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetRayTracingShaderGroupHandlesNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_ray_tracing_shader_group_handles(
|
||||
&self,
|
||||
pipeline: vk::Pipeline,
|
||||
|
@ -202,6 +212,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetAccelerationStructureHandleNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_acceleration_structure_handle(
|
||||
&self,
|
||||
accel_struct: vk::AccelerationStructureNV,
|
||||
|
@ -218,6 +229,7 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCmdWriteAccelerationStructuresPropertiesNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn cmd_write_acceleration_structures_properties(
|
||||
&self,
|
||||
command_buffer: vk::CommandBuffer,
|
||||
|
@ -237,18 +249,22 @@ impl RayTracing {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkCompileDeferredNV.html>
|
||||
#[inline]
|
||||
pub unsafe fn compile_deferred(&self, pipeline: vk::Pipeline, shader: u32) -> VkResult<()> {
|
||||
(self.fp.compile_deferred_nv)(self.handle, pipeline, shader).result()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub const fn name() -> &'static CStr {
|
||||
vk::NvRayTracingFn::name()
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn fp(&self) -> &vk::NvRayTracingFn {
|
||||
&self.fp
|
||||
}
|
||||
|
||||
#[inline]
|
||||
pub fn device(&self) -> vk::Device {
|
||||
self.handle
|
||||
}
|
||||
|
|
|
@ -440,6 +440,7 @@ impl Instance {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceQueueFamilyProperties.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_queue_family_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
@ -468,6 +469,7 @@ impl Instance {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkEnumeratePhysicalDevices.html>
|
||||
#[inline]
|
||||
pub unsafe fn enumerate_physical_devices(&self) -> VkResult<Vec<vk::PhysicalDevice>> {
|
||||
read_into_uninitialized_vector(|count, data| {
|
||||
(self.instance_fn_1_0.enumerate_physical_devices)(self.handle(), count, data)
|
||||
|
@ -475,6 +477,7 @@ impl Instance {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkEnumerateDeviceExtensionProperties.html>
|
||||
#[inline]
|
||||
pub unsafe fn enumerate_device_extension_properties(
|
||||
&self,
|
||||
device: vk::PhysicalDevice,
|
||||
|
@ -490,6 +493,7 @@ impl Instance {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkEnumerateDeviceLayerProperties.html>
|
||||
#[inline]
|
||||
pub unsafe fn enumerate_device_layer_properties(
|
||||
&self,
|
||||
device: vk::PhysicalDevice,
|
||||
|
@ -500,6 +504,7 @@ impl Instance {
|
|||
}
|
||||
|
||||
/// <https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkGetPhysicalDeviceSparseImageFormatProperties.html>
|
||||
#[inline]
|
||||
pub unsafe fn get_physical_device_sparse_image_format_properties(
|
||||
&self,
|
||||
physical_device: vk::PhysicalDevice,
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -1028,6 +1028,7 @@ pub fn generate_extension_commands<'a>(
|
|||
let byte_name_ident = Literal::byte_string(format!("{}\0", extension_name).as_bytes());
|
||||
let extension_cstr = quote! {
|
||||
impl #ident {
|
||||
#[inline]
|
||||
pub const fn name() -> &'static ::std::ffi::CStr {
|
||||
unsafe { ::std::ffi::CStr::from_bytes_with_nul_unchecked(#byte_name_ident) }
|
||||
}
|
||||
|
@ -1332,7 +1333,9 @@ pub fn generate_enum<'a>(
|
|||
#struct_attribute
|
||||
pub struct #ident(pub(crate) i32);
|
||||
impl #ident {
|
||||
#[inline]
|
||||
pub const fn from_raw(x: i32) -> Self { Self(x) }
|
||||
#[inline]
|
||||
pub const fn as_raw(self) -> i32 { self.0 }
|
||||
}
|
||||
#impl_block
|
||||
|
|
Loading…
Reference in a new issue