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

virtual void Impala::Core::VideoSet::IndexFeatures::HandleDoneFile ( VideoSet vs,
int  fileId,
Stream::RgbDataSrc src 
) [inline, virtual]

Completed given DB_FILE in a "normal" walk.

Reimplemented from Impala::Core::VideoSet::Listener.

Definition at line 59 of file IndexFeatures.h.

References Impala::Core::Feature::FeatureTable::GetFeatureVectorLength(), Impala::Core::VideoSet::Keyframes::GetFirstKeyframeVideo(), mDef, mKeyframeMask, mKeyframes, mTable, mWalkType, Impala::Util::Read(), and Impala::Core::Table::Select().

00060     {
00061 #ifndef REPOSITORY_USED // Here comes the deprecated stuff
00062         String fName = vs->GetFilePathFeatureData(mWalkType, mDef,
00063                                                   fileId, false, -1, false,
00064                                                   false);
00065         if (fName.empty())
00066         {
00067             return;
00068         }
00069         Feature::FeatureTable tmp(mDef);
00070         Table::Read(&tmp, fName, vs->GetDatabase());
00071         if (mTable == 0)
00072         {
00073             mTable = new Feature::FeatureTable(mDef, 0,
00074                                                tmp.GetFeatureVectorLength());
00075         }
00076 #else // REPOSITORY_USED
00077         Persistency::FeatureLocator loc(vs->GetLocator(), false, false,
00078                                         mWalkType, mDef.AsString(),
00079                                         vs->GetContainerFile(fileId));
00080         FeatureTable* tmp = Persistency::FeatureTableRepository().Get(loc);
00081         if (mTable == 0)
00082         {
00083             mTable = new FeatureTable(mDef, 12000,
00084                                       tmp->GetFeatureVectorLength());
00085         }
00086 #endif // REPOSITORY_USED
00087         bool* mask = mKeyframeMask;
00088         if (mask)
00089             mask = mKeyframeMask + mKeyframes->GetFirstKeyframeVideo(fileId);
00090 #ifndef REPOSITORY_USED // Here comes the deprecated stuff
00091         Table::Select(mTable, &tmp, mask, false);
00092 #else // REPOSITORY_USED
00093         Table::Select(mTable, tmp, mask, false);
00094         delete tmp;
00095 #endif // REPOSITORY_USED
00096     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:21:55 2011 for ImpalaSrc by  doxygen 1.5.1