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

template<class DstArrayT, class SrcArrayT, class MpoT>
void Impala::Core::Array::Pattern::PatM3PixOp ( DstArrayT *&  dst,
SrcArrayT *  s1,
SrcArrayT *  s2,
SrcArrayT *  s3,
MpoT &  mpo 
) [inline]

Definition at line 23 of file PatM3PixOp.h.

References FuncM3po(), Impala::Core::Array::PAR_PART, PxArrayForceNonDistributed(), PxArrayPD(), PxArrayPostStateTrans(), PxArrayPreStateTrans(), PxRunLazyParallel(), PxRunParallel(), STRONG, and WEAK.

Referenced by Impala::Core::Array::Harris(), and Impala::Core::Array::MakeFrom3Images().

00025 {
00026     if (dst == 0)
00027         dst = ArrayClone<DstArrayT>(s1);
00028 
00029 #ifdef PX_HORUS_USED
00030     if (!PxRunParallel()) {                         // run sequential
00031 #endif
00032         FuncM3po(dst, s1, s2, s3, mpo);
00033 
00034 #ifdef PX_HORUS_USED
00035     } else {                                        // run parallel
00036         PxArrayPreStateTrans(s1,  PAR_PART, STRONG);
00037         PxArrayPreStateTrans(s2,  PAR_PART, STRONG);
00038         PxArrayPreStateTrans(s3,  PAR_PART, STRONG);
00039         PxArrayPreStateTrans(dst, PAR_PART, WEAK);
00040         FuncM3po(PxArrayPD(dst),
00041                  PxArrayPD(s1), PxArrayPD(s2), PxArrayPD(s3), mpo);
00042         PxArrayPostStateTrans(dst);
00043 
00044         if (!PxRunLazyParallel()) {
00045             PxArrayForceNonDistributed(s1);
00046             PxArrayForceNonDistributed(s2);
00047             PxArrayForceNonDistributed(s3);
00048             PxArrayForceNonDistributed(dst);
00049         }
00050     }
00051 #endif
00052 }

Here is the call graph for this function:


Generated on Fri Mar 19 11:02:01 2010 for ImpalaSrc by  doxygen 1.5.1