#pragma once #include "MapProvider.h" #include #include #include #include #include #include class GoogleMapProvider : public MapProvider { Q_OBJECT public: GoogleMapProvider(QObject* parent); ~GoogleMapProvider(); static quint32 getAverageSize(); // Google Specific private slots private slots: void _networkReplyError(QNetworkReply::NetworkError error); void _googleVersionCompleted(); void _replyDestroyed(); private: // Define the url to Request QString _getURL(int x, int y, int zoom, QNetworkAccessManager* networkManager) ; // Google Specific private methods void _getSecGoogleWords(int x, int y, QString& sec1, QString& sec2); void _tryCorrectGoogleVersions(QNetworkAccessManager* networkManager); // Google Specific attributes bool _googleVersionRetrieved; QNetworkReply* _googleReply; QMutex _googleVersionMutex; QString _versionGoogleMap; QString _versionGoogleSatellite; QString _versionGoogleLabels; QString _versionGoogleTerrain; QString _secGoogleWord; };