162 return exp(log(0.01) / (timeMs *
_sampleRate * 0.001));
double _getNextOutputImpl(double inSample) override
void _resetImpl() override
void setAttackTimeMs(double time)
bool getFilterEnabled() const
double _calcCoef(double timeMs)
void setHighCutHz(double freq)
void setSampleRate(double sampleRate)
double getReleaseTimeMs() const
void setLowCutHz(double freq)
double getHighCutHz() const
virtual ~AREnvelopeFollowerBase() override=default
virtual double _envGetNextOutputImpl(double inSample)=0
void setFilterEnabled(bool isEnabled)
TPTSVF::TPTSVFilter< double > _lowCutFilter
TPTSVF::TPTSVFilter< double > _highCutFilter
double getLowCutHz() const
double getAttackTimeMs() const
void setReleaseTimeMs(double time)
void setCutoff(double val)
void processBlock(T *inSamples, size_t numSamples)
void setSampleRate(double val)
const ParameterDefinition::RangedParameter< double > RELEASE_MS(0.1, 10000, 200)
const ParameterDefinition::RangedParameter< double > HIGH_CUT(TPTSVF::Parameters::CUTOFF.minValue, TPTSVF::Parameters::CUTOFF.maxValue, 20000)
const ParameterDefinition::RangedParameter< double > LOW_CUT(TPTSVF::Parameters::CUTOFF.minValue, TPTSVF::Parameters::CUTOFF.maxValue, 0)
const ParameterDefinition::RangedParameter< double > ATTACK_MS(0.1, 10000, 20)
const ModeParameter FILTER_MODE