xoreos
0.0.5
|
(Inverse) Fast Fourier Transform. More...
#include <fft.h>
Public Member Functions | |
FFT (int bits, bool inverse) | |
~FFT () | |
const uint16 * | getRevTab () const |
void | permute (Complex *z) |
Do the permutation needed BEFORE calling calc(). More... | |
void | calc (Complex *z) |
Do a complex FFT. More... | |
Static Private Member Functions | |
static int | splitRadixPermutation (int i, int n, bool inverse) |
Private Attributes | |
int | _bits |
bool | _inverse |
ScopedArray< uint16 > | _revTab |
ScopedArray< Complex > | _expTab |
ScopedArray< Complex > | _tmpBuf |
Common::FFT::FFT | ( | int | bits, |
bool | inverse | ||
) |
Definition at line 63 of file fft.cpp.
References _bits, _expTab, _inverse, _revTab, _tmpBuf, Common::ScopedPtrBase< T, Deallocator >::reset(), and splitRadixPermutation().
void Common::FFT::calc | ( | Complex * | z | ) |
Do a complex FFT.
The input data must be permuted before. No 1.0/sqrt(n) normalization is done.
Definition at line 271 of file fft.cpp.
References _bits, and Common::fft_dispatch.
const uint16 * Common::FFT::getRevTab | ( | ) | const |
Definition at line 79 of file fft.cpp.
References _revTab, and Common::ScopedPtrBase< T, Deallocator >::get().
void Common::FFT::permute | ( | Complex * | z | ) |
|
staticprivate |
|
private |
|
private |
|
private |
Definition at line 87 of file fft.h.
Referenced by FFT(), getRevTab(), and permute().
|
private |