ITS
UpperTester Class Reference

#include <UpperTester.h>

Inheritance diagram for UpperTester:
[legend]
Collaboration diagram for UpperTester:
[legend]

Public Slots

void readPendingDatagrams ()
 readPendingDatagrams Slot used when receiving a primitive. More...
 
void readInternalDatagrams ()
 readInternalDatagrams Slot used when receiving a result or an event indication. More...
 

Signals

void utInit ()
 utInit Signal used when UtInitlize is received. More...
 

Public Member Functions

 UpperTester ()
 UpperTester UpperTester constructor. More...
 
 UpperTester (Manager *man, FakeCANProvider *can, FakeGPSProvider *gps, GeoNet *gn, Facilities *fac, QMutex *mutex=0)
 UpperTester UpperTester initialization constructor. More...
 
 UpperTester (const UpperTester &other)
 UpperTester UpperTester copy constructor. More...
 

Private Types

enum  e_utShape { upperTester_circle, upperTester_rectangle, upperTester_ellipse }
 The e_utShape enum defines destaination area shapes. More...
 
typedef QByteArray(UpperTester::* UpperTesterPrimitive) (void)
 

Private Member Functions

QByteArray utInitialize ()
 utInitialize UtInitialize primitive. More...
 
QByteArray utInitializeResult (bool success)
 utInitializeResult UtInitialize result primitive. More...
 
QByteArray utChangePosition ()
 utChangePosition UtChangePosition primitive. More...
 
QByteArray utChangePositionResult (bool success)
 utChangePositionResult UtChangePosition result primitive. More...
 
QByteArray utChangePseudonym ()
 utChangePseudonym UtChangePseudonym primitive. More...
 
QByteArray utChangePseudonymResult (bool success)
 utChangePseudonymResult UtChangePseudonym result primitive. More...
 
QByteArray utCamTriggerResult (bool success)
 utCamTriggerResult UtCamTrigger result primitive. More...
 
QByteArray utChangeCurvature ()
 utChangeCurvature UtChangecurvature primitive. More...
 
QByteArray utChangeSpeed ()
 utChangeSpeed UtChangeSpeed primitive. More...
 
QByteArray utSetAccelerationControlStatus ()
 utSetAccelerationControlStatus UtSetAccelerationControlStatus primitive More...
 
QByteArray utSetExteriorLightsStatus ()
 utSetExteriorLightsStatus UtSetExteriorLightsStatus primitive. More...
 
QByteArray utChangeHeading ()
 utChangeHeading UtChangeHeading primitive. More...
 
QByteArray utSetDriveDirection ()
 utSetDriveDirection UtSetDriverDirection primitive. More...
 
QByteArray utChangeYawRate ()
 utChangeYawRate UtChangeYawRate primitive. More...
 
QByteArray utSetStationType ()
 utSetStationType UtSetStationType primitive. More...
 
QByteArray utSetVehicleRole ()
 utSetVehicleRole UtSetVehicleRole primitive. More...
 
QByteArray utSetEmbarkationStatus ()
 utSetEmbarkationStatus UtSetEmbarkationStatus primitive. More...
 
QByteArray utSetPtActivation ()
 utSetPtActivation UtSetPtActivation primitive. More...
 
QByteArray utSetDangerousGoods ()
 utSetDangerousGoods UtSetDangerousGoods primitive. More...
 
QByteArray utSetLightBarSiren ()
 utSetLightBarSiren UtSetLightBarSiren primitive. More...
 
QByteArray utDenmResult (UpperTesterPrimitives::e_DENMUpperTesterPrimitives messageType, bool success, ActionID_t actionID)
 utDenmResult Result of a DENM primitive. More...
 
QByteArray utDenmTriggerResult (bool success, ActionID_t actionID)
 utDenmTriggerResult UtDenmTriggerResult primitive. More...
 
QByteArray utDenmTrigger ()
 utDenmTrigger GenerateDenmEvent primitive. More...
 
QByteArray utDenmUpdateResult (bool success, ActionID_t actionID)
 utDenmUpdateResult UtDenmUpdateResult primitive. More...
 
QByteArray utDenmUpdate ()
 utDenmUpdate UpdateDenmEvent primitive. More...
 
