![]() |
Audacity 3.2.0
|
#include <AudioUnitWrapper.h>
Public Types | |
using | StringSet = std::set< wxString > |
using | Pair = std::pair< const wxString &, AudioUnitParameterValue > |
using | Map = std::map< AudioUnitParameterID, std::optional< Pair > > |
Public Member Functions | |
AudioUnitEffectSettings ()=default | |
AudioUnitEffectSettings (Map map) | |
const wxString & | Intern (const wxString &name) |
void | ResetValues () |
Associate nullopt with all keys already present in the map. More... | |
Public Attributes | |
const std::shared_ptr< StringSet > | mSharedNames |
std::optional< SInt32 > | mPresetNumber |
Optionally store a preset. More... | |
Map | values |
This works as a cached copy of state stored in an AudioUnit, but can also outlive it
Definition at line 36 of file AudioUnitWrapper.h.
using AudioUnitEffectSettings::Map = std::map<AudioUnitParameterID, std::optional<Pair> > |
Definition at line 55 of file AudioUnitWrapper.h.
using AudioUnitEffectSettings::Pair = std::pair<const wxString &, AudioUnitParameterValue> |
Map from numerical parameter IDs (not always a small initial segment of the integers) to optional pairs of names and floating point values
Definition at line 54 of file AudioUnitWrapper.h.
using AudioUnitEffectSettings::StringSet = std::set<wxString> |
The effect object and all Settings objects coming from it share this set of strings, which allows Pair below to copy without allocations.
Note that names associated with parameter IDs are not invariant metadata of an AudioUnit effect! The names can themselves depend on the current values. Example: AUGraphicEQ changes names of slider parameters when you change the switch between 10 and 31 bands.
Definition at line 45 of file AudioUnitWrapper.h.
|
default |
|
inline |
Definition at line 59 of file AudioUnitWrapper.h.
|
inline |
Get a pointer to a durable copy of name
May allocate memory
Definition at line 63 of file AudioUnitWrapper.h.
References _, mSharedNames, and name.
|
inline |
std::optional<SInt32> AudioUnitEffectSettings::mPresetNumber |
Optionally store a preset.
Definition at line 50 of file AudioUnitWrapper.h.
const std::shared_ptr<StringSet> AudioUnitEffectSettings::mSharedNames |
Definition at line 46 of file AudioUnitWrapper.h.
Referenced by Intern().
Map AudioUnitEffectSettings::values |
Definition at line 56 of file AudioUnitWrapper.h.
Referenced by AudioUnitEffectBase::ChoosePresetKey(), AudioUnitWrapper::MoveSettingsContents(), and ResetValues().