template<class DstArrayT, class SrcArrayT, class UpoT>
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:
|