LMMS
Loading...
Searching...
No Matches
juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType > Struct Template Reference
Inheritance diagram for juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >:
juce::dsp::Oversampling< SampleType >::OversamplingStage< SampleType >

Public Types

using ParentType = typename Oversampling<SampleType>::OversamplingStage

Public Member Functions

 Oversampling2TimesPolyphaseIIR (size_t numChans, SampleType normalisedTransitionWidthUp, SampleType stopbandAmplitudedBUp, SampleType normalisedTransitionWidthDown, SampleType stopbandAmplitudedBDown)
SampleType getLatencyInSamples () const override
void reset () override
void processSamplesUp (const AudioBlock< const SampleType > &inputBlock) override
void processSamplesDown (AudioBlock< SampleType > &outputBlock) override
void snapToZero (bool snapUpProcessing)
Public Member Functions inherited from juce::dsp::Oversampling< SampleType >::OversamplingStage< SampleType >
 OversamplingStage (size_t numChans, size_t newFactor)
virtual ~OversamplingStage ()
virtual void initProcessing (size_t maximumNumberOfSamplesBeforeOversampling)
AudioBlock< SampleType > getProcessedSamples (size_t numSamples)

Private Member Functions

IIR::Coefficients< SampleType > getCoefficients (typename FilterDesign< SampleType >::IIRPolyphaseAllpassStructure &structure) const

Private Attributes

Array< SampleType > coefficientsUp
Array< SampleType > coefficientsDown
SampleType latency
AudioBuffer< SampleType > v1Up
AudioBuffer< SampleType > v1Down
Array< SampleType > delayDown

Additional Inherited Members

Public Attributes inherited from juce::dsp::Oversampling< SampleType >::OversamplingStage< SampleType >
AudioBuffer< SampleType > buffer
size_t numChannels
size_t factor

Detailed Description

template<typename SampleType>
struct juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >

Oversampling stage class performing 2 times oversampling using the Filter Design IIR Polyphase Allpass Cascaded method. The resulting filter is minimum phase, and provided with a method to get the exact resulting latency.

Member Typedef Documentation

◆ ParentType

template<typename SampleType>
using juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::ParentType = typename Oversampling<SampleType>::OversamplingStage

Constructor & Destructor Documentation

◆ Oversampling2TimesPolyphaseIIR()

template<typename SampleType>
juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::Oversampling2TimesPolyphaseIIR ( size_t numChans,
SampleType normalisedTransitionWidthUp,
SampleType stopbandAmplitudedBUp,
SampleType normalisedTransitionWidthDown,
SampleType stopbandAmplitudedBDown )
inline

Member Function Documentation

◆ getCoefficients()

template<typename SampleType>
IIR::Coefficients< SampleType > juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::getCoefficients ( typename FilterDesign< SampleType >::IIRPolyphaseAllpassStructure & structure) const
inlineprivate

This function calculates the equivalent high order IIR filter of a given polyphase cascaded allpass filters structure.

◆ getLatencyInSamples()

template<typename SampleType>
SampleType juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::getLatencyInSamples ( ) const
inlineoverridevirtual

◆ processSamplesDown()

template<typename SampleType>
void juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::processSamplesDown ( AudioBlock< SampleType > & outputBlock)
inlineoverridevirtual

◆ processSamplesUp()

template<typename SampleType>
void juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::processSamplesUp ( const AudioBlock< const SampleType > & inputBlock)
inlineoverridevirtual

◆ reset()

template<typename SampleType>
void juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::reset ( )
inlineoverridevirtual

◆ snapToZero()

template<typename SampleType>
void juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::snapToZero ( bool snapUpProcessing)
inline

Member Data Documentation

◆ coefficientsDown

template<typename SampleType>
Array<SampleType> juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::coefficientsDown
private

◆ coefficientsUp

template<typename SampleType>
Array<SampleType> juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::coefficientsUp
private

◆ delayDown

template<typename SampleType>
Array<SampleType> juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::delayDown
private

◆ latency

template<typename SampleType>
SampleType juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::latency
private

◆ v1Down

template<typename SampleType>
AudioBuffer<SampleType> juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::v1Down
private

◆ v1Up

template<typename SampleType>
AudioBuffer<SampleType> juce::dsp::Oversampling2TimesPolyphaseIIR< SampleType >::v1Up
private

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