00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef GPSPOSITIONINTERFACE_H
00023 #define GPSPOSITIONINTERFACE_H
00024
00025 #include <QObject>
00026 #include <QPointF>
00027
00031 class GPSPositionInterface : public QObject
00032 {
00033 Q_OBJECT
00034
00035 public:
00039 enum Mode {Default, Simulation};
00040
00046 GPSPositionInterface(QObject *parent = 0);
00047
00051 virtual ~GPSPositionInterface();
00052
00053
00054
00055
00056 public:
00062 virtual bool isRunning() = 0;
00063
00067 virtual void lastPosition() = 0;
00068
00076 virtual void setMode(Mode mode, const QString &filePath = 0) = 0;
00077
00083 virtual void setUpdateInterval(int interval) = 0;
00084
00088 virtual void start() = 0;
00089
00093 virtual void stop() = 0;
00094
00095 private slots:
00099 virtual void update() = 0;
00100
00101
00102
00103
00104 signals:
00110 void error(const QString &message);
00111
00118 void position(QPointF latLonCoordinate, qreal accuracy);
00119
00123 void timeout();
00124 };
00125
00126 #endif // GPSPOSITIONINTERFACE_H