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

◆ resize_channels()

void MayaFlux::Buffers::RootAudioUnit::resize_channels ( uint32_t  new_count,
uint32_t  new_buffer_size,
ProcessingToken  token 
)

Definition at line 8 of file TokenUnitManager.cpp.

9{
10 if (new_count <= channel_count)
11 return;
12
13 uint32_t old_count = channel_count;
14 channel_count = new_count;
15 buffer_size = new_buffer_size;
16
17 root_buffers.resize(new_count);
18 processing_chains.resize(new_count);
19
20 for (uint32_t i = old_count; i < new_count; ++i) {
21 root_buffers[i] = std::make_shared<RootAudioBuffer>(i, buffer_size);
22 root_buffers[i]->initialize();
23 root_buffers[i]->set_token_active(true);
24
25 processing_chains[i] = std::make_shared<BufferProcessingChain>();
26 processing_chains[i]->set_preferred_token(token);
27 processing_chains[i]->set_enforcement_strategy(TokenEnforcementStrategy::FILTERED);
28
29 root_buffers[i]->set_processing_chain(processing_chains[i]);
30 }
31}
static MayaFlux::Nodes::ProcessingToken token
Definition Timers.cpp:8
@ FILTERED
Filters processors through token enumeration, allowing compatible combinations.
std::vector< std::shared_ptr< BufferProcessingChain > > processing_chains
std::vector< std::shared_ptr< RootAudioBuffer > > root_buffers

References buffer_size, channel_count, MayaFlux::Buffers::FILTERED, processing_chains, root_buffers, and token.