void CountryInfoGetter::GetRegionInfo(m2::PointD const & pt, CountryInfo & info) const { GetByPoint doGet(*this, pt); ForEachCountry(pt, doGet); if (doGet.m_res != -1) GetRegionInfo(m_countries[doGet.m_res].m_name, info); }
m2::RectD CountryInfoGetter::CalcLimitRect(string const & prefix) const { m2::RectD rect; ForEachCountry(prefix, [&rect](CountryDef const & c) { rect.Add(c.m_rect); }); return rect; }
string CountryInfoGetter::GetRegionFile(m2::PointD const & pt) const { GetByPoint doGet(*this, pt); ForEachCountry(pt, doGet); if (doGet.m_res != -1) return m_countries[doGet.m_res].m_name; else return string(); }
void CountryInfoGetter::CalcUSALimitRect(m2::RectD rects[3]) const { ForEachCountry("USA_", DoCalcUSA(rects)); }
m2::RectD CountryInfoGetter::CalcLimitRect(string const & prefix) const { m2::RectD r; ForEachCountry(prefix, bind(&AddRect, ref(r), _1)); return r; }