aboutsummaryrefslogtreecommitdiff
path: root/src/fft.h
diff options
context:
space:
mode:
authorJamie Bullock <jamie@jamiebullock.com>2013-01-09 23:09:34 +0000
committerJamie Bullock <jamie@jamiebullock.com>2013-01-09 23:09:34 +0000
commit9c106a6004ffcfb55f0036535982fb118a3b2718 (patch)
tree87279a20edfd43c3cb761c8cd216bd9c7661e5b0 /src/fft.h
parent7982c434bb9f85f6a08d7353b63b7ee2a939e7ff (diff)
downloadLibXtract-9c106a6004ffcfb55f0036535982fb118a3b2718.tar.gz
LibXtract-9c106a6004ffcfb55f0036535982fb118a3b2718.tar.bz2
LibXtract-9c106a6004ffcfb55f0036535982fb118a3b2718.zip
implemented optimised FFT via the Accelerate framework. closes #5
Diffstat (limited to 'src/fft.h')
-rw-r--r--src/fft.h30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/fft.h b/src/fft.h
index 0fba2fb..9126377 100644
--- a/src/fft.h
+++ b/src/fft.h
@@ -21,4 +21,34 @@
*
*/
+#ifndef FFT_H
+#define FFT_H
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
+#ifdef USE_OOURA
#include "ooura/fftsg.h"
+#else
+#include <Accelerate/Accelerate.h>
+#endif
+
+#ifdef USE_OOURA
+typedef struct xtract_ooura_data_
+{
+ int *ooura_ip;
+ double *ooura_w;
+ bool initialised;
+} xtract_ooura_data;
+#else
+typedef struct xtract_vdsp_data_
+{
+ FFTSetupD setup;
+ DSPDoubleSplitComplex fft;
+ vDSP_Length log2N;
+ bool initialised;
+} xtract_vdsp_data;
+#endif
+
+#endif /* Header guard */