QGIS API Documentation 3.29.0-Master (ade4f0cf0f)
qgsmbtiles.h
Go to the documentation of this file.
1/***************************************************************************
2 qgsmbtiles.h
3 --------------------------------------
4 Date : January 2020
5 Copyright : (C) 2020 by Martin Dobias
6 Email : wonder dot sk at gmail dot com
7 ***************************************************************************
8 * *
9 * This program is free software; you can redistribute it and/or modify *
10 * it under the terms of the GNU General Public License as published by *
11 * the Free Software Foundation; either version 2 of the License, or *
12 * (at your option) any later version. *
13 * *
14 ***************************************************************************/
15
16#ifndef QGSMBTILES_H
17#define QGSMBTILES_H
18
19#include "qgis_core.h"
20
21#include "sqlite3.h"
22#include "qgssqliteutils.h"
23
24#define SIP_NO_FILE
25
26class QImage;
27class QgsRectangle;
28
38class CORE_EXPORT QgsMbTiles
39{
40 public:
42 explicit QgsMbTiles( const QString &filename );
43
45 bool open();
46
48 bool isOpen() const;
49
55 bool create();
56
58 QString metadataValue( const QString &key ) const;
59
64 void setMetadataValue( const QString &key, const QString &value ) const;
65
67 QgsRectangle extent() const;
68
70 QByteArray tileData( int z, int x, int y ) const;
71
73 QImage tileDataAsImage( int z, int x, int y ) const;
74
79 void setTileData( int z, int x, int y, const QByteArray &data ) const;
80
81 private:
82 QString mFilename;
84};
85
86
87#endif // QGSMBTILES_H
Utility class for reading and writing MBTiles files (which are SQLite3 databases).
Definition: qgsmbtiles.h:39
A rectangle specified with double values.
Definition: qgsrectangle.h:42
Unique pointer for sqlite3 databases, which automatically closes the database when the pointer goes o...