00001
00002
00003
00004
00005
00006
00007
00008
00011 #ifndef HxFuncKernelNgbOp2d_h
00012 #define HxFuncKernelNgbOp2d_h
00013
00014 #include "HxNgbOpCategory.h"
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
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