Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qgeopositioninfosource_geoclue2_p.h
Go to the documentation of this file.
1
// Copyright (C) 2018 Denis Shienkov <denis.shienkov@gmail.com>
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
ifndef
QGEOPOSITIONINFOSOURCE_GEOCLUE2_P_H
6
#
define
QGEOPOSITIONINFOSOURCE_GEOCLUE2_P_H
7
8
#
include
<
QtPositioning
/
QGeoPositionInfoSource
>
9
#
include
<
QtCore
/
QPointer
>
10
#
include
<
manager_interface_p
.
h
>
11
12
namespace
QtPositioningPrivate
{
13
14
class
OrgFreedesktopGeoClue2ClientInterface;
15
16
}
// namespace QtPositioningPrivate
17
18
QT_BEGIN_NAMESPACE
19
class
QDBusObjectPath;
20
class
QTimer;
21
22
class
QGeoPositionInfoSourceGeoclue2
:
public
QGeoPositionInfoSource
23
{
24
Q_OBJECT
25
26
public
:
27
explicit
QGeoPositionInfoSourceGeoclue2
(
const
QVariantMap
&
parameters
,
28
QObject
*
parent
=
nullptr
);
29
~
QGeoPositionInfoSourceGeoclue2
();
30
31
// From QGeoPositionInfoSource
32
void
setUpdateInterval
(
int
msec)
override
;
33
QGeoPositionInfo
lastKnownPosition
(
bool
fromSatellitePositioningMethodsOnly =
false
)
const
override
;
34
PositioningMethods
supportedPositioningMethods
()
const
override
;
35
void
setPreferredPositioningMethods
(PositioningMethods methods)
override
;
36
int
minimumUpdateInterval
()
const
override
;
37
38
Error
error
()
const
override
;
39
40
void
startUpdates
()
override
;
41
void
stopUpdates
()
override
;
42
void
requestUpdate
(
int
timeout = 5000)
override
;
43
44
private
:
45
void
setError(QGeoPositionInfoSource::Error error);
46
void
restoreLastPosition();
47
void
saveLastPosition();
48
void
createClient();
49
bool
configureClient();
50
void
startClient();
51
void
stopClient();
52
void
requestUpdateTimeout();
53
void
handleNewLocation(
const
QDBusObjectPath &oldLocation,
54
const
QDBusObjectPath &newLocation);
55
void
parseParameters(
const
QVariantMap ¶meters);
56
57
QTimer *m_requestTimer =
nullptr
;
58
QtPositioningPrivate::OrgFreedesktopGeoClue2ManagerInterface m_manager;
59
QPointer<QtPositioningPrivate::OrgFreedesktopGeoClue2ClientInterface> m_client;
60
bool
m_running =
false
;
61
bool
m_lastPositionFromSatellite =
false
;
62
QGeoPositionInfoSource::Error m_error =
NoError
;
63
QGeoPositionInfo m_lastPosition;
64
QString m_desktopId;
65
};
66
67
QT_END_NAMESPACE
68
69
#
endif
// QGEOPOSITIONINFOSOURCE_GEOCLUE2_P_H
QGeoPositionInfoSourceGeoclue2
Definition
qgeopositioninfosource_geoclue2_p.h:23
QGeoPositionInfoSourceGeoclue2::startUpdates
void startUpdates() override
Starts emitting updates at regular intervals as specified by setUpdateInterval().
Definition
qgeopositioninfosource_geoclue2.cpp:127
QGeoPositionInfoSourceGeoclue2::~QGeoPositionInfoSourceGeoclue2
~QGeoPositionInfoSourceGeoclue2()
Definition
qgeopositioninfosource_geoclue2.cpp:70
QGeoPositionInfoSourceGeoclue2::supportedPositioningMethods
PositioningMethods supportedPositioningMethods() const override
Returns the positioning methods available to this source.
Definition
qgeopositioninfosource_geoclue2.cpp:88
QGeoPositionInfoSourceGeoclue2::error
Error error() const override
Returns the type of error that last occurred.
Definition
qgeopositioninfosource_geoclue2.cpp:122
QGeoPositionInfoSourceGeoclue2::requestUpdate
void requestUpdate(int timeout=5000) override
Attempts to get the current position and emit positionUpdated() with this information.
Definition
qgeopositioninfosource_geoclue2.cpp:161
QGeoPositionInfoSourceGeoclue2::lastKnownPosition
QGeoPositionInfo lastKnownPosition(bool fromSatellitePositioningMethodsOnly=false) const override
Returns an update containing the last known position, or a null update if none is available.
Definition
qgeopositioninfosource_geoclue2.cpp:81
QGeoPositionInfoSourceGeoclue2::stopUpdates
void stopUpdates() override
Stops emitting updates at regular intervals.
Definition
qgeopositioninfosource_geoclue2.cpp:148
QGeoPositionInfoSourceGeoclue2::minimumUpdateInterval
int minimumUpdateInterval() const override
Definition
qgeopositioninfosource_geoclue2.cpp:117
QGeoPositionInfoSourceGeoclue2::setPreferredPositioningMethods
void setPreferredPositioningMethods(PositioningMethods methods) override
Definition
qgeopositioninfosource_geoclue2.cpp:111
QGeoPositionInfoSourceGeoclue2::setUpdateInterval
void setUpdateInterval(int msec) override
Definition
qgeopositioninfosource_geoclue2.cpp:75
QtPositioningPrivate
Definition
qgeopositioninfosource_geoclue2_p.h:12
qtpositioning
src
plugins
position
geoclue2
qgeopositioninfosource_geoclue2_p.h
Generated on
for Qt by
1.18.0