From e793249057ffa9d6b18a26cc0ea4b67d2d6abb9f Mon Sep 17 00:00:00 2001 From: Andreas Bircher Date: Thu, 16 Nov 2017 12:06:52 -0500 Subject: [PATCH] cleanup --- src/QGCLoggingCategory.cc | 1 + src/Terrain.cc | 24 +----------------------- src/Terrain.h | 17 +++++------------ 3 files changed, 7 insertions(+), 35 deletions(-) diff --git a/src/QGCLoggingCategory.cc b/src/QGCLoggingCategory.cc index 662de9b4f..9372e6cf4 100644 --- a/src/QGCLoggingCategory.cc +++ b/src/QGCLoggingCategory.cc @@ -79,6 +79,7 @@ void QGCLoggingCategoryRegister::setFilterRulesFromSettings(const QString& comma } // Command line rules take precedence, so they go last in the list + _commandLineLoggingOptions += "TerrainLog,TerrainTileLog"; if (!_commandLineLoggingOptions.isEmpty()) { QStringList logList = _commandLineLoggingOptions.split(","); diff --git a/src/Terrain.cc b/src/Terrain.cc index 8920a5fe9..dd3205318 100644 --- a/src/Terrain.cc +++ b/src/Terrain.cc @@ -137,28 +137,6 @@ bool ElevationProvider::cacheTerrainTiles(const QGeoCoordinate& southWest, const return true; } -bool ElevationProvider::cacheTerrainTiles(const QList& coordinates) -{ - if (coordinates.length() == 0) { - return false; - } - - for (const auto& coordinate : coordinates) { - QString uniqueTileId = _uniqueTileId(coordinate); - _tilesMutex.lock(); - if (_downloadQueue.contains(uniqueTileId) || _tiles.contains(uniqueTileId)) { - _tilesMutex.unlock(); - continue; - } - _downloadQueue.append(uniqueTileId); - _tilesMutex.unlock(); - qCDebug(TerrainLog) << "Adding tile to download queue: " << uniqueTileId; - } - - _downloadTiles(); - return true; -} - void ElevationProvider::_requestFinished() { QNetworkReply* reply = qobject_cast(QObject::sender()); @@ -265,7 +243,7 @@ void ElevationProvider::_downloadTiles(void) connect(networkReply, &QNetworkReply::finished, this, &ElevationProvider::_requestFinishedTile); _state = State::Downloading; - } else if (_state == State::Idle) { + } else if (_state == State::Idle && _coordinates.length() > 0) { queryTerrainData(_coordinates); } } diff --git a/src/Terrain.h b/src/Terrain.h index ede95c7e0..286b2a077 100644 --- a/src/Terrain.h +++ b/src/Terrain.h @@ -52,14 +52,6 @@ public: */ bool queryTerrainData(const QList& coordinates); - /** - * Cache all data in rectangular region given by list of coordinates. - * - * @param coordinates - * @return true on successful scheduling for download - */ - bool cacheTerrainTiles(const QList& coordinates); - /** * Cache all data in rectangular region given by south west and north east corner. * @@ -70,16 +62,17 @@ public: bool cacheTerrainTiles(const QGeoCoordinate& southWest, const QGeoCoordinate& northEast); signals: + /// signal returning requested elevation data void terrainData(bool success, QList altitudes); private slots: - void _requestFinished(); - void _requestFinishedTile(); + void _requestFinished(); /// slot to handle download of elevation of list of coordinates + void _requestFinishedTile(); /// slot to handle download of elevation tiles private: - QString _uniqueTileId(const QGeoCoordinate& coordinate); - void _downloadTiles(void); + QString _uniqueTileId(const QGeoCoordinate& coordinate); /// Method to create a unique string for each tile. Format: south_west_north_east as floats. + void _downloadTiles(void); /// Method to trigger download of queued tiles, eventually emitting the requested altitudes (if any). enum class State { Idle, -- 2.22.0