|
lomiri-location-service ..
An aggregating location service providing positioning and geocoding capabilities to applications.
|
The Provider class is the abstract base of all positioning providers. More...
#include <provider.h>
Classes | |
| class | Controller |
| Facade for controlling the state of position/heading/velocity updates. More... | |
| struct | Updates |
| Wraps all updates that can be delivered by a provider. More... | |
Public Types | |
| enum class | Features : std::size_t { none = 0 , position = 1 << 0 , velocity = 1 << 1 , heading = 1 << 2 } |
| Enumerates the known features that can be supported by providers. More... | |
| enum class | Requirements : std::size_t { none = 0 , satellites = 1 << 0 , cell_network = 1 << 1 , data_network = 1 << 2 , monetary_spending = 1 << 3 } |
| Enumerates the requirements of a provider implementation. More... | |
| typedef std::shared_ptr< Provider > | Ptr |
Public Member Functions | |
| virtual | ~Provider ()=default |
| Provider (const Provider &)=delete | |
| Provider & | operator= (const Provider &)=delete |
| virtual const Updates & | updates () const |
| Provides non-mutable access to this provider's updates. | |
| virtual const Controller::Ptr & | state_controller () const |
| Access to the controller facade of this provider instance. | |
| virtual bool | supports (const Features &f) const |
| Checks if the provider supports a specific feature. | |
| virtual bool | matches_criteria (const Criteria &criteria) |
| Checks if a provider satisfies a set of accuracy criteria. | |
| virtual void | on_wifi_and_cell_reporting_state_changed (WifiAndCellIdReportingState state) |
| Called by the engine whenever the wifi and cell ID reporting state changes. | |
| virtual void | on_reference_location_updated (const Update< Position > &position) |
| Called by the engine whenever the reference location changed. | |
| virtual void | on_reference_velocity_updated (const Update< Velocity > &velocity) |
| Called by the engine whenever the reference velocity changed. | |
| virtual void | on_reference_heading_updated (const Update< Heading > &heading) |
| Called by the engine whenever the reference heading changed. | |
Public Attributes | |
| virtual bool | const |
| Checks if the provider has got a specific requirement. | |
Protected Member Functions | |
| Provider (const Features &features=Features::none, const Requirements &requirements=Requirements::none) | |
| virtual Updates & | mutable_updates () |
| virtual void | start_position_updates () |
| Implementation-specific, empty by default. | |
| virtual void | stop_position_updates () |
| Implementation-specific, empty by default. | |
| virtual void | start_heading_updates () |
| Implementation-specific, empty by default. | |
| virtual void | stop_heading_updates () |
| Implementation-specific, empty by default. | |
| virtual void | start_velocity_updates () |
| Implementation-specific, empty by default. | |
| virtual void | stop_velocity_updates () |
| Implementation-specific, empty by default. | |
The Provider class is the abstract base of all positioning providers.
Definition at line 45 of file provider.h.
| typedef std::shared_ptr<Provider> com::lomiri::location::Provider::Ptr |
Definition at line 48 of file provider.h.
|
strong |
Enumerates the known features that can be supported by providers.
Definition at line 53 of file provider.h.
|
strong |
Enumerates the requirements of a provider implementation.
Definition at line 64 of file provider.h.
|
virtualdefault |
|
delete |
References Provider().
Referenced by operator=(), and Provider().
|
explicitprotected |
References features, none, and requirements.
Checks if a provider satisfies a set of accuracy criteria.
| [in] | criteria | The criteria to check. |
Reimplemented in com::lomiri::location::FusionProvider.
|
protectedvirtual |
|
virtual |
Called by the engine whenever the reference heading changed.
| heading | The new reference heading. |
Reimplemented in com::lomiri::location::FusionProvider.
|
virtual |
Called by the engine whenever the reference location changed.
| position | The new reference location. |
Reimplemented in com::lomiri::location::FusionProvider.
|
virtual |
Called by the engine whenever the reference velocity changed.
| velocity | The new reference velocity. |
Reimplemented in com::lomiri::location::FusionProvider.
|
virtual |
Called by the engine whenever the wifi and cell ID reporting state changes.
| state | The new state. |
Reimplemented in com::lomiri::location::FusionProvider.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
|
virtual |
Access to the controller facade of this provider instance.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
|
protectedvirtual |
Implementation-specific, empty by default.
Reimplemented in com::lomiri::location::FusionProvider, and com::lomiri::location::ProxyProvider.
Checks if the provider supports a specific feature.
| f | Feature to test for |
Provides non-mutable access to this provider's updates.
| virtual bool com::lomiri::location::Provider::const |
Checks if the provider has got a specific requirement.
| r | Requirement to test for. |
Definition at line 203 of file provider.h.
| Controller::Ptr com::lomiri::location::Provider::controller = Controller::Ptr{} |
Definition at line 279 of file provider.h.
| Features com::lomiri::location::Provider::features = Features::none |
Definition at line 276 of file provider.h.
Referenced by Provider().
| Requirements com::lomiri::location::Provider::requirements = Requirements::none |
Definition at line 277 of file provider.h.
Referenced by Provider().
| Updates com::lomiri::location::Provider::updates |
Definition at line 278 of file provider.h.