/** * @author ETSI / STF449 / STF484 / STF517 * @version $Url: https://oldforge.etsi.org/svn/LibIts/tags/20170222_STF527_Final/ttcn/DENM/LibItsDenm_TypesAndValues.ttcn $ * $Id: LibItsDenm_TypesAndValues.ttcn 1318 2017-01-26 10:20:53Z filatov $ * @desc Module containing type and value definitions for DENM * */ module LibItsDenm_TypesAndValues { //LibCommon import from LibCommon_BasicTypesAndValues all; // LibIts import from DENM_PDU_Descriptions language "ASN.1:1997" all; import from ITS_Container language "ASN.1:1997" all; group actionTypes { /** * @desc Indication of whether event cancellation has to be raised by the test system or iut */ type enumerated Trigger { e_ets(0), e_iut(1) } } // end group actionTypes group otherTypes { /** * @desc List of SituationContainers used in behaviours */ type record of SituationContainer SituationContainerList; /** * @desc List of ActionIDs used in behaviours */ type record of ActionID ActionIDList; } group denmConstants { const ValidityDuration c_duration_2sec := 2; const ValidityDuration c_duration_5sec := 5; const ValidityDuration c_duration_10sec := 10; const TransmissionInterval c_interval_1sec := 1000; const TransmissionInterval c_interval_2sec := 2000; const TransmissionInterval c_interval_4sec := 4000; const TransmissionInterval c_interval_5sec := 5000; const TransmissionInterval c_interval_10sec := 10000; } // end group denmConstants group certificates { const charstring PX_CERT_IUT_DENM_01 := "CERT_IUT_DENM_BO_01_AT"; const charstring PX_CERT_IUT_DENM_02 := "CERT_IUT_DENM_BO_02_AT"; } group utPrimitives { /** * @desc Upper Tester message to initialize IUT * @member hashedId8 In case of secured mode set, hashedId8 indicate which certificate the IUT shall use */ type record UtDenmInitialize { Oct8 hashedId8 } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester results message of the DENM IUT * @member utDenmInitialize - * @member utDenmTriggerResult - * @member utDenmUpdateResult, - * @member utDenmChangePositionResult - * @member utDenmChangePseudonymResult - */ type union UtDenmResults { boolean utDenmInitializeResult, UtDenmTriggerResult utDenmTriggerResult, UtDenmUpdateResult utDenmUpdateResult, boolean utDenmTerminationResult, boolean utDenmChangePositionResult, boolean utDenmChangePseudonymResult } with { variant "" } // End of type UtDenmResults /** * @desc Upper Tester message to request triggering of an event at IUT */ type record UtDenmTrigger { TimestampIts detectionTime, ValidityDuration validityDuration optional, ValidityDuration repetitionDuration optional, SituationContainer situation, RelevanceDistance relevanceDistance, RelevanceTrafficDirection relevanceTrafficDirection, TransmissionInterval transmissionInterval optional, TransmissionInterval repetitionInterval optional, AlacarteContainer alacarte optional } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester result message of request of triggering of an event at IUT */ type record UtDenmTriggerResult { boolean result, ActionID actionId } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester message to update an event at IUT */ type record UtDenmUpdate { ActionID actionId, TimestampIts detectionTime, ValidityDuration validityDuration optional, SituationContainer situation optional, LocationContainer location optional, RelevanceDistance relevanceDistance optional, RelevanceTrafficDirection relevanceTrafficDirection optional, TransmissionInterval transmissionInterval optional, TransmissionInterval repetitionInterval optional, AlacarteContainer alacarte optional } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester result message of an update request of an event on DENM IUT */ type record UtDenmUpdateResult { boolean result, ActionID actionId } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester message to request the termination of an event at IUT */ type record UtDenmTermination { ActionID actionId } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester message to change the position of IUT. Values a relatives */ type record UtDenmChangePosition { Int32 latitude, Int32 longitude, Int32 elevation } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester message to change the pseudonym of the DENM IUT */ type record UtDenmChangePseudonym { // empty on purpose } with { variant "FIELDORDER(msb)" } /** * @desc Upper Tester message to check event/status on DENM IUT */ type record UtDenmEventInd { DENM denMsg } with { encode (denMsg) "LibItsDenm_asn1" } /** * @desc List of Upper Tester messages to check event/status on DENM IUT */ type record of UtDenmEventInd UtDenmEventIndList; /** * @desc List of ActionID received in response to the Upper Tester triggered messages */ type record of ActionID UtDenmActionIDList; } with { encode "UpperTester" variant "" } } with { encode "LibItsDenm" }