36 static QList<QGeoCoordinate> _pathQueryToCoords(
const QGeoCoordinate &fromCoord,
const QGeoCoordinate &toCoord,
double &distanceBetween,
double &finalDistanceBetween);
38 void _cacheTile(
const QByteArray &data,
const QString &hash);
40 bool _isFailedTile(
const QString &hash);
41 bool _recordFailedTile(
const QString &hash);
42 void _clearFailedTile(
const QString &hash);
43 static void _processCarpetResults(
const QList<double> &altitudes,
int gridSizeLat,
int gridSizeLon,
44 bool statsOnly,
double &minHeight,
double &maxHeight, QList<QList<double>> &carpet);
46 struct QueuedRequestInfo_t {
47 QPointer<TerrainQueryInterface> terrainQueryInterface;
49 double distanceBetween;
50 double finalDistanceBetween;
51 QList<QGeoCoordinate> coordinates;
53 int carpetGridSizeLat;
54 int carpetGridSizeLon;
57 QQueue<QueuedRequestInfo_t> _requestQueue;
61 QHash<QString, TerrainTile*> _tiles;
62 QHash<QString, qint64> _failedTiles;
63 qint64 _lastFailedTileSweepMs = 0;
65 QNetworkAccessManager *_networkManager =
nullptr;
67 static constexpr qint64 kFailedTileBackoffMs = 5000;