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