Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

clFFTMultiRate Class Reference

Base class for FFT based multirate filters. More...

#include <FFTMultiRate.hh>

Inheritance diagram for clFFTMultiRate:

Inheritance graph
[legend]
Collaboration diagram for clFFTMultiRate:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 clFFTMultiRate ()
 ~clFFTMultiRate ()
bool Initialize (long, long, const float *, bool=false)
 Initialize filter.

bool Initialize (long, long, const double *, bool=false)
void Uninitialize ()
 Uninitialize filter.


Protected Attributes

bool bInitialized
long lFactor
 Rate change factor.

long lFilterSize
 Size of filter FFT.

clFilter Filter

Detailed Description

Base class for FFT based multirate filters.

Data is is filtered using FFT filter and then decimated or interpolated by derived classes.

Definition at line 40 of file FFTMultiRate.hh.


Constructor & Destructor Documentation

clFFTMultiRate::clFFTMultiRate  ) 
 

Definition at line 34 of file FFTMultiRate.cc.

References bInitialized.

clFFTMultiRate::~clFFTMultiRate  ) 
 

Definition at line 40 of file FFTMultiRate.cc.

References bInitialized, and Uninitialize().


Member Function Documentation

bool clFFTMultiRate::Initialize long  ,
long  ,
const float *  ,
bool  = false
 

Initialize filter.

You can re-initialize without uninitializing first.

The NULL pointer is used to select correct overloaded function matching input datatype.

Parameters:
FactorP Rate change factor
FiltSize Filter size, specify <= 0 for automatic selection
NullPtr NULL pointer
HighPass High-pass filter?

Definition at line 46 of file FFTMultiRate.cc.

References bInitialized, clFilter::DesignHP(), clFilter::DesignLP(), FFTMULTIRATE_DELTAOMEGA, FFTMULTIRATE_OVERLAP, FFTMULTIRATE_RIPPLERATIO, Filter, clFilter::Initialize(), clFilter::InitializeHP(), clFilter::InitializeLP(), lFactor, lFilterSize, and Uninitialize().

Referenced by clRecInterpolator::Initialize(), and clRecDecimator::Initialize().

bool clFFTMultiRate::Initialize long  ,
long  ,
const double *  ,
bool  = false
 

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 88 of file FFTMultiRate.cc.

References bInitialized, clFilter::DesignHP(), clFilter::DesignLP(), FFTMULTIRATE_DELTAOMEGA, FFTMULTIRATE_OVERLAP, FFTMULTIRATE_RIPPLERATIO, Filter, clFilter::Initialize(), clFilter::InitializeHP(), clFilter::InitializeLP(), lFactor, lFilterSize, and Uninitialize().

void clFFTMultiRate::Uninitialize  ) 
 

Uninitialize filter.

Reimplemented in clFFTDecimator, and clFFTInterpolator.

Definition at line 130 of file FFTMultiRate.cc.

References bInitialized, Filter, and clFilter::Uninitialize().

Referenced by Initialize(), clFFTInterpolator::Uninitialize(), clFFTDecimator::Uninitialize(), and ~clFFTMultiRate().


Member Data Documentation

bool clFFTMultiRate::bInitialized [protected]
 

Definition at line 43 of file FFTMultiRate.hh.

Referenced by clFFTMultiRate(), Initialize(), Uninitialize(), and ~clFFTMultiRate().

long clFFTMultiRate::lFactor [protected]
 

Rate change factor.

Definition at line 44 of file FFTMultiRate.hh.

Referenced by Initialize().

long clFFTMultiRate::lFilterSize [protected]
 

Size of filter FFT.

Definition at line 45 of file FFTMultiRate.hh.

Referenced by Initialize().

clFilter clFFTMultiRate::Filter [protected]
 

Definition at line 46 of file FFTMultiRate.hh.

Referenced by Initialize(), and Uninitialize().


The documentation for this class was generated from the following files:
Generated on Tue Mar 2 19:47:09 2004 for libDSP by doxygen 1.3.6