// -------------------------------------------------------------------------
template< unsigned int D >
-void cpPlugins::Interface::Image::
+bool cpPlugins::Interface::Image::
_ITK_2_VTK_0( itk::LightObject* o )
{
+ bool s = false;
if( dynamic_cast< itk::ImageBase< D >* >( o ) != NULL )
{
- this->_ITK_2_VTK_1< char, D >( o );
- this->_ITK_2_VTK_1< short, D >( o );
- this->_ITK_2_VTK_1< int, D >( o );
- this->_ITK_2_VTK_1< long, D >( o );
- this->_ITK_2_VTK_1< unsigned char, D >( o );
- this->_ITK_2_VTK_1< unsigned short, D >( o );
- this->_ITK_2_VTK_1< unsigned int, D >( o );
- this->_ITK_2_VTK_1< unsigned long, D >( o );
- this->_ITK_2_VTK_1< float, D >( o );
- this->_ITK_2_VTK_1< double, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< char >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< short >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< int >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< long >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< unsigned char >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< unsigned short >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< unsigned int >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< unsigned long >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< float >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBPixel< double >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< char >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< short >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< int >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< long >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned char >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned short >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned int >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned long >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< float >, D >( o );
- this->_ITK_2_VTK_1< itk::RGBAPixel< double >, D >( o );
- this->_ITK_2_VTK_1< itk::DiffusionTensor3D< float >, D >( o );
- this->_ITK_2_VTK_1< itk::DiffusionTensor3D< double >, D >( o );
- this->_ITK_2_VTK_1< itk::Vector< float, D >, D >( o );
- this->_ITK_2_VTK_1< itk::Vector< double, D >, D >( o );
- this->_ITK_2_VTK_1< itk::CovariantVector< float, D >, D >( o );
- this->_ITK_2_VTK_1< itk::CovariantVector< double, D >, D >( o );
- this->_ITK_2_VTK_1< itk::Point< float, D >, D >( o );
- this->_ITK_2_VTK_1< itk::Point< double, D >, D >( o );
- this->_ITK_2_VTK_1< itk::SymmetricSecondRankTensor< float, D >, D >( o );
- this->_ITK_2_VTK_1< itk::SymmetricSecondRankTensor< double, D >, D >( o );
- }
- else
- {
- this->m_VTKObject = NULL;
- this->m_ITKvVTK = NULL;
- this->Modified( );
+ s |= this->_ITK_2_VTK_1< char, D >( o );
+ s |= this->_ITK_2_VTK_1< short, D >( o );
+ s |= this->_ITK_2_VTK_1< int, D >( o );
+ s |= this->_ITK_2_VTK_1< long, D >( o );
+ s |= this->_ITK_2_VTK_1< unsigned char, D >( o );
+ s |= this->_ITK_2_VTK_1< unsigned short, D >( o );
+ s |= this->_ITK_2_VTK_1< unsigned int, D >( o );
+ s |= this->_ITK_2_VTK_1< unsigned long, D >( o );
+ s |= this->_ITK_2_VTK_1< float, D >( o );
+ s |= this->_ITK_2_VTK_1< double, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< char >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< short >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< int >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< long >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< unsigned char >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< unsigned short >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< unsigned int >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< unsigned long >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< float >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBPixel< double >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< char >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< short >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< int >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< long >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned char >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned short >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned int >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< unsigned long >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< float >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::RGBAPixel< double >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::DiffusionTensor3D< float >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::DiffusionTensor3D< double >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::Vector< float, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::Vector< double, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::CovariantVector< float, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::CovariantVector< double, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::Point< float, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::Point< double, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::SymmetricSecondRankTensor< float, D >, D >( o );
+ s |= this->_ITK_2_VTK_1< itk::SymmetricSecondRankTensor< double, D >, D >( o );
} // fi
+ return( s );
}
// -------------------------------------------------------------------------
template< class P, unsigned int D >
-void cpPlugins::Interface::Image::
+bool cpPlugins::Interface::Image::
_ITK_2_VTK_1( itk::LightObject* o )
{
- if( dynamic_cast< itk::Image< P, D >* >( o ) == NULL )
- {
- this->m_VTKObject = NULL;
- this->m_ITKvVTK = NULL;
- this->Modified( );
- }
+ if( dynamic_cast< itk::Image< P, D >* >( o ) != NULL )
+ return( this->_ITK_2_VTK_2< itk::Image< P, D > >( o ) );
else
- this->_ITK_2_VTK_2< itk::Image< P, D > >( o );
+ return( false );
}
// -------------------------------------------------------------------------
template< class I >
-void cpPlugins::Interface::Image::
+bool cpPlugins::Interface::Image::
_ITK_2_VTK_2( itk::LightObject* o )
{
typedef itk::ImageToVTKImageFilter< I > _I2V;
// Keep object track
this->m_ITKObject = o;
this->m_VTKObject = f->GetOutput( );
+ return( true );
}
else
- {
- this->m_VTKObject = NULL;
- this->m_ITKvVTK = NULL;
-
- } // fi
- this->Modified( );
+ return( false );
}
#ifndef cpPlugins_Interface_EXPORTS