iir1
Public Member Functions | List of all members
Iir::ChebyshevI::BandShelf< FilterOrder, StateType > Struct Template Reference

#include <ChebyshevI.h>

Inheritance diagram for Iir::ChebyshevI::BandShelf< FilterOrder, StateType >:
Iir::PoleFilter< BandShelfBase, DirectFormII, 4, 4 *2 > Iir::CascadeStages<(MaxDigitalPoles+1)/2, DirectFormII >

Public Member Functions

void setup (double sampleRate, double centerFrequency, double widthFrequency, double gainDb, double rippleDb)
 
void setup (int reqOrder, double sampleRate, double centerFrequency, double widthFrequency, double gainDb, double rippleDb)
 
void setupN (double centerFrequency, double widthFrequency, double gainDb, double rippleDb)
 
void setupN (int reqOrder, double centerFrequency, double widthFrequency, double gainDb, double rippleDb)
 
- Public Member Functions inherited from Iir::CascadeStages<(MaxDigitalPoles+1)/2, DirectFormII >
void reset ()
 
void setup (const double(&sosCoefficients)[MaxStages][6])
 
Sample filter (const Sample in)
 
const Cascade::Storage getCascadeStorage ()
 

Detailed Description

template<int FilterOrder = 4, class StateType = DirectFormII>
struct Iir::ChebyshevI::BandShelf< FilterOrder, StateType >

ChebyshevI bandshelf filter. Specified gain in the passband. Otherwise 0 dB.

Parameters
FilterOrderReserves memory for a filter of the order FilterOrder
StateTypeThe filter topology: DirectFormI, DirectFormII, ...

Member Function Documentation

◆ setup() [1/2]

template<int FilterOrder = 4, class StateType = DirectFormII>
void Iir::ChebyshevI::BandShelf< FilterOrder, StateType >::setup ( double  sampleRate,
double  centerFrequency,
double  widthFrequency,
double  gainDb,
double  rippleDb 
)
inline

Calculates the coefficients of the filter at the order FilterOrder

Parameters
sampleRateSampling rate
centerFrequencyCenter frequency of the passband
widthFrequencyWidth of the passband.
gainDbGain in the passband. The stopband has 0 dB.
rippleDbPermitted ripples in dB in the passband.

◆ setup() [2/2]

template<int FilterOrder = 4, class StateType = DirectFormII>
void Iir::ChebyshevI::BandShelf< FilterOrder, StateType >::setup ( int  reqOrder,
double  sampleRate,
double  centerFrequency,
double  widthFrequency,
double  gainDb,
double  rippleDb 
)
inline

Calculates the coefficients of the filter at specified order

Parameters
reqOrderActual order for the filter calculations
sampleRateSampling rate
centerFrequencyCenter frequency of the passband
widthFrequencyWidth of the passband.
gainDbGain in the passband. The stopband has 0 dB.
rippleDbPermitted ripples in dB in the passband.

◆ setupN() [1/2]

template<int FilterOrder = 4, class StateType = DirectFormII>
void Iir::ChebyshevI::BandShelf< FilterOrder, StateType >::setupN ( double  centerFrequency,
double  widthFrequency,
double  gainDb,
double  rippleDb 
)
inline

Calculates the coefficients of the filter at the order FilterOrder

Parameters
centerFrequencyNormalised centre frequency (0..1/2) of the passband
widthFrequencyWidth of the passband.
gainDbGain in the passband. The stopband has 0 dB.
rippleDbPermitted ripples in dB in the passband.

◆ setupN() [2/2]

template<int FilterOrder = 4, class StateType = DirectFormII>
void Iir::ChebyshevI::BandShelf< FilterOrder, StateType >::setupN ( int  reqOrder,
double  centerFrequency,
double  widthFrequency,
double  gainDb,
double  rippleDb 
)
inline

Calculates the coefficients of the filter at specified order

Parameters
reqOrderActual order for the filter calculations
centerFrequencyNormalised centre frequency (0..1/2) of the passband
widthFrequencyWidth of the passband.
gainDbGain in the passband. The stopband has 0 dB.
rippleDbPermitted ripples in dB in the passband.

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