pub trait NodeDesc<B: Backend, T: ?Sized>:
Debug
+ Sized
+ 'static {
type Node: Node<B, T>;
// Required method
fn build<'a>(
self,
ctx: &GraphContext<B>,
factory: &mut Factory<B>,
family: &mut Family<B>,
queue: usize,
aux: &T,
buffers: Vec<NodeBuffer>,
images: Vec<NodeImage>,
) -> Result<Self::Node, NodeBuildError>;
// Provided methods
fn builder(self) -> DescBuilder<B, T, Self> { ... }
fn buffers(&self) -> Vec<BufferAccess> { ... }
fn images(&self) -> Vec<ImageAccess> { ... }
}
Expand description
Description of the node. Implementation of the builder type provide framegraph with static information about node that is used for building the node.
Required Associated Types§
Required Methods§
Sourcefn build<'a>(
self,
ctx: &GraphContext<B>,
factory: &mut Factory<B>,
family: &mut Family<B>,
queue: usize,
aux: &T,
buffers: Vec<NodeBuffer>,
images: Vec<NodeImage>,
) -> Result<Self::Node, NodeBuildError>
fn build<'a>( self, ctx: &GraphContext<B>, factory: &mut Factory<B>, family: &mut Family<B>, queue: usize, aux: &T, buffers: Vec<NodeBuffer>, images: Vec<NodeImage>, ) -> Result<Self::Node, NodeBuildError>
Build the node.
§Parameters
factory
- factory instance.
aux
- auxiliary data.
family
- id of the family this node will be executed on.
resources
- set of transient resources managed by graph.
with barriers required for interface resources.
Provided Methods§
Sourcefn builder(self) -> DescBuilder<B, T, Self>
fn builder(self) -> DescBuilder<B, T, Self>
Make node builder.
Sourcefn buffers(&self) -> Vec<BufferAccess>
fn buffers(&self) -> Vec<BufferAccess>
Get set or buffer resources the node uses.
Sourcefn images(&self) -> Vec<ImageAccess>
fn images(&self) -> Vec<ImageAccess>
Get set or image resources the node uses.
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.