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

template<class DstArrayT, class SrcArrayT, class UpoT>
void Impala::Core::Array::Pattern::FuncUpo ( DstArrayT *  dst,
SrcArrayT *  src,
UpoT &  upo,
TagTransInVar  dummy,
TagCallValue  dummy2 
)

Translation invariant unary pixel operation based on value call.

Definition at line 22 of file FuncUpo.h.

References ArrayCH(), ArrayCPB(), ArrayCW(), PtrRead(), and PtrWrite().

Referenced by FuncUpoDispatch().

00024 {
00025     typedef typename DstArrayT::StorType DstStorT;
00026     typedef typename DstArrayT::ArithType DstArithT;
00027     typedef typename SrcArrayT::StorType SrcStorT;
00028     typedef typename SrcArrayT::ArithType SrcArithT;
00029 
00030     int width = ArrayCW(dst);
00031     int height = ArrayCH(dst);
00032     for (int y=0 ; y<height ; y++)
00033     {
00034         SrcStorT* sPtr = ArrayCPB(src, 0, y);
00035         DstStorT* dPtr = ArrayCPB(dst, 0, y);
00036         for (int x=0 ; x<width ; x++)
00037         {
00038             PtrWrite(dPtr, upo.DoIt(PtrRead(sPtr, SrcArithT())));
00039             dPtr += DstArrayT::ElemSize();
00040             sPtr += SrcArrayT::ElemSize();
00041         }
00042     }
00043 }

Here is the call graph for this function:


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