annotate src/ext/kissfft/tools/kiss_fftr.h @ 196:da283326bcd3 tip master

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