Sur cette page

QGeoServiceProvider Class

La classe QGeoServiceProvider regroupe l'accès aux services qui fournissent des informations géographiques. Plus d'informations...

Header: #include <QGeoServiceProvider>
qmake: QT += location
Inherits: QObject

Types publics

enum Error { NoError, NotSupportedError, UnknownParameterError, MissingRequiredParameterError, ConnectionError, LoaderError }
enum GeocodingFeature { NoGeocodingFeatures, OnlineGeocodingFeature, OfflineGeocodingFeature, ReverseGeocodingFeature, LocalizedGeocodingFeature, AnyGeocodingFeatures }
flags GeocodingFeatures
enum MappingFeature { NoMappingFeatures, OnlineMappingFeature, OfflineMappingFeature, LocalizedMappingFeature, AnyMappingFeatures }
flags MappingFeatures
enum NavigationFeature { NoNavigationFeatures, OnlineNavigationFeature, OfflineNavigationFeature, AnyNavigationFeatures }
flags NavigationFeatures
enum PlacesFeature { NoPlacesFeatures, OnlinePlacesFeature, OfflinePlacesFeature, SavePlaceFeature, RemovePlaceFeature, …, AnyPlacesFeatures }
flags PlacesFeatures
enum RoutingFeature { NoRoutingFeatures, OnlineRoutingFeature, OfflineRoutingFeature, LocalizedRoutingFeature, RouteUpdatesFeature, …, AnyRoutingFeatures }
flags RoutingFeatures

Fonctions publiques

QGeoServiceProvider(const QString &providerName, const QVariantMap &parameters = QVariantMap(), bool allowExperimental = false)
virtual ~QGeoServiceProvider()
QGeoServiceProvider::Error error() const
QString errorString() const
QGeoServiceProvider::Error geocodingError() const
QString geocodingErrorString() const
QGeoServiceProvider::GeocodingFeatures geocodingFeatures() const
QGeoCodingManager *geocodingManager() const
QGeoServiceProvider::Error mappingError() const
QString mappingErrorString() const
QGeoServiceProvider::MappingFeatures mappingFeatures() const
QGeoServiceProvider::Error navigationError() const
QString navigationErrorString() const
(since QtLocation 5.11) QGeoServiceProvider::NavigationFeatures navigationFeatures() const
QPlaceManager *placeManager() const
QGeoServiceProvider::Error placesError() const
QString placesErrorString() const
QGeoServiceProvider::PlacesFeatures placesFeatures() const
QGeoServiceProvider::Error routingError() const
QString routingErrorString() const
QGeoServiceProvider::RoutingFeatures routingFeatures() const
QGeoRoutingManager *routingManager() const
void setAllowExperimental(bool allow)
void setLocale(const QLocale &locale)
void setParameters(const QVariantMap &parameters)

Membres publics statiques

Description détaillée

L'API Cartes et Navigation permet d'accéder à différents types d'informations géographiques, y compris des fonctionnalités de géocodage, de routage et d'affichage de cartes. Le QGeoServiceProvider regroupe l'accès à un ensemble de ces services fournis par un seul fournisseur.

Il est possible de mélanger les fournisseurs de services pour les différents domaines, de sorte qu'un gestionnaire de géocodage d'un fournisseur de services puisse être utilisé avec un gestionnaire de routage géographique d'un autre fournisseur de services.

Cela n'est pas recommandé, sauf si le client est en mesure de vérifier que les données fournies par les différents services sont compatibles, car les différences dans les ensembles de données sous-jacents peuvent entraîner de graves incongruités entre les services.

Les sous-classes de QGeoServiceProvider garantissent que les différents services qu'elles fournissent sont interopérables.

