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

template<class DstArrayT, class Src1ArrayT, class Src2ArrayT, class BpoT>
void Impala::Core::Array::Pattern::FuncBpo ( DstArrayT *  dst,
Src1ArrayT *  src1,
Src2ArrayT *  src2,
BpoT &  bpo,
TagTransInVar  dummy,
TagCallPointer  dummy2 
)

Translation invariant binary pixel operation based on pointer call.

Definition at line 22 of file FuncBpo.h.

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

Referenced by FuncBpoDispatch().

00024 {
00025     typedef typename DstArrayT::StorType DstStorT;
00026     typedef typename Src1ArrayT::StorType Src1StorT;
00027     typedef typename Src2ArrayT::StorType Src2StorT;
00028 
00029     int width = ArrayCW(dst);
00030     int height = ArrayCH(dst);
00031     for (int y=0 ; y<height ; y++)
00032     {
00033         Src1StorT* s1Ptr = ArrayCPB(src1, 0, y);
00034         Src2StorT* s2Ptr = ArrayCPB(src2, 0, y);
00035         DstStorT* dPtr = ArrayCPB(dst, 0, y);
00036         for (int x=0 ; x<width ; x++)
00037         {
00038             bpo.DoIt(dPtr, s1Ptr, s2Ptr);
00039             dPtr += DstArrayT::ElemSize();
00040             s1Ptr += Src1ArrayT::ElemSize();
00041             s2Ptr += Src2ArrayT::ElemSize();
00042         }
00043     }
00044 }

Here is the call graph for this function:


Generated on Fri Mar 19 11:00:58 2010 for ImpalaSrc by  doxygen 1.5.1