MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ register_node()

void MayaFlux::Nodes::RootNode::register_node ( const std::shared_ptr< Node > &  node)

Adds a node to this root node.

Parameters
nodeThe node to register

Registered nodes will be processed when the root node's process() method is called, and their outputs will be combined together. If called during processing, the operation is deferred until safe.

Definition at line 30 of file RootNode.cpp.

31{
32 if (!node)
33 return;
34
37
38 enqueue_operation({ node, true });
39}
void enqueue_operation(PendingOp &&op)
Queues an operation, draining on the caller's behalf when the queue is full.
Definition RootNode.cpp:15
@ ACTIVE
Engine is processing this node.
Definition NodeSpec.hpp:45
@ INACTIVE
Engine is not processing this node.
Definition NodeSpec.hpp:44
void atomic_remove_flag(std::atomic< NodeState > &state, NodeState flag)
Atomically removes a flag from a node state.
void atomic_add_flag(std::atomic< NodeState > &state, NodeState flag)
Atomically adds a flag to a node state.

References MayaFlux::Nodes::ACTIVE, MayaFlux::Nodes::atomic_add_flag(), MayaFlux::Nodes::atomic_remove_flag(), enqueue_operation(), and MayaFlux::Nodes::INACTIVE.

+ Here is the call graph for this function: