]> Creatis software - cpPlugins.git/blob - lib/cpPlugins/Interface/Instances_itkImage.cxx
...
[cpPlugins.git] / lib / cpPlugins / Interface / Instances_itkImage.cxx
1 #include <cpPlugins/Interface/Macros.h>
2
3 #include <complex>
4
5 #undef ITK_MANUAL_INSTANTIATION
6 #include <itkImage.h>
7 #include <itkImageToVTKImageFilter.h>
8
9 #include <itkCovariantVector.h>
10 #include <itkDiffusionTensor3D.h>
11 #include <itkPoint.h>
12 #include <itkRGBPixel.h>
13 #include <itkRGBAPixel.h>
14 #include <itkSymmetricSecondRankTensor.h>
15 #include <itkVector.h>
16
17 // -------------------------------------------------------------------------
18 #define cpPlugins_ITKImage_Export( T, D )                       \
19   cpPlugins_TEMPLATE_EXPORT(                                    \
20     2(class cpPlugins_Interface_EXPORT itk::Image< T, D >)      \
21     )
22
23 // -------------------------------------------------------------------------
24 #define cpPlugins_ITKArrayImage_Export( A, T, DA, DI )                  \
25   cpPlugins_TEMPLATE_EXPORT(                                            \
26     3(class cpPlugins_Interface_EXPORT itk::Image< A< T, DA >, DI >)    \
27     )
28
29 // -------------------------------------------------------------------------
30 #define cpPlugins_ITKImage_AllDims_Export( T )  \
31   cpPlugins_ITKImage_Export( T, 2 );            \
32   cpPlugins_ITKImage_Export( T, 3 );            \
33   cpPlugins_ITKImage_Export( T, 4 )
34
35 // -------------------------------------------------------------------------
36 #define cpPlugins_ITKArrayImage_AllDims_Export( A, T )  \
37   cpPlugins_ITKArrayImage_Export( A, T, 2, 2 );         \
38   cpPlugins_ITKArrayImage_Export( A, T, 3, 3 );         \
39   cpPlugins_ITKArrayImage_Export( A, T, 4, 4 )
40
41 // -------------------------------------------------------------------------
42 #define cpPlugins_VTKImage_Export( T, D )               \
43   cpPlugins_TEMPLATE_EXPORT(                            \
44     2(                                                  \
45       class cpPlugins_Interface_EXPORT                  \
46       itk::ImageToVTKImageFilter< itk::Image< T, D > >  \
47       )                                                 \
48     )
49
50 // -------------------------------------------------------------------------
51 #define cpPlugins_VTKArrayImage_Export( A, T, DA, DI )                  \
52   cpPlugins_TEMPLATE_EXPORT(                                            \
53     3(class                                                             \
54       cpPlugins_Interface_EXPORT                                        \
55       itk::ImageToVTKImageFilter< itk::Image< A< T, DA >, DI > >)       \
56     )
57
58 // -------------------------------------------------------------------------
59 #define cpPlugins_VTKImage_AllDims_Export( T )  \
60   cpPlugins_VTKImage_Export( T, 2 );            \
61   cpPlugins_VTKImage_Export( T, 3 )
62
63 // -------------------------------------------------------------------------
64 #define cpPlugins_VTKArrayImage_AllDims_Export( A, T )  \
65   cpPlugins_VTKArrayImage_Export( A, T, 2, 2 );         \
66   cpPlugins_VTKArrayImage_Export( A, T, 3, 3 )
67
68 // -------------------------------------------------------------------------
69 #define cpPlugins_Image_Export( T, D )          \
70   cpPlugins_ITKImage_Export( T, D );            \
71   cpPlugins_VTKImage_Export( T, D )             \
72   
73 // -------------------------------------------------------------------------
74 #define cpPlugins_Image_AllDims_Export( T )     \
75   cpPlugins_ITKImage_AllDims_Export( T );       \
76   cpPlugins_VTKImage_AllDims_Export( T )        \
77   
78 // -------------------------------------------------------------------------
79 #define cpPlugins_ArrayImage_AllDims_Export( A, T )     \
80   cpPlugins_ITKArrayImage_AllDims_Export( A, T );       \
81   cpPlugins_VTKArrayImage_AllDims_Export( A, T )        \
82   
83 // -------------------------------------------------------------------------
84 // ITK-VTK base clases
85 // -------------------------------------------------------------------------
86
87 cpPlugins_Image_AllDims_Export( char );
88 cpPlugins_Image_AllDims_Export( short );
89 cpPlugins_Image_AllDims_Export( int );
90 cpPlugins_Image_AllDims_Export( long );
91 cpPlugins_Image_AllDims_Export( unsigned char );
92 cpPlugins_Image_AllDims_Export( unsigned short );
93 cpPlugins_Image_AllDims_Export( unsigned int );
94 cpPlugins_Image_AllDims_Export( unsigned long );
95 cpPlugins_Image_AllDims_Export( float );
96 cpPlugins_Image_AllDims_Export( double );
97
98 cpPlugins_Image_AllDims_Export( itk::RGBPixel< char > );
99 cpPlugins_Image_AllDims_Export( itk::RGBPixel< short > );
100 cpPlugins_Image_AllDims_Export( itk::RGBPixel< int > );
101 cpPlugins_Image_AllDims_Export( itk::RGBPixel< long > );
102 cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned char > );
103 cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned short > );
104 cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned int > );
105 cpPlugins_Image_AllDims_Export( itk::RGBPixel< unsigned long > );
106 cpPlugins_Image_AllDims_Export( itk::RGBPixel< float > );
107 cpPlugins_Image_AllDims_Export( itk::RGBPixel< double > );
108
109 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< char > );
110 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< short > );
111 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< int > );
112 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< long > );
113 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned char > );
114 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned short > );
115 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned int > );
116 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< unsigned long > );
117 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< float > );
118 cpPlugins_Image_AllDims_Export( itk::RGBAPixel< double > );
119
120 cpPlugins_Image_AllDims_Export( itk::DiffusionTensor3D< float > );
121 cpPlugins_Image_AllDims_Export( itk::DiffusionTensor3D< double > );
122
123 cpPlugins_ArrayImage_AllDims_Export( itk::Vector, float );
124 cpPlugins_ArrayImage_AllDims_Export( itk::Vector, double );
125
126 cpPlugins_ArrayImage_AllDims_Export( itk::CovariantVector, float );
127 cpPlugins_ArrayImage_AllDims_Export( itk::CovariantVector, double );
128
129 cpPlugins_ArrayImage_AllDims_Export( itk::Point, float );
130 cpPlugins_ArrayImage_AllDims_Export( itk::Point, double );
131
132 cpPlugins_ArrayImage_AllDims_Export( itk::SymmetricSecondRankTensor, float );
133 cpPlugins_ArrayImage_AllDims_Export( itk::SymmetricSecondRankTensor, double );
134
135 // -------------------------------------------------------------------------
136 // ITK-only base clases
137 // -------------------------------------------------------------------------
138
139 cpPlugins_ITKImage_AllDims_Export( std::complex< float > );
140 cpPlugins_ITKImage_AllDims_Export( std::complex< double > );
141
142 cpPlugins_ITKImage_Export( itk::Offset< 2 >, 2 );
143 cpPlugins_ITKImage_Export( itk::Offset< 3 >, 3 );
144 cpPlugins_ITKImage_Export( itk::Offset< 4 >, 4 );
145
146 // eof - $RCSfile$