MayaFlux 0.3.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 240 of file RootNode.cpp.

241{
242 m_request_terminate.store(true, std::memory_order_release);
243
244 m_is_processing.store(false, std::memory_order_release);
245
246 for (auto& node : m_Nodes) {
247 unregister_node(node);
248 }
249
251}
void process_pending_operations()
Processes any pending node registration/unregistration operations.
Definition RootNode.cpp:201
std::vector< std::shared_ptr< Node > > m_Nodes
Collection of nodes registered with this root node.
Definition RootNode.hpp:159
void unregister_node(const std::shared_ptr< Node > &node)
Removes a node from this root node.
Definition RootNode.cpp:46
std::atomic< bool > m_is_processing
Flag indicating if the root node is currently processing nodes.
Definition RootNode.hpp:170
std::atomic< bool > m_request_terminate
Flag to request termination of processing.
Definition RootNode.hpp:178

References m_is_processing, m_Nodes, m_request_terminate, process_pending_operations(), and unregister_node().

+ Here is the call graph for this function: