more work on dameon
[googlelatitude] / src / gps.h
index 3cf513a..61162bf 100644 (file)
--- a/src/gps.h
+++ b/src/gps.h
@@ -3,29 +3,55 @@
 
 #include <QObject>
 
-class gps : public QObject {
+#ifdef Q_WS_MAEMO_5
+extern "C" {
+#include <location/location-gps-device.h>
+#include <location/location-gpsd-control.h>
+}
+#else
+#include <QtNetwork>
+#include <QTimer>
+#endif // Q_WS_MAEMO_5
+
+class GpsMaemo5 : public QObject {
     Q_OBJECT
 
 signals:
-    void getOK();
-
-public slots:
-    void get();
+    void fix();
 
 public:
-    gps(QObject *parent = 0);
+    GpsMaemo5(QObject *parent = 0);
     double get_lat() { return latitude; }
     double get_lon() { return longitude; }
     double get_acc() { return accuracy; }
-    void set_acwp();
-    void set_agnss();
-    void start();
-    void stop();
+#ifdef Q_WS_MAEMO_5
+    friend void GpsMaemo5_changed(LocationGPSDevice *device, GpsMaemo5 *gps);
+#endif // Q_WS_MAEMO_5
+
+#ifdef Q_WS_MAEMO_5
+#else
+private slots:
+    void finishedreply(QNetworkReply *r);
+    void gloc();
+#endif // Q_WS_MAEMO_5
 
 private:
     double latitude;
     double longitude;
     double accuracy;
+#ifdef Q_WS_MAEMO_5
+    GMainLoop *loop;
+    LocationGPSDControl *control;
+    LocationGPSDevice *device;
+#else
+    QUrl urlloc;
+    QNetworkAccessManager *worker;
+#endif // Q_WS_MAEMO_5
+
 };
 
+#ifdef Q_WS_MAEMO_5
+void GpsMaemo5_changed(LocationGPSDevice *device, GpsMaemo5 *gps);
+#endif // Q_WS_MAEMO_5
+
 #endif // GPS_H