#ifndef __CPPLUGINS__INTERFACE__MESH__H__
#define __CPPLUGINS__INTERFACE__MESH__H__
-#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
#include <cpPlugins/Interface/DataObject.h>
-#include <vtkSmartPointer.h>
-#include <vtkActor.h>
-#include <vtkPolyData.h>
-#include <vtkPolyDataMapper.h>
+// Some forward declarations
+class vtkObject;
namespace cpPlugins
{
public:
itkNewMacro( Self );
itkTypeMacro( Mesh, DataObject );
+ cpPlugins_Id_Macro( Mesh, DataObject );
public:
template< class M >
- inline void SetITKMesh( itk::DataObject* object );
+ inline void SetITK( itk::Object* object );
- template< class M >
- inline M* GetITKMesh( );
-
- template< class M >
- inline const M* GetITKMesh( ) const;
-
- virtual void SetVTKMesh( vtkPolyData* mesh );
- virtual vtkPolyData* GetVTKMesh( );
- virtual const vtkPolyData* GetVTKMesh( ) const;
- virtual vtkActor* GetVTKActor( );
- virtual const vtkActor* GetVTKActor( ) const;
+ virtual void SetVTK( vtkObject* mesh );
protected:
Mesh( );
// Purposely not implemented
Mesh( const Self& );
Self& operator=( const Self& );
-
- protected:
- vtkSmartPointer< vtkActor > m_Actor;
- vtkSmartPointer< vtkPolyDataMapper > m_Mapper;
};
} // ecapseman