Struct maplibre::render::graph::GraphInputNode
source · pub struct GraphInputNode {
inputs: Vec<SlotInfo>,
}
Expand description
A Node
which acts as an entry point for a RenderGraph
with custom inputs.
It has the same input and output slots and simply copies them over when run.
Fields§
§inputs: Vec<SlotInfo>
Trait Implementations§
source§impl Node for GraphInputNode
impl Node for GraphInputNode
source§fn input(&self) -> Vec<SlotInfo>
fn input(&self) -> Vec<SlotInfo>
Specifies the required input slots for this node.
They will then be available during the run method inside the
RenderGraphContext
.source§fn output(&self) -> Vec<SlotInfo>
fn output(&self) -> Vec<SlotInfo>
Specifies the produced output slots for this node.
They can then be passed one inside
RenderGraphContext
during the run method.source§fn run(
&self,
graph: &mut RenderGraphContext<'_>,
_render_context: &mut RenderContext<'_>,
_state: &RenderResources,
_world: &World
) -> Result<(), NodeRunError>
fn run( &self, graph: &mut RenderGraphContext<'_>, _render_context: &mut RenderContext<'_>, _state: &RenderResources, _world: &World ) -> Result<(), NodeRunError>
Runs the graph node logic, issues draw calls, updates the output slots and
optionally queues up subgraphs for execution. The graph data, input and output values are
passed via the
RenderGraphContext
.source§fn update(&mut self, _state: &mut RenderResources)
fn update(&mut self, _state: &mut RenderResources)
Updates internal node state using the current
RenderResources
prior to the run method.Auto Trait Implementations§
impl Freeze for GraphInputNode
impl RefUnwindSafe for GraphInputNode
impl Send for GraphInputNode
impl Sync for GraphInputNode
impl Unpin for GraphInputNode
impl UnwindSafe for GraphInputNode
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSync for T
impl<T> DowncastSync for T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoEither for T
impl<T> IntoEither for T
source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moresource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more