1 #ifndef OSMSCOUT_CLIENT_QT_TILECACHE_H 2 #define OSMSCOUT_CLIENT_QT_TILECACHE_H 32 #include <QElapsedTimer> 96 void tileRequested(uint32_t zoomLevel, uint32_t x, uint32_t y);
107 void clearPendingRequests();
108 bool startRequestProcess(uint32_t zoomLevel, uint32_t x, uint32_t y);
109 void mergeAndStartRequests(uint32_t zoomLevel, uint32_t xtile, uint32_t ytile,
110 uint32_t &xFrom, uint32_t &xTo, uint32_t &yFrom, uint32_t &yTo, uint32_t maxWidth, uint32_t maxHeight);
111 bool isRequestQueueEmpty()
const;
118 bool request(uint32_t zoomLevel, uint32_t x, uint32_t y);
123 bool reemitRequests();
124 bool contains(uint32_t zoomLevel, uint32_t x, uint32_t y);
125 bool containsRequest(uint32_t zoomLevel, uint32_t x, uint32_t y);
126 TileCacheVal get(uint32_t zoomLevel, uint32_t x, uint32_t y);
133 bool invalidate(osmscout::GeoBox box = osmscout::GeoBox());
143 bool removeRequest(uint32_t zoomLevel, uint32_t x, uint32_t y);
144 void put(uint32_t zoomLevel, uint32_t x, uint32_t y, QImage image,
size_t epoch = 0);
159 QHash<TileCacheKey, TileCacheVal> tiles;
160 QHash<TileCacheKey, RequestState> requests;
162 uint32_t maximumLivetimeMs;
uint32_t ytile
Definition: TileCache.h:56
#define OSMSCOUT_CLIENT_QT_API
Definition: ClientQtImportExport.h:45
size_t getEpoch() const
Definition: TileCache.h:148
QElapsedTimer lastAccess
Definition: TileCache.h:72
std::ostream & operator<<(std::ostream &stream, const DBId &o)
Definition: DBFileOffset.h:80
Definition: TileCache.h:52
uint32_t zoomLevel
Definition: TileCache.h:54
uint32_t xtile
Definition: TileCache.h:55
uint qHash(const TileCacheKey &key)
Definition: TileCache.h:80
bool operator<(const TileCacheKey &a, const TileCacheKey &b)
Definition: TileCache.h:70
bool operator==(const MapView &a, const MapView &b)
Definition: InputHandler.h:222
Definition: TileCache.h:91
void incEpoch()
Definition: TileCache.h:153
bool pending
if pending is false, request is currently processing
Definition: TileCache.h:82
QPixmap image
Definition: TileCache.h:73
size_t epoch
Definition: TileCache.h:74