Definition at line 117 of file IDashQueryEngine.h. References Impala::Core::Trec::ThreadSet::AddThreadShots(), ConvertToShotResult(), Impala::Core::Trec::ThreadSet::GetThreadByName(), ILOG_DEBUG, ILOG_SYSTEM, ILOG_WARN, MergeResults(), mSelectedConcepts, mSelectedShots, and mThreadSet. Referenced by Impala::Application::IDash::TrecEngine::PerformQuery(). 00118 { 00119 ILOG_SYSTEM("generating thread from query: " << threadname << ":"); 00120 std::list<ShotResultList > concepts; 00121 std::map<String, double>::iterator c; 00122 for (c = mSelectedConcepts.begin(); c != mSelectedConcepts.end(); c++) 00123 { 00124 ILOG_SYSTEM("contains concept: "<<c->first<<" ("<<c->second<<")"); 00125 ShotResultList concept = ConvertToShotResult(mThreadSet, c->first); 00126 concepts.push_back(concept); 00127 } 00128 00129 std::map<String, ShotResultList >::iterator s; 00130 for (s = mSelectedShots.begin(); s != mSelectedShots.end(); s++) 00131 { 00132 ILOG_DEBUG("contains shots: " << s->first << " (" << 00133 s->second.size() << " shots)" ); 00134 // make threads for each individual text search or QbyR search: 00135 if (mThreadSet->GetThreadByName(s->first)) 00136 { 00137 ILOG_DEBUG("textual thread " << s->first << 00138 " already exists. skipping." ); 00139 } 00140 else 00141 mThreadSet->AddThreadShots(s->first, s->second); 00142 concepts.push_back(s->second); 00143 } 00144 ILOG_SYSTEM("end of content list"); 00145 00146 if (concepts.size() == 0) 00147 { 00148 ILOG_WARN("QueryEngine::GenerateThreadFromQuery: " << 00149 "no content to generate. Abort." ); 00150 return; 00151 } 00152 00153 ShotResultList merged = MergeResults(concepts); 00154 mThreadSet->AddThreadShots(threadname, merged); 00155 }
Here is the call graph for this function:
|