annotate constant-q-cpp/src/ext/kissfft/tools/kiss_fftr.h @ 372:af71cbdab621 tip

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