Trait VkObject

Source
pub trait VkObject: VkHandle {
    const TYPE: VkObjectType;
}
Expand description

An object in Vulkan

Required Associated Constants§

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T: VkObject + ?Sized> VkObject for &T

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for &mut T

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for Rc<T>

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for Arc<T>

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for Ref<'_, T>

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for RefMut<'_, T>

Source§

const TYPE: VkObjectType = T::TYPE

Source§

impl<T: VkObject + ?Sized> VkObject for MutexGuard<'_, T>

Source§

const TYPE: VkObjectType = T::TYPE

Implementors§

Source§

impl VkObject for InstanceObject

Source§

impl<'r, Device: VkHandle<Handle = VkDevice>> VkObject for FramebufferObject<'r, Device>

Source§

const TYPE: VkObjectType = 24i32

Source§

impl<Buffer: DeviceChildHandle> VkObject for BufferViewObject<Buffer>

Source§

const TYPE: VkObjectType = 13i32

Source§

impl<Device> VkObject for CommandBufferObject<Device>

Source§

impl<Device> VkObject for QueueObject<Device>

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for BufferObject<Device>

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for DeviceMemoryObject<Device>

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for ImageObject<Device>

Source§

const TYPE: VkObjectType = 10i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for SamplerObject<Device>

Source§

const TYPE: VkObjectType = 21i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for CommandPoolObject<Device>

Source§

const TYPE: VkObjectType = 25i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for DescriptorPoolObject<Device>

Source§

const TYPE: VkObjectType = 22i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for DescriptorSetLayoutObject<Device>

Source§

const TYPE: VkObjectType = 20i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for EventObject<Device>

Source§

const TYPE: VkObjectType = 11i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for FenceObject<Device>

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for PipelineCacheObject<Device>

Source§

const TYPE: VkObjectType = 16i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for PipelineLayoutObject<Device>

Source§

const TYPE: VkObjectType = 17i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for PipelineObject<Device>

Source§

const TYPE: VkObjectType = 19i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for QueryPoolObject<Device>

Source§

const TYPE: VkObjectType = 12i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for RenderPassObject<Device>

Source§

const TYPE: VkObjectType = 18i32

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for SemaphoreObject<Device>

Source§

impl<Device: VkHandle<Handle = VkDevice>> VkObject for ShaderModuleObject<Device>

Source§

const TYPE: VkObjectType = 15i32

Source§

impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkObject for SurfaceSwapchainObject<Device, Surface>

Source§

const TYPE: VkObjectType = 1_000_001_000i32

Source§

impl<Image: DeviceChildHandle> VkObject for ImageViewObject<Image>

Source§

const TYPE: VkObjectType = 14i32

Source§

impl<Instance> VkObject for DeviceObject<Instance>

Source§

impl<Instance: Instance> VkObject for SurfaceObject<Instance>

Source§

const TYPE: VkObjectType = 1_000_000_000i32

Source§

impl<Owner: Instance> VkObject for PhysicalDeviceObject<Owner>

Source§

impl<Swapchain> VkObject for SwapchainImage<Swapchain>

Source§

const TYPE: VkObjectType = 10i32