Chaque fournisseur de service doit suivre une convention de dénomination pour les noms/clés des paramètres spécifiques à son service. Ils utilisent le nom du fournisseur comme préfixe pour tous leurs noms de paramètres. Lorsqu'un fournisseur est chargé, seuls les paramètres dont le nom commence par le nom du fournisseur sont transmis. Cela évite de partager des paramètres sensibles tels que les paramètres confidentiels token ou app_id avec d'autres plugins.

Veuillez consulter la documentation spécifique du plugin GeoServices pour obtenir une liste complète des noms/clés et valeurs de paramètres disponibles.

Documentation sur les types de membres

enum QGeoServiceProvider::Error

Décrit une erreur liée au chargement et à la configuration d'un plugin de fournisseur de services.

ConstanteValeurDescription de l'erreur
QGeoServiceProvider::NoError0Aucune erreur ne s'est produite.
QGeoServiceProvider::NotSupportedError1Le plugin ne prend pas en charge cette fonctionnalité.
QGeoServiceProvider::UnknownParameterError2Le plugin n'a pas reconnu l'un des paramètres qui lui ont été fournis.
QGeoServiceProvider::MissingRequiredParameterError3Le plugin n'a pas trouvé l'un des paramètres qu'il attendait.
QGeoServiceProvider::ConnectionError4Le plugin n'a pas pu se connecter à son service backend ou à sa base de données.
QGeoServiceProvider::LoaderError5Le plugin n'a pas réussi à se charger.

enum QGeoServiceProvider::GeocodingFeature
flags QGeoServiceProvider::GeocodingFeatures

Décrit les caractéristiques de géocodage prises en charge par le fournisseur de services géographiques.

ConstanteValeurDescription
QGeoServiceProvider::NoGeocodingFeatures0Aucune caractéristique de géocodage n'est prise en charge.
QGeoServiceProvider::OnlineGeocodingFeature(1<<0)Le géocodage en ligne est pris en charge.
QGeoServiceProvider::OfflineGeocodingFeature(1<<1)Le géocodage hors ligne est pris en charge.
QGeoServiceProvider::ReverseGeocodingFeature(1<<2)Le géocodage inversé est pris en charge.
QGeoServiceProvider::LocalizedGeocodingFeature(1<<3)Prend en charge le renvoi des résultats de géocodage avec les adresses localisées.
QGeoServiceProvider::AnyGeocodingFeatures~(0)Correspond à un fournisseur de services géographiques qui propose des fonctionnalités de géocodage.

Le type GeocodingFeatures est un typedef pour QFlags<GeocodingFeature>. Il stocke une combinaison OU de valeurs de GeocodingFeatures.

enum QGeoServiceProvider::MappingFeature
flags QGeoServiceProvider::MappingFeatures

Décrit les caractéristiques de cartographie prises en charge par le fournisseur de services géographiques.

ConstanteValeurDescription
QGeoServiceProvider::NoMappingFeatures0Aucune caractéristique de cartographie n'est prise en charge.
QGeoServiceProvider::OnlineMappingFeature(1<<0)La cartographie en ligne est prise en charge.
QGeoServiceProvider::OfflineMappingFeature(1<<1)La cartographie hors ligne est prise en charge.
QGeoServiceProvider::LocalizedMappingFeature(1<<2)Prend en charge le renvoi de données cartographiques localisées.
QGeoServiceProvider::AnyMappingFeatures~(0)Correspond à un fournisseur de services géographiques qui propose des fonctions de cartographie.

Le type MappingFeatures est un typedef pour QFlags<MappingFeature>. Il stocke une combinaison OU de valeurs de MappingFeatures.

Décrit les caractéristiques de navigation prises en charge par le fournisseur de services géographiques.

ConstanteValeurDescription
QGeoServiceProvider::NoNavigationFeatures0Aucune caractéristique de navigation n'est prise en charge.
QGeoServiceProvider::OnlineNavigationFeature(1<<0)La navigation en ligne est prise en charge.
QGeoServiceProvider::OfflineNavigationFeature(1<<1)La navigation hors ligne est prise en charge.
QGeoServiceProvider::AnyNavigationFeatures~(0)Correspond à un fournisseur de services géographiques qui propose des fonctions de navigation.

