rendy_resource

Struct Image

Source
pub struct Image<B: Backend> { /* private fields */ }
Expand description

Generic image resource wrapper.

§Parameters

B - raw image type.

Implementations§

Source§

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

Source

pub fn device_id(&self) -> DeviceId

Get owned id.

Source

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

Assert specified device is owner.

Source

pub fn instance_id(&self) -> InstanceId

Get owned id.

Source

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

Assert specified instance is owner.

Source§

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

Source

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

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.

Source

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

Create image handler for swapchain image.

Source

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

Destroy image resource.

Source

pub unsafe fn dispose_swapchain_image(self, device: DeviceId)

Drop image wrapper for swapchain image.

Source

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

Get reference for raw image resource.

Source

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

Get mutable reference for raw image resource.

Source

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

Get reference to memory block occupied by image.

Source

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

Get mutable reference to memory block occupied by image.

Source

pub fn info(&self) -> &ImageInfo

Get image info.

Source

pub fn kind(&self) -> Kind

Get Kind of the image.

Source

pub fn format(&self) -> Format

Get Format of the image.

Source

pub fn levels(&self) -> u8

Get levels count of the image.

Source

pub fn layers(&self) -> u16

Get layers count of the image.

Trait Implementations§

Source§

impl<B: Debug + Backend> Debug for Image<B>
where B::Image: Debug,

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more

Auto Trait Implementations§

§

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

§

impl<B> RefUnwindSafe for Image<B>

§

impl<B> Send for Image<B>

§

impl<B> Sync for Image<B>

§

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

§

impl<B> UnwindSafe for Image<B>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.