|
OpenWareLaboratory
|
This class performs direct and inverse Fast Fourier Transform. More...
Public Member Functions | |
| FastFourierTransform () | |
| Default constructor. More... | |
| FastFourierTransform (size_t aSize) | |
| Construct and initialize the instance. More... | |
| void | fft (FloatArray input, ComplexFloatArray output) |
| Perform the direct FFT. More... | |
| size_t | getSize () |
| Get the size of the FFT. More... | |
| void | ifft (ComplexFloatArray input, FloatArray output) |
| Perform the inverse FFT. More... | |
| void | init (size_t aSize) |
| Initialize the instance. More... | |
| ~FastFourierTransform () | |
Static Public Member Functions | |
| static FastFourierTransform * | create (size_t blocksize) |
| static void | destroy (FastFourierTransform *obj) |
This class performs direct and inverse Fast Fourier Transform.
Definition at line 14 of file FastFourierTransform.h.
| FastFourierTransform::FastFourierTransform | ( | ) |
Default constructor.
Does not initialize the instance.
Definition at line 42 of file FastFourierTransform.cpp.
Referenced by create().
| FastFourierTransform::FastFourierTransform | ( | size_t | aSize | ) |
Construct and initialize the instance.
| [in] | aSize | The size of the FFT |
Definition at line 44 of file FastFourierTransform.cpp.
References init().
| FastFourierTransform::~FastFourierTransform | ( | ) |
Definition at line 48 of file FastFourierTransform.cpp.
References ComplexFloatArray::destroy().
|
static |
Definition at line 87 of file FastFourierTransform.cpp.
References FastFourierTransform().
|
static |
Definition at line 91 of file FastFourierTransform.cpp.
| void FastFourierTransform::fft | ( | FloatArray | input, |
| ComplexFloatArray | output | ||
| ) |
Perform the direct FFT.
| [in] | input | The real-valued input array |
| [out] | output | The complex-valued output array |
Definition at line 61 of file FastFourierTransform.cpp.
References ASSERT, SimpleArray< T >::getData(), getSize(), SimpleArray< T >::getSize(), ComplexFloatArray::im(), and ComplexFloatArray::re().
Referenced by FourierPitchDetector::process().
| size_t FastFourierTransform::getSize | ( | ) |
Get the size of the FFT.
Definition at line 81 of file FastFourierTransform.cpp.
References SimpleArray< T >::getSize().
Referenced by fft(), FourierPitchDetector::getSize(), ifft(), and FourierPitchDetector::process().
| void FastFourierTransform::ifft | ( | ComplexFloatArray | input, |
| FloatArray | output | ||
| ) |
Perform the inverse FFT.
The output is rescaled by 1/fftSize.
| [in] | input | The complex-valued input array |
| [out] | output | The real-valued output array |
Definition at line 71 of file FastFourierTransform.cpp.
References ASSERT, SimpleArray< T >::getData(), getSize(), SimpleArray< T >::getSize(), and ComplexFloatArray::re().
| void FastFourierTransform::init | ( | size_t | aSize | ) |
Initialize the instance.
| aSize | The size of the FFT |
Definition at line 54 of file FastFourierTransform.cpp.
References ASSERT, and ComplexFloatArray::create().
Referenced by FastFourierTransform(), and FourierPitchDetector::init().