Le type NavigationFeatures est un typedef pour QFlags<NavigationFeature>. Il stocke une combinaison OU de valeurs de NavigationFeatures.

enum QGeoServiceProvider::PlacesFeature
flags QGeoServiceProvider::PlacesFeatures

Décrit les caractéristiques des lieux prises en charge par le fournisseur de services géographiques.

ConstanteValeurDescription
QGeoServiceProvider::NoPlacesFeatures0Aucune caractéristique de lieu n'est prise en charge.
QGeoServiceProvider::OnlinePlacesFeature(1<<0)Les lieux en ligne sont pris en charge.
QGeoServiceProvider::OfflinePlacesFeature(1<<1)Les lieux hors ligne sont pris en charge.
QGeoServiceProvider::SavePlaceFeature(1<<2)L'enregistrement des lieux est pris en charge.
QGeoServiceProvider::RemovePlaceFeature(1<<3)Le retrait ou la suppression de lieux est pris en charge.
QGeoServiceProvider::SaveCategoryFeature(1<<4)Sauvegarder des catégories est pris en charge.
QGeoServiceProvider::RemoveCategoryFeature(1<<5)La suppression ou la suppression de catégories est prise en charge.
QGeoServiceProvider::PlaceRecommendationsFeature(1<<6)La recherche de lieux recommandés similaires à un autre lieu est prise en charge.
QGeoServiceProvider::SearchSuggestionsFeature(1<<7)La recherche de suggestions est prise en charge.
QGeoServiceProvider::LocalizedPlacesFeature(1<<8)Prise en charge du retour des données localisées sur les lieux.
QGeoServiceProvider::NotificationsFeature(1<<9)La notification des changements de lieux et de catégories est prise en charge.
QGeoServiceProvider::PlaceMatchingFeature(1<<10)Prise en charge de la mise en correspondance de lieux provenant de deux fournisseurs de services géographiques différents.
QGeoServiceProvider::AnyPlacesFeatures~(0)Correspond à un fournisseur de services géographiques qui propose des caractéristiques de lieux.

Le type PlacesFeatures est un typedef pour QFlags<PlacesFeature>. Il stocke une combinaison OU de valeurs PlacesFeatures.

enum QGeoServiceProvider::RoutingFeature
flags QGeoServiceProvider::RoutingFeatures

Décrit les caractéristiques de routage prises en charge par le fournisseur de services géographiques.

ConstanteValeurDescription
QGeoServiceProvider::NoRoutingFeatures0Aucune caractéristique de routage n'est prise en charge.
QGeoServiceProvider::OnlineRoutingFeature(1<<0)L'acheminement en ligne est pris en charge.
QGeoServiceProvider::OfflineRoutingFeature(1<<1)L'acheminement hors ligne est pris en charge.
QGeoServiceProvider::LocalizedRoutingFeature(1<<2)Prise en charge du renvoi d'itinéraires avec des adresses et des instructions localisées.
QGeoServiceProvider::RouteUpdatesFeature(1<<3)La mise à jour d'un itinéraire existant en fonction de la position actuelle est prise en charge.
QGeoServiceProvider::AlternativeRoutesFeature(1<<4)Prise en charge du renvoi d'itinéraires alternatifs.
QGeoServiceProvider::ExcludeAreasRoutingFeature(1<<5)Prise en charge de la spécification d'une zone que l'itinéraire renvoyé ne doit pas traverser.
QGeoServiceProvider::AnyRoutingFeatures~(0)Correspond à un fournisseur de services géographiques qui propose des fonctionnalités de routage.

Le type RoutingFeatures est un typedef pour QFlags<RoutingFeature>. Il stocke une combinaison OU de valeurs de RoutingFeatures.

Documentation des fonctions membres

