Merge lp:~thomas-voss/location-service/fix-rtd-docs-next into lp:location-service

Proposed by Thomas Voß
Status: Merged
Approved by: Thomas Voß
Approved revision: 274
Merged at revision: 274
Proposed branch: lp:~thomas-voss/location-service/fix-rtd-docs-next
Merge into: lp:location-service
Diff against target: 137 lines (+72/-24)
4 files modified
doc/api.md (+33/-0)
doc/cli.md (+11/-0)
doc/index.rst (+2/-5)
doc/intro.md (+26/-19)
To merge this branch: bzr merge lp:~thomas-voss/location-service/fix-rtd-docs-next
Reviewer Review Type Date Requested Status
Simon Fels (community) Approve
Thomas Voß Pending
Review via email: mp+306439@code.launchpad.net

Commit message

Introduce sections on the service CLI and API.

Description of the change

Introduce sections on the service CLI and API.

To post a comment you must log in.
Revision history for this message
Simon Fels (morphis) wrote :

LGTM

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== added file 'doc/api.md'
--- doc/api.md 1970-01-01 00:00:00 +0000
+++ doc/api.md 2016-09-22 10:48:21 +0000
@@ -0,0 +1,33 @@
1# API
2
3Location service exposes a DBus API to interact with a service instance.
4We do not expose introspection for the API, yet. Instead, we provide a C++ client API that
5abstracts away from the underlying IPC mechanism.
6
7A client application then uses the API to establish a session with a
8service, register observers to receive updates and to control the
9status of updates. The following snippet illustrates basic usage of the client API:
10
11```{cpp}
12auto service = location::connect_to_service(...);
13auto session = service->create_session_for_criteria(location::Criteria{});
14
15session->updates().position.changed().connect([this](const location::Update<location::Position>& pos)
16{
17 std::cout << pos << std::endl;
18});
19
20session->updates().heading.changed().connect([this](const location::Update<location::units::Degrees>& heading)
21{
22 std::cout << pos << std::endl;
23});
24
25session->updates().velocity.changed().connect([this](const location::Update<location::units::MetersPerSecond>& velocity)
26{
27 std::cout << pos << std::endl;
28});
29
30session->updates().position_status = location::Service::Session::Updates::Status::enabled;
31session->updates().heading_status = location::Service::Session::Updates::Status::enabled;
32session->updates().velocity_status = location::Service::Session::Updates::Status::enabled;
33```
034
=== added file 'doc/cli.md'
--- doc/cli.md 1970-01-01 00:00:00 +0000
+++ doc/cli.md 2016-09-22 10:48:21 +0000
@@ -0,0 +1,11 @@
1# CLI
2
3The location service offers a command-line interface for controlling
4and monitoring the service. The following commands are available:
5
6 - list: Lists all provider implementations known to the service.
7 - monitor: Connects to a location service instance, monitoring its activity.
8 - provider: Executes a known provider implementation in an out-of-process sandbox.
9 - run: Executes the service.
10 - status: Queries the status of a service instance.
11 - test: Executes runtime tests against known provider implementations.
012
=== modified file 'doc/index.rst'
--- doc/index.rst 2016-08-26 13:26:52 +0000
+++ doc/index.rst 2016-09-22 10:48:21 +0000
@@ -12,12 +12,9 @@
12 :maxdepth: 212 :maxdepth: 2
1313
14 intro14 intro
15 cli
16 api
15 hacking17 hacking
16 debugging
17 daemon_and_cli
18 manual_testing
19 tips_n_tricks
20
2118
22Indices and tables19Indices and tables
23==================20==================
2421
=== modified file 'doc/intro.md'
--- doc/intro.md 2016-08-26 13:41:21 +0000
+++ doc/intro.md 2016-09-22 10:48:21 +0000
@@ -11,27 +11,25 @@
11To make the remainder of this documentation as easily understandable11To make the remainder of this documentation as easily understandable
12as possible, we start over with introducing some vocabulary:12as possible, we start over with introducing some vocabulary:
1313
14- Engine: 14 - Engine: Responsible for handling input from multiple positioning
15 Responsible for handling input from multiple positioning15 subsystems and maintaining the state of the overall system. Think
16 subsystems and maintaining the state of the overall system. Think16 about it like the heart of the system.
17 about it like the heart of the system.17
1818 - Provider: A positioning subsystem that feeds into the positioning
19- Provider: 19 engine. Common examples are a GPS provider or a network-based
20 A positioning subsystem that feeds into the positioning20 positioning provider.
21 engine. Common examples are a GPS provider or a network-based21
22 positioning provider.22 - Service: The point of entry for applications and services that would
2323 like to receive position data.
24- Service:24
25 The point of entry for applications and services that would25 - Session: In order to receive position information, every application
26 like to receive position data.26 or service has to create a session with the location Service.
2727 Session creation is subject to security mediation and contextual
28- Session:28 prompting.
29 In order to receive position information, every application
30 or service has to create a session with the location Service.
3129
32- Update: An update is a timestamped entity to a certain type of data.30- Update: An update is a timestamped entity to a certain type of data.
3331
34- [WGS84, http://en.wikipedia.org/wiki/World_Geodetic_System]: The coordinate system that is used throughout the entire location subsystem.32- [WGS84](http://en.wikipedia.org/wiki/World_Geodetic_System): The coordinate system that is used throughout the entire location subsystem.
3533
36## Architectural Overview34## Architectural Overview
3735
@@ -48,7 +46,16 @@
48The Service takes this configuration and exposes it to client46The Service takes this configuration and exposes it to client
49applications. In addition, mainly for debugging purposes, the set of47applications. In addition, mainly for debugging purposes, the set of
50currently visible satellites (if any) is maintained and exposed to48currently visible satellites (if any) is maintained and exposed to
51privileged client applications.49privileged client applications. The service supports multiple different satellite-based
50positioning operating in parallel. The following GNSSs are known:
51
52 * Beidou: People's Republic of China's regional system, currently limited to Asia and the West Pacific.
53 * Galileo: A global system being developed by the European Union and other partner countries, planned to be operational by 2014 (and fully deployed by 2019).
54 * Glonass: Russia's global navigation system. Fully operational worldwide.
55 * GPS: Fully operational worldwide.
56 * Compass: People's Republic of China's global system, planned to be operational by 2020.
57 * IRNSS: India's regional navigation system, planned to be operational by 2014, covering India and Northern Indian Ocean.
58 * QZSS: Japanese regional system covering Asia and Oceania.
5259
53## Privacy & Access Control60## Privacy & Access Control
5461

Subscribers

People subscribed via source and target branches

to all changes: