[][src]Struct rendy_resource::ResourceTracker

pub struct ResourceTracker<T> { /* fields omitted */ }

Resource handler.

Methods

impl<T> ResourceTracker<T>[src]

pub fn new() -> Self[src]

Create new resource manager.

pub fn escape(&self, resource: T) -> Escape<T> where
    T: Sized
[src]

Wrap resource instance into Escape.

pub fn handle(&self, resource: T) -> Handle<T> where
    T: Sized
[src]

Wrap resource instance into Handle.

pub fn cleanup(
    &mut self,
    dispose: impl FnMut(T),
    next: &Epochs,
    complete: &Epochs
)
[src]

Cleanup dropped resources.

Safety

next epochs must contain epoch indices that aren't started yet complete epochs must contain epoch indices that are complete. Can be guaranteed with fence wait.

pub fn dispose(&mut self, dispose: impl FnMut(T))[src]

Cleanup all dropped resources.

Safety

All dropped resources must be unused. Can be guaranteed with device idle wait.

Trait Implementations

impl<T> Default for ResourceTracker<T>[src]

impl<T: Debug> Debug for ResourceTracker<T>[src]

Auto Trait Implementations

impl<T> Send for ResourceTracker<T> where
    T: Send

impl<T> Sync for ResourceTracker<T> where
    T: Send + Sync

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> BorrowMut<T> for T where
    T: ?Sized
[src]

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

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

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

impl<T> Erased for T