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:
authorvng <viktor.govako@gmail.com>2015-07-17 15:51:04 +0300
committerAlex Zolotarev <alex@maps.me>2015-09-23 02:57:14 +0300
commit4df12718bfe698acf09dccdb383409f7b3468ef3 (patch)
tree4f1fd9cec808b643a7bd4855d1aa7c9ab0f93f74 /indexer/data_header.cpp
parent68403bb083aa9f66b90d9d3bdc8b14223508ab77 (diff)
Simplified feature::DataHeader routine.
Diffstat (limited to 'indexer/data_header.cpp')
-rw-r--r--indexer/data_header.cpp30
1 files changed, 26 insertions, 4 deletions
diff --git a/indexer/data_header.cpp b/indexer/data_header.cpp
index 4e89333bcd..c426c4c046 100644
--- a/indexer/data_header.cpp
+++ b/indexer/data_header.cpp
@@ -2,17 +2,28 @@
#include "indexer/point_to_int64.hpp"
#include "indexer/scales.hpp"
-#include "defines.hpp"
+#include "platform/platform.hpp"
-#include "coding/file_reader.hpp"
-#include "coding/file_writer.hpp"
#include "coding/file_container.hpp"
+#include "coding/file_writer.hpp"
#include "coding/write_to_sink.hpp"
#include "coding/varint.hpp"
+#include "defines.hpp"
+
namespace feature
{
+ DataHeader::DataHeader(string const & fileName)
+ : DataHeader((FilesContainerR(GetPlatform().GetReader(fileName))))
+ {
+ }
+
+ DataHeader::DataHeader(FilesContainerR const & cont)
+ {
+ Load(cont);
+ }
+
serial::CodingParams DataHeader::GetCodingParams(int scaleIndex) const
{
return serial::CodingParams(m_codingParams.GetCoordBits() -
@@ -93,7 +104,18 @@ namespace feature
WriteVarInt(w, static_cast<int32_t>(m_type));
}
- void DataHeader::Load(ModelReaderPtr const & r, version::Format format /* = version::lastFormat */)
+ void DataHeader::Load(FilesContainerR const & cont)
+ {
+ ModelReaderPtr headerReader = cont.GetReader(HEADER_FILE_TAG);
+ version::MwmVersion version;
+
+ if (version::ReadVersion(cont, version))
+ Load(headerReader, version.format);
+ else
+ LoadV1(headerReader);
+ }
+
+ void DataHeader::Load(ModelReaderPtr const & r, version::Format format)
{
ReaderSource<ModelReaderPtr> src(r);
m_codingParams.Load(src);