diff --git a/generator/altitude_generator.cpp b/generator/altitude_generator.cpp index a277d9fe1f..85480d083f 100644 --- a/generator/altitude_generator.cpp +++ b/generator/altitude_generator.cpp @@ -9,12 +9,14 @@ #include "indexer/feature_processor.hpp" #include "coding/file_container.hpp" +#include "coding/file_name_utils.hpp" #include "coding/varint.hpp" #include "coding/internal/file_data.hpp" #include "base/assert.hpp" #include "base/logging.hpp" +#include "base/stl_helpers.hpp" #include "base/string_utils.hpp" #include "defines.hpp" @@ -32,16 +34,15 @@ class Processor { public: using TFeatureAltitude = pair; - using TFeatureAltitudeVec = vector; + using TFeatureAltitudes = vector; Processor(string const & srtmPath) : m_srtmManager(srtmPath) {} - TFeatureAltitudeVec const & GetFeatureAltitudes() const { return m_featureAltitudes; } + TFeatureAltitudes const & GetFeatureAltitudes() const { return m_featureAltitudes; } void operator()(FeatureType const & f, uint32_t const & id) { - feature::TypesHolder const & fh = feature::TypesHolder(f); - if (!routing::IsRoad(fh)) + if (!routing::IsRoad(feature::TypesHolder(f))) return; f.ParseGeometry(FeatureType::BEST_GEOMETRY); @@ -56,16 +57,12 @@ public: void SortFeatureAltitudes() { - sort(m_featureAltitudes.begin(), m_featureAltitudes.end(), - [](Processor::TFeatureAltitude const & f1, Processor::TFeatureAltitude const & f2) - { - return f1.first < f2.first; - }); + sort(m_featureAltitudes.begin(), m_featureAltitudes.end(), my::LessBy(&Processor::TFeatureAltitude::first)); } private: generator::SrtmTileManager m_srtmManager; - TFeatureAltitudeVec m_featureAltitudes; + TFeatureAltitudes m_featureAltitudes; }; } // namespace @@ -74,7 +71,7 @@ namespace routing void BuildRoadAltitudes(string const & srtmPath, string const & baseDir, string const & countryName) { LOG(LINFO, ("srtmPath =", srtmPath, "baseDir =", baseDir, "countryName =", countryName)); - string const mwmPath = baseDir + countryName + DATA_FILE_EXTENSION; + string const mwmPath = my::JoinFoldersToPath(baseDir, countryName + DATA_FILE_EXTENSION); // Writing section with altitude information. { @@ -84,7 +81,7 @@ void BuildRoadAltitudes(string const & srtmPath, string const & baseDir, string Processor processor(srtmPath); feature::ForEachFromDat(mwmPath, processor); processor.SortFeatureAltitudes(); - Processor::TFeatureAltitudeVec const & featureAltitudes = processor.GetFeatureAltitudes(); + Processor::TFeatureAltitudes const & featureAltitudes = processor.GetFeatureAltitudes(); for (auto const & a : featureAltitudes) { diff --git a/generator/feature_segments_checker/feature_segments_checker.cpp b/generator/feature_segments_checker/feature_segments_checker.cpp index d4ac612a4a..aa7e2c534e 100644 --- a/generator/feature_segments_checker/feature_segments_checker.cpp +++ b/generator/feature_segments_checker/feature_segments_checker.cpp @@ -181,7 +181,7 @@ public: m_uniqueRoadPoints.insert(RoughPoint(f.GetPoint(i))); // Preparing feature altitude and length. - TAltitudeVec pointAltitudes(numPoints); + TAltitudes pointAltitudes(numPoints); vector pointDists(numPoints); double distFromStartMeters = 0; for (uint32_t i = 0; i < numPoints; ++i) diff --git a/indexer/feature_altitude.hpp b/indexer/feature_altitude.hpp index 393b4777dd..d744499ab9 100644 --- a/indexer/feature_altitude.hpp +++ b/indexer/feature_altitude.hpp @@ -8,8 +8,8 @@ namespace feature { using TAltitude = int16_t; -using TAltitudeVec = vector; -static TAltitude constexpr kInvalidAltitude = numeric_limits::lowest(); +using TAltitudes = vector; +TAltitude constexpr kInvalidAltitude = numeric_limits::min(); struct Altitudes {