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

◆ remove_network()

void MayaFlux::Nodes::NodeGraphManager::remove_network ( const std::shared_ptr< Network::NodeNetwork > &  network,
ProcessingToken  token 
)

Remove a network from a processing token.

Parameters
networkNetwork to remove
tokenProcessing domain
channelChannel index within that domain, optional

Definition at line 491 of file NodeGraphManager.cpp.

493{
494 if (!network) {
495 return;
496 }
497
498 if (network->get_output_mode() == Network::NodeNetwork::OutputMode::AUDIO_SINK) {
499 auto token_it = m_audio_networks.find(token);
500 if (token_it != m_audio_networks.end()) {
501 auto& networks = token_it->second;
502 networks.erase(
503 std::remove(networks.begin(), networks.end(), network),
504 networks.end());
505 }
506 } else {
507 auto it = m_token_networks.find(token);
508 if (it != m_token_networks.end()) {
509 auto& networks = it->second;
510 networks.erase(
511 std::remove(networks.begin(), networks.end(), network),
512 networks.end());
513 }
514 }
515
517}
static MayaFlux::Nodes::ProcessingToken token
Definition Timers.cpp:8
@ AUDIO_SINK
Aggregated audio samples sent to output.
std::unordered_map< ProcessingToken, std::vector< std::shared_ptr< Network::NodeNetwork > > > m_token_networks
Non-audio networks (token-level processing) For NONE, GRAPHICS_BIND, CUSTOM output modes.
std::unordered_map< ProcessingToken, std::vector< std::shared_ptr< Network::NodeNetwork > > > m_audio_networks
Audio-sink networks Only populated for networks with OutputMode::AUDIO_SINK.
void unregister_network_global(const std::shared_ptr< Network::NodeNetwork > &network)
Unregister network globally.

References MayaFlux::Nodes::Network::NodeNetwork::AUDIO_SINK, m_audio_networks, m_token_networks, token, and unregister_network_global().

+ Here is the call graph for this function: