123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106 |
- #ifndef DAEMON_H
- #define DAEMON_H
- #include <QObject>
- #include <QPointer>
- #include <QFile>
- #include <QTextStream>
- #include <QVariant>
- #include <QSettings>
- #include <QGeoPositionInfoSource>
- #include <QGeoPositionInfo>
- QTM_USE_NAMESPACE
- class Message;
- class Daemon: public QObject
- {
- Q_OBJECT
- public:
- Daemon(QObject *parent = 0);
- ~Daemon();
-
- public:
-
- Q_INVOKABLE void enableDaemon(QVariant enable);
- Q_INVOKABLE QVariant isDaemonEnabled();
-
- Q_INVOKABLE void enableDaemonLog(QVariant enable);
- Q_INVOKABLE QVariant isLogEnabled();
-
- Q_INVOKABLE void keepGpsRunning(QVariant running);
- Q_INVOKABLE QVariant isGpsRunningEnabled();
-
- Q_INVOKABLE void gpsAccuracy(QVariant meters);
- Q_INVOKABLE QVariant getGpsAccuracy();
-
- Q_INVOKABLE void sendLocationTo(QVariant number);
-
- Q_INVOKABLE void storeSettings();
-
- Q_INVOKABLE void killDaemon();
- signals:
-
- void daemonLog(QString log);
-
- void gpsInitialized();
-
- void gpsLocationReceived();
-
- void gpsClosed();
- private:
- void createGPS();
- void deleteGPS();
- void reset();
- void readSettings();
- void saveSettings();
- private slots:
-
- void friendAskLocationSMS(QString friendPhoneNumber);
-
- void updateTimeout();
- void positionUpdated(QGeoPositionInfo);
-
- void log(QString str);
- void startGps();
-
- private:
- Message* m_message;
- QPointer<QGeoPositionInfoSource> m_location;
- QGeoPositionInfo m_YougeoPosInfo;
- QFile* m_file;
- QTextStream m_outStream;
- QString m_askingLocation;
- QSettings* m_settings;
- bool m_daemonEnabled;
- bool m_daemonLogEnabled;
- double m_accuracy;
- bool m_keepGpsRunning;
- };
- #endif
|