/** * @author ETSI / STF449 / STF484 / STF517 * @version $URL$ * $Id$ * @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 certicicates { 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 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 } /** * @desc Upper Tester result message of request of triggering of an event at IUT */ type record UtDenmTriggerResult { boolean result, ActionID actionId } /** * @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 } /** * @desc Upper Tester result message of an update request of an event on DENM IUT */ type record UtDenmUpdateResult { boolean result, ActionID actionId } /** * @desc Upper Tester message to request the termination of an event at IUT */ type record UtDenmTermination { ActionID actionId } //FIXME RGY As discussed, boolean result types are replaced by a top-level union of the results /** * @desc Upper Tester response message for all DENM results */ type union UtDENMResults { boolean utDenmTerminationResult } /** * @desc Upper Tester result message of termination of an event on DENM IUT */ //FIXME RGY As discussed, boolean result types are replaced by a top-level union type // type boolean UtDenmTerminationResult; type UtDENMResults.utDenmTerminationResult UtDenmTerminationResult; /** * @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" } } with { encode "LibItsDenm" }