[][src]Struct rendy_resource::Image

pub struct Image<B: Backend> { /* fields omitted */ }

Generic image resource wrapper.

Parameters

B - raw image type.

Methods

impl<B> Image<B> where
    B: Backend, 

pub fn device_id(&self) -> DeviceId

Get owned id.

pub fn assert_device_owner(&self, device: &Device<B>)

Assert specified device is owner.

pub fn instance_id(&self) -> InstanceId

Get owned id.

pub fn assert_instance_owner(&self, instance: &Instance<B>)

Assert specified instance is owner.

impl<B> Image<B> where
    B: Backend, 
[src]

pub unsafe fn create(
    device: &Device<B>,
    heaps: &mut Heaps<B>,
    info: ImageInfo,
    memory_usage: impl MemoryUsage
) -> Result<Self, ImageCreationError>
[src]

Create image.

Safety

In order to guarantee that Heap::allocate will return memory range owned by this Device, this Heaps instance must always be used with this Device instance.

Otherwise usage of hal methods must be always valid.

pub unsafe fn create_from_swapchain(
    device: DeviceId,
    info: ImageInfo,
    raw: B::Image
) -> Self
[src]

Create image handler for swapchain image.

pub unsafe fn dispose(self, device: &Device<B>, heaps: &mut Heaps<B>)[src]

Destroy image resource.

pub unsafe fn dispose_swapchain_image(self, device: DeviceId)[src]

Drop image wrapper for swapchain image.

pub fn raw(&self) -> &B::Image[src]

Get reference for raw image resource.

pub unsafe fn raw_mut(&mut self) -> &mut B::Image[src]

Get mutable reference for raw image resource.

pub fn block(&self) -> Option<&MemoryBlock<B>>[src]

Get reference to memory block occupied by image.

pub unsafe fn block_mut(&mut self) -> Option<&mut MemoryBlock<B>>[src]

Get mutable reference to memory block occupied by image.

pub fn info(&self) -> &ImageInfo[src]

Get image info.

pub fn kind(&self) -> Kind[src]

Get Kind of the image.

pub fn format(&self) -> Format[src]

Get Format of the image.

pub fn levels(&self) -> u8[src]

Get levels count of the image.

pub fn layers(&self) -> u16[src]

Get layers count of the image.

Trait Implementations

impl<B: Debug + Backend> Debug for Image<B> where
    B::Image: Debug
[src]

Auto Trait Implementations

impl<B> Send for Image<B> where
    <B as Backend>::Image: Send

impl<B> Sync for Image<B> where
    <B as Backend>::Image: Sync

impl<B> Unpin for Image<B> where
    <B as Backend>::Image: Unpin,
    <B as Backend>::Memory: Unpin

impl<B> UnwindSafe for Image<B> where
    <B as Backend>::Image: UnwindSafe,
    <B as Backend>::Memory: RefUnwindSafe + UnwindSafe

impl<B> RefUnwindSafe for Image<B> where
    <B as Backend>::Image: RefUnwindSafe,
    <B as Backend>::Memory: RefUnwindSafe

Blanket Implementations

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> From<T> for T[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]