Cache Index::Query in FeaturesFetcher.

This commit is contained in:
Yury Melnichek 2011-02-12 23:31:30 +01:00 committed by Alex Zolotarev
parent 479a21cb05
commit edfa09730e

View file

@ -31,6 +31,9 @@ namespace model
index_t m_multiIndex;
// Cached query, which stores several caches for the index.
mutable index_t::Query m_multiIndexQuery;
public:
void InitClassificator();
@ -43,7 +46,8 @@ namespace model
template <class ToDo>
void ForEachFeature(m2::RectD const & rect, ToDo toDo) const
{
m_multiIndex.ForEachInViewport(toDo, rect);
m_multiIndexQuery.Clear();
m_multiIndex.ForEachInViewport(toDo, rect, m_multiIndexQuery);
// Uncomment to traverse all features (SLOW!!):
// m_multiIndex.ForEachInScale(toDo, GetScaleLevel(rect));
}