00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011 #ifndef HxImageSig2dVec2Double_h
00012 #define HxImageSig2dVec2Double_h
00013
00014
00015 #include "HxImageSignature.h"
00016 #include "HxPixelAllocator.h"
00017
00018 #include "HxVec2Double.h"
00019 #include "HxDataPtr2dTem.h"
00020
00021
00024 class HxImageSig2dVec2Double : public HxImageSignature {
00025 public:
00026 typedef HxVec2Double PixelType;
00027 typedef HxVec2Double ArithType;
00028 typedef HxVec2Double ArithTypeDouble;
00029
00030 typedef HxDataPtr2dTem<
00031 PixelType, ArithType> DataPtrType;
00032
00033 typedef HxPixelAllocator<PixelType> Allocator;
00034
00035 typedef HxImageSig2dVec2Double ProjectDomainImageSigType;
00036 typedef HxImageSig2dVec2Double ArithImageSigType;
00037 typedef HxImageSig2dVec2Double ArithImageSigTypeDouble;
00038
00039 HxImageSig2dVec2Double();
00040
00041 enum { ID = SIG_ID(2, 2, REAL_VALUE, sizeof(double) << 3) };
00042 };
00043
00044 template<>
00045 struct HxClassName<HxImageSig2dVec2Double> {
00046 operator HxString() {
00047 static HxImageSig2dVec2Double sig;
00048 return sig.toString();
00049 }
00050 };
00051
00052 inline
00053 HxImageSig2dVec2Double::HxImageSig2dVec2Double()
00054 {
00055 _imageDimensionality = 2;
00056 _pixelDimensionality = 2;
00057 _pixelType = REAL_VALUE;
00058 _pixelPrecision = sizeof(double) << 3;
00059 }
00060
00061 #endif
00062