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

void Impala::Core::VideoSet::Walker::AddKeyframeMaskAnnoFile ( String  fileName  )  [inline]

Definition at line 215 of file Walker.h.

References Impala::FileNameBase(), Impala::Core::Database::RawDataSet::GetDatabase(), Impala::Core::Database::RawDataSet::GetLocator(), Impala::Core::VideoSet::Keyframes::GetNrKeyframes(), Impala::Core::VideoSet::Keyframes::GetQuidFrame(), ILOG_ERROR, InitKeyframeMask(), Impala::Core::Table::AnnotationTable::IsPositive(), mKeyframeMask, mKeyframes, mVideoSet, Impala::Core::Table::Read(), and Impala::StringToQuidClass().

Referenced by Impala::Application::VidSet::mainVidSet().

00216     {
00217         if (!InitKeyframeMask())
00218             return;
00219 #ifndef REPOSITORY_USED // Here comes the deprecated stuff
00220         Table::AnnotationTable annoTable;
00221         Table::Read(&annoTable, fileName, mVideoSet->GetDatabase());
00222         int nrKey = mKeyframes->GetNrKeyframes();
00223         for (int i=0 ; i<nrKey ; i++)
00224         {
00225             Quid quid = mKeyframes->GetQuidFrame(i);
00226             bool present = annoTable.IsPositive(quid);
00227             mKeyframeMask[i] &= present;
00228         }
00229 #else // REPOSITORY_USED
00230         StringList sList(fileName, '/');
00231         if (sList.size() != 4)
00232             ILOG_ERROR("AddKeyframeMaskAnnoFile: expected 4 elements in path");
00233         StringListCI it = sList.begin();
00234         it++; // Skip Annotations
00235         String quidStr = *it++;
00236         String conceptSet = *it++;
00237         String keyword = FileNameBase(*it);
00238         Persistency::AnnotationTableLocator loc(mVideoSet->GetLocator(),
00239                                                 StringToQuidClass(quidStr),
00240                                                 conceptSet, keyword);
00241         Table::AnnotationTable* annoTable = 
00242             Persistency::AnnotationTableRepository().Get(loc);
00243         int nrKey = mKeyframes->GetNrKeyframes();
00244         for (int i=0 ; i<nrKey ; i++)
00245         {
00246             Quid quid = mKeyframes->GetQuidFrame(i);
00247             bool present = annoTable->IsPositive(quid);
00248             mKeyframeMask[i] &= present;
00249         }
00250         delete annoTable;
00251 #endif // REPOSITORY_USED
00252     }

Here is the call graph for this function:


Generated on Fri Mar 19 11:33:39 2010 for ImpalaSrc by  doxygen 1.5.1