56 template <
typename SampleType>
63 filterHalfBandFIREquiripple = 0,
64 filterHalfBandPolyphaseIIR,
84 bool isMaxQuality =
true);
108 SampleType getLatencyInSamples() noexcept;
111 size_t getOversamplingFactor() noexcept;
117 void initProcessing (
size_t maximumNumberOfSamplesBeforeOversampling);
120 void reset() noexcept;
129 AudioBlock<SampleType> processSamplesUp (const
AudioBlock<const SampleType>& inputBlock) noexcept;
136 void processSamplesDown (
AudioBlock<SampleType>& outputBlock) noexcept;
162 void addOversamplingStage (FilterType,
163 float normalisedTransitionWidthUp,
float stopbandAmplitudedBUp,
164 float normalisedTransitionWidthDown,
float stopbandAmplitudedBDown);
173 void addDummyOversamplingStage();
180 void clearOversamplingStages();
183 size_t factorOversampling = 1;
184 size_t numChannels = 1;
187 struct OversamplingStage;
193 bool isReady =
false;
196 JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR (
Oversampling)