template<class DstArrayT, class SrcArrayT, class MpoT>
Definition at line 357 of file FuncMpo.h. References ArrayCH(), ArrayCPB(), ArrayCW(), PtrRead(), and PtrWrite(). Referenced by PatM22PixOp(). 00364 { 00365 typedef typename DstArrayT::StorType DstStorT; 00366 typedef typename DstArrayT::ArithType DstArithT; 00367 typedef typename SrcArrayT::StorType SrcStorT; 00368 typedef typename SrcArrayT::ArithType SrcArithT; 00369 00370 int width = ArrayCW(dst); 00371 int height = ArrayCH(dst); 00372 for (int y=0 ; y<height ; y++) 00373 { 00374 SrcStorT* s1Ptr = ArrayCPB(src1, 0, y); 00375 SrcStorT* s2Ptr = ArrayCPB(src2, 0, y); 00376 SrcStorT* s3Ptr = ArrayCPB(src3, 0, y); 00377 SrcStorT* s4Ptr = ArrayCPB(src4, 0, y); 00378 SrcStorT* s5Ptr = ArrayCPB(src5, 0, y); 00379 SrcStorT* s6Ptr = ArrayCPB(src6, 0, y); 00380 SrcStorT* s7Ptr = ArrayCPB(src7, 0, y); 00381 SrcStorT* s8Ptr = ArrayCPB(src8, 0, y); 00382 SrcStorT* s9Ptr = ArrayCPB(src9, 0, y); 00383 SrcStorT* s10Ptr = ArrayCPB(src10, 0, y); 00384 SrcStorT* s11Ptr = ArrayCPB(src11, 0, y); 00385 SrcStorT* s12Ptr = ArrayCPB(src12, 0, y); 00386 SrcStorT* s13Ptr = ArrayCPB(src13, 0, y); 00387 SrcStorT* s14Ptr = ArrayCPB(src14, 0, y); 00388 SrcStorT* s15Ptr = ArrayCPB(src15, 0, y); 00389 SrcStorT* s16Ptr = ArrayCPB(src16, 0, y); 00390 SrcStorT* s17Ptr = ArrayCPB(src17, 0, y); 00391 SrcStorT* s18Ptr = ArrayCPB(src18, 0, y); 00392 SrcStorT* s19Ptr = ArrayCPB(src19, 0, y); 00393 SrcStorT* s20Ptr = ArrayCPB(src20, 0, y); 00394 SrcStorT* s21Ptr = ArrayCPB(src21, 0, y); 00395 SrcStorT* s22Ptr = ArrayCPB(src22, 0, y); 00396 DstStorT* dPtr = ArrayCPB(dst, 0, y); 00397 for (int x=0 ; x<width ; x++) 00398 { 00399 PtrWrite(dPtr, mpo.DoIt(PtrRead(s1Ptr, SrcArithT()), 00400 PtrRead(s2Ptr, SrcArithT()), 00401 PtrRead(s3Ptr, SrcArithT()), 00402 PtrRead(s4Ptr, SrcArithT()), 00403 PtrRead(s5Ptr, SrcArithT()), 00404 PtrRead(s6Ptr, SrcArithT()), 00405 PtrRead(s7Ptr, SrcArithT()), 00406 PtrRead(s8Ptr, SrcArithT()), 00407 PtrRead(s9Ptr, SrcArithT()), 00408 PtrRead(s10Ptr, SrcArithT()), 00409 PtrRead(s11Ptr, SrcArithT()), 00410 PtrRead(s12Ptr, SrcArithT()), 00411 PtrRead(s13Ptr, SrcArithT()), 00412 PtrRead(s14Ptr, SrcArithT()), 00413 PtrRead(s15Ptr, SrcArithT()), 00414 PtrRead(s16Ptr, SrcArithT()), 00415 PtrRead(s17Ptr, SrcArithT()), 00416 PtrRead(s18Ptr, SrcArithT()), 00417 PtrRead(s19Ptr, SrcArithT()), 00418 PtrRead(s20Ptr, SrcArithT()), 00419 PtrRead(s21Ptr, SrcArithT()), 00420 PtrRead(s22Ptr, SrcArithT()))); 00421 dPtr += DstArrayT::ElemSize(); 00422 s1Ptr += SrcArrayT::ElemSize(); 00423 s2Ptr += SrcArrayT::ElemSize(); 00424 s3Ptr += SrcArrayT::ElemSize(); 00425 s4Ptr += SrcArrayT::ElemSize(); 00426 s5Ptr += SrcArrayT::ElemSize(); 00427 s6Ptr += SrcArrayT::ElemSize(); 00428 s7Ptr += SrcArrayT::ElemSize(); 00429 s8Ptr += SrcArrayT::ElemSize(); 00430 s9Ptr += SrcArrayT::ElemSize(); 00431 s10Ptr += SrcArrayT::ElemSize(); 00432 s11Ptr += SrcArrayT::ElemSize(); 00433 s12Ptr += SrcArrayT::ElemSize(); 00434 s13Ptr += SrcArrayT::ElemSize(); 00435 s14Ptr += SrcArrayT::ElemSize(); 00436 s15Ptr += SrcArrayT::ElemSize(); 00437 s16Ptr += SrcArrayT::ElemSize(); 00438 s17Ptr += SrcArrayT::ElemSize(); 00439 s18Ptr += SrcArrayT::ElemSize(); 00440 s19Ptr += SrcArrayT::ElemSize(); 00441 s20Ptr += SrcArrayT::ElemSize(); 00442 s21Ptr += SrcArrayT::ElemSize(); 00443 s22Ptr += SrcArrayT::ElemSize(); 00444 } 00445 } 00446 }
Here is the call graph for this function:
|