QByteArray utDenmTerminateResult (bool success, ActionID_t actionID)
 utDenmTerminationResult UtDenmTerminationResult primitive. More...
 
QByteArray utDenmTerminate ()
 utDenmTerminate TerminateDenmEvent primitive. More...
 
QByteArray utGnTriggerResult (bool success)
 utGnTriggerResult utGnTriggerResult result primitive. More...
 
QByteArray sendGUC ()
 sendGUC GenerateGeoUnicast primitive. More...
 
QByteArray sendGBC ()
 sendGUC GenerateGeoBroadcast primitive. More...
 
QByteArray sendGAC ()
 sendGUC GenerateGeoAnycast primitive. More...
 
QByteArray sendSHB ()
 sendGUC GenerateSHB primitive. More...
 
QByteArray sendTSB ()
 sendGUC GenerateTSB primitive. More...
 

Private Attributes

QUdpSocket * m_readSocket
 
QUdpSocket * m_readEventIndicationSocket
 
QUdpSocket * m_writeSocket
 
QUdpSocket * m_denmSocket
 
QMutex * m_mutex
 
UpperTesterPrimitive m_req [NB_REQUEST]
 
QHostAddress m_lastSenderAddress
 
int m_lastSenderPort
 
Managerm_manager
 
FakeGPSProviderm_gpsProvider
 
FakeCANProviderm_canProvider
 
GeoNetm_geonet
 
Facilitiesm_facilities
 
ParameterConfigurationm_paramConf
 
ParameterUpperTesterm_paramUpperTester
 
quint16 m_appPort
 
QUdpSocket * m_appSocket
 

Detailed Description

Definition at line 26 of file UpperTester.h.

Member Typedef Documentation

◆ UpperTesterPrimitive

typedef QByteArray(UpperTester::* UpperTester::UpperTesterPrimitive) (void)
private

UpperTester primitive definition, i.e. a function returning a QByteArray and getting no argument.

Definition at line 30 of file UpperTester.h.

Member Enumeration Documentation

◆ e_utShape

enum UpperTester::e_utShape
private

The e_utShape enum defines destaination area shapes.

Enumerator
upperTester_circle 

Circle.

upperTester_rectangle 

Rectangle.

upperTester_ellipse 

Ellipse.

Definition at line 35 of file UpperTester.h.

Constructor & Destructor Documentation

◆ UpperTester() [1/3]

UpperTester::UpperTester ( )

UpperTester UpperTester constructor.

Definition at line 10 of file UpperTester.cpp.

◆ UpperTester() [2/3]

UpperTester::UpperTester ( Manager man,
FakeCANProvider can,
FakeGPSProvider gps,
GeoNet gn,
Facilities fac,
QMutex *  mutex = 0 
)

UpperTester UpperTester initialization constructor.

Parameters
manThe Manager.
canThe CAN bus.
gpsThe GPS.
gnThe N&T layer.
facThe Facilities layer.
mutexMutex used for initialization.

Definition at line 15 of file UpperTester.cpp.

