Main Page   Class Overview   Pixels   Images   Geometry   Quick Index  

HxFuncKernelNgbOp2d.h

Go to the documentation of this file.
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  */
00008 
00011 #ifndef HxFuncKernelNgbOp2d_h
00012 #define HxFuncKernelNgbOp2d_h
00013 
00014 #include "HxNgbOpCategory.h"
00015 
00016 /*
00017 
00018 For all neighborhood functions it must be true that:
00019 
00020 srcPtr points at the first input pixel to be processed, the pixel at the
00021 "top left" corner and the "center of the neighborhood.
00022 
00023 dstSize pixels will
00024 be processed, dstPtr should point to enough pixels to hold the result.
00025 
00026 srcPtr must point to an amount of pixels large enough to accommodate dstSize
00027 input pixels and the border needed by the neighborhood operator.
00028 
00029 */
00030 
00031 
00035 template <class DstDataPtrT, class SrcDataPtrT, class NgbT, class KernelT>
00036 void
00037 HxFuncKernelNgbOp2d(
00038     DstDataPtrT dstPtr, SrcDataPtrT srcPtr,
00039     HxSizes dstSize, NgbT& ngb, KernelT& kernel,
00040     const HxNgbLoopTag, const HxNgb1PhaseTag, const HxNgbTransInVarTag);
00041 
00042 
00046 template <class DstDataPtrT, class SrcDataPtrT, class NgbT, class KernelT>
00047 void
00048 HxFuncKernelNgbOp2d(
00049     DstDataPtrT dstPtr, SrcDataPtrT srcPtr,
00050     HxSizes dstSize, NgbT& ngb, KernelT& kernel,
00051     const HxNgbLoopTag, const HxNgb2PhaseTag, const HxNgbTransInVarTag);
00052 
00053 
00057 template <class DstDataPtrT, class SrcDataPtrT, class NgbT, class KernelT>
00058 inline void
00059 HxFuncKernelNgbOp2d(
00060     DstDataPtrT dstPtr, SrcDataPtrT srcPtr,
00061     HxSizes dstSize, NgbT& ngb, KernelT& kernel)
00062 {
00063     HxFuncKernelNgbOp2d(
00064         dstPtr, srcPtr, dstSize, ngb, kernel,
00065         typename NgbT::IteratorCategory(),
00066         typename NgbT::PhaseCategory(),
00067         typename NgbT::TransVarianceCategory());
00068 }
00069 
00070 
00071 #ifdef INC_TEMPLATE_SRC
00072 #include "HxFuncKernelNgbOp2d.c"
00073 #endif
00074 
00075 #endif

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