]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/Mesh.h
92c3c452e378fdd4598d0059855a0a616f4b6ba4
[cpPlugins.git] / lib / cpPlugins / Interface / Mesh.h
1 #ifndef __CPPLUGINS__INTERFACE__MESH__H__
2 #define __CPPLUGINS__INTERFACE__MESH__H__
3
4 #include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
5 #include <cpPlugins/Interface/DataObject.h>
6
7 namespace cpPlugins
8 {
9   namespace Interface
10   {
11     /**
12      */
13     class cpPlugins_Interface_EXPORT Mesh
14       : public DataObject
15     {
16     public:
17       typedef Mesh                            Self;
18       typedef 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(
26         cpPlugins::Interface::Mesh, "DataObject"
27         );
28
29     public:
30       template< class M >
31         inline void SetITK( itk::Object* object );
32
33       virtual void SetVTK( vtkObject* mesh );
34
35     protected:
36       Mesh( );
37       virtual ~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 #include <cpPlugins/Interface/Mesh.hxx>
50
51 #endif // __CPPLUGINS__INTERFACE__MESH__H__
52
53 // eof - $RCSfile$