Skip to main content

Image

Trait Image 

Source
pub trait Image: VkHandle<Handle = VkImage> + DeviceChildHandle {
    // Required methods
    fn format(&self) -> VkFormat;
    fn size(&self) -> &VkExtent3D;
    fn dimension(&self) -> VkImageViewType;

    // Provided methods
    fn sparse_requirement_count(&self) -> u32 { ... }
    fn sparse_requirements(
        &self,
        sink: &mut [MaybeUninit<VkSparseImageMemoryRequirements>],
    ) -> u32 { ... }
    fn sparse_requirements_alloc(&self) -> Vec<VkSparseImageMemoryRequirements> { ... }
    fn layout_info(&self, subresource: &ImageSubresource) -> VkSubresourceLayout { ... }
    fn memory_barrier(
        &self,
        subresource_range: ImageSubresourceRange,
        trans: LayoutTransition,
    ) -> ImageMemoryBarrier { ... }
    fn memory_barrier2<'r>(
        &'r self,
        subresource_range: ImageSubresourceRange,
    ) -> ImageMemoryBarrier2<'r> { ... }
}

Required Methods§

Source

fn format(&self) -> VkFormat

The pixel format of an image

Source

fn size(&self) -> &VkExtent3D

The size of an image

Source

fn dimension(&self) -> VkImageViewType

Provided Methods§

Source

fn sparse_requirement_count(&self) -> u32

Query a count of the memory requirements for a sparse image

Source

fn sparse_requirements( &self, sink: &mut [MaybeUninit<VkSparseImageMemoryRequirements>], ) -> u32

Query the memory requirements for a sparse image

Source

fn sparse_requirements_alloc(&self) -> Vec<VkSparseImageMemoryRequirements>

Query the memory requirements for a sparse image

Source

fn layout_info(&self, subresource: &ImageSubresource) -> VkSubresourceLayout

Retrieve information about an image subresource

Source

fn memory_barrier( &self, subresource_range: ImageSubresourceRange, trans: LayoutTransition, ) -> ImageMemoryBarrier

Source

fn memory_barrier2<'r>( &'r self, subresource_range: ImageSubresourceRange, ) -> ImageMemoryBarrier2<'r>

Implementations on Foreign Types§

Source§

impl<'s, T> Image for &'s T
where T: Image + ?Sized,

Source§

impl<'s, T> Image for &'s mut T
where T: Image + ?Sized,

Source§

impl<T> Image for Box<T>
where T: Image + ?Sized,

Source§

impl<T> Image for Rc<T>
where T: Image + ?Sized,

Source§

impl<T> Image for Arc<T>
where T: Image + ?Sized,

Source§

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

Source§

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

Source§

impl<T> Image for ManuallyDrop<T>
where T: Image,

Source§

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

Source§

impl<T> Image for RwLockReadGuard<'_, T>
where T: Image + ?Sized,

Source§

impl<T> Image for RwLockWriteGuard<'_, T>
where T: Image + ?Sized,

Source§

impl<T> Image for MappedMutexGuard<'_, T>
where T: Image + ?Sized,

Source§

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

Source§

impl<T> Image for MappedRwLockReadGuard<'_, T>
where T: Image + ?Sized,

Source§

impl<T> Image for MappedRwLockWriteGuard<'_, T>
where T: Image + ?Sized,

Source§

impl<T> Image for RwLockReadGuard<'_, T>
where T: Image + ?Sized,

Source§

impl<T> Image for RwLockWriteGuard<'_, T>
where T: Image + ?Sized,

Implementors§

Source§

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

Source§

impl<Swapchain: Swapchain> Image for SwapchainImage<Swapchain>