References Manager::hashMap, m_appPort, m_appSocket, m_canProvider, m_facilities, m_geonet, m_gpsProvider, m_manager, m_mutex, m_paramConf, m_paramUpperTester, m_readEventIndicationSocket, m_readSocket, m_req, m_writeSocket, NB_REQUEST, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_changeCurvature, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_changeHeading, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_changeSpeed, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_changeYawRate, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setAccelerationControlStatus, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setDangerousGoods, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setDriveDirection, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setEmbarkationStatus, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setExteriorLightsStatus, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setLightBarSiren, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setPtActivation, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setStationType, UpperTesterPrimitives::PRIMITIVE_utCamTrigger_setVehicleRole, UpperTesterPrimitives::PRIMITIVE_utChangePosition, UpperTesterPrimitives::PRIMITIVE_utChangePseudonym, UpperTesterPrimitives::PRIMITIVE_utDenmTerminate, UpperTesterPrimitives::PRIMITIVE_utDenmTrigger, UpperTesterPrimitives::PRIMITIVE_utDenmUpdate, UpperTesterPrimitives::PRIMITIVE_utGnTrigger_geoAnycast, UpperTesterPrimitives::PRIMITIVE_utGnTrigger_geoBroadcast, UpperTesterPrimitives::PRIMITIVE_utGnTrigger_geoUnicast, UpperTesterPrimitives::PRIMITIVE_utGnTrigger_shb, UpperTesterPrimitives::PRIMITIVE_utGnTrigger_tsb, UpperTesterPrimitives::PRIMITIVE_utInitialize, privateFac, privateGeoNet, privateGPS, privateManager, readInternalDatagrams(), readPendingDatagrams(), sendGAC(), sendGBC(), sendGUC(), sendSHB(), sendTSB(), ParameterUpperTester::upperTesterEventIndicationListenPort(), ParameterUpperTester::upperTesterListenPort(), ParameterUpperTester::upperTesterWritePort(), utChangeCurvature(), utChangeHeading(), utChangePosition(), utChangePseudonym(), utChangeSpeed(), utChangeYawRate(), utDenmTerminate(), utDenmTrigger(), utDenmUpdate(), utInitialize(), utSetAccelerationControlStatus(), utSetDangerousGoods(), utSetDriveDirection(), utSetEmbarkationStatus(), utSetExteriorLightsStatus(), utSetLightBarSiren(), utSetPtActivation(), utSetStationType(), and utSetVehicleRole().

Here is the call graph for this function:

◆ UpperTester() [3/3]

UpperTester::UpperTester ( const UpperTester other)

UpperTester UpperTester copy constructor.

Parameters
otherThe Uppertester to copy.

Definition at line 81 of file UpperTester.cpp.

References m_canProvider, m_facilities, m_geonet, m_gpsProvider, and m_manager.

Member Function Documentation

◆ readInternalDatagrams

void UpperTester::readInternalDatagrams ( )
slot

readInternalDatagrams Slot used when receiving a result or an event indication.

Definition at line 118 of file UpperTester.cpp.

References m_lastSenderAddress, m_lastSenderPort, m_readEventIndicationSocket, and m_writeSocket.

Referenced by UpperTester().

Here is the caller graph for this function:

◆ readPendingDatagrams

void UpperTester::readPendingDatagrams ( )
slot

readPendingDatagrams Slot used when receiving a primitive.

Definition at line 90 of file UpperTester.cpp.

References m_lastSenderAddress, m_lastSenderPort, m_readSocket, m_req, m_writeSocket, print_hexa(), and privateRequest.

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendGAC()

QByteArray UpperTester::sendGAC ( )
private

sendGUC GenerateGeoAnycast primitive.

Returns
The result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 954 of file UpperTester.cpp.

References sniff_destinationArea_s::angle, LifeTime::base_100_s, LifeTime::base_10_s, LifeTime::base_1_s, LifeTime::base_50_ms, destinationAddress_s::choice, gnDataRequest_s::destinationAddress, destinationAddress_PR_DestinationArea, destinationAddress_s::destinationArea, gnDataRequest_s::destinationPort, gnDataRequest_s::destinationPortInfo, sniff_destinationArea_s::distanceA, sniff_destinationArea_s::distanceB, sniff_destinationArea_s::geoAreaPosLatitude, sniff_destinationArea_s::geoAreaPosLongitude, GeoNet::geonetError_send_gac_broadcast_bufferedPacket, GeoNet::geonetError_send_gac_unicast_bufferedPacket, GeoNet::geonetErrors, get_INT32(), get_UINT16(), get_UINT8(), gnDataRequest_s::gnCommunicationProfile, gnCommunicationProfile_ITS_G5A, CommonHeader::headerSubTypeGeoAnycast_circle, CommonHeader::headerSubTypeGeoAnycast_ellipse, CommonHeader::headerSubTypeGeoAnycast_rectangle, CommonHeader::headerType_geoAnycast, gnDataRequest_s::maximumHopLimit, gnDataRequest_s::maximumPacketLifeTime, gnDataRequest_s::maximumRepetitionTime, GeoNet::networkError_success, CommonHeader::nextHeaderType_any, gnDataRequest_s::packetTransportSubType, gnDataRequest_s::packetTransportType, gnDataRequest_s::payload, destinationAddress_s::present, privateGeoNet, privateRequest, gnDataRequest_s::repetitionInterval, GeoNet::send(), gnDataRequest_s::trafficClass, gnDataRequest_s::upperProtocolEntity, upperTester_circle, upperTester_ellipse, upperTester_rectangle, and utGnTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendGBC()

