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

◆ play_with_processing() [1/3]

void MayaFlux::Kriya::NodeTimer::play_with_processing ( std::shared_ptr< Nodes::Node node,
std::function< void(std::shared_ptr< Nodes::Node >)>  setup_func,
std::function< void(std::shared_ptr< Nodes::Node >)>  cleanup_func,
double  duration_seconds 
)

Definition at line 152 of file Timers.cpp.

156{
157 auto source_mask = node->get_channel_mask().load(std::memory_order_relaxed);
158 std::vector<uint32_t> channels;
159
160 if (source_mask == 0) {
161 channels = { 0 };
162 } else {
163 for (auto& channel : Nodes::get_active_channels(source_mask, 0)) {
164 channels.push_back(channel);
165 }
166 }
167
168 play_with_processing(node, setup_func, cleanup_func, duration_seconds, channels);
169}
void play_with_processing(std::shared_ptr< Nodes::Node > node, std::function< void(std::shared_ptr< Nodes::Node >)> setup_func, std::function< void(std::shared_ptr< Nodes::Node >)> cleanup_func, double duration_seconds, std::vector< uint32_t > channels)
Activates a processing node with custom setup and cleanup functions.
Definition Timers.cpp:133
@ 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_with_processing().

+ Here is the call graph for this function: