MayaFlux 0.2.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 236 of file RootNode.cpp.

237{
238 m_request_terminate.store(true, std::memory_order_release);
239
240 m_is_processing.store(false, std::memory_order_release);
241
242 for (auto& node : m_Nodes) {
243 unregister_node(node);
244 }
245
247}
void process_pending_operations()
Processes any pending node registration/unregistration operations.
Definition RootNode.cpp:198
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:52
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: