rendy_graph

Trait Node

Source
pub trait Node<B: Backend, T: ?Sized>:
    for<'a> NodeSubmittable<'a, B>
    + Debug
    + Sized
    + Sync
    + Send
    + 'static {
    type Capability: Capability;

    // Required methods
    fn run<'a>(
        &'a mut self,
        ctx: &GraphContext<B>,
        factory: &Factory<B>,
        aux: &T,
        frames: &'a Frames<B>,
    ) -> <Self as NodeSubmittable<'a, B>>::Submittables;
    unsafe fn dispose(self, factory: &mut Factory<B>, aux: &T);
}
Expand description

The node is building block of the framegraph. Node defines set of resources and operations to perform over them. Read-only data for operations comes from auxiliary data source T.

§Parameters

B - backend type. T - auxiliary data type.

Required Associated Types§

Source

type Capability: Capability

Capability required by node. Graph will execute this node on command queue that supports this capability level.

Required Methods§

Source

fn run<'a>( &'a mut self, ctx: &GraphContext<B>, factory: &Factory<B>, aux: &T, frames: &'a Frames<B>, ) -> <Self as NodeSubmittable<'a, B>>::Submittables

Record commands required by node. Returned submits are guaranteed to be submitted within specified frame.

Source

unsafe fn dispose(self, factory: &mut Factory<B>, aux: &T)

Dispose of the node.

§Safety

Must be called after waiting for device idle.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§