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

◆ terminate_all_nodes()

void MayaFlux::Nodes::RootNode::terminate_all_nodes ( )

Terminates all nodes registered with this root node.

This method unregisters all node processing and stops active processing contexts but does not clear nodes

Definition at line 190 of file RootNode.cpp.

191{
192 m_request_terminate.store(true, std::memory_order_release);
193
194 m_is_processing.store(false, std::memory_order_release);
195
196 const auto nodes = m_Nodes;
197 for (const auto& node : nodes) {
198 unregister_node(node);
199 }
200
202}
void process_pending_operations()
Processes any pending node registration/unregistration operations.
Definition RootNode.cpp:164
std::vector< std::shared_ptr< Node > > m_Nodes
Collection of nodes registered with this root node.
Definition RootNode.hpp:166
void unregister_node(const std::shared_ptr< Node > &node)
Removes a node from this root node.
Definition RootNode.cpp:41
std::atomic< bool > m_is_processing
Flag indicating if the root node is currently processing nodes.
Definition RootNode.hpp:177
std::atomic< bool > m_request_terminate
Flag to request termination of processing.
Definition RootNode.hpp:185
const std::vector< std::shared_ptr< Node > > & nodes() const
Gets the list of nodes registered with this root node.
Definition RootNode.hpp:157

References MayaFlux::unregister_node().

+ Here is the call graph for this function: