lomiri-location-service
..
An aggregating location service providing positioning and geocoding capabilities to applications.
provider_selection_policy.h
Go to the documentation of this file.
1
/*
2
* Copyright © 2012-2013 Canonical Ltd.
3
*
4
* This program is free software: you can redistribute it and/or modify it
5
* under the terms of the GNU Lesser General Public License version 3,
6
* as published by the Free Software Foundation.
7
*
8
* This program is distributed in the hope that it will be useful,
9
* but WITHOUT ANY WARRANTY; without even the implied warranty of
10
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11
* GNU Lesser General Public License for more details.
12
*
13
* You should have received a copy of the GNU Lesser General Public License
14
* along with this program. If not, see <http://www.gnu.org/licenses/>.
15
*
16
* Authored by: Thomas Voß <thomas.voss@canonical.com>
17
*/
18
#ifndef LOCATION_SERVICE_COM_LOMIRI_PROVIDER_SELECTION_POLICY_H_
19
#define LOCATION_SERVICE_COM_LOMIRI_PROVIDER_SELECTION_POLICY_H_
20
21
#include <
com/lomiri/location/provider_enumerator.h
>
22
#include <
com/lomiri/location/provider_selection.h
>
23
24
#include <memory>
25
26
namespace
com
27
{
28
namespace
lomiri
29
{
30
namespace
location
31
{
32
struct
Criteria;
33
class
Engine;
34
35
class
ProviderSelectionPolicy
36
{
37
public
:
38
typedef
std::shared_ptr<ProviderSelectionPolicy>
Ptr
;
39
40
static
const
Provider::Ptr
&
null_provider
();
41
42
ProviderSelectionPolicy
(
const
ProviderSelectionPolicy
&) =
delete
;
43
ProviderSelectionPolicy
&
operator=
(
const
ProviderSelectionPolicy
&) =
delete
;
44
virtual
~ProviderSelectionPolicy
() =
default
;
45
46
virtual
ProviderSelection
determine_provider_selection_for_criteria
(
47
const
Criteria
& criteria,
48
const
ProviderEnumerator
& enumerator) = 0;
49
50
protected
:
51
ProviderSelectionPolicy
() =
default
;
52
};
53
}
54
}
55
}
56
57
#endif // LOCATION_SERVICE_COM_LOMIRI_PROVIDER_SELECTION_POLICY_H_
com::lomiri::location::ProviderSelectionPolicy
Definition:
provider_selection_policy.h:35
com::lomiri::location::ProviderEnumerator
Definition:
provider_enumerator.h:31
com::lomiri::location::Provider::Ptr
std::shared_ptr< Provider > Ptr
Definition:
provider.h:48
com::lomiri::location::ProviderSelectionPolicy::determine_provider_selection_for_criteria
virtual ProviderSelection determine_provider_selection_for_criteria(const Criteria &criteria, const ProviderEnumerator &enumerator)=0
provider_enumerator.h
com::lomiri::location::ProviderSelectionPolicy::Ptr
std::shared_ptr< ProviderSelectionPolicy > Ptr
Definition:
provider_selection_policy.h:38
provider_selection.h
com::lomiri::location::ProviderSelectionPolicy::~ProviderSelectionPolicy
virtual ~ProviderSelectionPolicy()=default
com::lomiri::location::ProviderSelectionPolicy::operator=
ProviderSelectionPolicy & operator=(const ProviderSelectionPolicy &)=delete
com::lomiri::location::ProviderSelectionPolicy::ProviderSelectionPolicy
ProviderSelectionPolicy()=default
com::lomiri::location::ProviderSelection
Definition:
provider_selection.h:31
com::lomiri::location::ProviderSelectionPolicy::null_provider
static const Provider::Ptr & null_provider()
com::lomiri::location::Criteria
Summarizes criteria of a client session with respect to functionality and accuracy for position,...
Definition:
criteria.h:34
com
Definition:
accuracy.h:23
include
location_service
com
lomiri
location
provider_selection_policy.h
Generated on Tue Oct 3 2023 09:28:04 for lomiri-location-service by
1.8.17