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

HxImgFtorI2Cast.h

00001 /*
00002  *  Copyright (c) 1999, University of Amsterdam, The Netherlands.
00003  *  All rights reserved.
00004  *
00005  *  Author(s):
00006  *  Edo Poll                (poll@wins.uva.nl)
00007  *  Marc Navarro            (mnavarro@wins.uva.nl)
00008  *  Dennis Koelma           (koelma@wins.uva.nl)
00009  */
00010 
00011 #ifndef HxImgFtorI2Cast_h
00012 #define HxImgFtorI2Cast_h
00013 
00014 #include "HxSizes.h"
00015 #include "HxImgFtorI2CastKey.h"
00016 #include "HxImgFtorI2.h"
00017 
00018 #include "HxTagList.h"
00019 
00020 class HxImageData;
00021 
00022 
00032 template <class Img1SigT, class Img2SigT>
00033 class L_HXIMAGEREP HxImgFtorI2Cast : public HxImgFtorI2
00034 {
00035 
00036 public:
00037     
00039     typedef HxImgFtorI2CastKey      KeyType;
00040 
00042     typedef typename Img1SigT::DataPtrType Img1DataPtrType;
00043 
00045     typedef typename Img2SigT::DataPtrType Img2DataPtrType;
00046 
00048                     HxImgFtorI2Cast(const KeyType&);
00049 
00051     virtual         ~HxImgFtorI2Cast();
00052     
00054     virtual void    callIt(HxImageData* img1, HxImageData* img2, 
00055                         HxTagList &tags);
00056 
00057 protected:
00068     virtual void    doIt(Img1DataPtrType img1Ptr, Img2DataPtrType img2Ptr, 
00069                          HxSizes img1Size, HxSizes img2Size, HxTagList &tags,
00070                          HxImgFtorDescription* description = 0) = 0;
00071 
00072 private:
00073                     HxImgFtorI2Cast();
00074                     HxImgFtorI2Cast(const HxImgFtorI2Cast&);
00075 };
00076 
00077 template <class Img1SigT, class Img2SigT>
00078 inline
00079 HxImgFtorI2Cast<Img1SigT, Img2SigT>::HxImgFtorI2Cast(const KeyType& key)
00080             : HxImgFtorI2(key)
00081 {
00082 }
00083 
00084 #ifdef INC_TEMPLATE_SRC
00085 #include "HxImgFtorI2Cast.c"
00086 #endif
00087 
00088 #endif

Generated on Tue Feb 3 14:18:37 2004 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001