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

◆ operator|() [2/7]

std::shared_ptr< Nodes::Network::NodeNetwork > MayaFlux::operator| ( const TemporalWrapper< Nodes::Network::NodeNetwork > &  wrapper,
const CreationContext ctx 
)

Definition at line 72 of file Temporal.cpp.

73{
74 auto network = wrapper.entity();
75 const auto& spec = wrapper.spec();
76 auto node_token = get_node_token(ctx.domain.value());
77
78 auto activation = std::make_shared<Kriya::TemporalActivation>(
80
81 activation->activate_network(network, spec.seconds, node_token);
82
83 static std::vector<std::shared_ptr<Kriya::TemporalActivation>> active_timers;
84 active_timers.push_back(activation);
85
86 if (active_timers.size() > 100) {
87 std::erase_if(active_timers, [](const std::shared_ptr<Kriya::TemporalActivation>& t) {
88 return !t->is_active();
89 });
90 }
91
92 return network;
93}
static const auto node_token
Definition Chain.cpp:9
MAYAFLUX_API Nodes::ProcessingToken get_node_token(Domain domain)
Extracts node processing token from domain.
Definition Domain.hpp:174
std::shared_ptr< Nodes::NodeGraphManager > get_node_graph_manager()
Gets the node graph manager from the default engine.
Definition Graph.cpp:35
std::shared_ptr< Buffers::BufferManager > get_buffer_manager()
Gets the buffer manager from the default engine.
Definition Graph.cpp:132
std::shared_ptr< Vruta::TaskScheduler > get_scheduler()
Gets the task scheduler from the default engine.
Definition Chronie.cpp:22
std::optional< Domain > domain
Definition Creator.hpp:21

References MayaFlux::CreationContext::domain, get_buffer_manager(), get_node_graph_manager(), get_node_token(), get_scheduler(), and node_token.

+ Here is the call graph for this function: