ex

Fork of mbed-os-example-mbed5-blinky by mbed-os-examples

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers kiss_fftr.h Source File

kiss_fftr.h

00001 #ifndef KISS_FTR_H
00002 #define KISS_FTR_H
00003 
00004 #include "kiss_fft.h"
00005 #ifdef __cplusplus
00006 extern "C" {
00007 #endif
00008 
00009     
00010 /* 
00011  
00012  Real optimized version can save about 45% cpu time vs. complex fft of a real seq.
00013 
00014  
00015  
00016  */
00017 
00018 typedef struct kiss_fftr_state *kiss_fftr_cfg;
00019 
00020 
00021 kiss_fftr_cfg kiss_fftr_alloc(int nfft,int inverse_fft,void * mem, size_t * lenmem);
00022 /*
00023  nfft must be even
00024 
00025  If you don't care to allocate space, use mem = lenmem = NULL 
00026 */
00027 
00028 
00029 void kiss_fftr(kiss_fftr_cfg cfg,const kiss_fft_scalar *timedata,kiss_fft_cpx *freqdata);
00030 /*
00031  input timedata has nfft scalar points
00032  output freqdata has nfft/2+1 complex points
00033 */
00034 
00035 void kiss_fftr2(kiss_fftr_cfg st,const kiss_fft_scalar *timedata,kiss_fft_scalar *freqdata);
00036 
00037 void kiss_fftri(kiss_fftr_cfg cfg,const kiss_fft_cpx *freqdata,kiss_fft_scalar *timedata);
00038 
00039 void kiss_fftri2(kiss_fftr_cfg st,const kiss_fft_scalar *freqdata, kiss_fft_scalar *timedata);
00040 
00041 /*
00042  input freqdata has  nfft/2+1 complex points
00043  output timedata has nfft scalar points
00044 */
00045 
00046 #define kiss_fftr_free speex_free
00047 
00048 #ifdef __cplusplus
00049 }
00050 #endif
00051 #endif