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§
Sourcetype Capability: Capability
type Capability: Capability
Capability required by node. Graph will execute this node on command queue that supports this capability level.
Required Methods§
Sourcefn run<'a>(
&'a mut self,
ctx: &GraphContext<B>,
factory: &Factory<B>,
aux: &T,
frames: &'a Frames<B>,
) -> <Self as NodeSubmittable<'a, B>>::Submittables
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.
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.