template<class DstArrayT, class SrcArrayT, class MpoT>
Definition at line 267 of file FuncMpo.h. References ArrayCH(), ArrayCPB(), ArrayCW(), PtrRead(), and PtrWrite(). Referenced by PatM21PixOp(). 00274 { 00275 typedef typename DstArrayT::StorType DstStorT; 00276 typedef typename DstArrayT::ArithType DstArithT; 00277 typedef typename SrcArrayT::StorType SrcStorT; 00278 typedef typename SrcArrayT::ArithType SrcArithT; 00279 00280 int width = ArrayCW(dst); 00281 int height = ArrayCH(dst); 00282 for (int y=0 ; y<height ; y++) 00283 { 00284 SrcStorT* s1Ptr = ArrayCPB(src1, 0, y); 00285 SrcStorT* s2Ptr = ArrayCPB(src2, 0, y); 00286 SrcStorT* s3Ptr = ArrayCPB(src3, 0, y); 00287 SrcStorT* s4Ptr = ArrayCPB(src4, 0, y); 00288 SrcStorT* s5Ptr = ArrayCPB(src5, 0, y); 00289 SrcStorT* s6Ptr = ArrayCPB(src6, 0, y); 00290 SrcStorT* s7Ptr = ArrayCPB(src7, 0, y); 00291 SrcStorT* s8Ptr = ArrayCPB(src8, 0, y); 00292 SrcStorT* s9Ptr = ArrayCPB(src9, 0, y); 00293 SrcStorT* s10Ptr = ArrayCPB(src10, 0, y); 00294 SrcStorT* s11Ptr = ArrayCPB(src11, 0, y); 00295 SrcStorT* s12Ptr = ArrayCPB(src12, 0, y); 00296 SrcStorT* s13Ptr = ArrayCPB(src13, 0, y); 00297 SrcStorT* s14Ptr = ArrayCPB(src14, 0, y); 00298 SrcStorT* s15Ptr = ArrayCPB(src15, 0, y); 00299 SrcStorT* s16Ptr = ArrayCPB(src16, 0, y); 00300 SrcStorT* s17Ptr = ArrayCPB(src17, 0, y); 00301 SrcStorT* s18Ptr = ArrayCPB(src18, 0, y); 00302 SrcStorT* s19Ptr = ArrayCPB(src19, 0, y); 00303 SrcStorT* s20Ptr = ArrayCPB(src20, 0, y); 00304 SrcStorT* s21Ptr = ArrayCPB(src21, 0, y); 00305 DstStorT* dPtr = ArrayCPB(dst, 0, y); 00306 for (int x=0 ; x<width ; x++) 00307 { 00308 PtrWrite(dPtr, mpo.DoIt(PtrRead(s1Ptr, SrcArithT()), 00309 PtrRead(s2Ptr, SrcArithT()), 00310 PtrRead(s3Ptr, SrcArithT()), 00311 PtrRead(s4Ptr, SrcArithT()), 00312 PtrRead(s5Ptr, SrcArithT()), 00313 PtrRead(s6Ptr, SrcArithT()), 00314 PtrRead(s7Ptr, SrcArithT()), 00315 PtrRead(s8Ptr, SrcArithT()), 00316 PtrRead(s9Ptr, SrcArithT()), 00317 PtrRead(s10Ptr, SrcArithT()), 00318 PtrRead(s11Ptr, SrcArithT()), 00319 PtrRead(s12Ptr, SrcArithT()), 00320 PtrRead(s13Ptr, SrcArithT()), 00321 PtrRead(s14Ptr, SrcArithT()), 00322 PtrRead(s15Ptr, SrcArithT()), 00323 PtrRead(s16Ptr, SrcArithT()), 00324 PtrRead(s17Ptr, SrcArithT()), 00325 PtrRead(s18Ptr, SrcArithT()), 00326 PtrRead(s19Ptr, SrcArithT()), 00327 PtrRead(s20Ptr, SrcArithT()), 00328 PtrRead(s21Ptr, SrcArithT()))); 00329 dPtr += DstArrayT::ElemSize(); 00330 s1Ptr += SrcArrayT::ElemSize(); 00331 s2Ptr += SrcArrayT::ElemSize(); 00332 s3Ptr += SrcArrayT::ElemSize(); 00333 s4Ptr += SrcArrayT::ElemSize(); 00334 s5Ptr += SrcArrayT::ElemSize(); 00335 s6Ptr += SrcArrayT::ElemSize(); 00336 s7Ptr += SrcArrayT::ElemSize(); 00337 s8Ptr += SrcArrayT::ElemSize(); 00338 s9Ptr += SrcArrayT::ElemSize(); 00339 s10Ptr += SrcArrayT::ElemSize(); 00340 s11Ptr += SrcArrayT::ElemSize(); 00341 s12Ptr += SrcArrayT::ElemSize(); 00342 s13Ptr += SrcArrayT::ElemSize(); 00343 s14Ptr += SrcArrayT::ElemSize(); 00344 s15Ptr += SrcArrayT::ElemSize(); 00345 s16Ptr += SrcArrayT::ElemSize(); 00346 s17Ptr += SrcArrayT::ElemSize(); 00347 s18Ptr += SrcArrayT::ElemSize(); 00348 s19Ptr += SrcArrayT::ElemSize(); 00349 s20Ptr += SrcArrayT::ElemSize(); 00350 s21Ptr += SrcArrayT::ElemSize(); 00351 } 00352 } 00353 }
Here is the call graph for this function:
|