ITS
AppDenmUpdateData.h
Go to the documentation of this file.
1 
5 #ifndef APPDENMUPDATEDATA_H
6 #define APPDENMUPDATEDATA_H
7 
8 #include <QByteArray>
9 
10 #include <ActionIDData.h>
11 #include <ReferencePositionData.h>
12 #include <DestinationAreaData.h>
13 #include <TrafficClassData.h>
14 #include <LifeTimeData.h>
15 
16 #include <ParameterDENM.h>
17 
18 #include <EventPoint.h>
19 #include <PathHistory.h>
20 #include <PosPillar.h>
21 #include <StationType.h>
22 #include <ReferencePosition.h>
23 #include <ActionID.h>
24 
26 {
27 public:
32  AppDenmUpdateData(ParameterDENM *paramDENM);
37  AppDenmUpdateData(QByteArray datagram);
38 
43  {
55 
56 
57  /* Getters */
62  ActionIDData actionID() const{return m_actionID;}
77  quint32* validityDuration() const{return m_validityDuration;}
82  quint32* repetitionDuration() const{return m_repetitionDuration;}
87  quint16* transmissionDuration() const{return m_transmissionDuration;}
92  quint16* transmissionInterval() const{return m_transmissionInterval;}
97  QByteArray* situation() const{return m_situation;}
102  QByteArray* location() const{return m_location;}
107  QByteArray* alacarte() const{return m_alacarte;}
112  quint8* relevanceDistance() const{return m_relevanceDistance;}
132  LifeTimeData* lifeTime() const{return m_lifeTime;}
137  quint8* maximumHopLimit() const{return m_maximumHopLimit;}
138 
139  /* Setters */
159  void setValidityDuration(quint32 v){if(!m_validityDuration)m_validityDuration = (quint32*)calloc(1, sizeof *m_validityDuration); *m_validityDuration = v;}
179  void setSituation(QByteArray s){m_situation = new QByteArray(s);}
184  void setLocation(QByteArray l){m_location = new QByteArray(l);}
189  void setAlacarte(QByteArray a){m_alacarte = new QByteArray(a);}
210 
215  QByteArray toBin();
220  quint16 getOptions();
221 
222 private:
230  QByteArray *m_situation;
231  QByteArray *m_location;
232  QByteArray *m_alacarte;
249 };
250 
251 #endif // APPDENMUPDATEDATA_H
TrafficClassData * trafficClass() const
trafficClass Traffic class getter.
DENM configuration initializer.
ReferencePositionData eventPosition() const
eventPosition Event position getter.
void setLocation(QByteArray l)
setLocation Location container setter.
quint32 * validityDuration() const
validityDuration Validity duration getter.
DestinationAreaData m_destinationArea
PathHistory_t m_locationTraces[7]
Destination area serialize.
LifeTimeData * lifeTime() const
lifeTime Life time getter.
void setActionID(ActionIDData a)
setActionID ActionID setter
quint32 * m_validityDuration
ParameterDENM * m_paramDENM
quint16 * transmissionInterval() const
transmissionInterval Transmission interval getter.
EventPoint_t m_situationEventHistory[23]
void setEventPosition(ReferencePositionData e)
setEventPosition Event position setter.
PathPoint_t m_locationTracesPathHistory[7][40]
AppDenmUpdateData(ParameterDENM *paramDENM)
AppDenmUpdateData AppDenmUpdateData constructor.
void setEventUpdateDetectionTime(quint64 e)
setEventUpdateDetectionTime Detection time setter.
quint16 * transmissionDuration() const
transmissionDuration Transmission duration getter.
TrafficClass serializer.
quint16 * m_transmissionInterval
quint8 * m_relevanceTrafficDirection
ReferencePosition_t m_roadWorksRecommendedPath[40]
ReferencePosition serializer.
QByteArray * situation() const
situation Situation container getter.
ActionIDData actionID() const
actionID ActionID getter.
quint32 * repetitionDuration() const
repetitionDuration Repetition duration getter.
long StationType_t
Definition: StationType.h:38
QByteArray * m_situation
LifeTimeData * m_lifeTime
AppDenmUpdateData_enum
The e_AppDenmUpdateData defines the options positions.
QByteArray toBin()
toBin Byte array encoder of the AppDenmUpdate.
quint32 * m_repetitionDuration
void setSituation(QByteArray s)
setSituation Situation container setter.
ActionID C++ style.
ActionIDData m_actionID
Life time serializer.
TrafficClassData * m_trafficClass
QByteArray * location() const
location Location container getter.
StationType_t m_roadWorksRestriction[3]
quint64 m_eventUpdateDetectionTime
quint16 * m_transmissionDuration
long PosPillar_t
Definition: PosPillar.h:27
void setAlacarte(QByteArray a)
setAlacarte Alacarte container setter.
void setRepetitionDuration(quint32 r)
setRepetitionDuration Repetition duration setter.
quint8 * relevanceTrafficDirection() const
relevanceTrafficDirection Relevance traffic direction getter.
DestinationAreaData destinationArea() const
destinationArea Destination area getter.
void setTransmissionDuration(quint16 t)
setTransmissionDuration Transmission duration setter.
QByteArray * alacarte() const
alacarte Alacarte container getter.
PosPillar_t m_impactReductionPositionOfPillars[3]
quint64 eventUpdateDetectionTime() const
eventUpdateDetectionTime Detection time getter.
enum AppDenmUpdateData::AppDenmUpdateData_enum e_AppDenmUpdateData
The e_AppDenmUpdateData defines the options positions.
void setTransmissionInterval(quint16 t)
setTransmissionInterval Transmission interval setter.
quint16 getOptions()
getOptions Generate the options bytes.
void setDestinationArea(DestinationAreaData d)
setDestinationArea Destination area setter.
void setRelevanceTrafficDirection(quint8 r)
setRelevanceTrafficDirection Relevance traffic direction setter.
QByteArray * m_location
ReferencePositionData m_eventPosition
quint8 * maximumHopLimit() const
maximumHopLimit Maximum hop limit getter.
void setTrafficClass(TrafficClassData t)
setTrafficClass Traffic class setter.
quint8 * relevanceDistance() const
relevanceDistance Relevance distance getter.
void setValidityDuration(quint32 v)
setValidityDuration Validity duration setter.
QByteArray * m_alacarte
void setRelevanceDistance(quint8 r)
setRelevanceDistance Relevance distance setter.
ActionID_t m_roadWorksReferenceDenms[8]