ITS
FakeGPSProvider.cpp
Go to the documentation of this file.
1 #include "FakeGPSProvider.h"
2 
4 {
5  m_mutex = mutex;
6  if(m_mutex != 0)
7  m_mutex->lock();
8 
9  startIts = QDateTime(QDate(2004, 1, 1));
10 
11  if(m_mutex != 0)
12  m_mutex->unlock();
13 }
14 
16 {
17 }
18 
20 {
21  QDateTime current = QDateTime::currentDateTimeUtc();
22  return startIts.msecsTo(current);
23 }
24 
26 {
27  this->m_data = other.m_data;
28  return *this;
29 }
30 
31 void FakeGPSProvider::changePosition(qint32 deltaLatitude, qint32 deltaLongitude, qint8 deltaAltitude)
32 {
34  m_data.m_referencePosition.latitude += deltaLatitude - ((Latitude_unavailable-1)*2);
35  else if(m_data.m_referencePosition.latitude + deltaLatitude < -((Latitude_unavailable-1)*2))
36  m_data.m_referencePosition.latitude += deltaLatitude + ((Latitude_unavailable-1)*2);
37  else
38  m_data.m_referencePosition.latitude += deltaLatitude;
39 
41  m_data.m_referencePosition.longitude += deltaLongitude - (((qint64)Longitude_unavailable-1)*2);
42  else if(m_data.m_referencePosition.longitude + deltaLongitude < -(((qint64)Longitude_unavailable-1)*2))
43  m_data.m_referencePosition.longitude += deltaLongitude + (((qint64)Longitude_unavailable-1)*2);
44  else
45  m_data.m_referencePosition.longitude += deltaLongitude;
46 
51  else
53 
54  emit positionChanged();
55 }
56 
57 void FakeGPSProvider::changeHeading(quint16 heading)
58 {
59  m_data.m_heading.headingValue += heading;
60  if(m_data.m_heading.headingValue > 3599)
62 
63  emit positionChanged();
64 }
65 
66 void FakeGPSProvider::changeSpeed(quint16 speed)
67 {
68  m_data.m_speed.speedValue += speed;
69 
70  emit positionChanged();
71 }
Heading_t m_heading
Definition: ParameterGPS.h:25
SpeedValue_t speedValue
Definition: Speed.h:24
Speed_t m_speed
Definition: ParameterGPS.h:28
quint64 getTimestamp()
getTimestamp Get ITS timestamp from system timestamp.
HeadingValue_t headingValue
Definition: Heading.h:24
FakeGPSProvider & operator=(const FakeGPSProvider &other)
operator= Affectation operator.
ParameterGPS m_data
void positionChanged()
positionChanged Signal used when GPS position change.
AltitudeValue_t altitudeValue
Definition: Altitude.h:24
void changeSpeed(quint16 speed)
changeSpeed Change the speed.
void changePosition(qint32 deltaLatitude, qint32 deltaLongitude, qint8 deltaAltitude)
changePosition Change the GPS position.
FakeGPSProvider(QMutex *mutex=nullptr)
FakeGPSProvider FakeGPSProvider constructor.
void changeHeading(quint16 heading)
changeHeading Change the heading.
ReferencePosition_t m_referencePosition
Definition: ParameterGPS.h:27
QDateTime startIts
GPS provider for testing purposes.