#include #include #include // ------------------------------------------------------------------------- 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:: GetSource( ) { return( this->m_Source ); } // ------------------------------------------------------------------------- const cpPlugins::Interface::Object* cpPlugins::Interface::DataObject:: GetSource( ) const { return( this->m_Source ); } // ------------------------------------------------------------------------- void cpPlugins::Interface::DataObject:: SetSource( cpPlugins::Interface::Object* src ) { if( this->m_Source.GetPointer( ) != src ) { this->m_Source = src; this->Modified( ); } // fi } // ------------------------------------------------------------------------- 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; } // fi // Unbind source if( this->m_Source.IsNotNull( ) ) this->m_Source->Delete( ); this->Register( ); } // fi } // ------------------------------------------------------------------------- cpPlugins::Interface::DataObject:: DataObject( ) : Superclass( ) { this->m_ClassName = "cpPlugins::Interface::DataObject"; this->m_ClassCategory = "BasicObject"; } // ------------------------------------------------------------------------- cpPlugins::Interface::DataObject:: ~DataObject( ) { } // eof - $RCSfile$