/** * @author ETSI / STF449 / STF484 / STF517 * @version $Url: https://oldforge.etsi.org/svn/LibIts/tags/20170222_STF527_Final/ttcn/DENM/LibItsDenm_TestSystem.ttcn $ * $Id: LibItsDenm_TestSystem.ttcn 1318 2017-01-26 10:20:53Z filatov $ * @desc Test System module for ITS DENM * @copyright ETSI Copyright Notification * No part may be reproduced except as authorized by written permission. * The copyright and the foregoing restriction extend to reproduction in all media. * All rights reserved. * */ module LibItsDenm_TestSystem { // LibCommon // import from LibCommon_Time {modulepar all}; // import from LibCommon_Sync all; import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts import from DENM_PDU_Descriptions language "ASN.1:1997" all; import from ITS_Container language "ASN.1:1997" all; // LibItsCommon import from LibItsCommon_TestSystem all; import from LibItsCommon_TypesAndValues all; // LibItsDenm import from LibItsDenm_TypesAndValues all; group portDefinitions { /** * @desc Adapter control port */ type port AdapterControlPort message { out AcGnssPrimitive, AcSecPrimitive; in AdapterControlResults } // end AdapterControlPort /** * @desc Upper Tester port */ type port UpperTesterPort message { out UtDenmInitialize, UtDenmTrigger, UtDenmUpdate, UtDenmTermination, UtDenmChangePosition, UtDenmChangePseudonym; in UtDenmResults, UtDenmEventInd; } // end UpperTesterPort } // end portDefinitions group interfacePorts { group facilityPorts { group fa1Ports { /** * @desc FA1 DENM Port (DENM/BTP/GeoNet/G5) */ type port DenmPort message { in DenmInd; out DenmReq; } // End of port DenmPort } // End of group fa1Ports } // End of group facilityPorts } // End of group interfacePorts group componentDefinitions { /** * @desc ITS System Adapter */ type component ItsDenmSystem { port UpperTesterPort utPort; port AdapterControlPort acPort; // FA1 ports port DenmPort denmPort; } // end component ItsAdapter } // End of group componentDefinitions /** * @desc Test component for ITS Facility layer */ type component ItsDenm extends ItsBaseComponent { port AdapterControlPort acPort; port UpperTesterPort utPort; // FA1 ports port DenmPort denmPort; //timers //component variables //default var default vc_default := null; //global variables var SequenceNumber vc_sequenceNo := 0; var boolean vc_denmReceived := false; var UtDenmEventIndList vc_utEvents := {}; var UtDenmActionIDList vc_utActionIDs := {}; var boolean vc_utDefaultActive := true; var boolean vc_denmDefaultActive := true; } // End of component ItsDenm group facilityPrimitives { group fa1Primitives { /** * @desc FA1 DENM Indication Primitive * * @member denmMsg */ type record DenmInd { DENM msgIn, UInt64 recvTime optional, UInt8 gnNextHeader optional, UInt8 gnHeaderType optional, UInt8 gnHeaderSubtype optional, UInt32 gnLifetime optional, UInt8 gnTrafficClass optional, UInt16 btpDestinationPort optional, UInt16 btpInfo optional, Bit256 ssp optional, UInt32 its_aid optional } with { encode (msgIn) "PER" } /** * @desc FA1 DENM Request Primitive * * @member denmMsg */ type record DenmReq { DENM msgOut } with { encode (msgOut) "PER" } } // End of group fa1Primitives } // End of group facilityPrimitives with { variant "" encode "LibIts_Interface" } // end interfacePrimitives } // End of module LibItsDenm_TestSystem