00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef __itkNumericTraitsFixedArrayPixel_h
00018 #define __itkNumericTraitsFixedArrayPixel_h
00019
00020 #include "itkNumericTraits.h"
00021 #include "itkFixedArray.h"
00022
00023
00024
00025
00026 namespace itk
00027 {
00028 template <> class NumericTraits<FixedArray<unsigned char, 1 > > {
00029 public:
00030 typedef unsigned char ValueType;
00031 typedef FixedArray<unsigned char, 1> PrintType;
00032 typedef FixedArray<unsigned char, 1> AbsType;
00033 typedef FixedArray<unsigned short, 1> AccumulateType;
00034 typedef FixedArray<double, 1> RealType;
00035 typedef double ScalarRealType;
00036 typedef FixedArray<float, 1> FloatType;
00037 };
00038 template <> class NumericTraits<FixedArray<signed char, 1> > {
00039 public:
00040 typedef signed char ValueType;
00041 typedef FixedArray<signed char, 1> PrintType;
00042 typedef FixedArray<unsigned char, 1> AbsType;
00043 typedef FixedArray<short, 1> AccumulateType;
00044 typedef FixedArray<double, 1> RealType;
00045 typedef double ScalarRealType;
00046 typedef FixedArray<float, 1> FloatType;
00047 };
00048 template <> class NumericTraits<FixedArray<char, 1> > {
00049 public:
00050 typedef char ValueType;
00051 typedef FixedArray<char, 1> PrintType;
00052 typedef FixedArray<unsigned char, 1> AbsType;
00053 typedef FixedArray<short, 1> AccumulateType;
00054 typedef FixedArray<double, 1> RealType;
00055 typedef double ScalarRealType;
00056 typedef FixedArray<float, 1> FloatType;
00057 };
00058 template <> class NumericTraits<FixedArray<short, 1> > {
00059 public:
00060 typedef short ValueType;
00061 typedef FixedArray<short, 1> PrintType;
00062 typedef FixedArray<unsigned short, 1> AbsType;
00063 typedef FixedArray<int, 1> AccumulateType;
00064 typedef FixedArray<double, 1> RealType;
00065 typedef double ScalarRealType;
00066 typedef FixedArray<float, 1> FloatType;
00067 };
00068 template <> class NumericTraits<FixedArray<unsigned short, 1> > {
00069 public:
00070 typedef unsigned short ValueType;
00071 typedef FixedArray<unsigned short, 1> PrintType;
00072 typedef FixedArray<unsigned short, 1> AbsType;
00073 typedef FixedArray<unsigned int, 1> AccumulateType;
00074 typedef FixedArray<double, 1> RealType;
00075 typedef double ScalarRealType;
00076 typedef FixedArray<float, 1> FloatType;
00077 };
00078 template <> class NumericTraits<FixedArray<int, 1> > {
00079 public:
00080 typedef int ValueType;
00081 typedef FixedArray<int, 1> PrintType;
00082 typedef FixedArray<unsigned int, 1> AbsType;
00083 typedef FixedArray<long, 1> AccumulateType;
00084 typedef FixedArray<double, 1> RealType;
00085 typedef double ScalarRealType;
00086 typedef FixedArray<float, 1> FloatType;
00087 };
00088 template <> class NumericTraits<FixedArray<unsigned int, 1> > {
00089 public:
00090 typedef unsigned int ValueType;
00091 typedef FixedArray<unsigned int, 1> PrintType;
00092 typedef FixedArray<unsigned int, 1> AbsType;
00093 typedef FixedArray<unsigned long, 1> AccumulateType;
00094 typedef FixedArray<double, 1> RealType;
00095 typedef double ScalarRealType;
00096 typedef FixedArray<float, 1> FloatType;
00097 };
00098 template <> class NumericTraits<FixedArray<long, 1> > {
00099 public:
00100 typedef long ValueType;
00101 typedef FixedArray<long, 1> PrintType;
00102 typedef FixedArray<unsigned long, 1> AbsType;
00103 typedef FixedArray<long, 1> AccumulateType;
00104 typedef FixedArray<double, 1> RealType;
00105 typedef double ScalarRealType;
00106 typedef FixedArray<float, 1> FloatType;
00107 };
00108 template <> class NumericTraits<FixedArray<unsigned long, 1> > {
00109 public:
00110 typedef unsigned long ValueType;
00111 typedef FixedArray<unsigned long, 1> PrintType;
00112 typedef FixedArray<unsigned long, 1> AbsType;
00113 typedef FixedArray<unsigned long, 1> AccumulateType;
00114 typedef FixedArray<double, 1> RealType;
00115 typedef FixedArray<float, 1> FloatType;
00116 };
00117 template <> class NumericTraits<FixedArray<float, 1> > {
00118 public:
00119 typedef float ValueType;
00120 typedef FixedArray<float, 1> PrintType;
00121 typedef FixedArray<float, 1> AbsType;
00122 typedef FixedArray<double, 1> AccumulateType;
00123 typedef FixedArray<double, 1> RealType;
00124 typedef double ScalarRealType;
00125 typedef FixedArray<float, 1> FloatType;
00126 };
00127 template <> class NumericTraits<FixedArray<double, 1> > {
00128 public:
00129 typedef double ValueType;
00130 typedef FixedArray<double, 1> PrintType;
00131 typedef FixedArray<double, 1> AbsType;
00132 typedef FixedArray<long double, 1> AccumulateType;
00133 typedef FixedArray<double, 1> RealType;
00134 typedef double ScalarRealType;
00135 typedef FixedArray<float, 1> FloatType;
00136 };
00137 template <> class NumericTraits<FixedArray<long double, 1> > {
00138 public:
00139 typedef long double ValueType;
00140 typedef FixedArray<long double, 1> PrintType;
00141 typedef FixedArray<long double, 1> AbsType;
00142 typedef FixedArray<long double, 1> AccumulateType;
00143 typedef FixedArray<long double, 1> RealType;
00144 typedef long double ScalarRealType;
00145 typedef FixedArray<float, 1> FloatType;
00146 };
00147
00148
00149 template <> class NumericTraits<FixedArray<unsigned char, 2 > > {
00150 public:
00151 typedef unsigned char ValueType;
00152 typedef FixedArray<unsigned char, 2> PrintType;
00153 typedef FixedArray<unsigned char, 2> AbsType;
00154 typedef FixedArray<unsigned short, 2> AccumulateType;
00155 typedef FixedArray<double, 2> RealType;
00156 typedef double ScalarRealType;
00157 typedef FixedArray<float, 2> FloatType;
00158 };
00159 template <> class NumericTraits<FixedArray<signed char, 2> > {
00160 public:
00161 typedef signed char ValueType;
00162 typedef FixedArray<signed char, 2> PrintType;
00163 typedef FixedArray<unsigned char, 2> AbsType;
00164 typedef FixedArray<short, 2> AccumulateType;
00165 typedef FixedArray<double, 2> RealType;
00166 typedef double ScalarRealType;
00167 typedef FixedArray<float, 2> FloatType;
00168 };
00169 template <> class NumericTraits<FixedArray<char, 2> > {
00170 public:
00171 typedef char ValueType;
00172 typedef FixedArray<char, 2> PrintType;
00173 typedef FixedArray<unsigned char, 2> AbsType;
00174 typedef FixedArray<short, 2> AccumulateType;
00175 typedef FixedArray<double, 2> RealType;
00176 typedef double ScalarRealType;
00177 typedef FixedArray<float, 2> FloatType;
00178 };
00179 template <> class NumericTraits<FixedArray<short, 2> > {
00180 public:
00181 typedef short ValueType;
00182 typedef FixedArray<short, 2> PrintType;
00183 typedef FixedArray<unsigned short, 2> AbsType;
00184 typedef FixedArray<int, 2> AccumulateType;
00185 typedef FixedArray<double, 2> RealType;
00186 typedef double ScalarRealType;
00187 typedef FixedArray<float, 2> FloatType;
00188 };
00189 template <> class NumericTraits<FixedArray<unsigned short, 2> > {
00190 public:
00191 typedef unsigned short ValueType;
00192 typedef FixedArray<unsigned short, 2> PrintType;
00193 typedef FixedArray<unsigned short, 2> AbsType;
00194 typedef FixedArray<unsigned int, 2> AccumulateType;
00195 typedef FixedArray<double, 2> RealType;
00196 typedef double ScalarRealType;
00197 typedef FixedArray<float, 2> FloatType;
00198 };
00199 template <> class NumericTraits<FixedArray<int, 2> > {
00200 public:
00201 typedef int ValueType;
00202 typedef FixedArray<int, 2> PrintType;
00203 typedef FixedArray<unsigned int, 2> AbsType;
00204 typedef FixedArray<long, 2> AccumulateType;
00205 typedef FixedArray<double, 2> RealType;
00206 typedef double ScalarRealType;
00207 typedef FixedArray<float, 2> FloatType;
00208 };
00209 template <> class NumericTraits<FixedArray<unsigned int, 2> > {
00210 public:
00211 typedef unsigned int ValueType;
00212 typedef FixedArray<unsigned int, 2> PrintType;
00213 typedef FixedArray<unsigned int, 2> AbsType;
00214 typedef FixedArray<unsigned long, 2> AccumulateType;
00215 typedef FixedArray<double, 2> RealType;
00216 typedef double ScalarRealType;
00217 typedef FixedArray<float, 2> FloatType;
00218 };
00219 template <> class NumericTraits<FixedArray<long, 2> > {
00220 public:
00221 typedef long ValueType;
00222 typedef FixedArray<long, 2> PrintType;
00223 typedef FixedArray<unsigned long, 2> AbsType;
00224 typedef FixedArray<long, 2> AccumulateType;
00225 typedef FixedArray<double, 2> RealType;
00226 typedef double ScalarRealType;
00227 typedef FixedArray<float, 2> FloatType;
00228 };
00229 template <> class NumericTraits<FixedArray<unsigned long, 2> > {
00230 public:
00231 typedef unsigned long ValueType;
00232 typedef FixedArray<unsigned long, 2> PrintType;
00233 typedef FixedArray<unsigned long, 2> AbsType;
00234 typedef FixedArray<unsigned long, 2> AccumulateType;
00235 typedef FixedArray<double, 2> RealType;
00236 typedef FixedArray<float, 2> FloatType;
00237 };
00238 template <> class NumericTraits<FixedArray<float, 2> > {
00239 public:
00240 typedef float ValueType;
00241 typedef FixedArray<float, 2> PrintType;
00242 typedef FixedArray<float, 2> AbsType;
00243 typedef FixedArray<double, 2> AccumulateType;
00244 typedef FixedArray<double, 2> RealType;
00245 typedef double ScalarRealType;
00246 typedef FixedArray<float, 2> FloatType;
00247 };
00248 template <> class NumericTraits<FixedArray<double, 2> > {
00249 public:
00250 typedef double ValueType;
00251 typedef FixedArray<double, 2> PrintType;
00252 typedef FixedArray<double, 2> AbsType;
00253 typedef FixedArray<long double, 2> AccumulateType;
00254 typedef FixedArray<double, 2> RealType;
00255 typedef double ScalarRealType;
00256 typedef FixedArray<float, 2> FloatType;
00257 };
00258 template <> class NumericTraits<FixedArray<long double, 2> > {
00259 public:
00260 typedef long double ValueType;
00261 typedef FixedArray<long double, 2> PrintType;
00262 typedef FixedArray<long double, 2> AbsType;
00263 typedef FixedArray<long double, 2> AccumulateType;
00264 typedef FixedArray<long double, 2> RealType;
00265 typedef long double ScalarRealType;
00266 typedef FixedArray<float, 2> FloatType;
00267 };
00268
00269 template <> class NumericTraits<FixedArray<unsigned char, 3 > > {
00270 public:
00271 typedef unsigned char ValueType;
00272 typedef FixedArray<unsigned char, 3> PrintType;
00273 typedef FixedArray<unsigned char, 3> AbsType;
00274 typedef FixedArray<unsigned short, 3> AccumulateType;
00275 typedef FixedArray<double, 3> RealType;
00276 typedef double ScalarRealType;
00277 typedef FixedArray<float, 3> FloatType;
00278 };
00279 template <> class NumericTraits<FixedArray<signed char, 3> > {
00280 public:
00281 typedef signed char ValueType;
00282 typedef FixedArray<signed char, 3> PrintType;
00283 typedef FixedArray<unsigned char, 3> AbsType;
00284 typedef FixedArray<short, 3> AccumulateType;
00285 typedef FixedArray<double, 3> RealType;
00286 typedef double ScalarRealType;
00287 typedef FixedArray<float, 3> FloatType;
00288 };
00289 template <> class NumericTraits<FixedArray<char, 3> > {
00290 public:
00291 typedef char ValueType;
00292 typedef FixedArray<char, 3> PrintType;
00293 typedef FixedArray<unsigned char, 3> AbsType;
00294 typedef FixedArray<short, 3> AccumulateType;
00295 typedef FixedArray<double, 3> RealType;
00296 typedef double ScalarRealType;
00297 typedef FixedArray<float, 3> FloatType;
00298 };
00299 template <> class NumericTraits<FixedArray<short, 3> > {
00300 public:
00301 typedef short ValueType;
00302 typedef FixedArray<short, 3> PrintType;
00303 typedef FixedArray<unsigned short, 3> AbsType;
00304 typedef FixedArray<int, 3> AccumulateType;
00305 typedef FixedArray<double, 3> RealType;
00306 typedef double ScalarRealType;
00307 typedef FixedArray<float, 3> FloatType;
00308 };
00309 template <> class NumericTraits<FixedArray<unsigned short, 3> > {
00310 public:
00311 typedef unsigned short ValueType;
00312 typedef FixedArray<unsigned short, 3> PrintType;
00313 typedef FixedArray<unsigned short, 3> AbsType;
00314 typedef FixedArray<unsigned int, 3> AccumulateType;
00315 typedef FixedArray<double, 3> RealType;
00316 typedef double ScalarRealType;
00317 typedef FixedArray<float, 3> FloatType;
00318 };
00319 template <> class NumericTraits<FixedArray<int, 3> > {
00320 public:
00321 typedef int ValueType;
00322 typedef FixedArray<int, 3> PrintType;
00323 typedef FixedArray<unsigned int, 3> AbsType;
00324 typedef FixedArray<long, 3> AccumulateType;
00325 typedef FixedArray<double, 3> RealType;
00326 typedef double ScalarRealType;
00327 typedef FixedArray<float, 3> FloatType;
00328 };
00329 template <> class NumericTraits<FixedArray<unsigned int, 3> > {
00330 public:
00331 typedef unsigned int ValueType;
00332 typedef FixedArray<unsigned int, 3> PrintType;
00333 typedef FixedArray<unsigned int, 3> AbsType;
00334 typedef FixedArray<unsigned long, 3> AccumulateType;
00335 typedef FixedArray<double, 3> RealType;
00336 typedef double ScalarRealType;
00337 typedef FixedArray<float, 3> FloatType;
00338 };
00339 template <> class NumericTraits<FixedArray<long, 3> > {
00340 public:
00341 typedef long ValueType;
00342 typedef FixedArray<long, 3> PrintType;
00343 typedef FixedArray<unsigned long, 3> AbsType;
00344 typedef FixedArray<long, 3> AccumulateType;
00345 typedef FixedArray<double, 3> RealType;
00346 typedef double ScalarRealType;
00347 typedef FixedArray<float, 3> FloatType;
00348 };
00349 template <> class NumericTraits<FixedArray<unsigned long, 3> > {
00350 public:
00351 typedef unsigned long ValueType;
00352 typedef FixedArray<unsigned long, 3> PrintType;
00353 typedef FixedArray<unsigned long, 3> AbsType;
00354 typedef FixedArray<unsigned long, 3> AccumulateType;
00355 typedef FixedArray<double, 3> RealType;
00356 typedef FixedArray<float, 3> FloatType;
00357 };
00358 template <> class NumericTraits<FixedArray<float, 3> > {
00359 public:
00360 typedef float ValueType;
00361 typedef FixedArray<float, 3> PrintType;
00362 typedef FixedArray<float, 3> AbsType;
00363 typedef FixedArray<double, 3> AccumulateType;
00364 typedef FixedArray<double, 3> RealType;
00365 typedef double ScalarRealType;
00366 typedef FixedArray<float, 3> FloatType;
00367 };
00368 template <> class NumericTraits<FixedArray<double, 3> > {
00369 public:
00370 typedef double ValueType;
00371 typedef FixedArray<double, 3> PrintType;
00372 typedef FixedArray<double, 3> AbsType;
00373 typedef FixedArray<long double, 3> AccumulateType;
00374 typedef FixedArray<double, 3> RealType;
00375 typedef double ScalarRealType;
00376 typedef FixedArray<float, 3> FloatType;
00377 };
00378 template <> class NumericTraits<FixedArray<long double, 3> > {
00379 public:
00380 typedef long double ValueType;
00381 typedef FixedArray<long double, 3> PrintType;
00382 typedef FixedArray<long double, 3> AbsType;
00383 typedef FixedArray<long double, 3> AccumulateType;
00384 typedef FixedArray<long double, 3> RealType;
00385 typedef long double ScalarRealType;
00386 typedef FixedArray<float, 3> FloatType;
00387 };
00388
00389 template <> class NumericTraits<FixedArray<unsigned char, 4 > > {
00390 public:
00391 typedef unsigned char ValueType;
00392 typedef FixedArray<unsigned char, 4> PrintType;
00393 typedef FixedArray<unsigned char, 4> AbsType;
00394 typedef FixedArray<unsigned short, 4> AccumulateType;
00395 typedef FixedArray<double, 4> RealType;
00396 typedef double ScalarRealType;
00397 typedef FixedArray<float, 4> FloatType;
00398 };
00399 template <> class NumericTraits<FixedArray<signed char, 4> > {
00400 public:
00401 typedef signed char ValueType;
00402 typedef FixedArray<signed char, 4> PrintType;
00403 typedef FixedArray<unsigned char, 4> AbsType;
00404 typedef FixedArray<short, 4> AccumulateType;
00405 typedef FixedArray<double, 4> RealType;
00406 typedef double ScalarRealType;
00407 typedef FixedArray<float, 4> FloatType;
00408 };
00409 template <> class NumericTraits<FixedArray<char, 4> > {
00410 public:
00411 typedef char ValueType;
00412 typedef FixedArray<char, 4> PrintType;
00413 typedef FixedArray<unsigned char, 4> AbsType;
00414 typedef FixedArray<short, 4> AccumulateType;
00415 typedef FixedArray<double, 4> RealType;
00416 typedef double ScalarRealType;
00417 typedef FixedArray<float, 4> FloatType;
00418 };
00419 template <> class NumericTraits<FixedArray<short, 4> > {
00420 public:
00421 typedef short ValueType;
00422 typedef FixedArray<short, 4> PrintType;
00423 typedef FixedArray<unsigned short, 4> AbsType;
00424 typedef FixedArray<int, 4> AccumulateType;
00425 typedef FixedArray<double, 4> RealType;
00426 typedef double ScalarRealType;
00427 typedef FixedArray<float, 4> FloatType;
00428 };
00429 template <> class NumericTraits<FixedArray<unsigned short, 4> > {
00430 public:
00431 typedef unsigned short ValueType;
00432 typedef FixedArray<unsigned short, 4> PrintType;
00433 typedef FixedArray<unsigned short, 4> AbsType;
00434 typedef FixedArray<unsigned int, 4> AccumulateType;
00435 typedef FixedArray<double, 4> RealType;
00436 typedef double ScalarRealType;
00437 typedef FixedArray<float, 4> FloatType;
00438 };
00439 template <> class NumericTraits<FixedArray<int, 4> > {
00440 public:
00441 typedef int ValueType;
00442 typedef FixedArray<int, 4> PrintType;
00443 typedef FixedArray<unsigned int, 4> AbsType;
00444 typedef FixedArray<long, 4> AccumulateType;
00445 typedef FixedArray<double, 4> RealType;
00446 typedef double ScalarRealType;
00447 typedef FixedArray<float, 4> FloatType;
00448 };
00449 template <> class NumericTraits<FixedArray<unsigned int, 4> > {
00450 public:
00451 typedef unsigned int ValueType;
00452 typedef FixedArray<unsigned int, 4> PrintType;
00453 typedef FixedArray<unsigned int, 4> AbsType;
00454 typedef FixedArray<unsigned long, 4> AccumulateType;
00455 typedef FixedArray<double, 4> RealType;
00456 typedef double ScalarRealType;
00457 typedef FixedArray<float, 4> FloatType;
00458 };
00459 template <> class NumericTraits<FixedArray<long, 4> > {
00460 public:
00461 typedef long ValueType;
00462 typedef FixedArray<long, 4> PrintType;
00463 typedef FixedArray<unsigned long, 4> AbsType;
00464 typedef FixedArray<long, 4> AccumulateType;
00465 typedef FixedArray<double, 4> RealType;
00466 typedef double ScalarRealType;
00467 typedef FixedArray<float, 4> FloatType;
00468 };
00469 template <> class NumericTraits<FixedArray<unsigned long, 4> > {
00470 public:
00471 typedef unsigned long ValueType;
00472 typedef FixedArray<unsigned long, 4> PrintType;
00473 typedef FixedArray<unsigned long, 4> AbsType;
00474 typedef FixedArray<unsigned long, 4> AccumulateType;
00475 typedef FixedArray<double, 4> RealType;
00476 typedef FixedArray<float, 4> FloatType;
00477 };
00478 template <> class NumericTraits<FixedArray<float, 4> > {
00479 public:
00480 typedef float ValueType;
00481 typedef FixedArray<float, 4> PrintType;
00482 typedef FixedArray<float, 4> AbsType;
00483 typedef FixedArray<double, 4> AccumulateType;
00484 typedef FixedArray<double, 4> RealType;
00485 typedef double ScalarRealType;
00486 typedef FixedArray<float, 4> FloatType;
00487 };
00488 template <> class NumericTraits<FixedArray<double, 4> > {
00489 public:
00490 typedef double ValueType;
00491 typedef FixedArray<double, 4> PrintType;
00492 typedef FixedArray<double, 4> AbsType;
00493 typedef FixedArray<long double, 4> AccumulateType;
00494 typedef FixedArray<double, 4> RealType;
00495 typedef double ScalarRealType;
00496 typedef FixedArray<float, 4> FloatType;
00497 };
00498 template <> class NumericTraits<FixedArray<long double, 4> > {
00499 public:
00500 typedef long double ValueType;
00501 typedef FixedArray<long double, 4> PrintType;
00502 typedef FixedArray<long double, 4> AbsType;
00503 typedef FixedArray<long double, 4> AccumulateType;
00504 typedef FixedArray<long double, 4> RealType;
00505 typedef long double ScalarRealType;
00506 typedef FixedArray<float, 4> FloatType;
00507 };
00508
00509 template <> class NumericTraits<FixedArray<unsigned char, 5 > > {
00510 public:
00511 typedef unsigned char ValueType;
00512 typedef FixedArray<unsigned char, 5> PrintType;
00513 typedef FixedArray<unsigned char, 5> AbsType;
00514 typedef FixedArray<unsigned short, 5> AccumulateType;
00515 typedef FixedArray<double, 5> RealType;
00516 typedef double ScalarRealType;
00517 typedef FixedArray<float, 5> FloatType;
00518 };
00519 template <> class NumericTraits<FixedArray<signed char, 5> > {
00520 public:
00521 typedef signed char ValueType;
00522 typedef FixedArray<signed char, 5> PrintType;
00523 typedef FixedArray<unsigned char, 5> AbsType;
00524 typedef FixedArray<short, 5> AccumulateType;
00525 typedef FixedArray<double, 5> RealType;
00526 typedef double ScalarRealType;
00527 typedef FixedArray<float, 5> FloatType;
00528 };
00529 template <> class NumericTraits<FixedArray<char, 5> > {
00530 public:
00531 typedef char ValueType;
00532 typedef FixedArray<char, 5> PrintType;
00533 typedef FixedArray<unsigned char, 5> AbsType;
00534 typedef FixedArray<short, 5> AccumulateType;
00535 typedef FixedArray<double, 5> RealType;
00536 typedef double ScalarRealType;
00537 typedef FixedArray<float, 5> FloatType;
00538 };
00539 template <> class NumericTraits<FixedArray<short, 5> > {
00540 public:
00541 typedef short ValueType;
00542 typedef FixedArray<short, 5> PrintType;
00543 typedef FixedArray<unsigned short, 5> AbsType;
00544 typedef FixedArray<int, 5> AccumulateType;
00545 typedef FixedArray<double, 5> RealType;
00546 typedef double ScalarRealType;
00547 typedef FixedArray<float, 5> FloatType;
00548 };
00549 template <> class NumericTraits<FixedArray<unsigned short, 5> > {
00550 public:
00551 typedef unsigned short ValueType;
00552 typedef FixedArray<unsigned short, 5> PrintType;
00553 typedef FixedArray<unsigned short, 5> AbsType;
00554 typedef FixedArray<unsigned int, 5> AccumulateType;
00555 typedef FixedArray<double, 5> RealType;
00556 typedef double ScalarRealType;
00557 typedef FixedArray<float, 5> FloatType;
00558 };
00559 template <> class NumericTraits<FixedArray<int, 5> > {
00560 public:
00561 typedef int ValueType;
00562 typedef FixedArray<int, 5> PrintType;
00563 typedef FixedArray<unsigned int, 5> AbsType;
00564 typedef FixedArray<long, 5> AccumulateType;
00565 typedef FixedArray<double, 5> RealType;
00566 typedef double ScalarRealType;
00567 typedef FixedArray<float, 5> FloatType;
00568 };
00569 template <> class NumericTraits<FixedArray<unsigned int, 5> > {
00570 public:
00571 typedef unsigned int ValueType;
00572 typedef FixedArray<unsigned int, 5> PrintType;
00573 typedef FixedArray<unsigned int, 5> AbsType;
00574 typedef FixedArray<unsigned long, 5> AccumulateType;
00575 typedef FixedArray<double, 5> RealType;
00576 typedef double ScalarRealType;
00577 typedef FixedArray<float, 5> FloatType;
00578 };
00579 template <> class NumericTraits<FixedArray<long, 5> > {
00580 public:
00581 typedef long ValueType;
00582 typedef FixedArray<long, 5> PrintType;
00583 typedef FixedArray<unsigned long, 5> AbsType;
00584 typedef FixedArray<long, 5> AccumulateType;
00585 typedef FixedArray<double, 5> RealType;
00586 typedef double ScalarRealType;
00587 typedef FixedArray<float, 5> FloatType;
00588 };
00589 template <> class NumericTraits<FixedArray<unsigned long, 5> > {
00590 public:
00591 typedef unsigned long ValueType;
00592 typedef FixedArray<unsigned long, 5> PrintType;
00593 typedef FixedArray<unsigned long, 5> AbsType;
00594 typedef FixedArray<unsigned long, 5> AccumulateType;
00595 typedef FixedArray<double, 5> RealType;
00596 typedef FixedArray<float, 5> FloatType;
00597 };
00598 template <> class NumericTraits<FixedArray<float, 5> > {
00599 public:
00600 typedef float ValueType;
00601 typedef FixedArray<float, 5> PrintType;
00602 typedef FixedArray<float, 5> AbsType;
00603 typedef FixedArray<double, 5> AccumulateType;
00604 typedef FixedArray<double, 5> RealType;
00605 typedef double ScalarRealType;
00606 typedef FixedArray<float, 5> FloatType;
00607 };
00608 template <> class NumericTraits<FixedArray<double, 5> > {
00609 public:
00610 typedef double ValueType;
00611 typedef FixedArray<double, 5> PrintType;
00612 typedef FixedArray<double, 5> AbsType;
00613 typedef FixedArray<long double, 5> AccumulateType;
00614 typedef FixedArray<double, 5> RealType;
00615 typedef double ScalarRealType;
00616 typedef FixedArray<float, 5> FloatType;
00617 };
00618 template <> class NumericTraits<FixedArray<long double, 5> > {
00619 public:
00620 typedef long double ValueType;
00621 typedef FixedArray<long double, 5> PrintType;
00622 typedef FixedArray<long double, 5> AbsType;
00623 typedef FixedArray<long double, 5> AccumulateType;
00624 typedef FixedArray<long double, 5> RealType;
00625 typedef long double ScalarRealType;
00626 typedef FixedArray<float, 5> FloatType;
00627 };
00628
00629 template <> class NumericTraits<FixedArray<unsigned char, 6 > > {
00630 public:
00631 typedef unsigned char ValueType;
00632 typedef FixedArray<unsigned char, 6> PrintType;
00633 typedef FixedArray<unsigned char, 6> AbsType;
00634 typedef FixedArray<unsigned short, 6> AccumulateType;
00635 typedef FixedArray<double, 6> RealType;
00636 typedef double ScalarRealType;
00637 typedef FixedArray<float, 6> FloatType;
00638 };
00639 template <> class NumericTraits<FixedArray<signed char, 6> > {
00640 public:
00641 typedef signed char ValueType;
00642 typedef FixedArray<signed char, 6> PrintType;
00643 typedef FixedArray<unsigned char, 6> AbsType;
00644 typedef FixedArray<short, 6> AccumulateType;
00645 typedef FixedArray<double, 6> RealType;
00646 typedef double ScalarRealType;
00647 typedef FixedArray<float, 6> FloatType;
00648 };
00649 template <> class NumericTraits<FixedArray<char, 6> > {
00650 public:
00651 typedef char ValueType;
00652 typedef FixedArray<char, 6> PrintType;
00653 typedef FixedArray<unsigned char, 6> AbsType;
00654 typedef FixedArray<short, 6> AccumulateType;
00655 typedef FixedArray<double, 6> RealType;
00656 typedef double ScalarRealType;
00657 typedef FixedArray<float, 6> FloatType;
00658 };
00659 template <> class NumericTraits<FixedArray<short, 6> > {
00660 public:
00661 typedef short ValueType;
00662 typedef FixedArray<short, 6> PrintType;
00663 typedef FixedArray<unsigned short, 6> AbsType;
00664 typedef FixedArray<int, 6> AccumulateType;
00665 typedef FixedArray<double, 6> RealType;
00666 typedef double ScalarRealType;
00667 typedef FixedArray<float, 6> FloatType;
00668 };
00669 template <> class NumericTraits<FixedArray<unsigned short, 6> > {
00670 public:
00671 typedef unsigned short ValueType;
00672 typedef FixedArray<unsigned short, 6> PrintType;
00673 typedef FixedArray<unsigned short, 6> AbsType;
00674 typedef FixedArray<unsigned int, 6> AccumulateType;
00675 typedef FixedArray<double, 6> RealType;
00676 typedef double ScalarRealType;
00677 typedef FixedArray<float, 6> FloatType;
00678 };
00679 template <> class NumericTraits<FixedArray<int, 6> > {
00680 public:
00681 typedef int ValueType;
00682 typedef FixedArray<int, 6> PrintType;
00683 typedef FixedArray<unsigned int, 6> AbsType;
00684 typedef FixedArray<long, 6> AccumulateType;
00685 typedef FixedArray<double, 6> RealType;
00686 typedef double ScalarRealType;
00687 typedef FixedArray<float, 6> FloatType;
00688 };
00689 template <> class NumericTraits<FixedArray<unsigned int, 6> > {
00690 public:
00691 typedef unsigned int ValueType;
00692 typedef FixedArray<unsigned int, 6> PrintType;
00693 typedef FixedArray<unsigned int, 6> AbsType;
00694 typedef FixedArray<unsigned long, 6> AccumulateType;
00695 typedef FixedArray<double, 6> RealType;
00696 typedef double ScalarRealType;
00697 typedef FixedArray<float, 6> FloatType;
00698 };
00699 template <> class NumericTraits<FixedArray<long, 6> > {
00700 public:
00701 typedef long ValueType;
00702 typedef FixedArray<long, 6> PrintType;
00703 typedef FixedArray<unsigned long, 6> AbsType;
00704 typedef FixedArray<long, 6> AccumulateType;
00705 typedef FixedArray<double, 6> RealType;
00706 typedef double ScalarRealType;
00707 typedef FixedArray<float, 6> FloatType;
00708 };
00709 template <> class NumericTraits<FixedArray<unsigned long, 6> > {
00710 public:
00711 typedef unsigned long ValueType;
00712 typedef FixedArray<unsigned long, 6> PrintType;
00713 typedef FixedArray<unsigned long, 6> AbsType;
00714 typedef FixedArray<unsigned long, 6> AccumulateType;
00715 typedef FixedArray<double, 6> RealType;
00716 typedef FixedArray<float, 6> FloatType;
00717 };
00718 template <> class NumericTraits<FixedArray<float, 6> > {
00719 public:
00720 typedef float ValueType;
00721 typedef FixedArray<float, 6> PrintType;
00722 typedef FixedArray<float, 6> AbsType;
00723 typedef FixedArray<double, 6> AccumulateType;
00724 typedef FixedArray<double, 6> RealType;
00725 typedef double ScalarRealType;
00726 typedef FixedArray<float, 6> FloatType;
00727 };
00728 template <> class NumericTraits<FixedArray<double, 6> > {
00729 public:
00730 typedef double ValueType;
00731 typedef FixedArray<double, 6> PrintType;
00732 typedef FixedArray<double, 6> AbsType;
00733 typedef FixedArray<long double, 6> AccumulateType;
00734 typedef FixedArray<double, 6> RealType;
00735 typedef double ScalarRealType;
00736 typedef FixedArray<float, 6> FloatType;
00737 };
00738 template <> class NumericTraits<FixedArray<long double, 6> > {
00739 public:
00740 typedef long double ValueType;
00741 typedef FixedArray<long double, 6> PrintType;
00742 typedef FixedArray<long double, 6> AbsType;
00743 typedef FixedArray<long double, 6> AccumulateType;
00744 typedef FixedArray<long double, 6> RealType;
00745 typedef long double ScalarRealType;
00746 typedef FixedArray<float, 6> FloatType;
00747 };
00748
00749 template <> class NumericTraits<FixedArray<unsigned char, 7 > > {
00750 public:
00751 typedef unsigned char ValueType;
00752 typedef FixedArray<unsigned char, 7> PrintType;
00753 typedef FixedArray<unsigned char, 7> AbsType;
00754 typedef FixedArray<unsigned short, 7> AccumulateType;
00755 typedef FixedArray<double, 7> RealType;
00756 typedef double ScalarRealType;
00757 typedef FixedArray<float, 7> FloatType;
00758 };
00759 template <> class NumericTraits<FixedArray<signed char, 7> > {
00760 public:
00761 typedef signed char ValueType;
00762 typedef FixedArray<signed char, 7> PrintType;
00763 typedef FixedArray<unsigned char, 7> AbsType;
00764 typedef FixedArray<short, 7> AccumulateType;
00765 typedef FixedArray<double, 7> RealType;
00766 typedef double ScalarRealType;
00767 typedef FixedArray<float, 7> FloatType;
00768 };
00769 template <> class NumericTraits<FixedArray<char, 7> > {
00770 public:
00771 typedef char ValueType;
00772 typedef FixedArray<char, 7> PrintType;
00773 typedef FixedArray<unsigned char, 7> AbsType;
00774 typedef FixedArray<short, 7> AccumulateType;
00775 typedef FixedArray<double, 7> RealType;
00776 typedef double ScalarRealType;
00777 typedef FixedArray<float, 7> FloatType;
00778 };
00779 template <> class NumericTraits<FixedArray<short, 7> > {
00780 public:
00781 typedef short ValueType;
00782 typedef FixedArray<short, 7> PrintType;
00783 typedef FixedArray<unsigned short, 7> AbsType;
00784 typedef FixedArray<int, 7> AccumulateType;
00785 typedef FixedArray<double, 7> RealType;
00786 typedef double ScalarRealType;
00787 typedef FixedArray<float, 7> FloatType;
00788 };
00789 template <> class NumericTraits<FixedArray<unsigned short, 7> > {
00790 public:
00791 typedef unsigned short ValueType;
00792 typedef FixedArray<unsigned short, 7> PrintType;
00793 typedef FixedArray<unsigned short, 7> AbsType;
00794 typedef FixedArray<unsigned int, 7> AccumulateType;
00795 typedef FixedArray<double, 7> RealType;
00796 typedef double ScalarRealType;
00797 typedef FixedArray<float, 7> FloatType;
00798 };
00799 template <> class NumericTraits<FixedArray<int, 7> > {
00800 public:
00801 typedef int ValueType;
00802 typedef FixedArray<int, 7> PrintType;
00803 typedef FixedArray<unsigned int, 7> AbsType;
00804 typedef FixedArray<long, 7> AccumulateType;
00805 typedef FixedArray<double, 7> RealType;
00806 typedef double ScalarRealType;
00807 typedef FixedArray<float, 7> FloatType;
00808 };
00809 template <> class NumericTraits<FixedArray<unsigned int, 7> > {
00810 public:
00811 typedef unsigned int ValueType;
00812 typedef FixedArray<unsigned int, 7> PrintType;
00813 typedef FixedArray<unsigned int, 7> AbsType;
00814 typedef FixedArray<unsigned long, 7> AccumulateType;
00815 typedef FixedArray<double, 7> RealType;
00816 typedef double ScalarRealType;
00817 typedef FixedArray<float, 7> FloatType;
00818 };
00819 template <> class NumericTraits<FixedArray<long, 7> > {
00820 public:
00821 typedef long ValueType;
00822 typedef FixedArray<long, 7> PrintType;
00823 typedef FixedArray<unsigned long, 7> AbsType;
00824 typedef FixedArray<long, 7> AccumulateType;
00825 typedef FixedArray<double, 7> RealType;
00826 typedef double ScalarRealType;
00827 typedef FixedArray<float, 7> FloatType;
00828 };
00829 template <> class NumericTraits<FixedArray<unsigned long, 7> > {
00830 public:
00831 typedef unsigned long ValueType;
00832 typedef FixedArray<unsigned long, 7> PrintType;
00833 typedef FixedArray<unsigned long, 7> AbsType;
00834 typedef FixedArray<unsigned long, 7> AccumulateType;
00835 typedef FixedArray<double, 7> RealType;
00836 typedef FixedArray<float, 7> FloatType;
00837 };
00838 template <> class NumericTraits<FixedArray<float, 7> > {
00839 public:
00840 typedef float ValueType;
00841 typedef FixedArray<float, 7> PrintType;
00842 typedef FixedArray<float, 7> AbsType;
00843 typedef FixedArray<double, 7> AccumulateType;
00844 typedef FixedArray<double, 7> RealType;
00845 typedef double ScalarRealType;
00846 typedef FixedArray<float, 7> FloatType;
00847 };
00848 template <> class NumericTraits<FixedArray<double, 7> > {
00849 public:
00850 typedef double ValueType;
00851 typedef FixedArray<double, 7> PrintType;
00852 typedef FixedArray<double, 7> AbsType;
00853 typedef FixedArray<long double, 7> AccumulateType;
00854 typedef FixedArray<double, 7> RealType;
00855 typedef double ScalarRealType;
00856 typedef FixedArray<float, 7> FloatType;
00857 };
00858 template <> class NumericTraits<FixedArray<long double, 7> > {
00859 public:
00860 typedef long double ValueType;
00861 typedef FixedArray<long double, 7> PrintType;
00862 typedef FixedArray<long double, 7> AbsType;
00863 typedef FixedArray<long double, 7> AccumulateType;
00864 typedef FixedArray<long double, 7> RealType;
00865 typedef long double ScalarRealType;
00866 typedef FixedArray<float, 7> FloatType;
00867 };
00868
00869 template <> class NumericTraits<FixedArray<unsigned char, 8 > > {
00870 public:
00871 typedef unsigned char ValueType;
00872 typedef FixedArray<unsigned char, 8> PrintType;
00873 typedef FixedArray<unsigned char, 8> AbsType;
00874 typedef FixedArray<unsigned short, 8> AccumulateType;
00875 typedef FixedArray<double, 8> RealType;
00876 typedef double ScalarRealType;
00877 typedef FixedArray<float, 8> FloatType;
00878 };
00879 template <> class NumericTraits<FixedArray<signed char, 8> > {
00880 public:
00881 typedef signed char ValueType;
00882 typedef FixedArray<signed char, 8> PrintType;
00883 typedef FixedArray<unsigned char, 8> AbsType;
00884 typedef FixedArray<short, 8> AccumulateType;
00885 typedef FixedArray<double, 8> RealType;
00886 typedef double ScalarRealType;
00887 typedef FixedArray<float, 8> FloatType;
00888 };
00889 template <> class NumericTraits<FixedArray<char, 8> > {
00890 public:
00891 typedef char ValueType;
00892 typedef FixedArray<char, 8> PrintType;
00893 typedef FixedArray<unsigned char, 8> AbsType;
00894 typedef FixedArray<short, 8> AccumulateType;
00895 typedef FixedArray<double, 8> RealType;
00896 typedef double ScalarRealType;
00897 typedef FixedArray<float, 8> FloatType;
00898 };
00899 template <> class NumericTraits<FixedArray<short, 8> > {
00900 public:
00901 typedef short ValueType;
00902 typedef FixedArray<short, 8> PrintType;
00903 typedef FixedArray<unsigned short, 8> AbsType;
00904 typedef FixedArray<int, 8> AccumulateType;
00905 typedef FixedArray<double, 8> RealType;
00906 typedef double ScalarRealType;
00907 typedef FixedArray<float, 8> FloatType;
00908 };
00909 template <> class NumericTraits<FixedArray<unsigned short, 8> > {
00910 public:
00911 typedef unsigned short ValueType;
00912 typedef FixedArray<unsigned short, 8> PrintType;
00913 typedef FixedArray<unsigned short, 8> AbsType;
00914 typedef FixedArray<unsigned int, 8> AccumulateType;
00915 typedef FixedArray<double, 8> RealType;
00916 typedef double ScalarRealType;
00917 typedef FixedArray<float, 8> FloatType;
00918 };
00919 template <> class NumericTraits<FixedArray<int, 8> > {
00920 public:
00921 typedef int ValueType;
00922 typedef FixedArray<int, 8> PrintType;
00923 typedef FixedArray<unsigned int, 8> AbsType;
00924 typedef FixedArray<long, 8> AccumulateType;
00925 typedef FixedArray<double, 8> RealType;
00926 typedef double ScalarRealType;
00927 typedef FixedArray<float, 8> FloatType;
00928 };
00929 template <> class NumericTraits<FixedArray<unsigned int, 8> > {
00930 public:
00931 typedef unsigned int ValueType;
00932 typedef FixedArray<unsigned int, 8> PrintType;
00933 typedef FixedArray<unsigned int, 8> AbsType;
00934 typedef FixedArray<unsigned long, 8> AccumulateType;
00935 typedef FixedArray<double, 8> RealType;
00936 typedef double ScalarRealType;
00937 typedef FixedArray<float, 8> FloatType;
00938 };
00939 template <> class NumericTraits<FixedArray<long, 8> > {
00940 public:
00941 typedef long ValueType;
00942 typedef FixedArray<long, 8> PrintType;
00943 typedef FixedArray<unsigned long, 8> AbsType;
00944 typedef FixedArray<long, 8> AccumulateType;
00945 typedef FixedArray<double, 8> RealType;
00946 typedef double ScalarRealType;
00947 typedef FixedArray<float, 8> FloatType;
00948 };
00949 template <> class NumericTraits<FixedArray<unsigned long, 8> > {
00950 public:
00951 typedef unsigned long ValueType;
00952 typedef FixedArray<unsigned long, 8> PrintType;
00953 typedef FixedArray<unsigned long, 8> AbsType;
00954 typedef FixedArray<unsigned long, 8> AccumulateType;
00955 typedef FixedArray<double, 8> RealType;
00956 typedef FixedArray<float, 8> FloatType;
00957 };
00958 template <> class NumericTraits<FixedArray<float, 8> > {
00959 public:
00960 typedef float ValueType;
00961 typedef FixedArray<float, 8> PrintType;
00962 typedef FixedArray<float, 8> AbsType;
00963 typedef FixedArray<double, 8> AccumulateType;
00964 typedef FixedArray<double, 8> RealType;
00965 typedef double ScalarRealType;
00966 typedef FixedArray<float, 8> FloatType;
00967 };
00968 template <> class NumericTraits<FixedArray<double, 8> > {
00969 public:
00970 typedef double ValueType;
00971 typedef FixedArray<double, 8> PrintType;
00972 typedef FixedArray<double, 8> AbsType;
00973 typedef FixedArray<long double, 8> AccumulateType;
00974 typedef FixedArray<double, 8> RealType;
00975 typedef double ScalarRealType;
00976 typedef FixedArray<float, 8> FloatType;
00977 };
00978 template <> class NumericTraits<FixedArray<long double, 8> > {
00979 public:
00980 typedef long double ValueType;
00981 typedef FixedArray<long double, 8> PrintType;
00982 typedef FixedArray<long double, 8> AbsType;
00983 typedef FixedArray<long double, 8> AccumulateType;
00984 typedef FixedArray<long double, 8> RealType;
00985 typedef long double ScalarRealType;
00986 typedef FixedArray<float, 8> FloatType;
00987 };
00988
00989 template <> class NumericTraits<FixedArray<unsigned char, 9 > > {
00990 public:
00991 typedef unsigned char ValueType;
00992 typedef FixedArray<unsigned char, 9> PrintType;
00993 typedef FixedArray<unsigned char, 9> AbsType;
00994 typedef FixedArray<unsigned short, 9> AccumulateType;
00995 typedef FixedArray<double, 9> RealType;
00996 typedef double ScalarRealType;
00997 typedef FixedArray<float, 9> FloatType;
00998 };
00999 template <> class NumericTraits<FixedArray<signed char, 9> > {
01000 public:
01001 typedef signed char ValueType;
01002 typedef FixedArray<signed char, 9> PrintType;
01003 typedef FixedArray<unsigned char, 9> AbsType;
01004 typedef FixedArray<short, 9> AccumulateType;
01005 typedef FixedArray<double, 9> RealType;
01006 typedef double ScalarRealType;
01007 typedef FixedArray<float, 9> FloatType;
01008 };
01009 template <> class NumericTraits<FixedArray<char, 9> > {
01010 public:
01011 typedef char ValueType;
01012 typedef FixedArray<char, 9> PrintType;
01013 typedef FixedArray<unsigned char, 9> AbsType;
01014 typedef FixedArray<short, 9> AccumulateType;
01015 typedef FixedArray<double, 9> RealType;
01016 typedef double ScalarRealType;
01017 typedef FixedArray<float, 9> FloatType;
01018 };
01019 template <> class NumericTraits<FixedArray<short, 9> > {
01020 public:
01021 typedef short ValueType;
01022 typedef FixedArray<short, 9> PrintType;
01023 typedef FixedArray<unsigned short, 9> AbsType;
01024 typedef FixedArray<int, 9> AccumulateType;
01025 typedef FixedArray<double, 9> RealType;
01026 typedef double ScalarRealType;
01027 typedef FixedArray<float, 9> FloatType;
01028 };
01029 template <> class NumericTraits<FixedArray<unsigned short, 9> > {
01030 public:
01031 typedef unsigned short ValueType;
01032 typedef FixedArray<unsigned short, 9> PrintType;
01033 typedef FixedArray<unsigned short, 9> AbsType;
01034 typedef FixedArray<unsigned int, 9> AccumulateType;
01035 typedef FixedArray<double, 9> RealType;
01036 typedef double ScalarRealType;
01037 typedef FixedArray<float, 9> FloatType;
01038 };
01039 template <> class NumericTraits<FixedArray<int, 9> > {
01040 public:
01041 typedef int ValueType;
01042 typedef FixedArray<int, 9> PrintType;
01043 typedef FixedArray<unsigned int, 9> AbsType;
01044 typedef FixedArray<long, 9> AccumulateType;
01045 typedef FixedArray<double, 9> RealType;
01046 typedef double ScalarRealType;
01047 typedef FixedArray<float, 9> FloatType;
01048 };
01049 template <> class NumericTraits<FixedArray<unsigned int, 9> > {
01050 public:
01051 typedef unsigned int ValueType;
01052 typedef FixedArray<unsigned int, 9> PrintType;
01053 typedef FixedArray<unsigned int, 9> AbsType;
01054 typedef FixedArray<unsigned long, 9> AccumulateType;
01055 typedef FixedArray<double, 9> RealType;
01056 typedef double ScalarRealType;
01057 typedef FixedArray<float, 9> FloatType;
01058 };
01059 template <> class NumericTraits<FixedArray<long, 9> > {
01060 public:
01061 typedef long ValueType;
01062 typedef FixedArray<long, 9> PrintType;
01063 typedef FixedArray<unsigned long, 9> AbsType;
01064 typedef FixedArray<long, 9> AccumulateType;
01065 typedef FixedArray<double, 9> RealType;
01066 typedef double ScalarRealType;
01067 typedef FixedArray<float, 9> FloatType;
01068 };
01069 template <> class NumericTraits<FixedArray<unsigned long, 9> > {
01070 public:
01071 typedef unsigned long ValueType;
01072 typedef FixedArray<unsigned long, 9> PrintType;
01073 typedef FixedArray<unsigned long, 9> AbsType;
01074 typedef FixedArray<unsigned long, 9> AccumulateType;
01075 typedef FixedArray<double, 9> RealType;
01076 typedef FixedArray<float, 9> FloatType;
01077 };
01078 template <> class NumericTraits<FixedArray<float, 9> > {
01079 public:
01080 typedef float ValueType;
01081 typedef FixedArray<float, 9> PrintType;
01082 typedef FixedArray<float, 9> AbsType;
01083 typedef FixedArray<double, 9> AccumulateType;
01084 typedef FixedArray<double, 9> RealType;
01085 typedef double ScalarRealType;
01086 typedef FixedArray<float, 9> FloatType;
01087 };
01088 template <> class NumericTraits<FixedArray<double, 9> > {
01089 public:
01090 typedef double ValueType;
01091 typedef FixedArray<double, 9> PrintType;
01092 typedef FixedArray<double, 9> AbsType;
01093 typedef FixedArray<long double, 9> AccumulateType;
01094 typedef FixedArray<double, 9> RealType;
01095 typedef double ScalarRealType;
01096 typedef FixedArray<float, 9> FloatType;
01097 };
01098 template <> class NumericTraits<FixedArray<long double, 9> > {
01099 public:
01100 typedef long double ValueType;
01101 typedef FixedArray<long double, 9> PrintType;
01102 typedef FixedArray<long double, 9> AbsType;
01103 typedef FixedArray<long double, 9> AccumulateType;
01104 typedef FixedArray<long double, 9> RealType;
01105 typedef long double ScalarRealType;
01106 typedef FixedArray<float, 9> FloatType;
01107 };
01108
01109 }
01110
01111 #endif // __itkNumericTraitsFixedArrayPixel_h
01112
01113