28 #ifndef itkPixelTraits_h
29 #define itkPixelTraits_h
44 template<
typename TPixelType >
49 static constexpr
unsigned int Dimension = TPixelType::Length;
65 static constexpr
unsigned int Dimension = 1;
70 class PixelTraits< char >
73 static constexpr
unsigned int Dimension = 1;
78 class PixelTraits< signed char >
81 static constexpr
unsigned int Dimension = 1;
86 class PixelTraits< unsigned char >
89 static constexpr
unsigned int Dimension = 1;
94 class PixelTraits< short >
97 static constexpr
unsigned int Dimension = 1;
102 class PixelTraits< unsigned short >
105 static constexpr
unsigned int Dimension = 1;
110 class PixelTraits< int >
113 static constexpr
unsigned int Dimension = 1;
118 class PixelTraits< unsigned int >
121 static constexpr
unsigned int Dimension = 1;
126 class PixelTraits< long >
129 static constexpr
unsigned int Dimension = 1;
134 class PixelTraits< unsigned long >
137 static constexpr
unsigned int Dimension = 1;
143 class PixelTraits< long long >
146 static constexpr
unsigned int Dimension = 1;
151 class PixelTraits< unsigned long long >
154 static constexpr
unsigned int Dimension = 1;
159 class PixelTraits< float >
162 static constexpr
unsigned int Dimension = 1;
167 class PixelTraits< double >
170 static constexpr
unsigned int Dimension = 1;
194 template<
typename TValue1,
typename TValue2 >
215 class JoinTraits< bool, char >
222 class JoinTraits< bool, unsigned char >
229 class JoinTraits< bool, short >
236 class JoinTraits< bool, unsigned short >
243 class JoinTraits< bool, int >
250 class JoinTraits< bool, unsigned int >
257 class JoinTraits< bool, long >
264 class JoinTraits< bool, unsigned long >
272 class JoinTraits< bool, long long >
279 class JoinTraits< bool, unsigned long long >
286 class JoinTraits< bool, float >
293 class JoinTraits< bool, double >
304 class JoinTraits< char, bool >
311 class JoinTraits< char, char >
318 class JoinTraits< char, unsigned char >
325 class JoinTraits< char, short >
332 class JoinTraits< char, unsigned short >
339 class JoinTraits< char, int >
346 class JoinTraits< char, unsigned int >
354 class JoinTraits< char, long >
361 class JoinTraits< char, unsigned long >
368 class JoinTraits< char, long long >
375 class JoinTraits< char, unsigned long long >
382 class JoinTraits< char, float >
389 class JoinTraits< char, double >
400 class JoinTraits< unsigned char, bool >
407 class JoinTraits< unsigned char, char >
414 class JoinTraits< unsigned char, unsigned char >
421 class JoinTraits< unsigned char, short >
428 class JoinTraits< unsigned char, unsigned short >
435 class JoinTraits< unsigned char, int >
442 class JoinTraits< unsigned char, unsigned int >
449 class JoinTraits< unsigned char, long >
456 class JoinTraits< unsigned char, unsigned long >
463 class JoinTraits< unsigned char, long long >
470 class JoinTraits< unsigned char, unsigned long long >
477 class JoinTraits< unsigned char, float >
484 class JoinTraits< unsigned char, double >
495 class JoinTraits< short, bool >
502 class JoinTraits< short, char >
509 class JoinTraits< short, unsigned char >
516 class JoinTraits< short, short >
523 class JoinTraits< short, unsigned short >
530 class JoinTraits< short, int >
537 class JoinTraits< short, unsigned int >
545 class JoinTraits< short, long >
552 class JoinTraits< short, unsigned long >
559 class JoinTraits< short, long long >
566 class JoinTraits< short, unsigned long long >
573 class JoinTraits< short, float >
580 class JoinTraits< short, double >
591 class JoinTraits< unsigned short, bool >
598 class JoinTraits< unsigned short, char >
605 class JoinTraits< unsigned short, unsigned char >
612 class JoinTraits< unsigned short, short >
619 class JoinTraits< unsigned short, unsigned short >
626 class JoinTraits< unsigned short, int >
633 class JoinTraits< unsigned short, unsigned int >
640 class JoinTraits< unsigned short, long >
647 class JoinTraits< unsigned short, unsigned long >
654 class JoinTraits< unsigned short, long long >
661 class JoinTraits< unsigned short, unsigned long long >
668 class JoinTraits< unsigned short, float >
675 class JoinTraits< unsigned short, double >
686 class JoinTraits< int, bool >
693 class JoinTraits< int, char >
700 class JoinTraits< int, unsigned char >
707 class JoinTraits< int, short >
714 class JoinTraits< int, unsigned short >
721 class JoinTraits< int, int >
728 class JoinTraits< int, unsigned int >
736 class JoinTraits< int, long >
743 class JoinTraits< int, unsigned long >
750 class JoinTraits< int, long long >
757 class JoinTraits< int, unsigned long long >
764 class JoinTraits< int, float >
771 class JoinTraits< int, double >
782 class JoinTraits< unsigned int, bool >
789 class JoinTraits< unsigned int, char >
797 class JoinTraits< unsigned int, unsigned char >
804 class JoinTraits< unsigned int, short >
812 class JoinTraits< unsigned int, unsigned short >
819 class JoinTraits< unsigned int, int >
827 class JoinTraits< unsigned int, unsigned int >
834 class JoinTraits< unsigned int, long >
841 class JoinTraits< unsigned int, unsigned long >
848 class JoinTraits< unsigned int, long long >
855 class JoinTraits< unsigned int, unsigned long long >
862 class JoinTraits< unsigned int, float >
869 class JoinTraits< unsigned int, double >
880 class JoinTraits< long, bool >
887 class JoinTraits< long, char >
894 class JoinTraits< long, unsigned char >
901 class JoinTraits< long, short >
908 class JoinTraits< long, unsigned short >
915 class JoinTraits< long, int >
922 class JoinTraits< long, unsigned int >
929 class JoinTraits< long, long >
936 class JoinTraits< long, unsigned long >
944 class JoinTraits< long, long long >
951 class JoinTraits< long, unsigned long long >
958 class JoinTraits< long, float >
965 class JoinTraits< long, double >
976 class JoinTraits< unsigned long, bool >
983 class JoinTraits< unsigned long, char >
990 class JoinTraits< unsigned long, unsigned char >
997 class JoinTraits< unsigned long, short >
1004 class JoinTraits< unsigned long, unsigned short >
1011 class JoinTraits< unsigned long, int >
1018 class JoinTraits< unsigned long, unsigned int >
1025 class JoinTraits< unsigned long, long >
1032 class JoinTraits< unsigned long, unsigned long >
1039 class JoinTraits< unsigned long, long long >
1046 class JoinTraits< unsigned long, unsigned long long >
1053 class JoinTraits< unsigned long, float >
1060 class JoinTraits< unsigned long, double >
1072 class JoinTraits< long long, bool >
1079 class JoinTraits< long long, char >
1086 class JoinTraits< long long, unsigned char >
1093 class JoinTraits< long long, short >
1100 class JoinTraits< long long, unsigned short >
1107 class JoinTraits< long long, int >
1114 class JoinTraits< long long, unsigned int >
1121 class JoinTraits< long long, long >
1128 class JoinTraits< long long, unsigned long >
1135 class JoinTraits< long long, long long >
1142 class JoinTraits< long long, unsigned long long >
1149 class JoinTraits< long long, float >
1156 class JoinTraits< long long, double >
1167 class JoinTraits< unsigned long long, bool >
1174 class JoinTraits< unsigned long long, char >
1181 class JoinTraits< unsigned long long, unsigned char >
1188 class JoinTraits< unsigned long long, short >
1195 class JoinTraits< unsigned long long, unsigned short >
1202 class JoinTraits< unsigned long long, int >
1209 class JoinTraits< unsigned long long, unsigned int >
1216 class JoinTraits< unsigned long long, long >
1223 class JoinTraits< unsigned long long, unsigned long >
1230 class JoinTraits< unsigned long long, long long >
1237 class JoinTraits< unsigned long long, unsigned long long >
1244 class JoinTraits< unsigned long long, float >
1251 class JoinTraits< unsigned long long, double >
1263 class JoinTraits< float, bool >
1270 class JoinTraits< float, char >
1277 class JoinTraits< float, unsigned char >
1284 class JoinTraits< float, short >
1291 class JoinTraits< float, unsigned short >
1298 class JoinTraits< float, int >
1305 class JoinTraits< float, unsigned int >
1312 class JoinTraits< float, long >
1319 class JoinTraits< float, unsigned long >
1326 class JoinTraits< float, long long >
1333 class JoinTraits< float, unsigned long long >
1340 class JoinTraits< float, float >
1347 class JoinTraits< float, double >
1358 class JoinTraits< double, bool >
1365 class JoinTraits< double, char >
1372 class JoinTraits< double, unsigned char >
1379 class JoinTraits< double, short >
1386 class JoinTraits< double, unsigned short >
1393 class JoinTraits< double, int >
1400 class JoinTraits< double, unsigned int >
1407 class JoinTraits< double, long >
1414 class JoinTraits< double, unsigned long >
1421 class JoinTraits< double, long long >
1428 class JoinTraits< double, unsigned long long >
1435 class JoinTraits< double, float >
1442 class JoinTraits< double, double >
1452 #endif // itkPixelTraits_h
Traits for a pixel that define the dimension and component type.
typename TPixelType::ValueType ValueType
Trait to determine what datatype is needed if the specified pixel types are "joined" into a single ve...
static constexpr unsigned int Dimension