Browse Source

AU Client: Switch HashMap to unordered_map

pull/22/head
reuk 3 years ago
parent
commit
3d38ca764e
No known key found for this signature in database GPG Key ID: 9ADCD339CFC98A11
1 changed files with 10 additions and 6 deletions
  1. +10
    -6
      modules/juce_audio_plugin_client/AU/juce_AU_Wrapper.mm

+ 10
- 6
modules/juce_audio_plugin_client/AU/juce_AU_Wrapper.mm View File

@@ -1812,7 +1812,7 @@ private:
//==============================================================================
LegacyAudioParametersWrapper juceParameters;
HashMap<int32, AudioProcessorParameter*> paramMap;
std::unordered_map<int32, AudioProcessorParameter*> paramMap;
Array<AudioUnitParameterID> auParamIDs;
Array<const AudioProcessorParameterGroup*> parameterGroups;
@@ -2057,10 +2057,10 @@ private:
// Consider yourself very unlucky if you hit this assertion. The hash codes of your
// parameter ids are not unique.
jassert (! paramMap.contains (static_cast<int32> (auParamID)));
jassert (paramMap.find (static_cast<int32> (auParamID)) == paramMap.end());
auParamIDs.add (auParamID);
paramMap.set (static_cast<int32> (auParamID), param);
paramMap.emplace (static_cast<int32> (auParamID), param);
Globals()->SetParameter (auParamID, param->getValue());
}
}
@@ -2141,9 +2141,13 @@ private:
AudioProcessorParameter* getParameterForAUParameterID (AudioUnitParameterID address) const noexcept
{
auto index = static_cast<int32> (address);
return forceUseLegacyParamIDs ? juceParameters.getParamForIndex (index)
: paramMap[index];
const auto index = static_cast<int32> (address);
if (forceUseLegacyParamIDs)
return juceParameters.getParamForIndex (index);
const auto iter = paramMap.find (index);
return iter != paramMap.end() ? iter->second : nullptr;
}
//==============================================================================


Loading…
Cancel
Save