QGeoServiceProvider::QGeoServiceProvider(const QString &providerName, const QVariantMap &parameters = QVariantMap(), bool allowExperimental = false)

Construit un QGeoServiceProvider dont le backend a le nom providerName, en utilisant le plugin fourni parameters.

Si plusieurs plugins ont le même providerName, le plugin avec la plus grande version de providerVersion() sera utilisé.

Si allowExperimental est vrai, les plugins marqués comme expérimentaux peuvent être utilisés. Par défaut, les plugins expérimentaux ne sont pas pris en compte.

Si aucun plugin correspondant à providerName n'a pu être chargé, error() et errorString() fourniront des détails sur les raisons de cette situation.

Remarque : avant que la liste de parameters ne soit transmise au plugin fournisseur à charger, elle est filtrée afin d'éviter le partage de paramètres spécifiques au plugin avec des plugins fournisseurs non apparentés. Les clés de paramètres spécifiques au plugin doivent être préfixées par le nom du fournisseur (par exemple here.app_id).

[virtual noexcept] QGeoServiceProvider::~QGeoServiceProvider()

Détruit l'objet fournisseur de services.

[static] QStringList QGeoServiceProvider::availableServiceProviders()

Renvoie une liste de noms de fournisseurs de services disponibles, à utiliser avec les constructeurs de QGeoServiceProvider.

QGeoServiceProvider::Error QGeoServiceProvider::error() const

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière opération effectuée par cette classe.

QString QGeoServiceProvider::errorString() const

Renvoie une chaîne décrivant l'erreur survenue lors de la dernière opération effectuée par cette classe.

QGeoServiceProvider::Error QGeoServiceProvider::geocodingError() const

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de géocodage.

QString QGeoServiceProvider::geocodingErrorString() const

Renvoie une chaîne décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de géocodage.

QGeoServiceProvider::GeocodingFeatures QGeoServiceProvider::geocodingFeatures() const

Renvoie les caractéristiques de géocodage prises en charge par le fournisseur de services géographiques.

QGeoCodingManager *QGeoServiceProvider::geocodingManager() const

Renvoie le site QGeoCodingManager mis à disposition par le fournisseur de services.

Cette fonction renvoie nullptr si le fournisseur de services ne propose aucun service de géocodage.

Cette fonction tente de construire une instance de QGeoCodingManager lorsqu'elle est appelée pour la première fois. Si la tentative réussit, l'instance QGeoCodingManager sera mise en cache, sinon chaque appel de cette fonction tentera de construire une instance QGeoCodingManager jusqu'à ce que la construction réussisse.

Le site QGeoCodingManager appartient à ce site QGeoServiceProvider et ne doit pas être supprimé séparément. Les utilisateurs doivent partir du principe que la suppression de QGeoServiceProvider rend le pointeur renvoyé par cette méthode invalide.

Après l'appel de cette fonction, error() et errorString() signalent toute erreur survenue lors de la construction de l'instance QGeoCodingManager.

QGeoServiceProvider::Error QGeoServiceProvider::mappingError() const

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de mappage.

QString QGeoServiceProvider::mappingErrorString() const

Renvoie une chaîne décrivant l'erreur qui s'est produite lors de la dernière tentative de création d'un gestionnaire de mappage.

QGeoServiceProvider::MappingFeatures QGeoServiceProvider::mappingFeatures() const

Renvoie les caractéristiques cartographiques prises en charge par le fournisseur de services géographiques.

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de navigation.

Renvoie une chaîne décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de navigation.

Renvoie les fonctions de navigation prises en charge par le fournisseur de services géographiques.

Cette fonction a été introduite dans QtLocation 5.11.

QPlaceManager *QGeoServiceProvider::placeManager() const

Renvoie le site QPlaceManager mis à disposition par le fournisseur de services.

