30 static int fitLength(
int length);
31 int length()
const {
return m_fftlen;}
34 typedef double (*twindowfunc)(
double x);
35 static double windowFuncRect(
double x);
36 static double windowFuncTri(
double x);
37 static double windowFuncHanning(
double x);
38 static double windowFuncHamming(
double x);
39 static double windowFuncFlatTop(
double x);
40 static double windowFuncBlackman(
double x);
41 static double windowFuncBlackmanHarris(
double x);
42 static double windowFuncKaiser(
double x,
double alpha);
43 static double windowFuncKaiser1(
double x);
44 static double windowFuncKaiser2(
double x);
45 static double windowFuncKaiser3(
double x);
46 static double windowFuncFlatTopLong(
double x);
47 static double windowFuncFlatTopLongLong(
double x);
48 static double windowFuncHalfSin(
double x);
51 shared_ptr<fftw_plan> m_fftplan;
60 FFT(
int sign,
int length);
63 void exec(
const std::vector<std::complex<double> >& wavein,
64 std::vector<std::complex<double> >& waveout);
66 fftw_complex *m_pBufin, *m_pBufout;
77 void exec(
const std::vector<double>& wavein,
78 std::vector<std::complex<double> >& waveout);
81 fftw_complex *m_pBufout;
92 void exec(
const std::vector<std::complex<double> >& wavein,
93 std::vector<double>& waveout);
96 fftw_complex *m_pBufin;