QByteArray UpperTester::sendGBC ( )
private

sendGUC GenerateGeoBroadcast primitive.

Returns
The result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 860 of file UpperTester.cpp.

References sniff_destinationArea_s::angle, LifeTime::base_100_s, LifeTime::base_10_s, LifeTime::base_1_s, LifeTime::base_50_ms, destinationAddress_s::choice, gnDataRequest_s::destinationAddress, destinationAddress_PR_DestinationArea, destinationAddress_s::destinationArea, gnDataRequest_s::destinationPort, gnDataRequest_s::destinationPortInfo, sniff_destinationArea_s::distanceA, sniff_destinationArea_s::distanceB, sniff_destinationArea_s::geoAreaPosLatitude, sniff_destinationArea_s::geoAreaPosLongitude, GeoNet::geonetError_send_gbc_bufferedPacket, GeoNet::geonetErrors, get_INT32(), get_UINT16(), get_UINT8(), gnDataRequest_s::gnCommunicationProfile, gnCommunicationProfile_ITS_G5A, CommonHeader::headerSubTypeGeoBroadcast_circle, CommonHeader::headerSubTypeGeoBroadcast_ellipse, CommonHeader::headerSubTypeGeoBroadcast_rectangle, CommonHeader::headerType_geoBroadcast, gnDataRequest_s::maximumHopLimit, gnDataRequest_s::maximumPacketLifeTime, gnDataRequest_s::maximumRepetitionTime, GeoNet::networkError_success, CommonHeader::nextHeaderType_any, gnDataRequest_s::packetTransportSubType, gnDataRequest_s::packetTransportType, gnDataRequest_s::payload, destinationAddress_s::present, privateGeoNet, privateRequest, gnDataRequest_s::repetitionInterval, GeoNet::send(), gnDataRequest_s::trafficClass, gnDataRequest_s::upperProtocolEntity, upperTester_circle, upperTester_ellipse, upperTester_rectangle, and utGnTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendGUC()

QByteArray UpperTester::sendGUC ( )
private

sendGUC GenerateGeoUnicast primitive.

Returns
The result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 787 of file UpperTester.cpp.

References LifeTime::base_100_s, LifeTime::base_10_s, LifeTime::base_1_s, LifeTime::base_50_ms, destinationAddress_s::choice, gnDataRequest_s::destinationAddress, destinationAddress_PR_MID, gnDataRequest_s::destinationPort, gnDataRequest_s::destinationPortInfo, GeoNet::geonetError_send_guc_bufferedPacket, GeoNet::geonetError_send_LSRequest_buffered, GeoNet::geonetErrors, get_UINT16(), get_UINT8(), destinationAddress_s::gnAddr, gnDataRequest_s::gnCommunicationProfile, gnCommunicationProfile_ITS_G5A, CommonHeader::headerSubTypeGeoUnicast_unspecified, CommonHeader::headerType_geoUnicast, gnDataRequest_s::maximumHopLimit, gnDataRequest_s::maximumPacketLifeTime, gnDataRequest_s::maximumRepetitionTime, sniff_gnAddr_s::mid, GeoNet::networkError_success, CommonHeader::nextHeaderType_any, gnDataRequest_s::packetTransportSubType, gnDataRequest_s::packetTransportType, gnDataRequest_s::payload, destinationAddress_s::present, privateGeoNet, privateRequest, gnDataRequest_s::repetitionInterval, GeoNet::send(), sniff_gnAddr_s::stationType_StationCountryCode, gnDataRequest_s::trafficClass, gnDataRequest_s::upperProtocolEntity, and utGnTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ sendSHB()

◆ sendTSB()

◆ utCamTriggerResult()

QByteArray UpperTester::utCamTriggerResult ( bool  success)
private

utCamTriggerResult UtCamTrigger result primitive.

Parameters
successSuccess of the primitive.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 631 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utCamTriggerResult.

