16 #ifndef QGSVECTORTILELOADER_H
17 #define QGSVECTORTILELOADER_H
37 :
id( tileID ),
data( raw ) {}
66 const QString &sourcePath,
68 const QPointF &viewCenter,
70 const QString &authid,
77 const QString &requestUrl,
78 const QString &authid,
97 QString
error()
const;
103 void tileReplyFinished();
112 std::unique_ptr<QEventLoop> mEventLoop;
120 QList<QgsTileDownloadManagerReply *> mReplies;
Base class for feedback objects to be used for cancellation of something running in a worker thread.
Utility class for reading and writing MBTiles files (which are SQLite3 databases).
Reply object for tile download manager requests returned from calls to QgsTileDownloadManager::get().
Defines a matrix of tiles for a single zoom level: it is defined by its size (width *.
Range of tiles in a tile matrix to be rendered.
Stores coordinates of a tile in a tile matrix set.
The loader class takes care of loading raw vector tile data from a tile source.
void tileRequestFinished(const QgsVectorTileRawData &rawTile)
Emitted when a tile request has finished. If a tile request has failed, the returned raw tile byte ar...
static QList< QgsVectorTileRawData > blockingFetchTileRawData(const QString &sourceType, const QString &sourcePath, const QgsTileMatrix &tileMatrix, const QPointF &viewCenter, const QgsTileRange &range, const QString &authid, const QgsHttpHeaders &headers, QgsFeedback *feedback=nullptr)
Returns raw tile data for the specified range of tiles. Blocks the caller until all tiles are fetched...
QString error() const
Returns a eventual error that occurred during loading, void if no error.
static QByteArray loadFromNetwork(const QgsTileXYZ &id, const QgsTileMatrix &tileMatrix, const QString &requestUrl, const QString &authid, const QgsHttpHeaders &headers, QgsFeedback *feedback=nullptr)
Returns raw tile data for a single tile, doing a HTTP request. Block the caller until tile data are d...
static QByteArray loadFromMBTiles(const QgsTileXYZ &id, QgsMbTiles &mbTileReader, QgsFeedback *feedback=nullptr)
Returns raw tile data for a single tile loaded from MBTiles file.
void downloadBlocking()
Blocks the caller until all asynchronous requests are finished (with a success or a failure)
QgsVectorTileLoader(const QString &uri, const QgsTileMatrix &tileMatrix, const QgsTileRange &range, const QPointF &viewCenter, const QString &authid, const QgsHttpHeaders &headers, QgsFeedback *feedback)
Constructs tile loader for doing asynchronous requests and starts network requests.
Keeps track of raw tile data that need to be decoded.
QgsVectorTileRawData(QgsTileXYZ tileID=QgsTileXYZ(), const QByteArray &raw=QByteArray())
Constructs a raw tile object.
QByteArray data
Raw tile data.
QgsTileXYZ id
Tile position in tile matrix set.