X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FInterface%2FMesh.h;h=4d1f8fd3494a0146cb1b92398a578d66d373c5ce;hb=6ffc11d77924d6ab7e94db95d41105982ac73e00;hp=805b8a1d66b76d158b4b84fe5df002cb5bb66693;hpb=2d96cce7bcab0bdcd9e93e44ed413c47388151d9;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Mesh.h b/lib/cpPlugins/Interface/Mesh.h index 805b8a1..4d1f8fd 100644 --- a/lib/cpPlugins/Interface/Mesh.h +++ b/lib/cpPlugins/Interface/Mesh.h @@ -1,13 +1,10 @@ #ifndef __CPPLUGINS__INTERFACE__MESH__H__ #define __CPPLUGINS__INTERFACE__MESH__H__ -#include -#include -#include -#include #include -class vtkMapper; +// Some forward declarations +class vtkObject; namespace cpPlugins { @@ -19,34 +16,39 @@ namespace cpPlugins : public DataObject { public: - typedef Mesh Self; - typedef DataObject Superclass; + typedef Mesh Self; + typedef DataObject Superclass; + typedef itk::SmartPointer< Self > Pointer; + typedef itk::SmartPointer< const Self > ConstPointer; public: - Mesh( ); - virtual ~Mesh( ); - - virtual std::string GetClassName( ) const; - virtual void SetDataObject( itk::DataObject* dobj ); + itkNewMacro( Self ); + itkTypeMacro( Mesh, DataObject ); + cpPlugins_Id_Macro( Mesh, DataObject ); - vtkMapper* GetVTKMapper( ) const; + public: + virtual void SetITK( itk::LightObject* o ); + virtual void SetVTK( vtkObjectBase* o ); protected: + Mesh( ); + virtual ~Mesh( ); + template< class M > - void _Map( ); + inline void _ITK_2_VTK( itk::LightObject* o ); - protected: - /* - itk::ProcessObject::Pointer m_Mesh2VTKMeshData; - vtkMeshData* m_VTKMeshData; - */ - vtkMapper* m_Mapper; + private: + // Purposely not implemented + Mesh( const Self& ); + Self& operator=( const Self& ); }; } // ecapseman } // ecapseman +#include + #endif // __CPPLUGINS__INTERFACE__MESH__H__ // eof - $RCSfile$