source: Sophya/trunk/SophyaExt/IFFTW/fftwserver.h@ 834

Last change on this file since 834 was 765, checked in by ansari, 26 years ago

Reorganisation - Creation du module ExtLib/IFFTW (FFTWServer) - Reza 2/3/2000

File size: 1.6 KB
Line 
1#ifndef FFTWServer_H_SEEN
2#define FFTWServer_H_SEEN
3
4#include "machdefs.h"
5#include "fftservintf.h"
6
7
8// Classe definissant l'interface pour les transformees de Fourier
9// L'implementation par defaut est vide et lance une exception
10
11class FFTWServerPlan;
12
13class FFTWServer : public FFTServerInterface {
14 public:
15 FFTWServer();
16 virtual ~FFTWServer();
17
18
19 virtual FFTServerInterface * Clone();
20
21 // Transformee unidimensionnelle
22 virtual void FFTForward(TVector< complex<double> > const & in, TVector< complex<double> > & out);
23 virtual void FFTBackward(TVector< complex<double> > const & in, TVector< complex<double> > & out);
24 virtual void FFTForward(TVector< double > const & in, TVector< complex<double> > & out);
25 virtual void FFTBackward(TVector< complex<double> > const & in, TVector< double > & out);
26
27 // Transforme 2D
28 virtual void FFTForward(TMatrix< complex<double> > const & in, TMatrix< complex<double> > & out);
29 virtual void FFTBackward(TMatrix< complex<double> > const & in, TMatrix< complex<double> > & out);
30 virtual void FFTForward(TMatrix< double > const & in, TMatrix< complex<double> > & out);
31 virtual void FFTBackward(TMatrix< complex<double> > const & in, TMatrix< double > & out);
32
33// Methodes statiques pour reordonner les donnees
34 virtual void ReShapetoReal( TVector< complex<r_8> > const & in, TVector< r_8 > & out);
35 virtual void ReShapetoCompl(TVector< r_8 > const & in, TVector< complex<r_8> > & out);
36
37 protected:
38 FFTWServerPlan * _p1df;
39 FFTWServerPlan * _p1db;
40 FFTWServerPlan * _p2df;
41 FFTWServerPlan * _p2db;
42
43 FFTWServerPlan * _p1drf;
44 FFTWServerPlan * _p1drb;
45 FFTWServerPlan * _p2drf;
46 FFTWServerPlan * _p2drb;
47};
48
49#endif
Note: See TracBrowser for help on using the repository browser.