Cette fonction tente de construire une instance QPlaceManager lorsqu'elle est appelée pour la première fois. Si la tentative réussit, le site QPlaceManager sera mis en cache, sinon chaque appel de cette fonction tentera de construire une instance QPlace jusqu'à ce que la construction réussisse.

Le QGeoPlaceManager appartient à cette QGeoServiceProvider et ne doit pas être supprimé séparément. Les utilisateurs doivent partir du principe que la suppression de QGeoServiceProvider rendra invalide le pointeur renvoyé par cette méthode.

Après l'appel de cette fonction, error() et errorString() signalent toute erreur survenue lors de la construction de QPlaceManager.

QGeoServiceProvider::Error QGeoServiceProvider::placesError() const

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de places.

QString QGeoServiceProvider::placesErrorString() const

Renvoie une chaîne décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de places.

QGeoServiceProvider::PlacesFeatures QGeoServiceProvider::placesFeatures() const

Renvoie les caractéristiques des lieux prises en charge par le fournisseur de services géographiques.

QGeoServiceProvider::Error QGeoServiceProvider::routingError() const

Renvoie un code d'erreur décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de routage.

QString QGeoServiceProvider::routingErrorString() const

Renvoie une chaîne décrivant l'erreur survenue lors de la dernière tentative de création d'un gestionnaire de routage.

QGeoServiceProvider::RoutingFeatures QGeoServiceProvider::routingFeatures() const

Renvoie les caractéristiques de routage prises en charge par le fournisseur de services géographiques.

QGeoRoutingManager *QGeoServiceProvider::routingManager() const

Renvoie le site QGeoRoutingManager mis à disposition par le fournisseur de services.

Cette fonction renvoie nullptr si le fournisseur de services ne fournit aucun service de routage géographique.

Cette fonction tente de construire une instance QGeoRoutingManager lorsqu'elle est appelée pour la première fois. Si la tentative réussit, l'instance QGeoRoutingManager sera mise en cache, sinon chaque appel de cette fonction tentera de construire une instance QGeoRoutingManager jusqu'à ce que la construction réussisse.

Le site QGeoRoutingManager appartient à ce site QGeoServiceProvider et ne doit pas être supprimé séparément. Les utilisateurs doivent partir du principe que la suppression de QGeoServiceProvider rend le pointeur renvoyé par cette méthode invalide.

Après l'appel de cette fonction, error() et errorString() signalent toute erreur survenue lors de la construction de l'instance QGeoRoutingManager.

void QGeoServiceProvider::setAllowExperimental(bool allow)

Définit si les plugins expérimentaux sont pris en compte lors de la recherche de la bibliothèque de plugins appropriée pour ce fournisseur de services à l'adresse allow.

Important : cette méthode détruira tous les gestionnaires existants détenus par cette instance de fournisseur de services. Vous devez vous assurer de ne pas essayer d'utiliser les pointeurs que vous avez précédemment récupérés après avoir appelé cette méthode.

void QGeoServiceProvider::setLocale(const QLocale &locale)

Définit la locale utilisée par ce fournisseur de services à locale. Si les caractéristiques pertinentes (voir LocalizedMappingFeature etc), cela modifiera les langues, les unités et d'autres attributs spécifiques à la locale des données du fournisseur.

void QGeoServiceProvider::setParameters(const QVariantMap &parameters)

Définit les paramètres utilisés pour construire les classes de gestionnaires individuels pour ce fournisseur de services à parameters.

Avant que la liste de parameters ne soit transmise au fournisseur de services à charger, elle est filtrée afin d'éviter le partage de paramètres spécifiques au fournisseur avec des fournisseurs de services non apparentés. Les clés des paramètres spécifiques au prestataire doivent être préfixées par le nom du prestataire (par exemple here.app_id).

Important : cette opération détruira tous les gestionnaires existants détenus par cette instance de fournisseur de services. Veillez à ne pas essayer d'utiliser les pointeurs que vous avez précédemment récupérés après avoir appelé cette méthode.

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.