com::lomiri::location::FusionProvider Class Reference

`#include <fusion_provider.h>`

Inheritance diagram for com::lomiri::location::FusionProvider:
Collaboration diagram for com::lomiri::location::FusionProvider:

## Public Types

typedef std::shared_ptr< FusionProvider > | Ptr
Public Types inherited from com::lomiri::location::Provider
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

| FusionProvider (const std::set< Provider::Ptr > &providers, const UpdateSelector::Ptr &update_selector)
bool | matches_criteria (const Criteria &criteria) override
| Checks if a provider satisfies a set of accuracy criteria.
void | on_wifi_and_cell_reporting_state_changed (location::WifiAndCellIdReportingState state) override
| Called by the engine whenever the wifi and cell ID reporting state changes.
void | on_reference_location_updated (const Update< Position > &position) override
| Called by the engine whenever the reference location changed.
void | on_reference_velocity_updated (const Update< Velocity > &velocity) override
| Called by the engine whenever the reference velocity changed.
void | on_reference_heading_updated (const Update< Heading > &heading) override
| Called by the engine whenever the reference heading changed.
void | start_position_updates () override
| Implementation-specific, empty by default.
void | stop_position_updates () override
| Implementation-specific, empty by default.
void | start_heading_updates () override
| Implementation-specific, empty by default.
void | stop_heading_updates () override
| Implementation-specific, empty by default.
void | start_velocity_updates () override
| Implementation-specific, empty by default.
void | stop_velocity_updates () override
| Implementation-specific, empty by default.
Public Member Functions inherited from com::lomiri::location::Provider
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.

## Additional Inherited Members

Public Attributes inherited from com::lomiri::location::Provider
virtual bool | const
| Checks if the provider has got a specific requirement.
Protected Member Functions inherited from com::lomiri::location::Provider
| Provider (const Features &features=Features::none, const Requirements &requirements=Requirements::none)
virtual Updates & | mutable_updates ()

## Detailed Description

Definition at line 33 of file fusion_provider.h.

## Member Typedef Documentation

## Ptr

typedef std::shared_ptr<FusionProvider> com::lomiri::location::FusionProvider::Ptr

Definition at line 36 of file fusion_provider.h.

## Constructor & Destructor Documentation

## FusionProvider()

com::lomiri::location::FusionProvider::FusionProvider | ( | const std::set< Provider::Ptr > & | providers,
|  | const UpdateSelector::Ptr & | update_selector )

## Member Function Documentation

## matches_criteria()

bool com::lomiri::location::FusionProvider::matches_criteria | ( | const Criteria & | criteria | ) |

override virtual

Checks if a provider satisfies a set of accuracy criteria.

Parameters

  [in] | criteria | The criteria to check.

Returns
  true iff the provider satisfies the given criteria.

Reimplemented from com::lomiri::location::Provider.

## on_reference_heading_updated()

void com::lomiri::location::FusionProvider::on_reference_heading_updated | ( | const Update< Heading > & | heading | ) |

override virtual

Called by the engine whenever the reference heading changed.

Parameters

  heading | The new reference heading.

Reimplemented from com::lomiri::location::Provider.

## on_reference_location_updated()

void com::lomiri::location::FusionProvider::on_reference_location_updated | ( | const Update< Position > & | position | ) |

override virtual

Called by the engine whenever the reference location changed.

Parameters

  position | The new reference location.

Reimplemented from com::lomiri::location::Provider.

## on_reference_velocity_updated()

void com::lomiri::location::FusionProvider::on_reference_velocity_updated | ( | const Update< Velocity > & | velocity | ) |

override virtual

Called by the engine whenever the reference velocity changed.

Parameters

  velocity | The new reference velocity.

Reimplemented from com::lomiri::location::Provider.

## on_wifi_and_cell_reporting_state_changed()

void com::lomiri::location::FusionProvider::on_wifi_and_cell_reporting_state_changed | ( | location::WifiAndCellIdReportingState | state | ) |

override virtual

Called by the engine whenever the wifi and cell ID reporting state changes.

Parameters

  state | The new state.

Reimplemented from com::lomiri::location::Provider.

## start_heading_updates()

void com::lomiri::location::FusionProvider::start_heading_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

## start_position_updates()

void com::lomiri::location::FusionProvider::start_position_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

## start_velocity_updates()

void com::lomiri::location::FusionProvider::start_velocity_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

## stop_heading_updates()

void com::lomiri::location::FusionProvider::stop_heading_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

## stop_position_updates()

void com::lomiri::location::FusionProvider::stop_position_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

## stop_velocity_updates()

void com::lomiri::location::FusionProvider::stop_velocity_updates | ( |  | ) |

override virtual

Implementation-specific, empty by default.

Reimplemented from com::lomiri::location::Provider.

The documentation for this class was generated from the following file:

- fusion_provider.h