template<class DstArrayT, class SrcArrayT, class MpoT>
Definition at line 157 of file FuncMpo.h. References ArrayCH(), ArrayCPB(), ArrayCW(), PtrRead(), and PtrWrite(). Referenced by PatM9PixOp(). 00160 { 00161 typedef typename DstArrayT::StorType DstStorT; 00162 typedef typename DstArrayT::ArithType DstArithT; 00163 typedef typename SrcArrayT::StorType SrcStorT; 00164 typedef typename SrcArrayT::ArithType SrcArithT; 00165 00166 int width = ArrayCW(dst); 00167 int height = ArrayCH(dst); 00168 for (int y=0 ; y<height ; y++) 00169 { 00170 SrcStorT* s1Ptr = ArrayCPB(src1, 0, y); 00171 SrcStorT* s2Ptr = ArrayCPB(src2, 0, y); 00172 SrcStorT* s3Ptr = ArrayCPB(src3, 0, y); 00173 SrcStorT* s4Ptr = ArrayCPB(src4, 0, y); 00174 SrcStorT* s5Ptr = ArrayCPB(src5, 0, y); 00175 SrcStorT* s6Ptr = ArrayCPB(src6, 0, y); 00176 SrcStorT* s7Ptr = ArrayCPB(src7 , 0, y); 00177 SrcStorT* s8Ptr = ArrayCPB(src8, 0, y); 00178 SrcStorT* s9Ptr = ArrayCPB(src9, 0, y); 00179 DstStorT* dPtr = ArrayCPB(dst, 0, y); 00180 for (int x=0 ; x<width ; x++) 00181 { 00182 PtrWrite(dPtr, mpo.DoIt(PtrRead(s1Ptr, SrcArithT()), 00183 PtrRead(s2Ptr, SrcArithT()), 00184 PtrRead(s3Ptr, SrcArithT()), 00185 PtrRead(s4Ptr, SrcArithT()), 00186 PtrRead(s5Ptr, SrcArithT()), 00187 PtrRead(s6Ptr, SrcArithT()), 00188 PtrRead(s7Ptr, SrcArithT()), 00189 PtrRead(s8Ptr, SrcArithT()), 00190 PtrRead(s9Ptr, SrcArithT()))); 00191 dPtr += DstArrayT::ElemSize(); 00192 s1Ptr += SrcArrayT::ElemSize(); 00193 s2Ptr += SrcArrayT::ElemSize(); 00194 s3Ptr += SrcArrayT::ElemSize(); 00195 s4Ptr += SrcArrayT::ElemSize(); 00196 s5Ptr += SrcArrayT::ElemSize(); 00197 s6Ptr += SrcArrayT::ElemSize(); 00198 s7Ptr += SrcArrayT::ElemSize(); 00199 s8Ptr += SrcArrayT::ElemSize(); 00200 s9Ptr += SrcArrayT::ElemSize(); 00201 } 00202 } 00203 }
Here is the call graph for this function:
|