Horus Doc || C++ Reference || Class Overview   Pixels   Images   Detector   Geometry   Registry || Doxygen's quick Index  

HxImageSig3dDouble.h

00001 /*  
00002  *  Copyright (c) 1998, University of Amsterdam, The Netherlands.
00003  *  All rights reserved.
00004  *
00005  *
00006  *  Author(s):
00007  *  Dennis Koelma (koelma@wins.uva.nl)
00008  *  Edo Poll (poll@wins.uva.nl)
00009  */
00010  
00011 #ifndef HxImageSig3dDouble_h
00012 #define HxImageSig3dDouble_h
00013  
00014  
00015 #include "HxImageSignature.h"
00016 #include "HxPixelAllocator.h"
00017 
00018 #include "HxScalarDouble.h"
00019 #include "HxDataPtr3dScalarTem.h"
00020 
00021 class HxImageSig2dDouble;
00022  
00023 
00026 class HxImageSig3dDouble : public HxImageSignature {
00027 public:
00028     typedef double                      PixelType;
00029     typedef HxScalarDouble              ArithType;
00030     typedef HxScalarDouble              ArithTypeDouble;
00031 
00032     typedef HxDataPtr3dScalarTem<       
00033                 PixelType, ArithType>   DataPtrType;
00034 
00035     typedef HxPixelAllocator<PixelType> Allocator;
00036 
00037     typedef HxImageSig2dDouble          ProjectDomainImageSigType;
00038     typedef HxImageSig3dDouble          ArithImageSigType;
00039     typedef HxImageSig3dDouble          ArithImageSigTypeDouble;
00040 
00041                                         HxImageSig3dDouble();
00042  
00043     enum { ID = SIG_ID(3, 1, REAL_VALUE, sizeof(PixelType) << 3) };
00044 };  
00045  
00046 template<>
00047 struct HxClassName<HxImageSig3dDouble> {
00048     operator HxString() {
00049         static HxImageSig3dDouble sig;
00050         return sig.toString();
00051     }
00052 };
00053 
00054 inline
00055 HxImageSig3dDouble::HxImageSig3dDouble()
00056 {
00057     _imageDimensionality = 3;
00058     _pixelDimensionality = 1;
00059     _pixelType = REAL_VALUE;
00060     _pixelPrecision = sizeof(PixelType) << 3;
00061 }
00062  
00063 #endif
00064 

Generated on Mon Jan 27 15:48:44 2003 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001