]> Creatis software - cpMesh.git/blob - lib/cpm/Algorithms/QuadEdge/MeshToDualFilter.h
First commit
[cpMesh.git] / lib / cpm / Algorithms / QuadEdge / MeshToDualFilter.h
1 #ifndef __CPM__ALGORITHMS__QUADEDGE__MESHTODUALFILTER__H__
2 #define __CPM__ALGORITHMS__QUADEDGE__MESHTODUALFILTER__H__
3
4 #include <itkMeshToMeshFilter.h>
5
6 namespace cpm
7 {
8   namespace Algorithms
9   {
10     namespace QuadEdge
11     {
12       /**
13        */
14       template< class I, class O = I >
15       class MeshToDualFilter
16         : public itk::MeshToMeshFilter< I, O >
17       {
18       public:
19         typedef MeshToDualFilter    Self;
20         typedef itk::MeshToMeshFilter< I, O >   Superclass;
21         typedef itk::SmartPointer< Self >       Pointer;
22         typedef itk::SmartPointer< const Self > ConstPointer;
23
24         typedef I TInputMesh;
25         typedef O TOutputMesh;
26         // TODO: typedef F TFunction;
27
28         typedef typename I::PointIdentifier TPointId;
29
30       public:
31         itkNewMacro( Self );
32         itkTypeMacro( MeshToDualFilter, itkMeshToMeshFilter );
33
34         /* TODO
35            itkGetObjectMacro( Function, F );
36            itkSetObjectMacro( Function, F );
37         */
38
39       protected:
40         MeshToDualFilter( );
41         virtual ~MeshToDualFilter( );
42
43         void GenerateData( );
44
45       private:
46         MeshToDualFilter( const Self& );
47         Self& operator=( const Self& );
48
49       protected:
50         // TODO: typename F::Pointer m_Function;
51       };
52
53     } // ecapseman
54
55   } // ecapseman
56
57 } // ecapseman
58
59 #include <cpm/Algorithms/QuadEdge/MeshToDualFilter.hxx>
60
61 #endif // __CPM__ALGORITHMS__QUADEDGE__MESHTODUALFILTER__H__
62
63 // eof - $RCSfile$