ITS
denMessageTableForwarding.h
Go to the documentation of this file.
1 
7 #ifndef DENMESSAGETABLEFORWARDING_H
8 #define DENMESSAGETABLEFORWARDING_H
9 
10 #include <QObject>
11 #include <QThread>
12 #include <QTimer>
13 #include <QElapsedTimer>
14 
15 #include <DestinationAreaData.h>
17 
18 #include <FakeGPSProvider.h>
19 
20 #include <DENM.h>
21 #include <ActionIDData.h>
22 
23 #include <facilitiesApi.h>
24 
25 #define MAX_TIMEOUT 86400001
26 
27 class denMessageTableForwarding : public QObject
28 {
29  Q_OBJECT
30 
31 public:
32 
33  /* Public members */
36  QThread *m_thread;
38  /* Constructors */
48  explicit denMessageTableForwarding(const denMessageTableForwarding& messageTable);
53 
54  /* Getters */
59  DENM_t denm() const{return m_denm;}
64  qint64 T_F_Validity() const{return m_T_F_Validity;}
69  qint32 T_Forwarding() const{return m_T_Forwarding;}
74  ActionID_t actionID() const{return m_actionID;}
79  QByteArray encodedDENM() const{return m_encodedDENM;}
80 
81  /* Setters */
86  void setDENM(DENM_t d)
87  {
90  }
95  void setT_F_Validity(qint64 t){m_T_F_Validity = t;}
100  void setT_Forwarding(qint32 t){m_T_Forwarding = t;}
106  {
109  }
114  void setEncodedDENM(QByteArray e){m_encodedDENM = e;}
115 
116  /* Operators */
123 
124  /* API */
131  bool inRelevanceArea(ReferencePosition_t destination, RelevanceDistance_t *relevanceDistance);
132 
133 signals:
145  void DENMForwarded();
146 
147 private:
152  QByteArray m_encodedDENM;
155 public slots:
159  void endOfT_F_Validity();
163  void endOfT_Forwarding();
167  void execute();
168 
169 };
170 
171 #endif // DENMESSAGETABLEFORWARDING_H
void setEncodedDENM(QByteArray e)
setEncodedDENM Set the encoded DENM.
ActionID_t actionID() const
actionID DENM&#39;s ActionID getter.
bool inRelevanceArea(ReferencePosition_t destination, RelevanceDistance_t *relevanceDistance)
inRelevanceArea Check if the ITS-S is in relevance area.
DecentralizedEnvironmentalNotificationMessage_t denm
Definition: DENM.h:25
Destination area serialize.
StationID_t originatingStationID
Definition: ActionID.h:24
ItsPduHeader_t header
Definition: DENM.h:24
void endOfT_F_Validity()
endOfT_F_Validity Slot used when T_F_Validity expires.
SequenceNumber_t sequenceNumber
Definition: ActionID.h:25
QByteArray encodedDENM() const
encodedDENM Encoded DENM getter.
ActionID C++ style.
denMessageTableForwarding & operator=(const denMessageTableForwarding &other)
operator= Affectation operator.
qint32 T_Forwarding() const
T_Forwarding T_Forwarding getter.
Thread of a denMessageTableForwarding.
void endOfT_Forwarding()
endOfT_Forwarding Slot used when T_Forwarding expires.
denMessageTableForwarding(FakeGPSProvider *gps)
denMessageTableForwarding denMessageTableForwarding constructor.
void execute()
execute Execution of the timers.
DENM_t denm() const
denm DENM getter.
DecentralizedEnvironmentalNotificationMessage_t setDecentralizedEnvironmentalNotificationMessage(DecentralizedEnvironmentalNotificationMessage_t d)
setDecentralizedEnvironmentalNotificationMessage DecentralizedEnvironmentalNotificationMessage copy...
void DENMForwarded()
DENMForwarded Signal used when a DENM is forwarded.
void setActionID(ActionID_t a)
setActionID Set the DENM&#39;s ActionID.
long RelevanceDistance_t
ItsPduHeader_t setItsPduHeader(ItsPduHeader_t i)
setItsPduHeader ItsPduHeader copy.
void setT_F_Validity(qint64 t)
setT_F_Validity Set the T_F_Validity.
void T_ForwardingSignal(ActionID_t)
T_ForwardingSignal Signal when T_Forwarding expires.
Definition: DENM.h:23
void setT_Forwarding(qint32 t)
setT_Forwarding Set the T_Forwarding.
API used by the Facilities layer.
SequenceNumber_t setSequenceNumber(SequenceNumber_t s)
setSequenceNumber SequenceNumber copy.
void T_F_ValiditySignal(ActionID_t)
T_F_ValiditySignal Signal when T_F_Validity expires.
qint64 T_F_Validity() const
T_F_Validity T_F_Validity getter.
StationID_t setStationID(StationID_t s)
setStationID StationID copy.
GPS provider for testing purposes.
~denMessageTableForwarding()
~denMessageTableForwarding denMessageTableForwarding destructor.
denMessageTableForwardingThread * m_forwarding
void setDENM(DENM_t d)
setDENM Set DENM.
denMessageTableForwardingThread * m_validity