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

◆ play_for() [1/3]

void MayaFlux::Kriya::NodeTimer::play_for ( std::shared_ptr< Nodes::Node node,
double  duration_seconds 
)

Definition at line 112 of file Timers.cpp.

113{
114 auto source_mask = node->get_channel_mask().load(std::memory_order_relaxed);
115 std::vector<uint32_t> channels;
116
117 if (source_mask == 0) {
118 channels = { 0 };
119 } else {
120 for (auto& channel : Nodes::get_active_channels(source_mask, 0)) {
121 channels.push_back(channel);
122 }
123 }
124
125 play_for(node, duration_seconds, channels);
126}
void play_for(std::shared_ptr< Nodes::Node > node, double duration_seconds, std::vector< uint32_t > channels)
Activates a processing node for a specific duration.
Definition Timers.cpp:96
@ Nodes
DSP Generator and Filter Nodes, graph pipeline, node management.
std::vector< uint32_t > get_active_channels(const std::shared_ptr< Nodes::Node > &node, uint32_t fallback_channel)
Extracts active channel list from a node's channel mask.

References MayaFlux::Nodes::get_active_channels(), and play_for().

+ Here is the call graph for this function: