SpectMorph
smfft.hh
1 // Licensed GNU LGPL v3 or later: http://www.gnu.org/licenses/lgpl.html
2 
3 #ifndef SPECTMORPH_FFT_HH
4 #define SPECTMORPH_FFT_HH
5 
6 #include <sys/types.h>
7 
8 namespace SpectMorph
9 {
10 
11 namespace FFT
12 {
13 
14 float *new_array_float (size_t N);
15 void free_array_float (float *f);
16 
17 enum PlanMode { PLAN_PATIENT, PLAN_ESTIMATE };
18 
19 void fftar_float (size_t N, float *in, float *out, PlanMode plan_mode = PLAN_PATIENT);
20 void fftsr_float (size_t N, float *in, float *out, PlanMode plan_mode = PLAN_PATIENT);
21 void fftsr_destructive_float (size_t N, float *in, float *out, PlanMode plan_mode = PLAN_PATIENT);
22 void fftac_float (size_t N, float *in, float *out, PlanMode plan_mode = PLAN_PATIENT);
23 void fftsc_float (size_t N, float *in, float *out, PlanMode plan_mode = PLAN_PATIENT);
24 
25 void use_gsl_fft (bool enabled);
26 void debug_randomize_new_arrays (bool enabled);
27 
28 void load_wisdom();
29 
30 }
31 
32 }
33 
34 #endif
Definition: smalignedarray.cc:7