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:
authorSergey Magidovich <mgsergio@mapswithme.com>2016-02-19 16:46:59 +0300
committerSergey Yershov <yershov@corp.mail.ru>2016-03-23 16:45:27 +0300
commit060374379265ae5dc00166dc21391f2f12972a2a (patch)
treecb76bf7238da8a7d79d9044e82d86fe5594ce10d /platform/mwm_version.hpp
parent7f050eb375c206d01960673c550e21db7c62d392 (diff)
Store seconds since epoch in mwm as version.
Diffstat (limited to 'platform/mwm_version.hpp')
-rw-r--r--platform/mwm_version.hpp26
1 files changed, 19 insertions, 7 deletions
diff --git a/platform/mwm_version.hpp b/platform/mwm_version.hpp
index db6870f950..0f18e0b74d 100644
--- a/platform/mwm_version.hpp
+++ b/platform/mwm_version.hpp
@@ -1,6 +1,7 @@
#pragma once
#include "std/cstdint.hpp"
+#include "std/string.hpp"
class FilesContainerR;
class ReaderSrc;
@@ -19,20 +20,31 @@ enum class Format
v5, // July 2015 (feature id is the index in vector now).
v6, // October 2015 (offsets vector is in mwm now).
v7, // November 2015 (supply different search index formats).
- v8, // January 2016 (long strings in metadata).
+ v8, // February 2016 (long strings in metadata; store seconds since epoch in MwmVersion).
lastFormat = v8
};
-struct MwmVersion
+string DebugPrint(Format f);
+
+class MwmVersion
{
- MwmVersion();
+public:
+ Format GetFormat() const { return m_format; }
+ uint64_t GetSecondsSinceEpoch() const { return m_secondsSinceEpoch; }
+ /// \return version as YYMMDD.
+ uint32_t GetVersion() const;
+
+ void SetFormat(Format format) { m_format = format; }
+ void SetSecondsSinceEpoch(uint64_t secondsSinceEpoch) { m_secondsSinceEpoch = secondsSinceEpoch; }
- Format format;
- uint32_t timestamp;
+private:
+ /// Data layout format in mwm file.
+ Format m_format{Format::unknownFormat};
+ uint64_t m_secondsSinceEpoch{0};
};
/// Writes latest format and current timestamp to the writer.
-void WriteVersion(Writer & w, uint32_t versionDate);
+void WriteVersion(Writer & w, uint64_t secondsSinceEpoch);
/// Reads mwm version from src.
void ReadVersion(ReaderSrc & src, MwmVersion & version);
@@ -43,7 +55,7 @@ void ReadVersion(ReaderSrc & src, MwmVersion & version);
bool ReadVersion(FilesContainerR const & container, MwmVersion & version);
/// Helper function that is used in FindAllLocalMaps.
-uint32_t ReadVersionTimestamp(ModelReaderPtr const & reader);
+uint32_t ReadVersionDate(ModelReaderPtr const & reader);
/// \returns true if version is version of an mwm which was generated after small mwm update.
/// This means it contains routing file as well.