SimpleITK  2.0.0
sitkPixelIDTypes.h
Go to the documentation of this file.
1 /*=========================================================================
2 *
3 * Copyright NumFOCUS
4 *
5 * Licensed under the Apache License, Version 2.0 (the "License");
6 * you may not use this file except in compliance with the License.
7 * You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0.txt
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 *
17 *=========================================================================*/
18 #ifndef sitkPixelIDTypes_h
19 #define sitkPixelIDTypes_h
20 
21 
22 namespace itk
23 {
24 
25 template <unsigned int VImageDimension> class ImageBase;
26 template <typename TPixelType, unsigned int VImageDimension> class Image;
27 template <typename TPixelType, unsigned int VImageDimension > class VectorImage;
28 template < typename TLabelObject > class LabelMap;
29 template < typename TLabelObject, unsigned int VImageDimension > class LabelObject;
30 
31 namespace simple
32 {
33 
47 template <typename TPixelType>
49 {};
50 
51 
65 template <typename TPixelType>
67 {};
68 
69 
83 template <typename TPixelType>
85 {};
86 
100 template <typename TPixelIDType, unsigned int VImageDimension> struct PixelIDToImageType;
101 
102 template <typename TPixelType, unsigned int VImageDimension>
103 struct PixelIDToImageType< BasicPixelID<TPixelType> , VImageDimension >
104 {
106 };
107 
108 template <typename TVectorPixelType, unsigned int VImageDimension>
109 struct PixelIDToImageType< VectorPixelID< TVectorPixelType >, VImageDimension >
110 {
112 };
113 
114 template <typename TLabelType, unsigned int VImageDimension>
115 struct PixelIDToImageType< LabelPixelID< TLabelType >, VImageDimension >
116 {
118 };
135 template <typename TImageType> struct ImageTypeToPixelID;
136 
137 template <typename TPixelType, unsigned int VImageDimension>
138 struct ImageTypeToPixelID< itk::Image< TPixelType, VImageDimension> >
139 {
141 };
142 
143 template <typename TPixelType, unsigned int VImageDimension>
144 struct ImageTypeToPixelID< itk::VectorImage< TPixelType, VImageDimension> >
145 {
147 };
148 
149 template <typename TLabelType, unsigned int VImageDimension>
150 struct ImageTypeToPixelID< itk::LabelMap< itk::LabelObject< TLabelType, VImageDimension > > >
151 {
153 };
156 }
157 }
158 #endif // _sitkPixelIDTypes_h
itk::simple::Image
The Image class for SimpleITK.
Definition: sitkImage.h:75
itk::VectorImage
Definition: sitkPixelIDTypes.h:27
itk::ImageBase
class ITK_TEMPLATE_EXPORT ImageBase
itk::LabelMap
Definition: sitkPixelIDTypes.h:28
itk::simple::LabelPixelID
Definition: sitkPixelIDTypes.h:84
itk::simple::BasicPixelID
Definition: sitkPixelIDTypes.h:48
itk::simple::PixelIDToImageType
Definition: sitkPixelIDTypes.h:100
itk::simple::ImageTypeToPixelID
Definition: sitkPixelIDTypes.h:135
itk
itk::Image
Definition: sitkPixelIDTypes.h:26
itk::simple::VectorPixelID
Definition: sitkPixelIDTypes.h:66