annotate dsp/transforms/kissfft/kiss_fftr.h @ 80:a5eae96a357c

* Fix idiotic bug that causes onset detector not to work as well as it did
author cannam
date Thu, 15 Oct 2009 16:09:13 +0000
parents 6cb2b3cd5356
children
rev   line source
cannam@64 1 #ifndef KISS_FTR_H
cannam@64 2 #define KISS_FTR_H
cannam@64 3
cannam@64 4 #include "kiss_fft.h"
cannam@64 5 #ifdef __cplusplus
cannam@64 6 extern "C" {
cannam@64 7 #endif
cannam@64 8
cannam@64 9
cannam@64 10 /*
cannam@64 11
cannam@64 12 Real optimized version can save about 45% cpu time vs. complex fft of a real seq.
cannam@64 13
cannam@64 14
cannam@64 15
cannam@64 16 */
cannam@64 17
cannam@64 18 typedef struct kiss_fftr_state *kiss_fftr_cfg;
cannam@64 19
cannam@64 20
cannam@64 21 kiss_fftr_cfg kiss_fftr_alloc(int nfft,int inverse_fft,void * mem, size_t * lenmem);
cannam@64 22 /*
cannam@64 23 nfft must be even
cannam@64 24
cannam@64 25 If you don't care to allocate space, use mem = lenmem = NULL
cannam@64 26 */
cannam@64 27
cannam@64 28
cannam@64 29 void kiss_fftr(kiss_fftr_cfg cfg,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata);
cannam@64 30 /*
cannam@64 31 input timedata has nfft scalar points
cannam@64 32 output freqdata has nfft/2+1 complex points
cannam@64 33 */
cannam@64 34
cannam@64 35 void kiss_fftri(kiss_fftr_cfg cfg,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata);
cannam@64 36 /*
cannam@64 37 input freqdata has nfft/2+1 complex points
cannam@64 38 output timedata has nfft scalar points
cannam@64 39 */
cannam@64 40
cannam@64 41 #define kiss_fftr_free free
cannam@64 42
cannam@64 43 #ifdef __cplusplus
cannam@64 44 }
cannam@64 45 #endif
cannam@64 46 #endif