Marble
8 #ifndef MARBLE_POSITIONTRACKING_H
9 #define MARBLE_POSITIONTRACKING_H
11 #include "marble_export.h"
12 #include "PositionProviderPluginInterface.h"
19 class GeoDataAccuracy;
20 class GeoDataCoordinates;
21 class GeoDataTreeModel;
22 class PositionProviderPlugin;
23 class PositionTrackingPrivate;
25 class MARBLE_EXPORT PositionTracking :
public QObject
29 Q_PROPERTY( PositionProviderPlugin* positionProviderPlugin READ positionProviderPlugin WRITE setPositionProviderPlugin NOTIFY positionProviderPluginChanged )
32 explicit PositionTracking( GeoDataTreeModel* model );
33 ~PositionTracking()
override;
39 void setPositionProviderPlugin( PositionProviderPlugin* plugin );
42 PositionProviderPlugin* positionProviderPlugin();
57 qreal direction()
const;
65 GeoDataAccuracy accuracy()
const;
70 bool trackVisible()
const;
73 GeoDataCoordinates currentLocation()
const;
76 PositionProviderStatus
status()
const;
79 bool isTrackEmpty()
const;
86 qreal length( qreal planetRadius )
const;
96 void setTrackVisible (
bool visible );
101 bool saveTrack(
const QString& fileName );
109 void gpsLocation(
const GeoDataCoordinates&, qreal );
111 void statusChanged( PositionProviderStatus
status );
116 void positionProviderPluginChanged( PositionProviderPlugin *activePlugin );
119 Q_PRIVATE_SLOT( d,
void updatePosition() )
120 Q_PRIVATE_SLOT( d,
void updateStatus() )
122 friend class PositionTrackingPrivate;
123 PositionTrackingPrivate* const d;
Q_SCRIPTABLE CaptureState status()
Binds a QML item to a specific geodetic location in screen coordinates.
void error(QWidget *parent, const QString &text, const QString &title, const KGuiItem &buttonOk, Options options=Notify)
This file is part of the KDE documentation.
Documentation copyright © 1996-2023 The KDE developers.
Generated on Mon Sep 25 2023 03:50:20 by
doxygen 1.8.17 written
by
Dimitri van Heesch, © 1997-2006
KDE's Doxygen guidelines are available online.