Chris@82: /* declarations of common subroutines, etc. for use with FFTW Chris@82: self-test/benchmark program (see bench.c). */ Chris@82: Chris@82: #include "libbench2/bench-user.h" Chris@82: #include "api/fftw3.h" Chris@82: Chris@82: #define CONCAT(prefix, name) prefix ## name Chris@82: #if defined(BENCHFFT_SINGLE) Chris@82: #define FFTW(x) CONCAT(fftwf_, x) Chris@82: #elif defined(BENCHFFT_LDOUBLE) Chris@82: #define FFTW(x) CONCAT(fftwl_, x) Chris@82: #elif defined(BENCHFFT_QUAD) Chris@82: #define FFTW(x) CONCAT(fftwq_, x) Chris@82: #else Chris@82: #define FFTW(x) CONCAT(fftw_, x) Chris@82: #endif Chris@82: Chris@82: #ifdef __cplusplus Chris@82: extern "C" Chris@82: { Chris@82: #endif /* __cplusplus */ Chris@82: Chris@82: extern FFTW(plan) mkplan(bench_problem *p, unsigned flags); Chris@82: extern void initial_cleanup(void); Chris@82: extern void final_cleanup(void); Chris@82: extern int import_wisdom(FILE *f); Chris@82: extern void export_wisdom(FILE *f); Chris@82: Chris@82: #if defined(HAVE_THREADS) || defined(HAVE_OPENMP) Chris@82: # define HAVE_SMP Chris@82: extern int threads_ok; Chris@82: #endif Chris@82: Chris@82: #ifdef __cplusplus Chris@82: } /* extern "C" */ Chris@82: #endif /* __cplusplus */ Chris@82: