Main Page   Class Overview   Pixels   Images   Geometry   Quick Index  

HxImgFtorGenConv2dK1d.h

00001 /*
00002  *  Copyright (c) 2000, 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 HxImgFtorGenConv2dK1d_h
00012 #define HxImgFtorGenConv2dK1d_h
00013 
00014 #include "HxSizes.h"
00015 #include "HxImgFtorGenConvK1dKey.h"
00016 #include "HxImgFtorI3Cast.h"
00017 
00018 #include "HxTagList.h"
00019 
00020 
00024 template <class DstImgSigT, class SrcImgSigT, class KerImgSigT,
00025     class PixOpT, class RedOpT, class KernelT>
00026 class L_HXIMAGEREP HxImgFtorGenConv2dK1d
00027     : public HxImgFtorI3Cast<DstImgSigT, SrcImgSigT, KerImgSigT>
00028 {
00029 
00030 public:
00031 
00033     typedef HxImgFtorGenConvK1dKey   KeyType;
00034 
00036     typedef typename SrcImgSigT::DataPtrType SrcDataPtrType;
00037 
00039     typedef typename KerImgSigT::DataPtrType KerDataPtrType;
00040 
00041 
00043                     HxImgFtorGenConv2dK1d();
00044 
00046     virtual         ~HxImgFtorGenConv2dK1d();
00047 
00048 protected:
00049 
00054     virtual void    doIt(DstDataPtrType dstPtr, SrcDataPtrType srcPtr,
00055                         KerDataPtrType kerPtr,
00056                         HxSizes dstSize, HxSizes srcSize, HxSizes kerSize,
00057                         HxTagList &tags, HxImgFtorDescription* = 0);
00058     void            convolutionX(
00059                         DstDataPtrType dstPtr, SrcDataPtrType srcPtr,
00060                         KerDataPtrType kerPtr, HxSizes dstSize,
00061                         HxSizes srcSize, HxSizes kerSize, HxTagList &tags);
00062     void            convolutionY(
00063                         DstDataPtrType dstPtr, SrcDataPtrType srcPtr,
00064                         KerDataPtrType kerPtr, HxSizes dstSize,
00065                         HxSizes srcSize, HxSizes kerSize, HxTagList &tags);
00066     void            convolutionXIp(
00067                         DstDataPtrType dstPtr, SrcDataPtrType srcPtr,
00068                         KerDataPtrType kerPtr, HxSizes dstSize,
00069                         HxSizes srcSize, HxSizes kerSize, HxTagList &tags);
00070     void            convolutionYIp(
00071                         DstDataPtrType dstPtr, SrcDataPtrType srcPtr,
00072                         KerDataPtrType kerPtr, HxSizes dstSize,
00073                         HxSizes srcSize, HxSizes kerSize, HxTagList &tags);
00074 
00075 
00076 private:
00077                         HxImgFtorGenConv2dK1d(const HxImgFtorGenConv2dK1d&);
00078 };
00079 
00080 #ifdef INC_TEMPLATE_SRC
00081 #include "HxImgFtorGenConv2dK1d.c"
00082 #endif
00083 
00084 #endif

Generated on Tue Jan 8 13:59:13 2002 for C++Reference by doxygen1.2.12 written by Dimitri van Heesch, © 1997-2001