 }


 //==============================================================================
 AudioParameterInt::AudioParameterInt (const String& idToUse, const String& nameToUse,
 int minValue, int maxValue, int def,
 const String& labelToUse,
 std::function<String (int, int)> stringFromInt,
 std::function<int (const String&)> intFromString)
 : RangedAudioParameter (idToUse, nameToUse, labelToUse),
 range ((float) minValue, (float) maxValue,
 [](float start, float end, float v) { return jlimit (start, end, v * (end  start) + start); },
 [](float start, float end, float v) { return jlimit (0.0f, 1.0f, (v  start) / (end  start)); },
 [](float start, float end, float v) { return (float) roundToInt (juce::jlimit (start, end, v)); }),
 value ((float) def),
 defaultValue (convertTo0to1 ((float) def)),
 stringFromIntFunction (stringFromInt),
 intFromStringFunction (intFromString)
 {
 jassert (minValue < maxValue); // must have a nonzero range of values!
