#include <map>
#include <string>
-#include <itkDataObject.h>
+#include <vtkDataObject.h>
+#include <vtkSmartPointer.h>
#include <cpPlugins/Interface/cpPlugins_Interface_Export.h>
#include <cpPlugins/Interface/Object.h>
+#define ITK_MANUAL_INSTANTIATION
+#include <itkDataObject.h>
+
namespace cpPlugins
{
namespace Interface
typedef itk::SmartPointer< const Self > ConstPointer;
public:
- itkNewMacro( Self );
itkTypeMacro( DataObject, Object );
public:
- virtual std::string GetClassName( ) const;
- virtual std::string GetClassType( ) const;
+ virtual itk::DataObject* GetITKDataObject( );
+ virtual const itk::DataObject* GetITKDataObject( ) const;
+ virtual void SetITKDataObject( itk::DataObject* o ) = 0;
- itk::DataObject* GetRealDataObject( ) const;
- virtual void SetRealDataObject( itk::DataObject* dobj );
+ virtual vtkDataObject* GetVTKDataObject( );
+ virtual const vtkDataObject* GetVTKDataObject( ) const;
+ virtual void SetVTKDataObject( vtkDataObject* o ) = 0;
Object* GetSource( );
const Object* GetSource( ) const;
Self& operator=( const Self& );
protected:
- itk::DataObject::Pointer m_RealDataObject;
- Object::Pointer m_Source;
+ itk::DataObject::Pointer m_ITKObject;
+ vtkSmartPointer< vtkDataObject > m_VTKObject;
+ Object::Pointer m_Source;
};
} // ecapseman