QGeoServiceProviderFactory Class | Qt Location | Qt 6.11.1
Description: The QGeoServiceProviderFactory class is a factory class used as the plugin interface for services related to geographical information.

- Qt 6.11
- Qt Location
- C++ Classes
- QGeoServiceProviderFactory
- Qt 6.11.1 Reference Documentation

# QGeoServiceProviderFactory Class

The QGeoServiceProviderFactory class is a factory class used as the plugin interface for services related to geographical information. More...

Header: | `#include <QGeoServiceProviderFactory>`
qmake: | `QT += location`
Status: | Deprecated

This class is deprecated. We strongly advise against using it in new code.

- List of all members, including inherited members

## Public Functions

virtual | ~QGeoServiceProviderFactory()
virtual QGeoCodingManagerEngine * | createGeocodingManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const
virtual QPlaceManagerEngine * | createPlaceManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const
virtual QGeoRoutingManagerEngine * | createRoutingManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const
virtual void | setQmlEngine(QQmlEngine *engine)

## Detailed Description

Note: There are no source or binary compatibility guarantees for the backend classes. The API is only guaranteed to work with the Qt version it was developed against. API changes will however only be made in minor releases. (6.6, 6.7, and so on.)

Implementers must provide a unique combination of providerName() and providerVersion() per plugin.

The other functions should be overridden if the plugin supports the associated set of functionality.

## Member Function Documentation

### `[virtual noexcept]` QGeoServiceProviderFactory::~QGeoServiceProviderFactory()

Destroys this QGeoServiceProviderFactory instance.

### `[virtual]` QGeoCodingManagerEngine *QGeoServiceProviderFactory::createGeocodingManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const

Returns a new QGeoCodingManagerEngine instance, initialized with parameters, which implements the location geocoding functionality.

If error is not `nullptr` it should be set to QGeoServiceProvider::NoError on success or an appropriate QGeoServiceProvider::Error on failure.

If errorString is not `nullptr` it should be set to a string describing any error which occurred.

The default implementation returns `nullptr`, which causes a QGeoServiceProvider::NotSupportedError in QGeoServiceProvider.

### `[virtual]` QPlaceManagerEngine *QGeoServiceProviderFactory::createPlaceManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const

Returns a new QPlaceManagerEngine instance, initialized with parameters, which implements the place searching functionality.

If error is not `nullptr` it should be set to QGeoServiceProvider::NoError on success or an appropriate QGeoServiceProvider::Error on failure.

If errorString is not `nullptr` it should be set to a string describing any error which occurred.

The default implementation returns `nullptr`, which causes a QGeoServiceProvider::NotSupportedError in QGeoServiceProvider.

### `[virtual]` QGeoRoutingManagerEngine *QGeoServiceProviderFactory::createRoutingManagerEngine(const QVariantMap &parameters, QGeoServiceProvider::Error *error, QString *errorString) const

Returns a new QGeoRoutingManagerEngine instance, initialized with parameters, which implements routing functionality.

If error is not `nullptr` it should be set to QGeoServiceProvider::NoError on success or an appropriate QGeoServiceProvider::Error on failure.

If errorString is not `nullptr` it should be set to a string describing any error which occurred.

The default implementation returns `nullptr`, which causes a QGeoServiceProvider::NotSupportedError in QGeoServiceProvider.

### `[virtual]` void QGeoServiceProviderFactory::setQmlEngine(QQmlEngine *engine)

Notify the plugin when the qml engine is ready. In this moment the plugins can use it to register Image Providers.

The default implementation does nothing.