Audacity 3.2.0
Public Member Functions | Public Attributes | Static Public Attributes | List of all members
ParameterInfo Class Referencefinal

Public Member Functions

 ParameterInfo ()
 
bool Get (AudioUnit mUnit, AudioUnitParameterID parmID)
 

Public Attributes

wxString name
 
AudioUnitParameterInfo info
 

Static Public Attributes

static const char idBeg = wxT('<')
 
static const char idSep = wxT(',')
 
static const char idEnd = wxT('>')
 

Detailed Description

Definition at line 80 of file AudioUnitEffect.cpp.

Constructor & Destructor Documentation

◆ ParameterInfo()

ParameterInfo::ParameterInfo ( )
inline

Definition at line 83 of file AudioUnitEffect.cpp.

84 {
85 info = {};
86 }
AudioUnitParameterInfo info

References info.

Member Function Documentation

◆ Get()

bool ParameterInfo::Get ( AudioUnit  mUnit,
AudioUnitParameterID  parmID 
)
inline

Definition at line 88 of file AudioUnitEffect.cpp.

89 {
90 UInt32 dataSize;
91
92 info = {};
93 // Note non-default element parameter, parmID
95 kAudioUnitProperty_ParameterInfo, info,
96 kAudioUnitScope_Global, parmID))
97 return false;
98
99 if (info.flags & kAudioUnitParameterFlag_HasCFNameString)
100 name = wxCFStringRef::AsString(info.cfNameString);
101 else
102 name = wxString(info.name);
103
104#if defined(USE_EXTENDED_NAMES)
105 // If the parameter has a non-empty name, then the final parameter name will
106 // be either:
107 //
108 // <parmID,ParameterName>
109 //
110 // or (if the name isn't available):
111 //
112 // <parmID>
113 if (!name.empty())
114 {
115 name.Replace(idBeg, wxT('_'));
116 name.Replace(idSep, wxT('_'));
117 name.Replace(idEnd, wxT('_'));
118 name.Append(idSep);
119 }
120 name = wxString::Format(wxT("%c%s%x%c"),
121 idBeg,
122 name,
123 parmID,
124 idEnd);
125
126 // If the parameter has a clumpID, then the final parameter name will be
127 // either:
128 //
129 // <clumpID,clumpName><parmID,ParameterName>
130 //
131 // or (if the clumpName isn't available):
132 //
133 // <clumpID><parmID,ParameterName>
134 if (info.flags & kAudioUnitParameterFlag_HasClump)
135 {
136 wxString clumpName;
138 info.clumpID, kAudioUnitParameterName_Full
139 };
140
142 kAudioUnitProperty_ParameterClumpName, clumpInfo)) {
143 clumpName = wxCFStringRef::AsString(clumpInfo.outName);
144 clumpName.Replace(idBeg, wxT('_'));
145 clumpName.Replace(idSep, wxT('_'));
146 clumpName.Replace(idEnd, wxT('_'));
147 clumpName.Append(idSep);
148 }
149 name = wxString::Format(wxT("%c%s%x%c%s"),
150 idBeg,
151 clumpName,
152 info.clumpID,
153 idEnd,
154 name);
155 }
156#endif
157
158 return true;
159 }
static const char idBeg
static const char idSep
static const char idEnd
OSStatus GetFixedSizeProperty(AudioUnit unit, AudioUnitPropertyID inID, T &property, AudioUnitScope inScope=kAudioUnitScope_Global, AudioUnitElement inElement=0)

References AudioUnitUtils::GetFixedSizeProperty(), idBeg, idEnd, idSep, info, and name.

Referenced by AudioUnitEffect::LoadSettings(), AudioUnitEffect::SaveSettings(), and AudioUnitEffect::SupportsAutomation().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ idBeg

const char ParameterInfo::idBeg = wxT('<')
static

Definition at line 161 of file AudioUnitEffect.cpp.

Referenced by Get().

◆ idEnd

const char ParameterInfo::idEnd = wxT('>')
static

Definition at line 163 of file AudioUnitEffect.cpp.

Referenced by Get().

◆ idSep

const char ParameterInfo::idSep = wxT(',')
static

Definition at line 162 of file AudioUnitEffect.cpp.

Referenced by Get().

◆ info

AudioUnitParameterInfo ParameterInfo::info

Definition at line 166 of file AudioUnitEffect.cpp.

Referenced by Get(), ParameterInfo(), and AudioUnitEffect::SupportsAutomation().

◆ name

wxString ParameterInfo::name

The documentation for this class was generated from the following file: