csl::FFT Class Reference

#include <Spectral.h>

Inheritance diagram for csl::FFT:

csl::Effect List of all members.

Detailed Description

Forward FFT unit generator is an Effect because it handles an input It puts spectral frames in the output buffer and then broadcasts a change message, so clients are expected to observe it.


Public Member Functions

 FFT (UnitGenerator &in, CSLFFTType type=CSL_FFT_REAL, FFTFlags flags=kFFTMeasure, int size=CGestalt::blockSize())
 Default size to the buffer size and flags to measure.
 ~FFT ()
int fftSize ()
 no setter -- create a new FFT to change size
void nextBuffer (Buffer &outputBuffer) throw (CException)

Public Attributes

CSL_FFTW_cmplx * mCmplxSpectrum
 Buffer to store the spectrum.
CSL_FFTW_sample * mRealSpectrum
 Temp buffer for spectrum.
bool mOverwriteOutput
 whether to replace the output with the input (or the spectrum) after signalling observers

Protected Member Functions

void initialize (FFTFlags flags)

Protected Attributes

int mFFTSize
 This should be unsigned, but is signed for compatability with FFTW.
CSLFFTType mType
 real or complex results
CSL_FFTW_plan mPlan
 Plan for IFFT.
CSL_FFTW_sample * mSampleBuffer
 Buffer to store samples.
CSL_FFTW_sample * mInputBuffer
 Buffer to store past input.
CSL_FFTW_sample * mWindowBuffer
 Buffer to store window.


Constructor & Destructor Documentation

FFT::FFT UnitGenerator in,
CSLFFTType  type = CSL_FFT_REAL,
FFTFlags  flags = kFFTMeasure,
int  size = CGestalt::blockSize()
 

Default size to the buffer size and flags to measure.

FFT::~FFT  ) 
 


Member Function Documentation

int csl::FFT::fftSize  )  [inline]
 

no setter -- create a new FFT to change size

void FFT::nextBuffer Buffer outputBuffer  )  throw (CException)
 

void FFT::initialize FFTFlags  flags  )  [protected]
 

< Buffer to store samples


Member Data Documentation

CSL_FFTW_cmplx* csl::FFT::mCmplxSpectrum
 

Buffer to store the spectrum.

CSL_FFTW_sample* csl::FFT::mRealSpectrum
 

Temp buffer for spectrum.

bool csl::FFT::mOverwriteOutput
 

whether to replace the output with the input (or the spectrum) after signalling observers

int csl::FFT::mFFTSize [protected]
 

This should be unsigned, but is signed for compatability with FFTW.

CSLFFTType csl::FFT::mType [protected]
 

real or complex results

CSL_FFTW_plan csl::FFT::mPlan [protected]
 

Plan for IFFT.

CSL_FFTW_sample* csl::FFT::mSampleBuffer [protected]
 

Buffer to store samples.

CSL_FFTW_sample* csl::FFT::mInputBuffer [protected]
 

Buffer to store past input.

CSL_FFTW_sample* csl::FFT::mWindowBuffer [protected]
 

Buffer to store window.


The documentation for this class was generated from the following files:
Generated on Fri Apr 6 20:18:21 2007 for CSL by  doxygen 1.4.5-20051010