*/
#include <QDebug>
+#include <QTimer>
-#include "common.h"
+#include "error.h"
#include "gpsposition.h"
#include "gpspositionprivatestub.h"
+const GeoCoordinate COORDINATE(65.0105, 25.5091);
+
GPSPositionPrivate::GPSPositionPrivate(QObject *parent)
- : QObject(parent)
+ : QObject(parent),
+ m_running(false)
{
qDebug() << __PRETTY_FUNCTION__;
m_parent = static_cast<GPSPosition*>(parent);
+ m_timer = new QTimer(this);
+ connect(m_timer, SIGNAL(timeout()), this, SLOT(timeout()));
+ m_timer->setInterval(5000);
}
-void GPSPositionPrivate::enablePowerSave(bool enabled)
+bool GPSPositionPrivate::isInitialized() const
{
qDebug() << __PRETTY_FUNCTION__;
- Q_UNUSED(enabled);
+ return true;
}
-bool GPSPositionPrivate::isInitialized()
+bool GPSPositionPrivate::isRunning() const
{
qDebug() << __PRETTY_FUNCTION__;
- return false;
-}
-
-bool GPSPositionPrivate::isRunning()
-{
- qDebug() << __PRETTY_FUNCTION__;
-
- return false;
+ return m_running;
}
void GPSPositionPrivate::setUpdateInterval(int interval)
qDebug() << __PRETTY_FUNCTION__;
Q_UNUSED(interval);
+ m_timer->setInterval(interval);
}
void GPSPositionPrivate::setMode(GPSPosition::Mode mode, const QString &filePath)
Q_UNUSED(filePath);
}
+void GPSPositionPrivate::setPowerSave(bool enabled)
+{
+ qDebug() << __PRETTY_FUNCTION__;
+
+ if (enabled)
+ stop();
+ else
+ start();
+}
+
void GPSPositionPrivate::start()
{
qDebug() << __PRETTY_FUNCTION__;
- emit m_parent->error(ErrorContext::SITUARE, SituareError::GPS_INITIALIZATION_FAILED);
+ m_running = true;
+ m_timer->start();
}
void GPSPositionPrivate::stop()
{
qDebug() << __PRETTY_FUNCTION__;
+
+ m_running = false;
+ m_timer->stop();
+}
+
+void GPSPositionPrivate::timeout()
+{
+ emit m_parent->position(COORDINATE, 100.0);
}
-QPointF GPSPositionPrivate::lastPosition()
+GeoCoordinate GPSPositionPrivate::lastPosition() const
{
qDebug() << __PRETTY_FUNCTION__;
- return QPointF(0, 0);
+ return COORDINATE;
}
void GPSPositionPrivate::requestLastPosition()
{
qDebug() << __PRETTY_FUNCTION__;
+
+ emit m_parent->position(COORDINATE, 100.0);
}
void GPSPositionPrivate::requestUpdate()
{
qDebug() << __PRETTY_FUNCTION__;
+
+ start();
}