pub trait VkHandle {
type Handle;
// Required method
fn native_ptr(&self) -> Self::Handle;
// Provided method
fn as_transparent_ref(&self) -> VkHandleRef<'_, Self::Handle> { ... }
}
Expand description
Wrapping a Vulkan Dispatchable/Nondispatchable Handler
Required Associated Types§
Required Methods§
Sourcefn native_ptr(&self) -> Self::Handle
fn native_ptr(&self) -> Self::Handle
Retrieve an underlying handle
Provided Methods§
fn as_transparent_ref(&self) -> VkHandleRef<'_, Self::Handle>
Implementations on Foreign Types§
Source§impl<T> VkHandle for ManuallyDrop<T>where
T: VkHandle,
impl<T> VkHandle for ManuallyDrop<T>where
T: VkHandle,
Implementors§
Source§impl VkHandle for DisplayMode
Available on crate feature VK_KHR_display
only.
impl VkHandle for DisplayMode
Available on crate feature
VK_KHR_display
only.type Handle = VkDisplayModeKHR
Source§impl VkHandle for InstanceObject
impl VkHandle for InstanceObject
type Handle = VkInstance
Source§impl<'r, Device: VkHandle<Handle = VkDevice>> VkHandle for FramebufferObject<'r, Device>
impl<'r, Device: VkHandle<Handle = VkDevice>> VkHandle for FramebufferObject<'r, Device>
type Handle = VkFramebuffer
Source§impl<Buffer: DeviceChildHandle> VkHandle for BufferViewObject<Buffer>
impl<Buffer: DeviceChildHandle> VkHandle for BufferViewObject<Buffer>
type Handle = VkBufferView
Source§impl<Device> VkHandle for CommandBufferObject<Device>
impl<Device> VkHandle for CommandBufferObject<Device>
type Handle = VkCommandBuffer
Source§impl<Device: Device> VkHandle for DescriptorUpdateTemplateObject<Device>
Available on crate feature VK_KHR_descriptor_update_template
only.
impl<Device: Device> VkHandle for DescriptorUpdateTemplateObject<Device>
Available on crate feature
VK_KHR_descriptor_update_template
only.Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for DeviceMemoryObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for DeviceMemoryObject<Device>
type Handle = VkDeviceMemory
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for CommandPoolObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for CommandPoolObject<Device>
type Handle = VkCommandPool
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for DescriptorPoolObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for DescriptorPoolObject<Device>
type Handle = VkDescriptorPool
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineCacheObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineCacheObject<Device>
type Handle = VkPipelineCache
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineLayoutObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineLayoutObject<Device>
type Handle = VkPipelineLayout
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for PipelineObject<Device>
type Handle = VkPipeline
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for QueryPoolObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for QueryPoolObject<Device>
type Handle = VkQueryPool
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for RenderPassObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for RenderPassObject<Device>
type Handle = VkRenderPass
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for SemaphoreObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for SemaphoreObject<Device>
type Handle = VkSemaphore
Source§impl<Device: VkHandle<Handle = VkDevice>> VkHandle for ShaderModuleObject<Device>
impl<Device: VkHandle<Handle = VkDevice>> VkHandle for ShaderModuleObject<Device>
type Handle = VkShaderModule
Source§impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandle for SurfaceSwapchainObject<Device, Surface>
impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandle for SurfaceSwapchainObject<Device, Surface>
type Handle = VkSwapchainKHR
Source§impl<Image: DeviceChildHandle> VkHandle for ImageViewObject<Image>
impl<Image: DeviceChildHandle> VkHandle for ImageViewObject<Image>
type Handle = VkImageView
Source§impl<Instance: Instance + InstanceExtensions> VkHandle for DebugReportCallbackObject<Instance>
Available on crate feature VK_EXT_debug_report
only.
impl<Instance: Instance + InstanceExtensions> VkHandle for DebugReportCallbackObject<Instance>
Available on crate feature
VK_EXT_debug_report
only.Source§impl<Instance: Instance + InstanceExtensions> VkHandle for DebugUtilsMessengerObject<Instance>
Available on crate feature VK_EXT_debug_utils
only.
impl<Instance: Instance + InstanceExtensions> VkHandle for DebugUtilsMessengerObject<Instance>
Available on crate feature
VK_EXT_debug_utils
only.Source§impl<Instance: Instance> VkHandle for SurfaceObject<Instance>
impl<Instance: Instance> VkHandle for SurfaceObject<Instance>
type Handle = VkSurfaceKHR
Source§impl<Owner: Instance> VkHandle for PhysicalDeviceObject<Owner>
impl<Owner: Instance> VkHandle for PhysicalDeviceObject<Owner>
type Handle = VkPhysicalDevice
Source§impl<PhysicalDevice: PhysicalDevice> VkHandle for Display<PhysicalDevice>
Available on crate feature VK_KHR_display
only.
impl<PhysicalDevice: PhysicalDevice> VkHandle for Display<PhysicalDevice>
Available on crate feature
VK_KHR_display
only.