00001 // -*- Mode: C++; tab-width: 2; -*- 00002 // vi: set ts=2: 00003 // 00004 00005 #ifndef BALL_MATHS_FFTWCOMMON_H 00006 #define BALL_MATHS_FFTWCOMMON_H 00007 00008 #ifndef BALL_COMMON_H 00009 # include <BALL/common.h> 00010 #endif 00011 00012 #include <fftw3.h> 00013 00014 namespace BALL 00015 { 00016 struct BALL_EXPORT DoubleTraits 00017 { 00018 typedef double ComplexPrecision; 00019 typedef fftw_plan FftwPlan; 00020 }; 00021 00022 struct BALL_EXPORT FloatTraits 00023 { 00024 typedef float ComplexPrecision; 00025 typedef fftwf_plan FftwPlan; 00026 }; 00027 00028 struct BALL_EXPORT LongDoubleTraits 00029 { 00030 typedef long double ComplexPrecision; 00031 typedef fftwl_plan FftwPlan; 00032 }; 00033 } 00034 00035 #endif