vrshoot
diff libs/kissfft/kiss_fftr.h @ 0:b2f14e535253
initial commit
author | John Tsiombikas <nuclear@member.fsf.org> |
---|---|
date | Sat, 01 Feb 2014 19:58:19 +0200 |
parents | |
children |
line diff
1.1 --- /dev/null Thu Jan 01 00:00:00 1970 +0000 1.2 +++ b/libs/kissfft/kiss_fftr.h Sat Feb 01 19:58:19 2014 +0200 1.3 @@ -0,0 +1,46 @@ 1.4 +#ifndef KISS_FTR_H 1.5 +#define KISS_FTR_H 1.6 + 1.7 +#include "kiss_fft.h" 1.8 +#ifdef __cplusplus 1.9 +extern "C" { 1.10 +#endif 1.11 + 1.12 + 1.13 +/* 1.14 + 1.15 + Real optimized version can save about 45% cpu time vs. complex fft of a real seq. 1.16 + 1.17 + 1.18 + 1.19 + */ 1.20 + 1.21 +typedef struct kiss_fftr_state *kiss_fftr_cfg; 1.22 + 1.23 + 1.24 +kiss_fftr_cfg kiss_fftr_alloc(int nfft,int inverse_fft,void * mem, size_t * lenmem); 1.25 +/* 1.26 + nfft must be even 1.27 + 1.28 + If you don't care to allocate space, use mem = lenmem = NULL 1.29 +*/ 1.30 + 1.31 + 1.32 +void kiss_fftr(kiss_fftr_cfg cfg,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata); 1.33 +/* 1.34 + input timedata has nfft scalar points 1.35 + output freqdata has nfft/2+1 complex points 1.36 +*/ 1.37 + 1.38 +void kiss_fftri(kiss_fftr_cfg cfg,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata); 1.39 +/* 1.40 + input freqdata has nfft/2+1 complex points 1.41 + output timedata has nfft scalar points 1.42 +*/ 1.43 + 1.44 +#define kiss_fftr_free free 1.45 + 1.46 +#ifdef __cplusplus 1.47 +} 1.48 +#endif 1.49 +#endif