Referenced by utChangeCurvature(), utChangeHeading(), utChangeSpeed(), utChangeYawRate(), utSetAccelerationControlStatus(), utSetDangerousGoods(), utSetDriveDirection(), utSetEmbarkationStatus(), utSetExteriorLightsStatus(), utSetLightBarSiren(), utSetPtActivation(), utSetStationType(), and utSetVehicleRole().

Here is the caller graph for this function:

◆ utChangeCurvature()

QByteArray UpperTester::utChangeCurvature ( )
private

utChangeCurvature UtChangecurvature primitive.

Returns
The result

This message is used to set the curvature of the ITS station. The curvature parameter is relative to the current curvature value.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 641 of file UpperTester.cpp.

References FakeCANProvider::changeCurvature(), get_INT16(), Manager::hashMap, privateManager, privateRequest, and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utChangeHeading()

QByteArray UpperTester::utChangeHeading ( )
private

utChangeHeading UtChangeHeading primitive.

Returns
The result

This message is used to change the heading of the ITS station. The heading parameter is relative to the current heading value.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 680 of file UpperTester.cpp.

References FakeGPSProvider::changeHeading(), get_UINT16(), privateGPS, privateRequest, and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utChangePosition()

QByteArray UpperTester::utChangePosition ( )
private

utChangePosition UtChangePosition primitive.

Returns
The result

This message is used to change the position of ITS station. The latitude, longitude and altitude parameters are relative to the current position of IUT.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 177 of file UpperTester.cpp.

References FakeGPSProvider::changePosition(), get_INT32(), get_INT8(), privateGPS, privateRequest, and utChangePositionResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utChangePositionResult()

QByteArray UpperTester::utChangePositionResult ( bool  success)
private

utChangePositionResult UtChangePosition result primitive.

Parameters
successSuccess of the primitive.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 217 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utChangePositionResult.

Referenced by utChangePosition().

Here is the caller graph for this function:

◆ utChangePseudonym()

QByteArray UpperTester::utChangePseudonym ( )
private

utChangePseudonym UtChangePseudonym primitive.

Returns
The result

This message is used to change the pseudonym of the ITS-S.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 191 of file UpperTester.cpp.

References FakeApplicationProvider::data(), Manager::hashMap, privateManager, FakeApplicationProvider::setStationID(), ParameterApplication::stationID(), and utChangePseudonymResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utChangePseudonymResult()

QByteArray UpperTester::utChangePseudonymResult ( bool  success)
private

utChangePseudonymResult UtChangePseudonym result primitive.

Parameters
successSuccess of the primitive.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 205 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utChangePseudonymResult.

Referenced by utChangePseudonym().

Here is the caller graph for this function:

◆ utChangeSpeed()

QByteArray UpperTester::utChangeSpeed ( )
private

utChangeSpeed UtChangeSpeed primitive.

Returns
The result

This message is used to change the speed of the ITS station. The vehicle speed is increased by the value of 'SpeedVariation' field.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 651 of file UpperTester.cpp.

References FakeGPSProvider::changeSpeed(), get_INT16(), privateGPS, privateRequest, and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utChangeYawRate()

QByteArray UpperTester::utChangeYawRate ( )
private

utChangeYawRate UtChangeYawRate primitive.

Returns
The result

This message is used to change the yaw rate of the ITS station. The yaw rate parameter is relative to the current yaw rate value.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 699 of file UpperTester.cpp.

References FakeCANProvider::changeYawRate(), get_INT16(), Manager::hashMap, privateManager, privateRequest, and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utDenmResult()

QByteArray UpperTester::utDenmResult ( UpperTesterPrimitives::e_DENMUpperTesterPrimitives  messageType,
bool  success,
ActionID_t  actionID 
)
private

utDenmResult Result of a DENM primitive.

Parameters
messageTypeMessage type of the primitive.
successThe success of the primitive execution.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 229 of file UpperTester.cpp.

References ActionID::originatingStationID, and ActionID::sequenceNumber.

Referenced by utDenmTerminateResult(), utDenmTriggerResult(), and utDenmUpdateResult().

Here is the caller graph for this function:

◆ utDenmTerminate()

◆ utDenmTerminateResult()

QByteArray UpperTester::utDenmTerminateResult ( bool  success,
ActionID_t  actionID 
)
private

