ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

(Inverse) Fast Fourier Transform. More...

#include <fft.h>

Collaboration diagram for Common::FFT:

List of all members.

Public Member Functions

 FFT (int bits, int inverse)
 ~FFT ()
const uint16getRevTab () const
void permute (Complex *z)
 Do the permutation needed BEFORE calling calc().
void calc (Complex *z)
 Do a complex FFT.

Private Member Functions

void fft4 (Complex *z)
void fft8 (Complex *z)
void fft16 (Complex *z)
void fft (int n, int logn, Complex *z)

Static Private Member Functions

static int splitRadixPermutation (int i, int n, int inverse)

Private Attributes

int _bits
int _inverse
uint16_revTab
Complex_expTab
Complex_tmpBuf
int _splitRadix
CosineTable_cosTables [13]

Detailed Description

(Inverse) Fast Fourier Transform.

Used in engines:

  • scumm

Definition at line 45 of file fft.h.


Constructor & Destructor Documentation

Common::FFT::FFT ( int  bits,
int  inverse 
)

Definition at line 36 of file fft.cpp.

Common::FFT::~FFT (  ) 

Definition at line 61 of file fft.cpp.


Member Function Documentation

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 255 of file fft.cpp.

void Common::FFT::fft ( int  n,
int  logn,
Complex z 
) [private]

Definition at line 232 of file fft.cpp.

void Common::FFT::fft16 ( Complex z  )  [private]

Definition at line 216 of file fft.cpp.

void Common::FFT::fft4 ( Complex z  )  [private]

Definition at line 184 of file fft.cpp.

void Common::FFT::fft8 ( Complex z  )  [private]

Definition at line 197 of file fft.cpp.

const uint16 * Common::FFT::getRevTab (  )  const

Definition at line 71 of file fft.cpp.

void Common::FFT::permute ( Complex z  ) 

Do the permutation needed BEFORE calling calc().

Definition at line 75 of file fft.cpp.

int Common::FFT::splitRadixPermutation ( int  i,
int  n,
int  inverse 
) [static, private]

Definition at line 96 of file fft.cpp.


Member Data Documentation

int Common::FFT::_bits [private]

Definition at line 63 of file fft.h.

Definition at line 75 of file fft.h.

Definition at line 68 of file fft.h.

int Common::FFT::_inverse [private]

Definition at line 64 of file fft.h.

Definition at line 66 of file fft.h.

int Common::FFT::_splitRadix [private]

Definition at line 71 of file fft.h.

Definition at line 69 of file fft.h.


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


Generated on Sat Jul 20 2019 05:02:43 for ResidualVM by doxygen 1.7.1
curved edge   curved edge