|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <QGCTileCacheDatabase.h>
Public Member Functions | |
| QGCTileCacheDatabase (const QString &databasePath) | |
| ~QGCTileCacheDatabase () | |
| bool | init () |
| bool | connectDB () |
| void | disconnectDB () |
| bool | isValid () const |
| bool | hasFailed () const |
| bool | saveTile (const QString &hash, const QString &format, const QByteArray &img, const QString &type, quint64 tileSet) |
| std::unique_ptr< QGCCacheTile > | getTile (const QString &hash) |
| std::optional< quint64 > | findTile (const QString &hash) |
| QList< TileSetRecord > | getTileSets () |
| std::optional< quint64 > | createTileSet (const QString &name, const QString &mapTypeStr, double topleftLat, double topleftLon, double bottomRightLat, double bottomRightLon, int minZoom, int maxZoom, const QString &type, quint32 numTiles) |
| bool | deleteTileSet (quint64 id) |
| bool | renameTileSet (quint64 setID, const QString &newName) |
| std::optional< quint64 > | findTileSetID (const QString &name) |
| bool | resetDatabase () |
| QList< QGCTile > | getTileDownloadList (quint64 setID, int count) |
| bool | updateTileDownloadState (quint64 setID, int state, const QString &hash) |
| bool | updateAllTileDownloadStates (quint64 setID, int state) |
| bool | pruneCache (quint64 amount) |
| void | deleteBingNoTileTiles () |
| TotalsResult | computeTotals () |
| SetTotalsResult | computeSetTotals (quint64 setID, bool isDefault, quint32 totalTileCount, const QString &type) |
| DatabaseResult | importSetsReplace (const QString &path, ProgressCallback progressCb) |
| DatabaseResult | importSetsMerge (const QString &path, ProgressCallback progressCb) |
| DatabaseResult | exportSets (const QList< TileSetRecord > &sets, const QString &path, ProgressCallback progressCb) |
| QSqlDatabase | database () const |
Static Public Attributes | |
| static constexpr quint64 | kInvalidTileSet = UINT64_MAX |
| static constexpr int | kSchemaVersion = 1 |
| static constexpr const char * | kBingNoTileDoneKey = "_deleteBingNoTileTilesDone" |
Definition at line 15 of file QGCTileCacheDatabase.h.
|
explicit |
Definition at line 65 of file QGCTileCacheDatabase.cpp.
| QGCTileCacheDatabase::~QGCTileCacheDatabase | ( | ) |
Definition at line 71 of file QGCTileCacheDatabase.cpp.
References disconnectDB().
| SetTotalsResult QGCTileCacheDatabase::computeSetTotals | ( | quint64 | setID, |
| bool | isDefault, | ||
| quint32 | totalTileCount, | ||
| const QString & | type | ||
| ) |
Definition at line 856 of file QGCTileCacheDatabase.cpp.
References UrlFactory::averageSizeForType(), computeTotals(), TotalsResult::defaultCount, TotalsResult::defaultSize, SetTotalsResult::savedTileCount, SetTotalsResult::savedTileSize, TotalsResult::totalCount, TotalsResult::totalSize, SetTotalsResult::totalTileSize, SetTotalsResult::uniqueTileCount, and SetTotalsResult::uniqueTileSize.
| TotalsResult QGCTileCacheDatabase::computeTotals | ( | ) |
Definition at line 830 of file QGCTileCacheDatabase.cpp.
References TotalsResult::defaultCount, TotalsResult::defaultSize, TotalsResult::totalCount, and TotalsResult::totalSize.
Referenced by computeSetTotals().
| bool QGCTileCacheDatabase::connectDB | ( | ) |
Definition at line 161 of file QGCTileCacheDatabase.cpp.
References disconnectDB().
Referenced by importSetsReplace(), and init().
| std::optional< quint64 > QGCTileCacheDatabase::createTileSet | ( | const QString & | name, |
| const QString & | mapTypeStr, | ||
| double | topleftLat, | ||
| double | topleftLon, | ||
| double | bottomRightLat, | ||
| double | bottomRightLon, | ||
| int | minZoom, | ||
| int | maxZoom, | ||
| const QString & | type, | ||
| quint32 | numTiles | ||
| ) |
Definition at line 347 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), UrlFactory::getQtMapIdFromProviderType(), UrlFactory::getTileCount(), UrlFactory::getTileHash(), placeholders(), QGCTile::StatePending, QGCTileSet::tileX0, QGCTileSet::tileX1, QGCTileSet::tileY0, and QGCTileSet::tileY1.
| QSqlDatabase QGCTileCacheDatabase::database | ( | ) | const |
Definition at line 81 of file QGCTileCacheDatabase.cpp.
| void QGCTileCacheDatabase::deleteBingNoTileTiles | ( | ) |
Definition at line 766 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), and kBingNoTileDoneKey.
| bool QGCTileCacheDatabase::deleteTileSet | ( | quint64 | id | ) |
Definition at line 470 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), kInvalidTileSet, and placeholders().
Referenced by importSetsMerge().
| void QGCTileCacheDatabase::disconnectDB | ( | ) |
Definition at line 186 of file QGCTileCacheDatabase.cpp.
Referenced by connectDB(), importSetsReplace(), init(), and ~QGCTileCacheDatabase().
| DatabaseResult QGCTileCacheDatabase::exportSets | ( | const QList< TileSetRecord > & | sets, |
| const QString & | path, | ||
| ProgressCallback | progressCb | ||
| ) |
Definition at line 1092 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), ScopedExportDB::db, DatabaseResult::errorString, ScopedExportDB::open(), and DatabaseResult::success.
| std::optional< quint64 > QGCTileCacheDatabase::findTile | ( | const QString & | hash | ) |
Definition at line 293 of file QGCTileCacheDatabase.cpp.
| std::optional< quint64 > QGCTileCacheDatabase::findTileSetID | ( | const QString & | name | ) |
Definition at line 561 of file QGCTileCacheDatabase.cpp.
| std::unique_ptr< QGCCacheTile > QGCTileCacheDatabase::getTile | ( | const QString & | hash | ) |
Definition at line 270 of file QGCTileCacheDatabase.cpp.
References UrlFactory::getProviderTypeFromQtMapId().
| QList< QGCTile > QGCTileCacheDatabase::getTileDownloadList | ( | quint64 | setID, |
| int | count | ||
| ) |
Definition at line 608 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), QGCTile::hash, placeholders(), QGCTile::StateDownloading, QGCTile::StatePending, QGCTile::type, QGCTile::x, QGCTile::y, and QGCTile::z.
| QList< TileSetRecord > QGCTileCacheDatabase::getTileSets | ( | ) |
Definition at line 311 of file QGCTileCacheDatabase.cpp.
References TileSetRecord::bottomRightLat, TileSetRecord::bottomRightLon, TileSetRecord::date, TileSetRecord::defaultSet, TileSetRecord::mapTypeStr, TileSetRecord::maxZoom, TileSetRecord::minZoom, TileSetRecord::name, TileSetRecord::numTiles, TileSetRecord::setID, TileSetRecord::topleftLat, TileSetRecord::topleftLon, and TileSetRecord::type.
|
inline |
Definition at line 29 of file QGCTileCacheDatabase.h.
| DatabaseResult QGCTileCacheDatabase::importSetsMerge | ( | const QString & | path, |
| ProgressCallback | progressCb | ||
| ) |
Definition at line 964 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), ScopedExportDB::db, deleteTileSet(), DatabaseResult::errorString, ScopedExportDB::open(), and DatabaseResult::success.
| DatabaseResult QGCTileCacheDatabase::importSetsReplace | ( | const QString & | path, |
| ProgressCallback | progressCb | ||
| ) |
Definition at line 923 of file QGCTileCacheDatabase.cpp.
References connectDB(), disconnectDB(), DatabaseResult::errorString, init(), kInvalidTileSet, and DatabaseResult::success.
| bool QGCTileCacheDatabase::init | ( | ) |
Definition at line 133 of file QGCTileCacheDatabase.cpp.
References connectDB(), and disconnectDB().
Referenced by importSetsReplace().
|
inline |
Definition at line 28 of file QGCTileCacheDatabase.h.
| bool QGCTileCacheDatabase::pruneCache | ( | quint64 | amount | ) |
Definition at line 717 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), and TransactionGuard::commit().
| bool QGCTileCacheDatabase::renameTileSet | ( | quint64 | setID, |
| const QString & | newName | ||
| ) |
Definition at line 546 of file QGCTileCacheDatabase.cpp.
| bool QGCTileCacheDatabase::resetDatabase | ( | ) |
Definition at line 579 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), and kInvalidTileSet.
| bool QGCTileCacheDatabase::saveTile | ( | const QString & | hash, |
| const QString & | format, | ||
| const QByteArray & | img, | ||
| const QString & | type, | ||
| quint64 | tileSet | ||
| ) |
Definition at line 206 of file QGCTileCacheDatabase.cpp.
References TransactionGuard::begin(), TransactionGuard::commit(), UrlFactory::getQtMapIdFromProviderType(), and kInvalidTileSet.
| bool QGCTileCacheDatabase::updateAllTileDownloadStates | ( | quint64 | setID, |
| int | state | ||
| ) |
Definition at line 696 of file QGCTileCacheDatabase.cpp.
| bool QGCTileCacheDatabase::updateTileDownloadState | ( | quint64 | setID, |
| int | state, | ||
| const QString & | hash | ||
| ) |
Definition at line 666 of file QGCTileCacheDatabase.cpp.
References QGCTile::StateComplete.
|
staticconstexpr |
Definition at line 68 of file QGCTileCacheDatabase.h.
Referenced by deleteBingNoTileTiles().
|
staticconstexpr |
Definition at line 18 of file QGCTileCacheDatabase.h.
Referenced by deleteTileSet(), importSetsReplace(), resetDatabase(), and saveTile().
|
staticconstexpr |
Definition at line 19 of file QGCTileCacheDatabase.h.