summaryrefslogtreecommitdiff
path: root/src/location/maps
diff options
context:
space:
mode:
authorPaolo Angelelli <paolo.angelelli@qt.io>2016-12-07 20:05:07 +0100
committerPaolo Angelelli <paolo.angelelli@qt.io>2017-01-16 16:18:17 +0000
commit8879bcdc41eb56aaf164d6b1e0d01b7aeceec460 (patch)
treeb7478e2e4d48c6dabe33ebe4f6817b786799cdc0 /src/location/maps
parentbeb4f4c4c98b8c6ad634b13e07aaf9b7a9c54d4a (diff)
downloadqtlocation-8879bcdc41eb56aaf164d6b1e0d01b7aeceec460.tar.gz
Refactor: move CacheAreas to QAbstractGeoTileCache
This change moves QGeoTiledMappingManagerEngine::CacheAreas to the more appropriate container that is QAbstractGeoTileCache, which already uses this enum in its interface. Together with making the virtual init() method of QAbstractGeoTileCache public, instead of protected, this patch effectively disentangle QAbstractGeoTileCache/QGeoFileTileCache from the QGeoTiledMappingManagerEngine, and makes it usable potentially also by other (tile) renderers. Change-Id: Ic635b81660f81d86884cc6b00e3a2ab9420daa9f Reviewed-by: Alex Blasche <alexander.blasche@qt.io>
Diffstat (limited to 'src/location/maps')
-rw-r--r--src/location/maps/qabstractgeotilecache_p.h16
-rw-r--r--src/location/maps/qgeofiletilecache.cpp6
-rw-r--r--src/location/maps/qgeofiletilecache_p.h2
-rw-r--r--src/location/maps/qgeotiledmappingmanagerengine.cpp6
-rw-r--r--src/location/maps/qgeotiledmappingmanagerengine_p.h22
-rw-r--r--src/location/maps/qgeotiledmappingmanagerengine_p_p.h2
-rw-r--r--src/location/maps/qgeotilefetcher_p.h2
7 files changed, 28 insertions, 28 deletions
diff --git a/src/location/maps/qabstractgeotilecache_p.h b/src/location/maps/qabstractgeotilecache_p.h
index 484bb8a5..ba4c12de 100644
--- a/src/location/maps/qabstractgeotilecache_p.h
+++ b/src/location/maps/qabstractgeotilecache_p.h
@@ -57,13 +57,13 @@
#include <QTimer>
#include "qgeotilespec_p.h"
-#include "qgeotiledmappingmanagerengine_p.h"
#include <QImage>
QT_BEGIN_NAMESPACE
class QGeoMappingManager;
+class QGeoMappingManagerEngine;
class QGeoTile;
class QAbstractGeoTileCache;
@@ -91,6 +91,14 @@ public:
Unitary,
ByteSize
};
+
+ enum CacheArea {
+ DiskCache = 0x01,
+ MemoryCache = 0x02,
+ AllCaches = 0xFF
+ };
+ Q_DECLARE_FLAGS(CacheAreas, CacheArea)
+
virtual ~QAbstractGeoTileCache();
virtual void setMaxDiskUsage(int diskUsage);
@@ -119,20 +127,22 @@ public:
virtual void insert(const QGeoTileSpec &spec,
const QByteArray &bytes,
const QString &format,
- QGeoTiledMappingManagerEngine::CacheAreas areas = QGeoTiledMappingManagerEngine::AllCaches) = 0;
+ QAbstractGeoTileCache::CacheAreas areas = QAbstractGeoTileCache::AllCaches) = 0;
virtual void handleError(const QGeoTileSpec &spec, const QString &errorString);
+ virtual void init() = 0;
static QString baseCacheDirectory();
static QString baseLocationCacheDirectory();
protected:
QAbstractGeoTileCache(QObject *parent = 0);
- virtual void init() = 0;
virtual void printStats() = 0;
friend class QGeoTiledMappingManagerEngine;
};
+Q_DECLARE_OPERATORS_FOR_FLAGS(QAbstractGeoTileCache::CacheAreas)
+
QT_END_NAMESPACE
#endif // QABSTRACTGEOTILECACHE_P_H
diff --git a/src/location/maps/qgeofiletilecache.cpp b/src/location/maps/qgeofiletilecache.cpp
index 49e9dfff..f080c7f9 100644
--- a/src/location/maps/qgeofiletilecache.cpp
+++ b/src/location/maps/qgeofiletilecache.cpp
@@ -375,12 +375,12 @@ QSharedPointer<QGeoTileTexture> QGeoFileTileCache::get(const QGeoTileSpec &spec)
void QGeoFileTileCache::insert(const QGeoTileSpec &spec,
const QByteArray &bytes,
const QString &format,
- QGeoTiledMappingManagerEngine::CacheAreas areas)
+ QAbstractGeoTileCache::CacheAreas areas)
{
if (bytes.isEmpty())
return;
- if (areas & QGeoTiledMappingManagerEngine::DiskCache) {
+ if (areas & QAbstractGeoTileCache::DiskCache) {
QString filename = tileSpecToFilename(spec, format, directory_);
QFile file(filename);
file.open(QIODevice::WriteOnly);
@@ -390,7 +390,7 @@ void QGeoFileTileCache::insert(const QGeoTileSpec &spec,
addToDiskCache(spec, filename);
}
- if (areas & QGeoTiledMappingManagerEngine::MemoryCache) {
+ if (areas & QAbstractGeoTileCache::MemoryCache) {
addToMemoryCache(spec, bytes, format);
}
diff --git a/src/location/maps/qgeofiletilecache_p.h b/src/location/maps/qgeofiletilecache_p.h
index 7d6df9fd..7ca8cf33 100644
--- a/src/location/maps/qgeofiletilecache_p.h
+++ b/src/location/maps/qgeofiletilecache_p.h
@@ -135,7 +135,7 @@ public:
void insert(const QGeoTileSpec &spec,
const QByteArray &bytes,
const QString &format,
- QGeoTiledMappingManagerEngine::CacheAreas areas = QGeoTiledMappingManagerEngine::AllCaches) Q_DECL_OVERRIDE;
+ QAbstractGeoTileCache::CacheAreas areas = QAbstractGeoTileCache::AllCaches) Q_DECL_OVERRIDE;
protected:
void init() Q_DECL_OVERRIDE;
diff --git a/src/location/maps/qgeotiledmappingmanagerengine.cpp b/src/location/maps/qgeotiledmappingmanagerengine.cpp
index 0ad37a1d..3d15ee99 100644
--- a/src/location/maps/qgeotiledmappingmanagerengine.cpp
+++ b/src/location/maps/qgeotiledmappingmanagerengine.cpp
@@ -268,13 +268,13 @@ int QGeoTiledMappingManagerEngine::tileVersion() const
return d->m_tileVersion;
}
-QGeoTiledMappingManagerEngine::CacheAreas QGeoTiledMappingManagerEngine::cacheHint() const
+QAbstractGeoTileCache::CacheAreas QGeoTiledMappingManagerEngine::cacheHint() const
{
Q_D(const QGeoTiledMappingManagerEngine);
return d->cacheHint_;
}
-void QGeoTiledMappingManagerEngine::setCacheHint(QGeoTiledMappingManagerEngine::CacheAreas cacheHint)
+void QGeoTiledMappingManagerEngine::setCacheHint(QAbstractGeoTileCache::CacheAreas cacheHint)
{
Q_D(QGeoTiledMappingManagerEngine);
d->cacheHint_ = cacheHint;
@@ -315,7 +315,7 @@ QSharedPointer<QGeoTileTexture> QGeoTiledMappingManagerEngine::getTileTexture(co
QGeoTiledMappingManagerEnginePrivate::QGeoTiledMappingManagerEnginePrivate()
: m_tileVersion(-1),
- cacheHint_(QGeoTiledMappingManagerEngine::AllCaches),
+ cacheHint_(QAbstractGeoTileCache::AllCaches),
tileCache_(0),
fetcher_(0)
{
diff --git a/src/location/maps/qgeotiledmappingmanagerengine_p.h b/src/location/maps/qgeotiledmappingmanagerengine_p.h
index 86c5b63c..78461f40 100644
--- a/src/location/maps/qgeotiledmappingmanagerengine_p.h
+++ b/src/location/maps/qgeotiledmappingmanagerengine_p.h
@@ -52,32 +52,24 @@
#include <QSize>
#include <QPair>
#include <QtLocation/qlocationglobal.h>
-#include "qgeomaptype_p.h"
-#include "qgeomappingmanagerengine_p.h"
+#include <QtLocation/private/qabstractgeotilecache_p.h>
+#include <QtLocation/private/qgeomaptype_p.h>
+#include <QtLocation/private/qgeomappingmanagerengine_p.h>
+
QT_BEGIN_NAMESPACE
class QGeoTiledMappingManagerEnginePrivate;
-class QGeoMapRequestOptions;
class QGeoTileFetcher;
class QGeoTileTexture;
-
class QGeoTileSpec;
class QGeoTiledMap;
-class QAbstractGeoTileCache;
class Q_LOCATION_EXPORT QGeoTiledMappingManagerEngine : public QGeoMappingManagerEngine
{
Q_OBJECT
public:
- enum CacheArea {
- DiskCache = 0x01,
- MemoryCache = 0x02,
- AllCaches = 0xFF
- };
- Q_DECLARE_FLAGS(CacheAreas, CacheArea)
-
explicit QGeoTiledMappingManagerEngine(QObject *parent = 0);
virtual ~QGeoTiledMappingManagerEngine();
@@ -97,7 +89,7 @@ public:
QSharedPointer<QGeoTileTexture> getTileTexture(const QGeoTileSpec &spec);
- QGeoTiledMappingManagerEngine::CacheAreas cacheHint() const;
+ QAbstractGeoTileCache::CacheAreas cacheHint() const;
private Q_SLOTS:
void engineTileFinished(const QGeoTileSpec &spec, const QByteArray &bytes, const QString &format);
@@ -111,7 +103,7 @@ protected:
void setTileFetcher(QGeoTileFetcher *fetcher);
void setTileSize(const QSize &tileSize);
void setTileVersion(int version);
- void setCacheHint(QGeoTiledMappingManagerEngine::CacheAreas cacheHint);
+ void setCacheHint(QAbstractGeoTileCache::CacheAreas cacheHint);
void setTileCache(QAbstractGeoTileCache *cache);
private:
@@ -123,8 +115,6 @@ private:
friend class QGeoTileFetcher;
};
-Q_DECLARE_OPERATORS_FOR_FLAGS(QGeoTiledMappingManagerEngine::CacheAreas)
-
QT_END_NAMESPACE
#endif
diff --git a/src/location/maps/qgeotiledmappingmanagerengine_p_p.h b/src/location/maps/qgeotiledmappingmanagerengine_p_p.h
index 86ad0f08..5ef5b372 100644
--- a/src/location/maps/qgeotiledmappingmanagerengine_p_p.h
+++ b/src/location/maps/qgeotiledmappingmanagerengine_p_p.h
@@ -71,7 +71,7 @@ public:
int m_tileVersion;
QHash<QGeoTiledMap *, QSet<QGeoTileSpec> > mapHash_;
QHash<QGeoTileSpec, QSet<QGeoTiledMap *> > tileHash_;
- QGeoTiledMappingManagerEngine::CacheAreas cacheHint_;
+ QAbstractGeoTileCache::CacheAreas cacheHint_;
QAbstractGeoTileCache *tileCache_;
QGeoTileFetcher *fetcher_;
diff --git a/src/location/maps/qgeotilefetcher_p.h b/src/location/maps/qgeotilefetcher_p.h
index e3621d3d..007a919a 100644
--- a/src/location/maps/qgeotilefetcher_p.h
+++ b/src/location/maps/qgeotilefetcher_p.h
@@ -87,7 +87,7 @@ protected:
QGeoTileFetcher(QGeoTileFetcherPrivate &dd, QObject *parent = 0);
void timerEvent(QTimerEvent *event);
- QGeoTiledMappingManagerEngine::CacheAreas cacheHint() const;
+ QAbstractGeoTileCache::CacheAreas cacheHint() const;
virtual bool initialized() const;
private: