CLAM::FFT_fftw3 Class Reference

#include <FFT_fftw3.hxx>

Inheritance diagram for CLAM::FFT_fftw3:

CLAM::FFT_base CLAM::Processing

List of all members.


Detailed Description

Implementation of the FFT using the Fastest Fourier Transform of the West version 3.

Definition at line 45 of file FFT_fftw3.hxx.


Public Member Functions

 FFT_fftw3 (const FFTConfig &c=FFTConfig())
 ~FFT_fftw3 ()
const char * GetClassName () const
 Override it in every subclass and retur the name of that class.
bool Do ()
 Supervised-mode Do function.
bool Do (const Audio &in, Spectrum &out)
 Standard FFT Do function, with storage class references as arguments.

Protected Member Functions

bool ConcreteConfigure (const ProcessingConfig &)
 Configuration method interface.

Constructor & Destructor Documentation

CLAM::FFT_fftw3::FFT_fftw3 ( const FFTConfig c = FFTConfig()  ) 

Definition at line 97 of file FFT_fftw3.cxx.

References CLAM::Processing::Configure().

CLAM::FFT_fftw3::~FFT_fftw3 (  ) 

Definition at line 103 of file FFT_fftw3.cxx.


Member Function Documentation

const char* CLAM::FFT_fftw3::GetClassName (  )  const [inline, virtual]

Override it in every subclass and retur the name of that class.

Implements CLAM::Processing.

Definition at line 50 of file FFT_fftw3.hxx.

bool CLAM::FFT_fftw3::Do (  )  [virtual]

bool CLAM::FFT_fftw3::Do ( const Audio in,
Spectrum out 
) [virtual]

Standard FFT Do function, with storage class references as arguments.

This method implements the old conversor routines. The resulting spectrum will be of input audio size / 2 + 1. Input audio must be a power-of-two.

Implements CLAM::FFT_base.

Definition at line 117 of file FFT_fftw3.cxx.

References CLAM::FFT_base::CheckTypes(), CLAM_BEGIN_DEBUG_CHECK, CLAM_DEBUG_ASSERT, CLAM_END_DEBUG_CHECK, CLAM_WARNING, isPowerOfTwo(), CLAM::Processing::IsRunning(), CLAM::FFT_base::mComplexflags, CLAM::FFT_base::mSize, CLAM::FFT_base::mState, CLAM::FFT_base::sComplexSync, CLAM::FFT_base::sOther, CLAM::Spectrum::SynchronizeTo(), and CLAM::FFT_base::ToOther().

bool CLAM::FFT_fftw3::ConcreteConfigure ( const ProcessingConfig  )  [protected, virtual]

Configuration method interface.

The Processing base class forces all the concrete classes derived from it to implement this method, which must actually perform the specific configuration tasks.

Note that the user can not call this method directly. He will use Configure instead. The argument is expected to be an object of the necesary concrete configuration class.

Parameters:
Reference to the configuration object.
Returns:
false if the object is not yet fully configured. (For example, if some important configuration attribute such as number of ports was set to zero in the config object)
true if the processing object is left in a consistent state, and can be executed.
Exceptions:
This method must throw a bad_cast exception if the argument is not an object of the expected configuration class.

Implements CLAM::FFT_base.

Definition at line 72 of file FFT_fftw3.cxx.

References CLAM::Processing::AddConfigErrorMessage(), CLAM::FFT_base::ConcreteConfigure(), and CLAM::FFT_base::mSize.


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

Generated on Tue Aug 12 22:33:48 2008 for CLAM by  doxygen 1.5.5