lomiri-location-service ..
An aggregating location service providing positioning and geocoding capabilities to applications.
com::lomiri::location::service::Interface Class Referenceabstract

The Interface class models the primary interface to the location service. More...

#include <interface.h>

Collaboration diagram for com::lomiri::location::service::Interface:

Classes

struct  Errors
struct  CreateSessionForCriteria
struct  Properties

Public Types

typedef std::shared_ptr< InterfacePtr

Public Member Functions

 Interface (const Interface &)=delete
Interfaceoperator= (const Interface &)=delete
virtual ~Interface ()=default
virtual const core::Property< State > & state () const =0
 The overall state of the service.
virtual core::Property< bool > & does_satellite_based_positioning ()=0
 Whether the service uses satellite-based positioning.
virtual core::Property< bool > & is_online ()=0
 Whether the overall service and its positioning engine is online or not.
virtual core::Property< bool > & does_report_cell_and_wifi_ids ()=0
 Whether the engine and its providers/reporters do call home to report reference locations together with wifi and cell ids.
virtual core::Property< std::map< SpaceVehicle::Key, SpaceVehicle > > & visible_space_vehicles ()=0
 All space vehicles currently visible.
virtual session::Interface::Ptr create_session_for_criteria (const Criteria &criteria)=0
 Starts a new session for the given criteria.
virtual core::Property< std::vector< std::string > > & client_applications ()=0
 List of application IDs currently requesting position information.

Static Public Member Functions

static const std::string & path ()
 Queries the path that this object is known under.

Protected Member Functions

 Interface ()=default

Detailed Description

The Interface class models the primary interface to the location service.

Definition at line 48 of file service/interface.h.

Member Typedef Documentation

◆ Ptr

Definition at line 199 of file service/interface.h.

Constructor & Destructor Documentation

◆ Interface() [1/2]

com::lomiri::location::service::Interface::Interface ( )
protecteddefault

Referenced by Interface(), and operator=().

◆ Interface() [2/2]

com::lomiri::location::service::Interface::Interface ( const Interface & )
delete

References Interface().

Here is the call graph for this function:

◆ ~Interface()

virtual com::lomiri::location::service::Interface::~Interface ( )
virtualdefault

Member Function Documentation

◆ client_applications()

virtual core::Property< std::vector< std::string > > & com::lomiri::location::service::Interface::client_applications ( )
pure virtual

List of application IDs currently requesting position information.

◆ create_session_for_criteria()

virtual session::Interface::Ptr com::lomiri::location::service::Interface::create_session_for_criteria ( const Criteria & criteria)
pure virtual

Starts a new session for the given criteria.

Exceptions
std::runtime_errorin case of errors.
Parameters
criteriaThe client's requirements in terms of accuraccy and functionality
Returns
A session instance.

◆ does_report_cell_and_wifi_ids()

virtual core::Property< bool > & com::lomiri::location::service::Interface::does_report_cell_and_wifi_ids ( )
pure virtual

Whether the engine and its providers/reporters do call home to report reference locations together with wifi and cell ids.

We consider this feature privacy sensitive and it defaults to false. The user has to explicitly opt-in into this feature.

Returns
A setable/getable/observable property.

◆ does_satellite_based_positioning()

virtual core::Property< bool > & com::lomiri::location::service::Interface::does_satellite_based_positioning ( )
pure virtual

Whether the service uses satellite-based positioning.

Returns
A setable/getable/observable property.

◆ is_online()

virtual core::Property< bool > & com::lomiri::location::service::Interface::is_online ( )
pure virtual

Whether the overall service and its positioning engine is online or not.

Returns
A setable/getable/observable property.

◆ operator=()

Interface & com::lomiri::location::service::Interface::operator= ( const Interface & )
delete

References Interface().

Here is the call graph for this function:

◆ path()

const std::string & com::lomiri::location::service::Interface::path ( )
inlinestatic

Queries the path that this object is known under.

Definition at line 204 of file service/interface.h.

◆ state()

virtual const core::Property< State > & com::lomiri::location::service::Interface::state ( ) const
pure virtual

The overall state of the service.

Returns
a getable/observable property.

◆ visible_space_vehicles()

virtual core::Property< std::map< SpaceVehicle::Key, SpaceVehicle > > & com::lomiri::location::service::Interface::visible_space_vehicles ( )
pure virtual

All space vehicles currently visible.


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