service/stub.h
Go to the documentation of this file.
/*
* Copyright © 2012-2013 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
* under the terms of the GNU Lesser General Public License version 3,
* as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*
* Authored by: Thomas Voß <thomas.voss@canonical.com>
*/
#ifndef LOCATION_SERVICE_COM_LOMIRI_LOCATION_SERVICE_STUB_H_
#define LOCATION_SERVICE_COM_LOMIRI_LOCATION_SERVICE_STUB_H_
#include <com/lomiri/location/service/interface.h>
#include <com/lomiri/location/service/session/interface.h>
#include <core/dbus/stub.h>
namespace com
{
namespace lomiri
{
namespace location
{
namespace service
{
class Stub : public core::dbus::Stub<Interface>
{
public:
Stub(const dbus::Bus::Ptr& connection);
Stub(const Stub&) = delete;
Stub& operator=(const Stub&) = delete;
~Stub() noexcept;
session::Interface::Ptr create_session_for_criteria(const Criteria& criteria);
const core::Property<State>& state() const;
core::Property<bool>& does_satellite_based_positioning();
core::Property<bool>& does_report_cell_and_wifi_ids();
core::Property<bool>& is_online();
core::Property<std::map<SpaceVehicle::Key, SpaceVehicle>>& visible_space_vehicles();
core::Property<std::vector<std::string>>& client_applications();
private:
struct Private;
std::unique_ptr<Private> d;
};
}
}
}
}
#endif // LOCATION_SERVICE_COM_LOMIRI_LOCATION_SERVICE_STUB_H_
com::lomiri::location::service::Interface
The Interface class models the primary interface to the location service.
Definition service/interface.h:49
com::lomiri::location::service::Stub::is_online
core::Property< bool > & is_online()
com::lomiri::location::service::Stub::create_session_for_criteria
session::Interface::Ptr create_session_for_criteria(const Criteria &criteria)
com::lomiri::location::service::Stub::operator=
Stub & operator=(const Stub &)=delete
com::lomiri::location::service::Stub::state
const core::Property< State > & state() const
com::lomiri::location::service::Stub::visible_space_vehicles
core::Property< std::map< SpaceVehicle::Key, SpaceVehicle > > & visible_space_vehicles()
com::lomiri::location::service::Stub::Stub
Stub(const Stub &)=delete
com::lomiri::location::service::Stub::~Stub
~Stub() noexcept
com::lomiri::location::service::Stub::Stub
Stub(const dbus::Bus::Ptr &connection)
com::lomiri::location::service::Stub::does_satellite_based_positioning
core::Property< bool > & does_satellite_based_positioning()
com::lomiri::location::service::Stub::does_report_cell_and_wifi_ids
core::Property< bool > & does_report_cell_and_wifi_ids()
com::lomiri::location::service::Stub::client_applications
core::Property< std::vector< std::string > > & client_applications()
core::dbus::Stub
com::lomiri::location::service::session
Definition implementation.h:36
com::lomiri::location::service
Definition service/configuration.h:36
com::lomiri::location::service::State
State
State enumerates the known states of the service.
Definition state.h:27
com::lomiri::location
Definition accuracy.h:28
com::lomiri
Definition accuracy.h:26
com
Definition accuracy.h:24
core
Definition codec.h:39
interface.h
interface.h
com::lomiri::location::Criteria
Summarizes criteria of a client session with respect to functionality and accuracy for position,...
Definition criteria.h:35
com::lomiri::location::SpaceVehicle
A space-vehicle as visible to providers.
Definition space_vehicle.h:34