SPUC  3.0
Public Member Functions | Public Attributes | List of all members
SPUC::iir_allpass1_cascade< Numeric, Coeff > Class Template Reference

Template Class for iir filter consisting of 1st order allpass sections. More...

#include <iir_allpass1_cascade.h>

Collaboration diagram for SPUC::iir_allpass1_cascade< Numeric, Coeff >:
Collaboration graph
[legend]

Public Member Functions

 iir_allpass1_cascade (float_type fp, int n=1, int coeff_bits=0)
 n = Filter stages More...
 
void set_coeffs (float_type fp, int n=1, int coeff_bits=0)
 n = Filter stages More...
 
Coeff get_a0 (int i)
 
Coeff get_a1 (int i)
 
 ~iir_allpass1_cascade ()
 Destructor. More...
 
void reset ()
 Reset history. More...
 
Numeric clock (Numeric input)
 Clock in sample and get output. More...
 
Numeric get_hp_out ()
 Assumes clock already called. More...
 

Public Attributes

long stages
 
allpass< Numeric, Coeff > A0
 
allpass< Numeric, Coeff > A1
 
Numeric prev_input
 
Numeric out0
 
Numeric out1
 

Detailed Description

template<class Numeric, class Coeff = float_type>
class SPUC::iir_allpass1_cascade< Numeric, Coeff >

Template Class for iir filter consisting of 1st order allpass sections.

This is a halfband IIR filter with two branches of cascades of 1st order allpass sections

Author
Tony Kirke
iir_allpass1_cascade.png

Constructor & Destructor Documentation

template<class Numeric, class Coeff = float_type>
SPUC::iir_allpass1_cascade< Numeric, Coeff >::iir_allpass1_cascade ( float_type  fp,
int  n = 1,
int  coeff_bits = 0 
)
inline

n = Filter stages

References SPUC::elliptic_allpass(), SPUC::allpass< Numeric, Coeff >::init(), and SPUC::iir_allpass1_cascade< Numeric, Coeff >::stages.

Here is the call graph for this function:

template<class Numeric, class Coeff = float_type>
SPUC::iir_allpass1_cascade< Numeric, Coeff >::~iir_allpass1_cascade ( )
inline

Destructor.

Member Function Documentation

template<class Numeric, class Coeff = float_type>
Numeric SPUC::iir_allpass1_cascade< Numeric, Coeff >::clock ( Numeric  input)
inline

Clock in sample and get output.

References SPUC::allpass< Numeric, Coeff >::clock(), and SPUC::round().

Referenced by main().

Here is the call graph for this function:

template<class Numeric, class Coeff = float_type>
Coeff SPUC::iir_allpass1_cascade< Numeric, Coeff >::get_a0 ( int  i)
inline
template<class Numeric, class Coeff = float_type>
Coeff SPUC::iir_allpass1_cascade< Numeric, Coeff >::get_a1 ( int  i)
inline
template<class Numeric, class Coeff = float_type>
Numeric SPUC::iir_allpass1_cascade< Numeric, Coeff >::get_hp_out ( )
inline

Assumes clock already called.

References SPUC::round().

Here is the call graph for this function:

template<class Numeric, class Coeff = float_type>
void SPUC::iir_allpass1_cascade< Numeric, Coeff >::reset ( void  )
inline

Reset history.

References SPUC::allpass< Numeric, Coeff >::reset().

Here is the call graph for this function:

template<class Numeric, class Coeff = float_type>
void SPUC::iir_allpass1_cascade< Numeric, Coeff >::set_coeffs ( float_type  fp,
int  n = 1,
int  coeff_bits = 0 
)
inline

n = Filter stages

References SPUC::elliptic_allpass(), SPUC::allpass< Numeric, Coeff >::init(), and SPUC::iir_allpass1_cascade< Numeric, Coeff >::stages.

Here is the call graph for this function:

Member Data Documentation

template<class Numeric, class Coeff = float_type>
allpass< Numeric,Coeff > SPUC::iir_allpass1_cascade< Numeric, Coeff >::A0
template<class Numeric, class Coeff = float_type>
allpass< Numeric,Coeff > SPUC::iir_allpass1_cascade< Numeric, Coeff >::A1
template<class Numeric, class Coeff = float_type>
Numeric SPUC::iir_allpass1_cascade< Numeric, Coeff >::out0
template<class Numeric, class Coeff = float_type>
Numeric SPUC::iir_allpass1_cascade< Numeric, Coeff >::out1
template<class Numeric, class Coeff = float_type>
Numeric SPUC::iir_allpass1_cascade< Numeric, Coeff >::prev_input
template<class Numeric, class Coeff = float_type>
long SPUC::iir_allpass1_cascade< Numeric, Coeff >::stages

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