Files
comaps/search/city_finder.cpp
Konstantin Pastbin e3e4a1985a Organic Maps sources as of 02.04.2025 (fad26bbf22ac3da75e01e62aa01e5c8e11861005)
To expand with full Organic Maps and Maps.ME commits history run:
  git remote add om-historic [om-historic.git repo url]
  git fetch --tags om-historic
  git replace squashed-history historic-commits
2025-05-08 21:10:51 +07:00

44 lines
1.1 KiB
C++

#include "search/city_finder.hpp"
#include "indexer/feature_decl.hpp"
using namespace std;
namespace search
{
CityFinder::CityFinder(DataSource const & dataSource)
: m_unusedBoundaries(dataSource)
, m_unusedCache(m_cancellable)
, m_finder(dataSource, m_unusedBoundaries, m_unusedCache)
{
}
string CityFinder::GetCityName(m2::PointD const & p, int8_t lang)
{
string_view city;
m_finder.GetLocality(p, [&](LocalityItem const & item)
{
item.GetSpecifiedOrDefaultName(lang, city);
});
// Return string, because m_finder.GetLocality() is not persistent.
return std::string(city);
}
string CityFinder::GetCityReadableName(m2::PointD const & p)
{
string_view city;
m_finder.GetLocality(p, [&](LocalityItem const & item) { item.GetReadableName(city); });
// Return string, because m_finder.GetLocality() is not persistent.
return std::string(city);
}
FeatureID CityFinder::GetCityFeatureID(m2::PointD const & p)
{
FeatureID id;
m_finder.GetLocality(p, [&id](LocalityItem const & item) { id = item.m_id; });
return id;
}
} // namespace search