37 static QList<QGeoCoordinate> _pathQueryToCoords(
const QGeoCoordinate &fromCoord,
const QGeoCoordinate &toCoord,
double &distanceBetween,
double &finalDistanceBetween);
39 void _cacheTile(
const QByteArray &data,
const QString &hash);
41 bool _isFailedTile(
const QString &hash);
42 bool _recordFailedTile(
const QString &hash);
43 void _clearFailedTile(
const QString &hash);
44 static void _processCarpetResults(
const QList<double> &altitudes,
int gridSizeLat,
int gridSizeLon,
45 bool statsOnly,
double &minHeight,
double &maxHeight, QList<QList<double>> &carpet);
47 struct QueuedRequestInfo_t {
48 QPointer<TerrainQueryInterface> terrainQueryInterface;
50 double distanceBetween;
51 double finalDistanceBetween;
52 QList<QGeoCoordinate> coordinates;
54 int carpetGridSizeLat;
55 int carpetGridSizeLon;
58 QQueue<QueuedRequestInfo_t> _requestQueue;
62 QHash<QString, TerrainTile*> _tiles;
63 QHash<QString, qint64> _failedTiles;
64 qint64 _lastFailedTileSweepMs = 0;
66 QNetworkAccessManager *_networkManager =
nullptr;
68 static constexpr qint64 kFailedTileBackoffMs = 5000;