Qt Positioning provides the majority of its functionality through plugins. This document outlines how to develop a new position plugin.
Each plugin is described by a json file. The json describes the plugins capabilities and version. Below is an example of a json file used by the postionpoll plugin:
{
"Keys": ["positionpoll"],
"Provider": "positionpoll",
"Position": false,
"Satellite": false,
"Monitor": true,
"Priority": 1000,
"Testable": true
}
The entries have the following meaning:
| Key | Description |
|---|---|
| Keys | The unique name/key of the plugin. Each position plugin must have a unique name. |
| Provider | The provider name of the services. Multiple plugins may have the same name. In such cases the Version string will be used to further distinguish the plugins. |
| Position |
Set to true if the plugin implements a QGeoPositionInfoSource.
|
| Satellite |
Set to true if the plugin implements a QGeoSatelliteInfoSource.
|
| Monitor |
Set to true if the plugin implements a QGeoAreaMonitorSource.
|
| Priority | The plugin priority. If multiple plugins have the same provider name, the plugin with the higest priority will be used. |
A plugin implementer needs to subclass QGeoPositionInfoSourceFactory and override one or more of its functions. If a plugin does not support a specific feature the function should return 0 or utilize the default implementation.
As part of the free Business evaluation, we offer a free welcome call for companies, to talk about your requirements, and how the Felgo SDK & Services can help you. Just sign up and schedule your call.
Sign up now to start your free Business evaluation: