JUCE  v6.1.6 (6.0.8-1114)
JUCE API
Looking for a senior C++ dev?
I'm looking for work. Hire me!
juce::dsp::IIR::ArrayCoefficients< NumericType > Struct Template Reference

A set of coefficients for use in an Filter object. More...

#include <juce_IIRFilter.h>

Collaboration diagram for juce::dsp::IIR::ArrayCoefficients< NumericType >:

Static Public Member Functions

static std::array< NumericType, 6 > makeAllPass (double sampleRate, NumericType frequency)
 Returns the coefficients for an all-pass filter. More...
 
static std::array< NumericType, 6 > makeAllPass (double sampleRate, NumericType frequency, NumericType Q)
 Returns the coefficients for an all-pass filter with variable Q. More...
 
static std::array< NumericType, 6 > makeBandPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a band-pass filter. More...
 
static std::array< NumericType, 6 > makeBandPass (double sampleRate, NumericType frequency, NumericType Q)
 Returns the coefficients for a band-pass filter with variable Q. More...
 
static std::array< NumericType, 4 > makeFirstOrderAllPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a first order all-pass filter. More...
 
static std::array< NumericType, 4 > makeFirstOrderHighPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a first order high-pass filter. More...
 
static std::array< NumericType, 4 > makeFirstOrderLowPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a first order low-pass filter. More...
 
static std::array< NumericType, 6 > makeHighPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a high-pass filter. More...
 
static std::array< NumericType, 6 > makeHighPass (double sampleRate, NumericType frequency, NumericType Q)
 Returns the coefficients for a high-pass filter with variable Q. More...
 
static std::array< NumericType, 6 > makeHighShelf (double sampleRate, NumericType cutOffFrequency, NumericType Q, NumericType gainFactor)
 Returns the coefficients for a high-pass shelf filter with variable Q and gain. More...
 
static std::array< NumericType, 6 > makeLowPass (double sampleRate, NumericType frequency)
 Returns the coefficients for a low-pass filter. More...
 
static std::array< NumericType, 6 > makeLowPass (double sampleRate, NumericType frequency, NumericType Q)
 Returns the coefficients for a low-pass filter with variable Q. More...
 
static std::array< NumericType, 6 > makeLowShelf (double sampleRate, NumericType cutOffFrequency, NumericType Q, NumericType gainFactor)
 Returns the coefficients for a low-pass shelf filter with variable Q and gain. More...
 
static std::array< NumericType, 6 > makeNotch (double sampleRate, NumericType frequency)
 Returns the coefficients for a notch filter. More...
 
static std::array< NumericType, 6 > makeNotch (double sampleRate, NumericType frequency, NumericType Q)
 Returns the coefficients for a notch filter with variable Q. More...
 
static std::array< NumericType, 6 > makePeakFilter (double sampleRate, NumericType centreFrequency, NumericType Q, NumericType gainFactor)
 Returns the coefficients for a peak filter centred around a given frequency, with a variable Q and gain. More...
 

Static Private Attributes

static constexpr NumericType inverseRootTwo = static_cast<NumericType> (0.70710678118654752440L)
 

Detailed Description

template<typename NumericType>
struct juce::dsp::IIR::ArrayCoefficients< NumericType >

A set of coefficients for use in an Filter object.

@tags{DSP}

Member Function Documentation

◆ makeAllPass() [1/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeAllPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for an all-pass filter.

◆ makeAllPass() [2/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeAllPass ( double  sampleRate,
NumericType  frequency,
NumericType  Q 
)
static

Returns the coefficients for an all-pass filter with variable Q.

◆ makeBandPass() [1/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeBandPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a band-pass filter.

◆ makeBandPass() [2/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeBandPass ( double  sampleRate,
NumericType  frequency,
NumericType  Q 
)
static

Returns the coefficients for a band-pass filter with variable Q.

◆ makeFirstOrderAllPass()

template<typename NumericType >
static std::array<NumericType, 4> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeFirstOrderAllPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a first order all-pass filter.

◆ makeFirstOrderHighPass()

template<typename NumericType >
static std::array<NumericType, 4> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeFirstOrderHighPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a first order high-pass filter.

◆ makeFirstOrderLowPass()

template<typename NumericType >
static std::array<NumericType, 4> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeFirstOrderLowPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a first order low-pass filter.

◆ makeHighPass() [1/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeHighPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a high-pass filter.

◆ makeHighPass() [2/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeHighPass ( double  sampleRate,
NumericType  frequency,
NumericType  Q 
)
static

Returns the coefficients for a high-pass filter with variable Q.

◆ makeHighShelf()

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeHighShelf ( double  sampleRate,
NumericType  cutOffFrequency,
NumericType  Q,
NumericType  gainFactor 
)
static

Returns the coefficients for a high-pass shelf filter with variable Q and gain.

The gain is a scale factor that the high frequencies are multiplied by, so values greater than 1.0 will boost the high frequencies, values less than 1.0 will attenuate them.

◆ makeLowPass() [1/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeLowPass ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a low-pass filter.

◆ makeLowPass() [2/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeLowPass ( double  sampleRate,
NumericType  frequency,
NumericType  Q 
)
static

Returns the coefficients for a low-pass filter with variable Q.

◆ makeLowShelf()

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeLowShelf ( double  sampleRate,
NumericType  cutOffFrequency,
NumericType  Q,
NumericType  gainFactor 
)
static

Returns the coefficients for a low-pass shelf filter with variable Q and gain.

The gain is a scale factor that the low frequencies are multiplied by, so values greater than 1.0 will boost the low frequencies, values less than 1.0 will attenuate them.

◆ makeNotch() [1/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeNotch ( double  sampleRate,
NumericType  frequency 
)
static

Returns the coefficients for a notch filter.

◆ makeNotch() [2/2]

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makeNotch ( double  sampleRate,
NumericType  frequency,
NumericType  Q 
)
static

Returns the coefficients for a notch filter with variable Q.

◆ makePeakFilter()

template<typename NumericType >
static std::array<NumericType, 6> juce::dsp::IIR::ArrayCoefficients< NumericType >::makePeakFilter ( double  sampleRate,
NumericType  centreFrequency,
NumericType  Q,
NumericType  gainFactor 
)
static

Returns the coefficients for a peak filter centred around a given frequency, with a variable Q and gain.

The gain is a scale factor that the centre frequencies are multiplied by, so values greater than 1.0 will boost the centre frequencies, values less than 1.0 will attenuate them.

Member Data Documentation

◆ inverseRootTwo

template<typename NumericType >
constexpr NumericType juce::dsp::IIR::ArrayCoefficients< NumericType >::inverseRootTwo = static_cast<NumericType> (0.70710678118654752440L)
staticconstexprprivate

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