Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mapsme/omim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Gorshenin <y@mmaps.me>2015-03-31 19:21:39 +0300
committerAlex Zolotarev <alex@maps.me>2015-09-23 02:41:35 +0300
commit9e5ac4ef2a843481e59cbe5295c785a92a374bf9 (patch)
treef6b29e544a34a4f12138224cdf9341c28ce31702 /indexer/data_factory.cpp
parent25f7a7f2f32cc4db8a5bd0106ae4c8f6c6292201 (diff)
Fixed MwmSet::Register() signature.
Diffstat (limited to 'indexer/data_factory.cpp')
-rw-r--r--indexer/data_factory.cpp33
1 files changed, 12 insertions, 21 deletions
diff --git a/indexer/data_factory.cpp b/indexer/data_factory.cpp
index b1acc286cf..fea7019966 100644
--- a/indexer/data_factory.cpp
+++ b/indexer/data_factory.cpp
@@ -10,20 +10,21 @@
#include "../coding/file_reader.hpp"
#include "../coding/file_container.hpp"
+namespace {
-typedef feature::DataHeader FHeaderT;
+using FHeaderT = feature::DataHeader;
+
+} // namespace
void LoadMapHeader(FilesContainerR const & cont, FHeaderT & header)
{
ModelReaderPtr headerReader = cont.GetReader(HEADER_FILE_TAG);
+ version::MwmVersion version;
- if (!cont.IsExist(VERSION_FILE_TAG))
- header.LoadVer1(headerReader);
+ if (version::ReadVersion(cont, version))
+ header.Load(headerReader, version.format);
else
- {
- ModelReaderPtr verReader = cont.GetReader(VERSION_FILE_TAG);
- header.Load(headerReader, static_cast<FHeaderT::Version>(ver::ReadVersion(verReader)));
- }
+ header.LoadV1(headerReader);
}
void LoadMapHeader(ModelReaderPtr const & reader, FHeaderT & header)
@@ -33,23 +34,13 @@ void LoadMapHeader(ModelReaderPtr const & reader, FHeaderT & header)
void IndexFactory::Load(FilesContainerR const & cont)
{
+ ReadVersion(cont, m_version);
LoadMapHeader(cont, m_header);
}
IntervalIndexIFace * IndexFactory::CreateIndex(ModelReaderPtr reader)
{
- IntervalIndexIFace * p;
-
- switch (m_header.GetVersion())
- {
- case FHeaderT::v1:
- p = new old_101::IntervalIndex<uint32_t, ModelReaderPtr>(reader);
- break;
-
- default:
- p = new IntervalIndex<ModelReaderPtr>(reader);
- break;
- }
-
- return p;
+ if (m_version.format == version::v1)
+ return new old_101::IntervalIndex<uint32_t, ModelReaderPtr>(reader);
+ return new IntervalIndex<ModelReaderPtr>(reader);
}