VVSDK  1.0
The VVAmbisonic Library
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CIIRFilter Class Reference

#include <IIRFilter.h>

Inheritance diagram for CIIRFilter:
CFilter CHighPassFilter CHPFilter2 CLFFilter CLowPassFilter CLowShelfFilter CMitRegFilter CNFCFilter CShelfFilterI

Public Member Functions

 CIIRFilter ()
 
 CIIRFilter (int form)
 
 ~CIIRFilter ()
 
void SetXML (CXMLElement *xml)
 
void setCoefficients (CFilterCoefficients *coef)
 
void setSamplingRate (float sr)
 
bool canProcess ()
 
void doFilter (float *node, long sampleFrames)
 
void clearBuffers ()
 
void setCoefficientFileName (long sr, char *fileName)
 
- Public Member Functions inherited from CFilter
 CFilter ()
 
virtual ~CFilter ()
 
void setName (const char *newName)
 
const char * getName ()
 
virtual int getNumChannels ()
 

Protected Member Functions

void init ()
 

Protected Attributes

int m_nForm
 
CFilterCoefficientsm_coefficients
 
int m_nFiltSizeA
 
int m_nFiltSizeB
 
float m_fInBuffer [MAXFILTSIZE]
 
float m_fOutBuffer [MAXFILTSIZE]
 
short m_nBufPos
 
float * m_fACoefficients
 
float * m_fBCoefficients
 
float m_fScale
 
- Protected Attributes inherited from CFilter
float m_fSamplingRate
 
char m_strName [81]
 
CFilterCoefficientscoefs
 
int numChannels
 

Detailed Description

General purpose IIR filter Can do direct form 1 & 2 and cascade of second order sections

Constructor & Destructor Documentation

CIIRFilter::CIIRFilter ( )

Constructor

CIIRFilter::CIIRFilter ( int  form)

Constructor setting filter form 1-4

CIIRFilter::~CIIRFilter ( )

Destructor

Member Function Documentation

bool CIIRFilter::canProcess ( )
virtual

Determines whether coefficients exist for the current sampling rate

Reimplemented from CFilter.

void CIIRFilter::clearBuffers ( )
virtual

Clears internal buffers

Reimplemented from CFilter.

Reimplemented in CLFFilter.

void CIIRFilter::doFilter ( float *  node,
long  sampleFrames 
)
virtual

Process audio blocks

Reimplemented from CFilter.

Reimplemented in CLFFilter, CNFCFilter, CLowPassFilter, CShelfFilterI, and CMitRegFilter.

void CIIRFilter::init ( )
protectedvirtual
void CIIRFilter::setCoefficientFileName ( long  sr,
char *  fileName 
)

Loads coefficients from a WAV file, using its sampling rate

void CIIRFilter::setCoefficients ( CFilterCoefficients coef)
virtual

Sets all coefficients for this filter

Reimplemented from CFilter.

void CIIRFilter::setSamplingRate ( float  sr)
virtual

Sets the sampling rate

Reimplemented from CFilter.

Reimplemented in CNFCFilter, CLFFilter, CShelfFilterI, CLowPassFilter, CLowShelfFilter, CHPFilter2, and CMitRegFilter.

void CIIRFilter::SetXML ( CXMLElement xml)

Returns a CXMLElement containing this filters state

Member Data Documentation

CFilterCoefficients* CIIRFilter::m_coefficients
protected
float* CIIRFilter::m_fACoefficients
protected
float* CIIRFilter::m_fBCoefficients
protected
float CIIRFilter::m_fInBuffer[MAXFILTSIZE]
protected
float CIIRFilter::m_fOutBuffer[MAXFILTSIZE]
protected
float CIIRFilter::m_fScale
protected
short CIIRFilter::m_nBufPos
protected
int CIIRFilter::m_nFiltSizeA
protected
int CIIRFilter::m_nFiltSizeB
protected
int CIIRFilter::m_nForm
protected

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