MayaFlux 0.1.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
NodeUtils.cpp File Reference
#include "NodeUtils.hpp"
#include "Node.hpp"
#include "MayaFlux/API/Config.hpp"
+ Include dependency graph for NodeUtils.cpp:

Go to the source code of this file.

Namespaces

namespace  MayaFlux
 Main namespace for the Maya Flux audio engine.
 
namespace  MayaFlux::Nodes
 Contains the node-based computational processing system components.
 

Functions

bool MayaFlux::Nodes::callback_exists (const std::vector< NodeHook > &callbacks, const NodeHook &callback)
 Checks if a callback function already exists in a collection.
 
bool MayaFlux::Nodes::conditional_callback_exists (const std::vector< std::pair< NodeHook, NodeCondition > > &callbacks, const NodeCondition &callback)
 Checks if a condition function already exists in a collection of conditional callbacks.
 
bool MayaFlux::Nodes::callback_pair_exists (const std::vector< std::pair< NodeHook, NodeCondition > > &callbacks, const NodeHook &callback, const NodeCondition &condition)
 Checks if a specific callback and condition pair already exists.
 
bool MayaFlux::Nodes::safe_add_callback (std::vector< NodeHook > &callbacks, const NodeHook &callback)
 Safely adds a callback to a collection if it doesn't already exist.
 
bool MayaFlux::Nodes::safe_add_conditional_callback (std::vector< std::pair< NodeHook, NodeCondition > > &callbacks, const NodeHook &callback, const NodeCondition &condition)
 Safely adds a conditional callback if it doesn't already exist.
 
bool MayaFlux::Nodes::safe_remove_callback (std::vector< NodeHook > &callbacks, const NodeHook &callback)
 Safely removes a callback from a collection.
 
bool MayaFlux::Nodes::safe_remove_conditional_callback (std::vector< std::pair< NodeHook, NodeCondition > > &callbacks, const NodeCondition &callback)
 Safely removes all conditional callbacks with a specific condition.
 
void MayaFlux::Nodes::atomic_set_strong (std::atomic< Utils::NodeState > &flag, Utils::NodeState &expected, const Utils::NodeState &desired)
 Atomically sets a node state flag with strong memory ordering.
 
void MayaFlux::Nodes::atomic_set_flag_strong (std::atomic< Utils::NodeState > &flag, const Utils::NodeState &desired)
 Atomically sets a node state flag to a specific value.
 
void MayaFlux::Nodes::atomic_add_flag (std::atomic< Utils::NodeState > &state, Utils::NodeState flag)
 Atomically adds a flag to a node state.
 
void MayaFlux::Nodes::atomic_remove_flag (std::atomic< Utils::NodeState > &state, Utils::NodeState flags)
 Atomically removes a flag from a node state.
 
void MayaFlux::Nodes::atomic_set_flag_weak (std::atomic< Utils::NodeState > &flag, Utils::NodeState &expected, const Utils::NodeState &desired)
 Atomically sets a node state flag with weak memory ordering.
 
void MayaFlux::Nodes::atomic_inc_modulator_count (std::atomic< uint32_t > &count, int amount)
 Atomically increments the modulator count by a specified amount.
 
void MayaFlux::Nodes::atomic_dec_modulator_count (std::atomic< uint32_t > &count, int amount)
 Atomically decrements the modulator count by a specified amount.
 
void MayaFlux::Nodes::try_reset_processed_state (std::shared_ptr< Node > node)
 Attempts to reset the processed state of a node.
 
std::vector< uint32_t > MayaFlux::Nodes::get_active_channels (const std::shared_ptr< Nodes::Node > &node, uint32_t fallback_channel=0)
 Extracts active channel list from a node's channel mask.
 
std::vector< uint32_t > MayaFlux::Nodes::get_active_channels (uint32_t channel_mask, uint32_t fallback_channel=0)
 Extracts active channel list from a channel mask.