diff options
author | Filippos Karapetis | 2012-04-19 01:13:47 -0700 |
---|---|---|
committer | Filippos Karapetis | 2012-04-19 01:13:47 -0700 |
commit | a1618c215ba4b731c61df39a0eb31fc8028d34ed (patch) | |
tree | 324929ba691765db61d7012b5eb75c87f7eb1d3e /common/fft.h | |
parent | 677806a4e97033a3e35559cf2a1da7ba45b0b72c (diff) | |
parent | 0f66d2c701958dc70ed57b570a7f59965a90bf66 (diff) | |
download | scummvm-rg350-a1618c215ba4b731c61df39a0eb31fc8028d34ed.tar.gz scummvm-rg350-a1618c215ba4b731c61df39a0eb31fc8028d34ed.tar.bz2 scummvm-rg350-a1618c215ba4b731c61df39a0eb31fc8028d34ed.zip |
Merge pull request #226 from digitall/sincos
Replace large static Sin and Cos tables with dynamically generated ones.
Diffstat (limited to 'common/fft.h')
-rw-r--r-- | common/fft.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/common/fft.h b/common/fft.h index e77c53c2a7..bc58f1dded 100644 --- a/common/fft.h +++ b/common/fft.h @@ -34,6 +34,8 @@ namespace Common { +class CosineTable; + /** * (Inverse) Fast Fourier Transform. * @@ -64,13 +66,17 @@ private: Complex *_expTab; Complex *_tmpBuf; - const float *_tSin; - const float *_tCos; - int _splitRadix; int _permutation; static int splitRadixPermutation(int i, int n, int inverse); + + CosineTable *_cosTables[13]; + + void fft4(Complex *z); + void fft8(Complex *z); + void fft16(Complex *z); + void fft(int n, int logn, Complex *z); }; } // End of namespace Common |