utDenmTerminationResult UtDenmTerminationResult primitive.

Parameters
successThe success of the UtDenmTerminate primitive.
actionIDActionID of the terminated DENM.
Returns
The encoded result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 624 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utDenmTerminateResult, and utDenmResult().

Referenced by utDenmTerminate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utDenmTrigger()

QByteArray UpperTester::utDenmTrigger ( )
private

utDenmTrigger GenerateDenmEvent primitive.

Returns
The result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 246 of file UpperTester.cpp.

References AppDenmResultData::actionID(), asn_DEF_AlacarteContainer, asn_DEF_SituationContainer, asn_fprint(), ASN_STRUCT_FREE, CauseCode::causeCode, FakeGPSProvider::data(), asn_enc_rval_s::encoded, AppDenmTriggerData::eventDetectionTime(), SituationContainer::eventType, extractUInt(), asn_enc_rval_s::failed_type, AppDenmResultData::failureNotification(), Manager::hashMap, SituationContainer::informationQuality, m_appPort, m_appSocket, MSG_LENGTH, asn_TYPE_descriptor_s::name, ActionID::originatingStationID, privateGPS, privateManager, privateRequest, ParameterGPS::referencePosition(), AppDenmTriggerData::relevanceTrafficDirection(), AppDenmTriggerData::repetitionDuration(), AppDenmTriggerData::repetitionInterval(), ActionID::sequenceNumber, AppDenmTriggerData::setAlacarte(), AppDenmTriggerData::setDestinationArea(), AppDenmTriggerData::setEventDetectionTime(), AppDenmTriggerData::setEventPosition(), AppDenmTriggerData::setRelevanceDistance(), AppDenmTriggerData::setRelevanceTrafficDirection(), AppDenmTriggerData::setRepetitionDuration(), AppDenmTriggerData::setRepetitionInterval(), AppDenmTriggerData::setSituation(), AppDenmTriggerData::setTransmissionInterval(), AppDenmTriggerData::setValidityDuration(), CauseCode::subCauseCode, AppDenmTriggerData::toBin(), AppDenmTriggerData::transmissionInterval(), uper_decode_complete(), uper_encode_to_buffer(), utDenmTriggerResult(), and AppDenmTriggerData::validityDuration().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utDenmTriggerResult()

QByteArray UpperTester::utDenmTriggerResult ( bool  success,
ActionID_t  actionID 
)
private

utDenmTriggerResult UtDenmTriggerResult primitive.

Parameters
successThe success of the UtDenmTrigger primitive.
actionIDActionID of the triggered DENM.
Returns
The encoded result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 241 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utDenmTriggerResult, and utDenmResult().

Referenced by utDenmTrigger().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utDenmUpdate()

QByteArray UpperTester::utDenmUpdate ( )
private

utDenmUpdate UpdateDenmEvent primitive.

Returns
The result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 401 of file UpperTester.cpp.

References AppDenmUpdateData::actionID(), AppDenmResultData::actionID(), asn_DEF_AlacarteContainer, asn_DEF_SituationContainer, asn_fprint(), ASN_STRUCT_FREE, CauseCode::causeCode, asn_enc_rval_s::encoded, SituationContainer::eventType, AppDenmUpdateData::eventUpdateDetectionTime(), extractUInt(), AppDenmResultData::failureNotification(), Manager::hashMap, SituationContainer::informationQuality, m_appPort, m_appSocket, MSG_LENGTH, ActionID::originatingStationID, ActionIDData::originatingStationID(), privateManager, privateRequest, AppDenmUpdateData::relevanceDistance(), AppDenmUpdateData::relevanceTrafficDirection(), AppDenmUpdateData::repetitionDuration(), ActionID::sequenceNumber, ActionIDData::sequenceNumber(), AppDenmUpdateData::setActionID(), AppDenmUpdateData::setAlacarte(), AppDenmUpdateData::setDestinationArea(), AppDenmUpdateData::setEventUpdateDetectionTime(), AppDenmUpdateData::setRelevanceDistance(), AppDenmUpdateData::setRelevanceTrafficDirection(), AppDenmUpdateData::setRepetitionDuration(), AppDenmUpdateData::setSituation(), AppDenmUpdateData::setTrafficClass(), AppDenmUpdateData::setTransmissionInterval(), AppDenmUpdateData::setValidityDuration(), CauseCode::subCauseCode, AppDenmUpdateData::toBin(), TrafficClassData::toInt(), AppDenmUpdateData::trafficClass(), AppDenmUpdateData::transmissionInterval(), uper_decode_complete(), uper_encode_to_buffer(), utDenmUpdateResult(), and AppDenmUpdateData::validityDuration().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utDenmUpdateResult()

