Home || Architecture || Video Search || Visual Search || Scripts || Applications || Important Messages || OGL || Src

template<class DstArrayT, class SrcArrayT, class KerArrayT, class PixOpT, class RedOpT>
static void Impala::Core::Array::Pattern::FuncGenConv2dSep_Line_YdirNaiInc ( DstArrayT *  dst,
SrcArrayT *  src,
KerArrayT *  ker,
PixOpT &  pixOp,
RedOpT &  redOp,
int  x,
TagCallPointer  dummy 
) [static]

Line : Y direction, naive (inc), using pointer call.

Definition at line 273 of file FuncGenConv2dSep.h.

References ArrayCH(), ArrayCPB(), ArrayCW(), and ArrayInc().

Referenced by FuncGenConv2dSepDispatch_V().

00276 {
00277     typedef typename DstArrayT::StorType DstStorT;
00278     typedef typename SrcArrayT::StorType SrcStorT;
00279     typedef typename KerArrayT::StorType KerStorT;
00280 
00281     int height = ArrayCH(dst);
00282     int kerWidth = ArrayCW(ker);
00283     int kerBW = ArrayCW(ker) / 2;
00284     int srcInc = ArrayInc(src, 0, 1);
00285     KerStorT buf[KerArrayT::ElemSize()];
00286     for (int y=0 ; y<height ; y++)
00287     {
00288         DstStorT* dPtr = ArrayCPB(dst, x, y);
00289         SrcStorT* sPtr = ArrayCPB(src, x, -kerBW + y);
00290         KerStorT* kPtr = ArrayCPB(ker, 0, 0);
00291         redOp.setNeutral(dPtr);
00292         for (int k=0; k<kerWidth; k++)
00293         {
00294             pixOp.DoIt(buf, sPtr, kPtr);
00295             sPtr += srcInc;
00296             kPtr += KerArrayT::ElemSize();
00297             redOp.DoIt(dPtr, buf);
00298         }
00299     }
00300 }

Here is the call graph for this function:


Generated on Fri Mar 19 11:01:06 2010 for ImpalaSrc by  doxygen 1.5.1