#include <cpPlugins/Interface/DataObject.h>
+
+#include <cpPlugins/Interface/ProcessObject.h>
+#include <itkDataObject.h>
#include <vtkImageData.h>
#include <vtkPolyData.h>
// -------------------------------------------------------------------------
-itk::DataObject* cpPlugins::Interface::DataObject::
-GetITKDataObject( )
-{
- return( this->m_ITKObject.GetPointer( ) );
-}
-
-// -------------------------------------------------------------------------
-const itk::DataObject* cpPlugins::Interface::DataObject::
-GetITKDataObject( ) const
-{
- return( this->m_ITKObject.GetPointer( ) );
-}
-
-// -------------------------------------------------------------------------
-vtkDataObject* cpPlugins::Interface::DataObject::
-GetVTKDataObject( )
-{
- return( this->m_VTKObject.GetPointer( ) );
-}
-
-// -------------------------------------------------------------------------
-const vtkDataObject* cpPlugins::Interface::DataObject::
-GetVTKDataObject( ) const
-{
- return( this->m_VTKObject.GetPointer( ) );
-}
-
-// -------------------------------------------------------------------------
-cpPlugins::Interface::Object* cpPlugins::Interface::DataObject::
+cpPlugins::Interface::ProcessObject* cpPlugins::Interface::DataObject::
GetSource( )
{
return( this->m_Source );
}
// -------------------------------------------------------------------------
-const cpPlugins::Interface::Object* cpPlugins::Interface::DataObject::
+const cpPlugins::Interface::ProcessObject* cpPlugins::Interface::DataObject::
GetSource( ) const
{
return( this->m_Source );
// -------------------------------------------------------------------------
void cpPlugins::Interface::DataObject::
-SetSource( cpPlugins::Interface::Object* src )
+SetSource( cpPlugins::Interface::ProcessObject* src )
{
- if( this->m_Source.GetPointer( ) != src )
+ if( this->m_Source != src )
{
this->m_Source = src;
this->Modified( );
void cpPlugins::Interface::DataObject::
DisconnectPipeline( )
{
- if( this->m_ITKObject.IsNotNull( ) )
- {
- // Disconnect input pipelines
- this->m_ITKObject->DisconnectPipeline( );
- vtkImageData* vtk_image =
- dynamic_cast< vtkImageData* >( this->m_VTKObject.GetPointer( ) );
- vtkPolyData* vtk_pd =
- dynamic_cast< vtkPolyData* >( this->m_VTKObject.GetPointer( ) );
- if( vtk_image != NULL )
- {
- vtkSmartPointer< vtkImageData > d =
- vtkSmartPointer< vtkImageData >::New( );
- d->ShallowCopy( vtk_image );
- this->m_VTKObject = d;
- }
- else if( vtk_pd != NULL )
- {
- vtkSmartPointer< vtkPolyData > d =
- vtkSmartPointer< vtkPolyData >::New( );
- d->ShallowCopy( vtk_pd );
- this->m_VTKObject = d;
+ // Disconnect input pipelines (ITK)
+ itk::DataObject* itk_obj = this->GetITK< itk::DataObject >( );
+ if( itk_obj != NULL )
+ itk_obj->DisconnectPipeline( );
- } // fi
+ // Disconnect input pipelines (VTK)
+ vtkImageData* vtk_image = this->GetVTK< vtkImageData >( );
+ vtkPolyData* vtk_pd = this->GetVTK< vtkPolyData >( );
+ if( vtk_image != NULL )
+ {
+ vtkSmartPointer< vtkImageData > d =
+ vtkSmartPointer< vtkImageData >::New( );
+ d->ShallowCopy( vtk_image );
+ this->m_VTKObject = d;
+ }
+ else if( vtk_pd != NULL )
+ {
+ vtkSmartPointer< vtkPolyData > d =
+ vtkSmartPointer< vtkPolyData >::New( );
+ d->ShallowCopy( vtk_pd );
+ this->m_VTKObject = d;
} // fi
// -------------------------------------------------------------------------
cpPlugins::Interface::DataObject::
DataObject( )
- : Superclass( )
+ : Superclass( ),
+ m_ITKObject( NULL ),
+ m_VTKObject( NULL ),
+ m_Source( NULL )
{
- this->m_ClassName = "cpPlugins::Interface::DataObject";
- this->m_ClassCategory = "BasicObject";
}
// -------------------------------------------------------------------------