QByteArray UpperTester::utDenmUpdateResult ( bool  success,
ActionID_t  actionID 
)
private

utDenmUpdateResult UtDenmUpdateResult primitive.

Parameters
successThe success of the UtDenmUpdate primitive.
actionIDActionID of the updated DENM.
Returns
The encoded result.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 396 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utDenmUpdateResult, and utDenmResult().

Referenced by utDenmUpdate().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utGnTriggerResult()

QByteArray UpperTester::utGnTriggerResult ( bool  success)
private

utGnTriggerResult utGnTriggerResult result primitive.

Parameters
successSuccess of the primitive.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 777 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utGnTriggerResult.

Referenced by sendGAC(), sendGBC(), sendGUC(), sendSHB(), and sendTSB().

Here is the caller graph for this function:

◆ utInit

void UpperTester::utInit ( )
signal

utInit Signal used when UtInitlize is received.

◆ utInitialize()

QByteArray UpperTester::utInitialize ( )
private

utInitialize UtInitialize primitive.

Returns
The result

This message is used to request initialization of IUT implementation.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 131 of file UpperTester.cpp.

References Manager::hashMap, privateFac, privateGeoNet, privateManager, Manager::updateGnAddr(), Facilities::utInitialize(), and utInitializeResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utInitializeResult()

QByteArray UpperTester::utInitializeResult ( bool  success)
private

utInitializeResult UtInitialize result primitive.

Parameters
successSuccess of the primitive.
Returns
The encoded primitive.
See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 167 of file UpperTester.cpp.

References UpperTesterPrimitives::PRIMITIVE_utInitializeResult.

Referenced by utInitialize().

Here is the caller graph for this function:

◆ utSetAccelerationControlStatus()

QByteArray UpperTester::utSetAccelerationControlStatus ( )
private

utSetAccelerationControlStatus UtSetAccelerationControlStatus primitive

Returns
The result

