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:
authorAlex Zolotarev <deathbaba@gmail.com>2011-10-02 02:40:11 +0400
committerAlex Zolotarev <alex@maps.me>2015-09-23 01:24:55 +0300
commitd6b9bf5525a12ab96d16785c6c72b863f519a9ab (patch)
tree34d417e39a83505d89ac672e7b9f37bfd0a4d96f /platform/platform.hpp
parent0345b017ffee30c4504cbd91ba0d32be6fec826e (diff)
[ios][qt] Platform refactoring
Diffstat (limited to 'platform/platform.hpp')
-rw-r--r--platform/platform.hpp73
1 files changed, 22 insertions, 51 deletions
diff --git a/platform/platform.hpp b/platform/platform.hpp
index aefca3e0ff..5bed8e580e 100644
--- a/platform/platform.hpp
+++ b/platform/platform.hpp
@@ -8,31 +8,31 @@
#include "../std/vector.hpp"
#include "../std/utility.hpp"
-
DECLARE_EXCEPTION(FileAbsentException, RootException);
DECLARE_EXCEPTION(NotImplementedException, RootException);
-
class Platform
{
+ string m_writableDir, m_resourcesDir;
+ class PlatformImpl;
+ PlatformImpl * m_impl;
+
public:
- virtual ~Platform() {}
+ Platform();
+ ~Platform();
/// @return always the same writable dir for current user with slash at the end
- virtual string WritableDir() const = 0;
+ string WritableDir() const { return m_writableDir; }
/// @return full path to file in user's writable directory
- string WritablePathForFile(string const & file) const
- {
- return WritableDir() + file;
- }
+ string WritablePathForFile(string const & file) const { return WritableDir() + file; }
/// @return resource dir (on some platforms it's differ from Writable dir)
- virtual string ResourcesDir() const = 0;
+ string ResourcesDir() const { return m_resourcesDir; }
/// @return reader for file decriptor.
/// @throws FileAbsentException
/// @param[in] file descriptor which we want to read
- virtual ModelReader * GetReader(string const & file) const = 0;
+ ModelReader * GetReader(string const & file) const;
/// @name File operations
//@{
@@ -41,11 +41,9 @@ public:
/// @param directory directory path with slash at the end
/// @param mask files extension to find, like ".map" etc
/// @return number of files found in outFiles
- virtual void GetFilesInDir(string const & directory, string const & mask, FilesList & outFiles) const = 0;
+ void GetFilesInDir(string const & directory, string const & mask, FilesList & outFiles) const;
/// @return false if file is not exist
- virtual bool GetFileSize(string const & file, uint64_t & size) const = 0;
- /// Renamed to avoid conflict with Windows macroses
- virtual bool RenameFileX(string const & original, string const & newName) const = 0;
+ bool GetFileSize(string const & file, uint64_t & size) const;
/// Simple file existing check
bool IsFileExists(string const & file) const
{
@@ -54,52 +52,25 @@ public:
}
//@}
- virtual int CpuCores() const = 0;
-
- virtual double VisualScale() const = 0;
+ int CpuCores() const;
- virtual string SkinName() const = 0;
+ double VisualScale() const;
- virtual void GetFontNames(FilesList & res) const = 0;
+ string SkinName() const;
- virtual bool IsBenchmarking() const = 0;
+ void GetFontNames(FilesList & res) const;
- virtual bool IsMultiThreadedRendering() const = 0;
+ bool IsMultiThreadedRendering() const;
- virtual int TileSize() const = 0;
+ int TileSize() const;
- virtual int MaxTilesCount() const = 0;
+ int MaxTilesCount() const;
- virtual bool IsVisualLog() const = 0;
+ string DeviceName() const;
- virtual string DeviceID() const = 0;
+ int ScaleEtalonSize() const;
- virtual int ScaleEtalonSize() const = 0;
-};
-
-class BasePlatformImpl : public Platform
-{
-protected:
- string m_writableDir, m_resourcesDir;
-
-public:
- virtual string WritableDir() const { return m_writableDir; }
- virtual string ResourcesDir() const { return m_resourcesDir; }
- virtual ModelReader * GetReader(string const & file) const;
-
- virtual void GetFilesInDir(string const & directory, string const & mask, FilesList & res) const;
- virtual bool GetFileSize(string const & file, uint64_t & size) const;
- virtual bool RenameFileX(string const & fOld, string const & fNew) const;
- virtual void GetFontNames(FilesList & res) const;
-
- virtual double VisualScale() const;
- virtual string SkinName() const;
- virtual bool IsBenchmarking() const;
- virtual bool IsVisualLog() const;
- virtual bool IsMultiThreadedRendering() const;
- virtual int ScaleEtalonSize() const;
- virtual int TileSize() const;
- virtual int MaxTilesCount() const;
+ string UniqueClientId() const;
};
extern "C" Platform & GetPlatform();