X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=lib%2FcpPlugins%2FInterface%2FMesh.h;h=20c56fb2aaaa45e5c6fcc881560bbd76c67dd550;hb=f989f3f91e2a17832652e345928eac26dcfb6d52;hp=805b8a1d66b76d158b4b84fe5df002cb5bb66693;hpb=2d96cce7bcab0bdcd9e93e44ed413c47388151d9;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Mesh.h b/lib/cpPlugins/Interface/Mesh.h index 805b8a1..20c56fb 100644 --- a/lib/cpPlugins/Interface/Mesh.h +++ b/lib/cpPlugins/Interface/Mesh.h @@ -1,13 +1,12 @@ #ifndef __CPPLUGINS__INTERFACE__MESH__H__ #define __CPPLUGINS__INTERFACE__MESH__H__ -#include -#include -#include #include #include -class vtkMapper; +#include +#include +#include namespace cpPlugins { @@ -19,34 +18,45 @@ 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( ); + itkNewMacro( Self ); + itkTypeMacro( Mesh, DataObject ); + + public: + template< class M > + inline void SetITK( itk::Object* object ); - virtual std::string GetClassName( ) const; - virtual void SetDataObject( itk::DataObject* dobj ); + virtual void SetVTK( vtkObject* mesh ); - vtkMapper* GetVTKMapper( ) const; + virtual void CreateVTKActor( ); + virtual vtkActor* GetVTKActor( ); + virtual const vtkActor* GetVTKActor( ) const; protected: - template< class M > - void _Map( ); + Mesh( ); + virtual ~Mesh( ); + + private: + // Purposely not implemented + Mesh( const Self& ); + Self& operator=( const Self& ); protected: - /* - itk::ProcessObject::Pointer m_Mesh2VTKMeshData; - vtkMeshData* m_VTKMeshData; - */ - vtkMapper* m_Mapper; + vtkSmartPointer< vtkActor > m_Actor; + vtkSmartPointer< vtkPolyDataMapper > m_Mapper; }; } // ecapseman } // ecapseman +#include + #endif // __CPPLUGINS__INTERFACE__MESH__H__ // eof - $RCSfile$