This message is used to set acceleration control status of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 660 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeCANProvider::setAccelerationControl(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetDangerousGoods()

QByteArray UpperTester::utSetDangerousGoods ( )
private

utSetDangerousGoods UtSetDangerousGoods primitive.

Returns
The result

This message is used to set the dangerous good property of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 755 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeApplicationProvider::setDangerousGoods(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetDriveDirection()

QByteArray UpperTester::utSetDriveDirection ( )
private

utSetDriveDirection UtSetDriverDirection primitive.

Returns
The result

This message is used to change the direction of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 689 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeCANProvider::setDriveDirection(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetEmbarkationStatus()

QByteArray UpperTester::utSetEmbarkationStatus ( )
private

utSetEmbarkationStatus UtSetEmbarkationStatus primitive.

Returns
The result

This message is used to indicate whether the passenger embarkation is ongoing.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 729 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeApplicationProvider::setEmbarkationStatus(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetExteriorLightsStatus()

QByteArray UpperTester::utSetExteriorLightsStatus ( )
private

utSetExteriorLightsStatus UtSetExteriorLightsStatus primitive.

Returns
The result

This message is used to set the exterior lights status of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 670 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeCANProvider::setExteriorLights(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetLightBarSiren()

QByteArray UpperTester::utSetLightBarSiren ( )
private

utSetLightBarSiren UtSetLightBarSiren primitive.

Returns
The result

This message is used to set light and siren bar status of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 765 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeCANProvider::setLightBarSirenInUse(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetPtActivation()

QByteArray UpperTester::utSetPtActivation ( )
private

utSetPtActivation UtSetPtActivation primitive.

Returns
The result

This message is used to control traffic lights, barrier, etc.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 740 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeApplicationProvider::setPtActivation(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetStationType()

QByteArray UpperTester::utSetStationType ( )
private

utSetStationType UtSetStationType primitive.

Returns
The result

This message is used to change the type of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 709 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeApplicationProvider::setStationType(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ utSetVehicleRole()

QByteArray UpperTester::utSetVehicleRole ( )
private

utSetVehicleRole UtSetVehicleRole primitive.

Returns
The result

This message is used to change the vehicle role of the ITS station.

See also
ETSI TR 103 099 v1.3.1 (2015-07)

Definition at line 719 of file UpperTester.cpp.

References get_UINT8(), Manager::hashMap, privateManager, privateRequest, FakeApplicationProvider::setVehicleRole(), and utCamTriggerResult().

Referenced by UpperTester().

Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_appPort

quint16 UpperTester::m_appPort
private

Application port.

Definition at line 372 of file UpperTester.h.

Referenced by UpperTester(), utDenmTerminate(), utDenmTrigger(), and utDenmUpdate().

◆ m_appSocket

QUdpSocket* UpperTester::m_appSocket
private

Application socket.

Definition at line 373 of file UpperTester.h.

Referenced by UpperTester(), utDenmTerminate(), utDenmTrigger(), and utDenmUpdate().

◆ m_canProvider

FakeCANProvider* UpperTester::m_canProvider
private

CAN bus.

Definition at line 367 of file UpperTester.h.

Referenced by UpperTester().

◆ m_denmSocket

QUdpSocket* UpperTester::m_denmSocket
private

Socket used for DENM purpose.

Definition at line 359 of file UpperTester.h.

◆ m_facilities

Facilities* UpperTester::m_facilities
private

Facilities layer.

Definition at line 369 of file UpperTester.h.

Referenced by UpperTester().

◆ m_geonet

GeoNet* UpperTester::m_geonet
private

N&T layer.

Definition at line 368 of file UpperTester.h.

Referenced by UpperTester().

◆ m_gpsProvider

FakeGPSProvider* UpperTester::m_gpsProvider
private

GPS.

Definition at line 366 of file UpperTester.h.

Referenced by UpperTester().

◆ m_lastSenderAddress

QHostAddress UpperTester::m_lastSenderAddress
private

Last sender address.

Definition at line 362 of file UpperTester.h.

Referenced by readInternalDatagrams(), and readPendingDatagrams().

◆ m_lastSenderPort

int UpperTester::m_lastSenderPort
private

Last sender port.

Definition at line 363 of file UpperTester.h.

Referenced by readInternalDatagrams(), and readPendingDatagrams().

◆ m_manager

Manager* UpperTester::m_manager
private

Manager.

Definition at line 365 of file UpperTester.h.

Referenced by UpperTester().

◆ m_mutex

QMutex* UpperTester::m_mutex
private

Mutex used for initialization.

Definition at line 360 of file UpperTester.h.

Referenced by UpperTester().

◆ m_paramConf

ParameterConfiguration* UpperTester::m_paramConf
private

global configuration.

Definition at line 370 of file UpperTester.h.

Referenced by UpperTester().

◆ m_paramUpperTester

ParameterUpperTester* UpperTester::m_paramUpperTester
private

UpperTester configuration.

Definition at line 371 of file UpperTester.h.

Referenced by UpperTester().

◆ m_readEventIndicationSocket

QUdpSocket* UpperTester::m_readEventIndicationSocket
private

Socket listening for event indication.

Definition at line 357 of file UpperTester.h.

Referenced by readInternalDatagrams(), and UpperTester().

◆ m_readSocket

QUdpSocket* UpperTester::m_readSocket
private

Socket listening for primitive.

Definition at line 356 of file UpperTester.h.

Referenced by readPendingDatagrams(), and UpperTester().

◆ m_req

UpperTesterPrimitive UpperTester::m_req[NB_REQUEST]
private

Requests.

Definition at line 361 of file UpperTester.h.

Referenced by readPendingDatagrams(), and UpperTester().

◆ m_writeSocket

QUdpSocket* UpperTester::m_writeSocket
private

Socket to write the result.

Definition at line 358 of file UpperTester.h.

Referenced by readInternalDatagrams(), readPendingDatagrams(), and UpperTester().


The documentation for this class was generated from the following files: