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

◆ get_audio_unit()

const RootAudioUnit & MayaFlux::Buffers::TokenUnitManager::get_audio_unit ( ProcessingToken  token) const

Gets an existing audio unit without creating if missing.

Parameters
tokenProcessing domain
Returns
Const reference to the audio unit
Exceptions
std::out_of_rangeif token not found

This is a query-only operation; will not create a unit if missing.

Definition at line 82 of file TokenUnitManager.cpp.

83{
84 auto it = m_audio_units.find(token);
85 if (it == m_audio_units.end()) {
86 error<std::out_of_range>(
89 std::source_location::current(),
90 "Audio unit not found for token {}",
91 static_cast<int>(token));
92 }
93 return it->second;
94}
static MayaFlux::Nodes::ProcessingToken token
Definition Timers.cpp:8
std::unordered_map< ProcessingToken, RootAudioUnit > m_audio_units
Token-based map of root audio buffer units Maps: ProcessingToken -> channel -> {root_buffers,...
@ BufferManagement
Buffer Management (Buffers::BufferManager, creating buffers)
@ Core
Core engine, backend, subsystems.

References MayaFlux::Journal::BufferManagement, MayaFlux::Journal::Core, m_audio_units, and token.

Referenced by MayaFlux::Buffers::BufferProcessingControl::add_audio_processor(), MayaFlux::Buffers::BufferSupplyMixing::fill_audio_interleaved(), MayaFlux::Buffers::BufferAccessControl::get_audio_buffers(), MayaFlux::Buffers::BufferAccessControl::get_root_audio_buffer(), and MayaFlux::Buffers::BufferProcessingControl::remove_audio_processor().

+ Here is the caller graph for this function: