]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/DataObjects/Mesh.h
...
[cpPlugins.git] / lib / cpPlugins / DataObjects / Mesh.h
1 #ifndef __cpPlugins__DataObjects__Mesh__h__
2 #define __cpPlugins__DataObjects__Mesh__h__
3
4 #include <cpPlugins/BaseObjects/DataObject.h>
5 #include <cpPlugins/DataObjects/Mesh_Demanglers.h>
6
7 namespace cpPlugins
8 {
9   namespace DataObjects
10   {
11     /**
12      */
13     class cpPlugins_EXPORT Mesh
14       : public cpPlugins::BaseObjects::DataObject
15     {
16     public:
17       typedef Mesh                               Self;
18       typedef cpPlugins::BaseObjects::DataObject Superclass;
19       typedef itk::SmartPointer< Self >          Pointer;
20       typedef itk::SmartPointer< const Self >    ConstPointer;
21
22     public:
23       itkNewMacro( Self );
24       itkTypeMacro( Mesh, DataObject );
25       cpPlugins_Id_Macro( Mesh, Object );
26       cpPlugins_Compatibility_Macro;
27
28     public:
29       virtual void SetITK( itk::LightObject* o ) cpPlugins_OVERRIDE;
30       virtual void SetVTK( vtkObjectBase* o ) cpPlugins_OVERRIDE;
31
32     protected:
33       Mesh( );
34       virtual ~Mesh( );
35
36       template< class _TMesh >
37       inline void _ITK_2_VTK( _TMesh* mesh );
38
39     private:
40       // Purposely not implemented
41       Mesh( const Self& );
42       Self& operator=( const Self& );
43     };
44
45   } // ecapseman
46
47 } // ecapseman
48
49 #endif // __cpPlugins__DataObjects__Mesh__h__
50
51 // eof - $RCSfile$