[]Struct amethyst_rendy::rendy::memory::Heaps

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

Heaps available on particular physical device.


impl<B> Heaps<B> where
    B: Backend

pub unsafe fn new<P, H>(types: P, heaps: H) -> Heaps<B> where
    H: IntoIterator<Item = u64>,
    P: IntoIterator<Item = (Properties, u32, HeapsConfig)>, 

This must be called with gfx_hal::memory::Properties fetched from physical device.

pub fn allocate(
    &mut self,
    device: &<B as Backend>::Device,
    mask: u32,
    usage: impl MemoryUsage,
    size: u64,
    align: u64
) -> Result<MemoryBlock<B>, HeapsError>

Allocate memory block from one of memory types specified by mask, for intended usage, with size and align requirements.

pub fn free(&mut self, device: &<B as Backend>::Device, block: MemoryBlock<B>)

Free memory block.

Memory block must be allocated from this heap.

pub fn dispose(self, device: &<B as Backend>::Device)

Dispose of allocator. Cleanup allocators before dropping. Will panic if memory instances are left allocated.

pub fn utilization(&self) -> TotalMemoryUtilization

Get memory utilization.

Trait Implementations

impl<B> Debug for Heaps<B> where
    B: Debug + Backend

Auto Trait Implementations

impl<B> RefUnwindSafe for Heaps<B> where
    <B as Backend>::Memory: RefUnwindSafe

impl<B> Send for Heaps<B>

impl<B> Sync for Heaps<B>

impl<B> Unpin for Heaps<B>

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

Blanket Implementations

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
    D: AdaptFrom<S, Swp, Dwp, T>,
    Dwp: WhitePoint,
    Swp: WhitePoint,
    T: Component + Float

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

impl<T> Any for T where
    T: Any

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

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

impl<T> Event for T where
    T: Send + Sync + 'static, 

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

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

impl<T> Resource for T where
    T: Any + Send + Sync

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SetParameter for T

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> Supports<T> for T

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

type Error = Infallible

The type returned in the event of a conversion error.

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

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

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,