Structural deformable models
Fourier.h
Go to the documentation of this file.
1 #ifndef _FOURIER_H_
2 #define _FOURIER_H_
3 
4 #include <fftw3.h>
5 
6 class Fourier2D {
7 public:
8  Fourier2D();
9  ~Fourier2D();
10  void initTransform(int xsize, int ysize, double* f, double* F);
11  void destroyTransform();
12  void transform();
13  void transformInv();
14  static int complexX(int sizex) { return (sizex/2+1)*2; }
15  int complexX() const { return complexX(m_SizeX); }
16  int complexY() const { return m_SizeY; }
17  int realX() const { return m_SizeX; }
18  int realY() const { return m_SizeY; }
19 
20 protected:
21  void loadWisdom();
22  void saveWisdom();
23 
24 //--- member variables ---
25  fftw_plan m_Plan2D, m_Plan2Dinv;
29 };
30 
31 #endif
bool m_PlansCreated
Definition: Fourier.h:26
void transform()
Definition: Fourier.cpp:23
int realX() const
Definition: Fourier.h:17
Fourier2D()
Definition: Fourier.cpp:16
void transformInv()
Definition: Fourier.cpp:28
~Fourier2D()
Definition: Fourier.cpp:19
void destroyTransform()
Definition: Fourier.cpp:73
fftw_plan m_Plan2D
Definition: Fourier.h:25
void loadWisdom()
Definition: Fourier.cpp:33
void initTransform(int xsize, int ysize, double *f, double *F)
Definition: Fourier.cpp:53
int realY() const
Definition: Fourier.h:18
static bool s_WisdomModified
Definition: Fourier.h:28
void saveWisdom()
Definition: Fourier.cpp:43
int m_SizeY
Definition: Fourier.h:27
static int complexX(int sizex)
Definition: Fourier.h:14
int complexY() const
Definition: Fourier.h:16
int complexX() const
Definition: Fourier.h:15
fftw_plan m_Plan2Dinv
Definition: Fourier.h:25
int m_SizeX
Definition: Fourier.h:27
static bool s_WisdomLoaded
Definition: Fourier.h:28