X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FcpPlugins%2FInterface%2FInstances_itkImage.cxx;h=855c2f673903beb144b5c7c4dcac09dfacad26ba;hb=7caa01f9eacc4861ba7d5d9ed16872d60328088f;hp=a040f449480311324908cf46954846a5f02b5757;hpb=75740198fa0c55f8fdcd8b33ddff00071c893a94;p=cpPlugins.git diff --git a/lib/cpPlugins/Interface/Instances_itkImage.cxx b/lib/cpPlugins/Interface/Instances_itkImage.cxx index a040f44..855c2f6 100644 --- a/lib/cpPlugins/Interface/Instances_itkImage.cxx +++ b/lib/cpPlugins/Interface/Instances_itkImage.cxx @@ -2,6 +2,7 @@ #include +#undef ITK_MANUAL_INSTANTIATION #include #include @@ -14,164 +15,132 @@ #include // ------------------------------------------------------------------------- -#define cpPlugins_Image_Export( T, D ) \ - cpPlugins_TEMPLATE_EXPORT( \ - 2(class cpPlugins_Interface_EXPORT itk::Image< T, D >) \ +#define cpPlugins_ITKImage_Export( T, D ) \ + cpPlugins_TEMPLATE_EXPORT( \ + 2(class cpPlugins_Interface_EXPORT itk::Image< T, D >) \ ) // ------------------------------------------------------------------------- -#define cpPlugins_VTKImage_Export( T, D ) \ +#define cpPlugins_ITKArrayImage_Export( A, T, DA, DI ) \ cpPlugins_TEMPLATE_EXPORT( \ - 2( \ - class cpPlugins_Interface_EXPORT \ - itk::ImageToVTKImageFilter< itk::Image< T, D > > \ - ) \ + 3(class cpPlugins_Interface_EXPORT itk::Image< A< T, DA >, DI >) \ ) // ------------------------------------------------------------------------- -#define cpPlugins_ImageArray_Export( A, T, DA, DI ) \ - cpPlugins_TEMPLATE_EXPORT( \ - 3( \ - class cpPlugins_Interface_EXPORT \ - itk::Image< itk::A< T, DA >, DI > \ - ) \ - ) +#define cpPlugins_ITKImage_AllDims_Export( T ) \ + cpPlugins_ITKImage_Export( T, 2 ); \ + cpPlugins_ITKImage_Export( T, 3 ); \ + cpPlugins_ITKImage_Export( T, 4 ) // ------------------------------------------------------------------------- -#define cpPlugins_VTKImageArray_Export( A, T, DA, DI ) \ - cpPlugins_TEMPLATE_EXPORT( \ - 3( \ - class cpPlugins_Interface_EXPORT \ - itk::ImageToVTKImageFilter< itk::Image< itk::A< T, DA >, DI > > \ - ) \ +#define cpPlugins_ITKArrayImage_AllDims_Export( A, T ) \ + cpPlugins_ITKArrayImage_Export( A, T, 2, 2 ); \ + cpPlugins_ITKArrayImage_Export( A, T, 3, 3 ); \ + cpPlugins_ITKArrayImage_Export( A, T, 4, 4 ) + +// ------------------------------------------------------------------------- +#define cpPlugins_VTKImage_Export( T, D ) \ + cpPlugins_TEMPLATE_EXPORT( \ + 2( \ + class cpPlugins_Interface_EXPORT \ + itk::ImageToVTKImageFilter< itk::Image< T, D > > \ + ) \ ) // ------------------------------------------------------------------------- -#define cpPlugins_Image_Export_AllDimensions( T ) \ - cpPlugins_Image_Export( T, 2 ); \ - cpPlugins_Image_Export( T, 3 ); \ - cpPlugins_Image_Export( T, 4 ) +#define cpPlugins_VTKArrayImage_Export( A, T, DA, DI ) \ + cpPlugins_TEMPLATE_EXPORT( \ + 3(class \ + cpPlugins_Interface_EXPORT \ + itk::ImageToVTKImageFilter< itk::Image< A< T, DA >, DI > >) \ + ) // ------------------------------------------------------------------------- -#define cpPlugins_VTKImage_Export_AllDimensions( T ) \ - cpPlugins_VTKImage_Export( T, 2 ); \ +#define cpPlugins_VTKImage_AllDims_Export( T ) \ + cpPlugins_VTKImage_Export( T, 2 ); \ cpPlugins_VTKImage_Export( T, 3 ) // ------------------------------------------------------------------------- -#define cpPlugins_ImageArray_Export_AllDimensions( A, T ) \ - cpPlugins_ImageArray_Export( A, T, 2, 2 ); \ - cpPlugins_ImageArray_Export( A, T, 3, 3 ); \ - cpPlugins_ImageArray_Export( A, T, 4, 4 ) +#define cpPlugins_VTKArrayImage_AllDims_Export( A, T ) \ + cpPlugins_VTKArrayImage_Export( A, T, 2, 2 ); \ + cpPlugins_VTKArrayImage_Export( A, T, 3, 3 ) // ------------------------------------------------------------------------- -#define cpPlugins_VTKImageArray_Export_AllDimensions( A, T ) \ - cpPlugins_VTKImageArray_Export( A, T, 2, 2 ); \ - cpPlugins_VTKImageArray_Export( A, T, 3, 3 ) - +#define cpPlugins_Image_Export( T, D ) \ + cpPlugins_ITKImage_Export( T, D ); \ + cpPlugins_VTKImage_Export( T, D ) \ + +// ------------------------------------------------------------------------- +#define cpPlugins_Image_AllDims_Export( T ) \ + cpPlugins_ITKImage_AllDims_Export( T ); \ + cpPlugins_VTKImage_AllDims_Export( T ) \ + +// ------------------------------------------------------------------------- +#define cpPlugins_ArrayImage_AllDims_Export( A, T ) \ + cpPlugins_ITKArrayImage_AllDims_Export( A, T ); \ + cpPlugins_VTKArrayImage_AllDims_Export( A, T ) \ + +// ------------------------------------------------------------------------- +// ITK-VTK base clases // ------------------------------------------------------------------------- -// ITK base clases -cpPlugins_Image_Export_AllDimensions( char ); -cpPlugins_Image_Export_AllDimensions( short ); -cpPlugins_Image_Export_AllDimensions( int ); -cpPlugins_Image_Export_AllDimensions( long ); -cpPlugins_Image_Export_AllDimensions( unsigned char ); -cpPlugins_Image_Export_AllDimensions( unsigned short ); -cpPlugins_Image_Export_AllDimensions( unsigned int ); -cpPlugins_Image_Export_AllDimensions( unsigned long ); -cpPlugins_Image_Export_AllDimensions( float ); -cpPlugins_Image_Export_AllDimensions( double ); - -cpPlugins_Image_Export_AllDimensions( std::complex< float > ); -cpPlugins_Image_Export_AllDimensions( std::complex< double > ); - -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< char > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< short > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< int > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< long > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned char > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned short > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned int > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBPixel< unsigned long > ); - -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< char > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< short > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< int > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< long > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned char > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned short > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned int > ); -cpPlugins_Image_Export_AllDimensions( itk::RGBAPixel< unsigned long > ); - -cpPlugins_ImageArray_Export_AllDimensions( Vector, float ); -cpPlugins_ImageArray_Export_AllDimensions( Vector, double ); - -cpPlugins_ImageArray_Export_AllDimensions( CovariantVector, float ); -cpPlugins_ImageArray_Export_AllDimensions( CovariantVector, double ); - -cpPlugins_ImageArray_Export_AllDimensions( Point, float ); -cpPlugins_ImageArray_Export_AllDimensions( Point, double ); - -cpPlugins_ImageArray_Export_AllDimensions( - SymmetricSecondRankTensor, float - ); -cpPlugins_ImageArray_Export_AllDimensions( - SymmetricSecondRankTensor, double - ); - -cpPlugins_Image_Export( itk::DiffusionTensor3D< float >, 3 ); -cpPlugins_Image_Export( itk::DiffusionTensor3D< double >, 3 ); -cpPlugins_Image_Export( itk::Offset< 2 >, 2 ); -cpPlugins_Image_Export( itk::Offset< 3 >, 3 ); -cpPlugins_Image_Export( itk::Offset< 4 >, 4 ); +cpPlugins_Image_AllDims_Export( char ); +cpPlugins_Image_AllDims_Export( short ); +cpPlugins_Image_AllDims_Export( int ); +cpPlugins_Image_AllDims_Export( long ); +cpPlugins_Image_AllDims_Export( unsigned char ); +cpPlugins_Image_AllDims_Export( unsigned short ); +cpPlugins_Image_AllDims_Export( unsigned int ); +cpPlugins_Image_AllDims_Export( unsigned long ); +cpPlugins_Image_AllDims_Export( float ); +cpPlugins_Image_AllDims_Export( double ); + +cpPlugins_Image_AllDims_Export( itk::RGBPixel< char > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< short > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< int > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< long > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned char > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned short > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned int > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned long > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< float > ); +cpPlugins_Image_AllDims_Export( itk::RGBPixel< double > ); + +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< char > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< short > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< int > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< long > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned char > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned short > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned int > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned long > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< float > ); +cpPlugins_Image_AllDims_Export( itk::RGBAPixel< double > ); + +cpPlugins_Image_AllDims_Export( itk::DiffusionTensor3D< float > ); +cpPlugins_Image_AllDims_Export( itk::DiffusionTensor3D< double > ); + +cpPlugins_ArrayImage_AllDims_Export( itk::Vector, float ); +cpPlugins_ArrayImage_AllDims_Export( itk::Vector, double ); + +cpPlugins_ArrayImage_AllDims_Export( itk::CovariantVector, float ); +cpPlugins_ArrayImage_AllDims_Export( itk::CovariantVector, double ); + +cpPlugins_ArrayImage_AllDims_Export( itk::Point, float ); +cpPlugins_ArrayImage_AllDims_Export( itk::Point, double ); + +cpPlugins_ArrayImage_AllDims_Export( itk::SymmetricSecondRankTensor, float ); +cpPlugins_ArrayImage_AllDims_Export( itk::SymmetricSecondRankTensor, double ); + +// ------------------------------------------------------------------------- +// ITK-only base clases // ------------------------------------------------------------------------- -// ITK<->VTK base clases -cpPlugins_VTKImage_Export_AllDimensions( char ); -cpPlugins_VTKImage_Export_AllDimensions( short ); -cpPlugins_VTKImage_Export_AllDimensions( int ); -cpPlugins_VTKImage_Export_AllDimensions( long ); -cpPlugins_VTKImage_Export_AllDimensions( unsigned char ); -cpPlugins_VTKImage_Export_AllDimensions( unsigned short ); -cpPlugins_VTKImage_Export_AllDimensions( unsigned int ); -cpPlugins_VTKImage_Export_AllDimensions( unsigned long ); -cpPlugins_VTKImage_Export_AllDimensions( float ); -cpPlugins_VTKImage_Export_AllDimensions( double ); - -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< char > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< short > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< int > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< long > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned char > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned short > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned int > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBPixel< unsigned long > ); - -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< char > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< short > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< int > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< long > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned char > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned short > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned int > ); -cpPlugins_VTKImage_Export_AllDimensions( itk::RGBAPixel< unsigned long > ); - -cpPlugins_VTKImageArray_Export_AllDimensions( Vector, float ); -cpPlugins_VTKImageArray_Export_AllDimensions( Vector, double ); - -cpPlugins_VTKImageArray_Export_AllDimensions( CovariantVector, float ); -cpPlugins_VTKImageArray_Export_AllDimensions( CovariantVector, double ); - -cpPlugins_VTKImageArray_Export_AllDimensions( Point, float ); -cpPlugins_VTKImageArray_Export_AllDimensions( Point, double ); - -cpPlugins_VTKImageArray_Export_AllDimensions( - SymmetricSecondRankTensor, float - ); -cpPlugins_VTKImageArray_Export_AllDimensions( - SymmetricSecondRankTensor, double - ); - -cpPlugins_VTKImage_Export( itk::DiffusionTensor3D< float >, 3 ); -cpPlugins_VTKImage_Export( itk::DiffusionTensor3D< double >, 3 ); + +cpPlugins_ITKImage_AllDims_Export( std::complex< float > ); +cpPlugins_ITKImage_AllDims_Export( std::complex< double > ); + +cpPlugins_ITKImage_Export( itk::Offset< 2 >, 2 ); +cpPlugins_ITKImage_Export( itk::Offset< 3 >, 3 ); +cpPlugins_ITKImage_Export( itk::Offset< 4 >, 4 ); // eof - $RCSfile$