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

int Impala::Visualization::SegmentationDocumentGuiAnno::FindAdjacentAnnoShot ( int  curFile,
int  bit,
int  shotIdx,
bool  next 
) [inline]

Definition at line 324 of file SegmentationDocumentGuiAnno.h.

References Impala::Core::VideoSet::Segmentation::GetFirstShotVideo(), Impala::Core::VideoSet::Keyframes::GetFrameNr(), Impala::Core::VideoSet::Segmentation::GetNrShotsVideo(), Impala::Core::VideoSet::SegmentationDocument::GetSegmentation(), Impala::Core::VideoSet::Keyframes::GetShotRKF(), mKeyframes, mSegDoc, mVideoAnnotations, NEGATIVE_BIT, POSITIVE_BIT, SKIPPED_BIT, and UNKNOWN_BIT.

Referenced by CheckAnnoMax(), FindAdjacentAnnoShot(), FindNextAnno(), and GoToAdjacentAnnoShot().

00325     {
00326         if (curFile == -1) return -1;
00327 
00328         Segmentation* seg         = mSegDoc->GetSegmentation();
00329         int           firstShot   = seg->GetFirstShotVideo(curFile);
00330         int           sz          = seg->GetNrShotsVideo(curFile);
00331         int           lastShot    = firstShot+sz;
00332         int           foundShotNr = -1;
00333 
00334         for (int i=firstShot; i<lastShot; i++)
00335         {
00336             int   kFrame   = mKeyframes->GetShotRKF(i);
00337             int   frame    = mKeyframes->GetFrameNr(kFrame);
00338             int   val      = (*mVideoAnnotations[curFile])[i-firstShot];
00339             bool  unknown  = (val == 0);
00340             bool  skipped  = (val == SKIPPED_BIT);
00341             bool  positive = (val == POSITIVE_BIT);
00342             bool  negative = (val == NEGATIVE_BIT);
00343             bool  passTest = ((bit==POSITIVE_BIT) && positive ||
00344                              (bit==NEGATIVE_BIT) && negative ||
00345                              (bit==SKIPPED_BIT)  && skipped  ||
00346                              (bit==UNKNOWN_BIT)  && unknown);
00347             if (passTest && next && i > shotIdx)
00348                 return i;
00349             if (i!=shotIdx && passTest && !next)
00350                 foundShotNr = i;
00351             if (!next && i>=shotIdx)
00352                 return foundShotNr;
00353         }
00354         return foundShotNr;
00355     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:24:58 2011 for ImpalaSrc by  doxygen 1.5.1