ITS
denMessageTableSource.h
Go to the documentation of this file.
1 
7 #ifndef denMessageTableSource_H
8 #define denMessageTableSource_H
9 
10 #include <QObject>
11 #include <QThread>
12 #include <QTimer>
13 #include <QElapsedTimer>
14 
15 #include <DestinationAreaData.h>
17 
18 #include <DENM.h>
19 #include <ActionIDData.h>
20 
21 #include <facilitiesApi.h>
22 
23 #define MAX_TIMEOUT 86400001
24 
25 class denMessageTableSource : public QObject
26 {
27  Q_OBJECT
28 
29 public:
30 
34  enum
35  {
40  };
41 
42  /* Public members */
46  QThread *m_thread;
48  /* Constructors */
57  explicit denMessageTableSource(const denMessageTableSource& messageTable);
62 
63  /* Getters */
68  DENM_t denm() const{return m_denm;}
73  int status() const{return m_status;}
83  qint64 T_O_Validity() const{return m_T_O_Validity;}
93  qint32 T_Repetition() const{return m_T_Repetition;}
98  quint8 trafficClass() const{return m_trafficClass;}
103  ActionID_t actionID() const{return m_actionID;}
109 
110  /* Setters */
115  void setStatus(int s){m_status = s;}
121  {
122  unsigned long l;
123  asn_INTEGER2ulong((INTEGER_t*)&t, &l);
124  memset(&m_timestamp, 0, sizeof m_timestamp);
126  }
131  void setDENM(DENM_t d)
132  {
135  }
140  void setT_O_Validity(qint64 t){m_T_O_Validity = t;}
150  void setT_Repetition(qint32 t){m_T_Repetition = t;}
155  void setTrafficClass(quint8 t){m_trafficClass = t;}
161  {
164  }
170 
171  /* Operators */
178 
179 signals:
191  void DENMrepeated();
192 
193 private:
196  int m_status;
204 public slots:
208  void endOfT_O_Validity();
216  void endOfT_Repetition();
220  void execute();
221 
222 };
223 
224 #endif // denMessageTableSource_H
quint8 trafficClass() const
trafficClass DENM&#39;s traffic class getter.
int asn_ulong2INTEGER(INTEGER_t *i, unsigned long l)
Definition: INTEGER.c:857
void setDestinationArea(DestinationAreaData d)
setDestinationArea DENM&#39;s destination area setter.
DecentralizedEnvironmentalNotificationMessage_t denm
Definition: DENM.h:25
Destination area serialize.
int status() const
status DENM&#39;s status getter.
void execute()
execute Execute the timers.
StationID_t originatingStationID
Definition: ActionID.h:24
qint64 T_O_Validity() const
T_O_Validity T_O_Validity getter.
void setT_Repetition(qint32 t)
setT_Repetition T_Repetition setter.
ItsPduHeader_t header
Definition: DENM.h:24
void setT_RepetitionDuration(qint32 t)
setT_RepetitionDuration T_RepetitionDuration setter.
void setActionID(ActionID_t a)
setActionID DENM&#39;s ActionID setter.
qint32 T_RepetitionDuration() const
T_RepetitionDuration T_RepetitionDuration getter.
SequenceNumber_t sequenceNumber
Definition: ActionID.h:25
ActionID C++ style.
DestinationAreaData m_destination
void setStatus(int s)
setStatus DENM&#39;s status setter.
denMessageTableSourceThread * m_repetitionDuration
int asn_INTEGER2ulong(const INTEGER_t *i, unsigned long *l)
Definition: INTEGER.c:825
void setT_O_Validity(qint64 t)
setT_O_Validity T_O_Validity setter.
void endOfT_Repetition()
T_Repetition Slot used when T_Repetition expires.
denMessageTableSource()
denMessageTableSource denMessageTableSource constructor.
void T_O_ValiditySignal(ActionID_t)
T_O_ValiditySignal Signal used when T_O_Validity expires.
DecentralizedEnvironmentalNotificationMessage_t setDecentralizedEnvironmentalNotificationMessage(DecentralizedEnvironmentalNotificationMessage_t d)
setDecentralizedEnvironmentalNotificationMessage DecentralizedEnvironmentalNotificationMessage copy...
ActionID_t actionID() const
actionID DENM&#39;s ActionID getter.
void endOfT_RepetitionDuration()
endOfT_RepetitionDuration Slot used when T_RepetitionDuration expires.
Thread of a denMessageTableSource.
ItsPduHeader_t setItsPduHeader(ItsPduHeader_t i)
setItsPduHeader ItsPduHeader copy.
void setTimestamp(TimestampIts_t t)
setTimestamp DENM&#39;s timestamp setter.
qint32 T_Repetition() const
T_Repetition T_Repetition getter.
Definition: DENM.h:23
denMessageTableSource & operator=(const denMessageTableSource &other)
operator= Affectation operator.
void endOfT_O_Validity()
endOfT_O_Validity Slot used when T_O_Validity expires.
API used by the Facilities layer.
SequenceNumber_t setSequenceNumber(SequenceNumber_t s)
setSequenceNumber SequenceNumber copy.
denMessageTableSourceThread * m_validity
StationID_t setStationID(StationID_t s)
setStationID StationID copy.
void DENMrepeated()
DENMrepeated Signal used when a DENM is repeated.
DENM_t denm() const
denm DENM getter.
void T_RepetitionSignal(ActionID_t)
T_RepetitionSignal Signal used when T_Repetition expires.
DestinationAreaData destinationArea() const
destinationArea DENM&#39;s destination area getter.
denMessageTableSourceThread * m_repetition
TimestampIts_t timestamp() const
timestamp DENM&#39;s timestamp getter.
void setDENM(DENM_t d)
setDENM DENM setter.
void setTrafficClass(quint8 t)
setTrafficClass DENM&#39;s traffic class setter.