diff --git a/generator/search_index_builder.cpp b/generator/search_index_builder.cpp index 7c78dd7d2c..81ea7bcb6a 100644 --- a/generator/search_index_builder.cpp +++ b/generator/search_index_builder.cpp @@ -491,7 +491,6 @@ void BuildAddressTable(FilesContainerR & container, string const & addressDataFi // Flush results to disk. { - // Code corresponds to the HouseToStreetTable decoding. search::HouseToStreetTableBuilder builder; uint32_t houseToStreetCount = 0; for (size_t i = 0; i < results.size(); ++i) diff --git a/platform/mwm_traits.cpp b/platform/mwm_traits.cpp index 935d529f56..c9a1bbb4b8 100644 --- a/platform/mwm_traits.cpp +++ b/platform/mwm_traits.cpp @@ -17,7 +17,7 @@ MwmTraits::SearchIndexFormat MwmTraits::GetSearchIndexFormat() const MwmTraits::HouseToStreetTableFormat MwmTraits::GetHouseToStreetTableFormat() const { if (GetFormat() >= version::Format::v10) - return HouseToStreetTableFormat::EliasFanoMapWithHeader; + return HouseToStreetTableFormat::HouseToStreetTableWithHeader; if (GetFormat() < version::Format::v7) return HouseToStreetTableFormat::Unknown; @@ -83,8 +83,8 @@ std::string DebugPrint(MwmTraits::HouseToStreetTableFormat format) return "Fixed3BitsDDVector"; case MwmTraits::HouseToStreetTableFormat::EliasFanoMap: return "EliasFanoMap"; - case MwmTraits::HouseToStreetTableFormat::EliasFanoMapWithHeader: - return "EliasFanoMapWithHeader"; + case MwmTraits::HouseToStreetTableFormat::HouseToStreetTableWithHeader: + return "HouseToStreetTableWithHeader"; case MwmTraits::HouseToStreetTableFormat::Unknown: return "Unknown"; } diff --git a/platform/mwm_traits.hpp b/platform/mwm_traits.hpp index 54c85b5702..027e3a25e4 100644 --- a/platform/mwm_traits.hpp +++ b/platform/mwm_traits.hpp @@ -37,9 +37,8 @@ public: // Elias-Fano based map from feature id to corresponding street feature id. EliasFanoMap, - // Elias-Fano based map from feature id to corresponding street feature id - // with srction header and version. - EliasFanoMapWithHeader, + // Versioning is independent of MwmTraits: section format depends on the section header. + HouseToStreetTableWithHeader, // The format of relation is unknown. Most likely, an error has occured. Unknown diff --git a/search/house_to_street_table.cpp b/search/house_to_street_table.cpp index 91211fc216..f372bb2365 100644 --- a/search/house_to_street_table.cpp +++ b/search/house_to_street_table.cpp @@ -54,7 +54,7 @@ class EliasFanoMap : public HouseToStreetTable public: using Map = MapUint32ToValue; - explicit EliasFanoMap(unique_ptr reader) : m_reader(move(reader)) + explicit EliasFanoMap(unique_ptr && reader) : m_reader(move(reader)) { ASSERT(m_reader, ()); auto readBlockCallback = [](auto & source, uint32_t blockSize, vector & values) { @@ -128,7 +128,7 @@ unique_ptr HouseToStreetTable::Load(MwmValue const & value) ASSERT(reader.GetPtr(), ("Can't get", SEARCH_ADDRESS_FILE_TAG, "section reader.")); result = make_unique(unique_ptr(reader.GetPtr())); } - if (format == version::MwmTraits::HouseToStreetTableFormat::EliasFanoMapWithHeader) + if (format == version::MwmTraits::HouseToStreetTableFormat::HouseToStreetTableWithHeader) { FilesContainerR::TReader reader = value.m_cont.GetReader(SEARCH_ADDRESS_FILE_TAG); ASSERT(reader.GetPtr(), ("Can't get", SEARCH_ADDRESS_FILE_TAG, "section reader.")); @@ -137,7 +137,7 @@ unique_ptr HouseToStreetTable::Load(MwmValue const & value) header.Read(*reader.GetPtr()); CHECK(header.m_version == Version::V2, (base::Underlying(header.m_version))); - auto subreader = (*reader.GetPtr()).CreateSubReader(header.m_tableOffset, header.m_tableSize); + auto subreader = reader.GetPtr()->CreateSubReader(header.m_tableOffset, header.m_tableSize); CHECK(subreader, ()); result = make_unique(move(subreader)); } @@ -160,13 +160,13 @@ void HouseToStreetTableBuilder::Put(uint32_t houseId, uint32_t streetId) void HouseToStreetTableBuilder::Freeze(Writer & writer) const { - size_t startOffset = writer.Pos(); + size_t const startOffset = writer.Pos(); CHECK(coding::IsAlign8(startOffset), ()); HouseToStreetTable::Header header; header.Serialize(writer); - uint64_t bytesWritten = writer.Pos(); + uint64_t bytesWritten = static_cast(writer.Pos()); coding::WritePadding(writer, bytesWritten); // Each street id is encoded as delta from some prediction.