Loading ttcn/GeoNetworking/LibItsGeoNetworking_Functions.ttcn +222 −201 Original line number Diff line number Diff line Loading @@ -321,6 +321,7 @@ module LibItsGeoNetworking_Functions { connect(p_nodeB:syncPort, self:syncPort); connect(p_nodeC:syncPort, self:syncPort); connect(self:syncPort, mtc:syncPort); activate(a_cf03Down(p_nodeB, p_nodeC)); //Initialze the IUT Loading Loading @@ -839,7 +840,6 @@ module LibItsGeoNetworking_Functions { repeat; } [] a_default() { } } Loading Loading @@ -892,18 +892,16 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoUnicast packet * @param p_senderLongPosVec Expected sender position vector * @param p_sourceLongPosVec Expected source position vector * @param p_destinationShortPosVec Expected destination position vector * @param p_seqNumber Expected sequence number */ altstep a_receiveGeoUnicast( in template (present) LongPosVector p_senderLongPosVec, in template (present) ShortPosVector p_destinationShortPosVec, in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoUnicastHeader( p_senderLongPosVec, [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwUnicastPacket( p_destinationShortPosVec, p_seqNumber)))) { } Loading @@ -915,7 +913,7 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoUnicastWithDestination(in template (present) ShortPosVector p_destinationShortPosVec) runs on ItsGeoNetworking { [] a_receiveGeoUnicast(?, p_destinationShortPosVec, ?) {} [] a_receiveGeoUnicast(p_destinationShortPosVec, ?) {} } /** Loading @@ -923,7 +921,7 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveAnyGeoUnicast() runs on ItsGeoNetworking { [] a_receiveGeoUnicast(?, ?, ?) {} [] a_receiveGeoUnicast(?, ?) {} } } // end geoGeoUnicastAltsteps Loading @@ -933,18 +931,15 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoBroadcast packet * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number */ altstep a_receiveGeoBroadcast( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeader( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacket( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber )))) { } Loading @@ -953,46 +948,42 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoBroadcast packet with specific Area and HopLimit * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number * @param p_broadcastArea Expected geoBroadcastArea * @param p_hopLimit Expected hop limit */ altstep a_receiveGeoBroadcastWithAreaWithHopLimit( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoBroadcastArea p_broadcastArea, in template (present) UInt8 p_hopLimit ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeaderWithAreaWithHopLimit( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_broadcastArea, p_broadcastArea ), -, p_hopLimit )))) { ))) { } } /** * @desc Receive GeoBroadcast packet for specific Geobroadcast Area * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number * @param p_broadcastArea Expected geoBroadcastArea */ altstep a_receiveGeoBroadcastWithArea( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoBroadcastArea p_broadcastArea ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeaderWithArea( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_broadcastArea )))) { Loading @@ -1015,9 +1006,8 @@ module LibItsGeoNetworking_Functions { in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeader( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacket( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber )))) { } Loading @@ -1033,19 +1023,19 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoAnycastWithAreaWithHopLimit( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoAnycastArea p_anycastArea, in template (present) UInt8 p_hopLimit ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeaderWithAreaWithHopLimit( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_anycastArea, p_anycastArea ), -, p_hopLimit )))) { ))) { } } Loading @@ -1058,14 +1048,12 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoAnycastWithArea( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoAnycastArea p_anycastArea ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeaderWithArea( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_anycastArea )))) { Loading @@ -1092,14 +1080,14 @@ module LibItsGeoNetworking_Functions { [] geoNetworkingPort.receive( mw_geoNwInd( mw_geoNwPdu( mw_lsRequestHeader( mw_geoNwLsRequestPacket( p_seqNumber, p_mid ) ) ) ) -> value v_msg { p_reqSrcPosVector := valueof(v_msg.msgIn.header.lsRequestHeader.srcPosVector); p_reqSrcPosVector := valueof(v_msg.msgIn.gnPacket.packet.extendedHeader.lsRequestHeader.srcPosVector); } } Loading Loading @@ -1128,11 +1116,10 @@ module LibItsGeoNetworking_Functions { var LongPosVector v_repDstPosVector; [] a_receiveLsRequest(p_reqSeqNumber, p_mid, v_repDstPosVector) { f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(m_geoNwPduNoPayload( m_lsReplyHeader( f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(m_geoNwPdu( m_geoNwLsReplyPacket( p_repSrcPosVector, f_longPosVector2ShortPosVector(v_repDstPosVector), p_repSenderPosVector, vc_localSeqNumber )))); } Loading Loading @@ -1218,9 +1205,8 @@ module LibItsGeoNetworking_Functions { f_sendGeoNetMessage( m_geoNwReq_linkLayerBroadcast( m_geoNwPduNoPayload( m_lsRequestHeader( p_reqSrcPosVector, m_geoNwPdu( m_geoNwLsRequestPacket( p_reqSrcPosVector, p_reqSeqNumber, p_gnAddress Loading @@ -1234,7 +1220,7 @@ module LibItsGeoNetworking_Functions { [] geoNetworkingPort.receive( mw_geoNwInd( mw_geoNwPdu( mw_lsReplyHeader( mw_geoNwLsReplyPacket( ?, mw_shortPosVectorPosition(f_longPosVector2ShortPosVector(valueof(p_reqSrcPosVector))) ) Loading @@ -1242,7 +1228,7 @@ module LibItsGeoNetworking_Functions { ) ) -> value v_msg { tc_ac.stop; p_repSrcPosVector := valueof(v_msg.msgIn.header.lsReplyHeader.srcPosVector); p_repSrcPosVector := valueof(v_msg.msgIn.gnPacket.packet.extendedHeader.lsRequestHeader.srcPosVector); v_ret := e_success; } } Loading Loading @@ -1406,11 +1392,47 @@ module LibItsGeoNetworking_Functions { */ function f_sendGeoNetMessage(in template (value) GeoNetworkingReq p_geoNetReq) runs on ItsGeoNetworking { geoNetworkingPort.send(p_geoNetReq); if (not (ischosen(p_geoNetReq.msgOut.header.shbHeader) or ischosen(p_geoNetReq.msgOut.header.beaconHeader))) { if (not (ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.shbHeader) or ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.beaconHeader))) { f_setLocalSequenceNumber(); } } /** * @desc Sends a GeoNetworking message with a payload and in case of an included sequence number in the message the * local sequence number will be increased by one. * @param p_geoNetReq The message to send. * @param p_payload The payload to include. */ function f_sendGeoNetMessageWithPayload( in template (value) GeoNetworkingReq p_geoNetReq, in template (value) Payload p_payload ) runs on ItsGeoNetworking { p_geoNetReq.msgOut.gnPacket.packet.payload := p_payload; geoNetworkingPort.send(p_geoNetReq); if (not (ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.shbHeader) or ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.beaconHeader))) { f_setLocalSequenceNumber(); } } /** * @desc Receive a GeoNetworking message with a payload and in case of an included sequence number in the message the * local sequence number will be increased by one. * @param p_geoNetInd The message to receive. * @param p_payload The payload to include. */ function f_receiveGeoNetMessageWithPayload( in template (present) GeoNetworkingInd p_geoNetInd, in template (present) Payload p_payload ) return template (present) GeoNetworkingInd { var template (present) GeoNetworkingInd v_geoNetInd := p_geoNetInd; v_geoNetInd.msgIn.gnPacket.packet.payload := p_payload; return v_geoNetInd; } /** * @desc Sets the value of the sequence number for the next event. */ Loading @@ -1432,7 +1454,6 @@ module LibItsGeoNetworking_Functions { * @return Number of messages to be sent */ function f_getMessageCount() return integer { return PX_MESSAGE_COUNT; } Loading ttcn/GeoNetworking/LibItsGeoNetworking_Pics.ttcn +7 −13 Original line number Diff line number Diff line Loading @@ -23,13 +23,7 @@ module LibItsGeoNetworking_Pics { */ modulepar GN_Address PICS_GN_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -40,12 +34,12 @@ module LibItsGeoNetworking_Pics { */ modulepar TypeOfAddress PICS_GN_LOCAL_ADDR_CONF_METHOD := e_initial; /** * @desc Type of ITS Station * @see ETSI TS 102 871-1 v1.1.1 A.40/4 */ modulepar StationTypeIdentifier PICS_GN_STATION_TYPE := e_vehicleStation; // /** // * @desc Type of ITS Station // * @see ETSI TS 102 871-1 v1.1.1 A.40/4 // */ // modulepar StationTypeIdentifier PICS_GN_STATION_TYPE := e_vehicleStation; // /** * @desc Minimum update frequency of local position vector (LPV) in ms * @see ETSI TS 102 871-1 v1.1.1 A.40/5 Loading ttcn/GeoNetworking/LibItsGeoNetworking_Pixits.ttcn +4 −28 Original line number Diff line number Diff line Loading @@ -23,13 +23,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_A_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -39,13 +33,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_B_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -55,13 +43,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_C_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -71,13 +53,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_D_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading ttcn/GeoNetworking/LibItsGeoNetworking_Templates.ttcn +871 −820 File changed.Preview size limit exceeded, changes collapsed. Show changes ttcn/GeoNetworking/LibItsGeoNetworking_TestSystem.ttcn +4 −4 Original line number Diff line number Diff line Loading @@ -126,7 +126,7 @@ module LibItsGeoNetworking_TestSystem { * @desc NT2 GeoNetworking Indication Primitive */ type record GeoNetworkingInd { GeoNetworkingPacket msgIn, GeoNetworkingPdu msgIn, MacAddress macDestinationAddress } Loading @@ -134,7 +134,7 @@ module LibItsGeoNetworking_TestSystem { * @desc NT2 GeoNetworking Request Primitive */ type record GeoNetworkingReq { GeoNetworkingPacket msgOut, GeoNetworkingPdu msgOut, MacAddress macDestinationAddress } Loading Loading
ttcn/GeoNetworking/LibItsGeoNetworking_Functions.ttcn +222 −201 Original line number Diff line number Diff line Loading @@ -321,6 +321,7 @@ module LibItsGeoNetworking_Functions { connect(p_nodeB:syncPort, self:syncPort); connect(p_nodeC:syncPort, self:syncPort); connect(self:syncPort, mtc:syncPort); activate(a_cf03Down(p_nodeB, p_nodeC)); //Initialze the IUT Loading Loading @@ -839,7 +840,6 @@ module LibItsGeoNetworking_Functions { repeat; } [] a_default() { } } Loading Loading @@ -892,18 +892,16 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoUnicast packet * @param p_senderLongPosVec Expected sender position vector * @param p_sourceLongPosVec Expected source position vector * @param p_destinationShortPosVec Expected destination position vector * @param p_seqNumber Expected sequence number */ altstep a_receiveGeoUnicast( in template (present) LongPosVector p_senderLongPosVec, in template (present) ShortPosVector p_destinationShortPosVec, in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoUnicastHeader( p_senderLongPosVec, [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwUnicastPacket( p_destinationShortPosVec, p_seqNumber)))) { } Loading @@ -915,7 +913,7 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoUnicastWithDestination(in template (present) ShortPosVector p_destinationShortPosVec) runs on ItsGeoNetworking { [] a_receiveGeoUnicast(?, p_destinationShortPosVec, ?) {} [] a_receiveGeoUnicast(p_destinationShortPosVec, ?) {} } /** Loading @@ -923,7 +921,7 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveAnyGeoUnicast() runs on ItsGeoNetworking { [] a_receiveGeoUnicast(?, ?, ?) {} [] a_receiveGeoUnicast(?, ?) {} } } // end geoGeoUnicastAltsteps Loading @@ -933,18 +931,15 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoBroadcast packet * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number */ altstep a_receiveGeoBroadcast( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeader( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacket( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber )))) { } Loading @@ -953,46 +948,42 @@ module LibItsGeoNetworking_Functions { /** * @desc Receive GeoBroadcast packet with specific Area and HopLimit * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number * @param p_broadcastArea Expected geoBroadcastArea * @param p_hopLimit Expected hop limit */ altstep a_receiveGeoBroadcastWithAreaWithHopLimit( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoBroadcastArea p_broadcastArea, in template (present) UInt8 p_hopLimit ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeaderWithAreaWithHopLimit( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_broadcastArea, p_broadcastArea ), -, p_hopLimit )))) { ))) { } } /** * @desc Receive GeoBroadcast packet for specific Geobroadcast Area * @param p_srcLongPosVec Expected source position vector * @param p_senderLongPosVec Expected sender position vector * @param p_seqNumber Expected sequence number * @param p_broadcastArea Expected geoBroadcastArea */ altstep a_receiveGeoBroadcastWithArea( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoBroadcastArea p_broadcastArea ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoBroadcastHeaderWithArea( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_broadcastArea )))) { Loading @@ -1015,9 +1006,8 @@ module LibItsGeoNetworking_Functions { in template (present) UInt16 p_seqNumber ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeader( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacket( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber )))) { } Loading @@ -1033,19 +1023,19 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoAnycastWithAreaWithHopLimit( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoAnycastArea p_anycastArea, in template (present) UInt8 p_hopLimit ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeaderWithAreaWithHopLimit( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_anycastArea, p_anycastArea ), -, p_hopLimit )))) { ))) { } } Loading @@ -1058,14 +1048,12 @@ module LibItsGeoNetworking_Functions { */ altstep a_receiveGeoAnycastWithArea( in template (present) LongPosVector p_srcLongPosVec, in template (present) LongPosVector p_senderLongPosVec, in template (present) UInt16 p_seqNumber, in template (present) GeoAnycastArea p_anycastArea ) runs on ItsGeoNetworking { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoAnycastHeaderWithArea( [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwAnycastPacketWithArea( p_srcLongPosVec, p_senderLongPosVec, p_seqNumber, p_anycastArea )))) { Loading @@ -1092,14 +1080,14 @@ module LibItsGeoNetworking_Functions { [] geoNetworkingPort.receive( mw_geoNwInd( mw_geoNwPdu( mw_lsRequestHeader( mw_geoNwLsRequestPacket( p_seqNumber, p_mid ) ) ) ) -> value v_msg { p_reqSrcPosVector := valueof(v_msg.msgIn.header.lsRequestHeader.srcPosVector); p_reqSrcPosVector := valueof(v_msg.msgIn.gnPacket.packet.extendedHeader.lsRequestHeader.srcPosVector); } } Loading Loading @@ -1128,11 +1116,10 @@ module LibItsGeoNetworking_Functions { var LongPosVector v_repDstPosVector; [] a_receiveLsRequest(p_reqSeqNumber, p_mid, v_repDstPosVector) { f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(m_geoNwPduNoPayload( m_lsReplyHeader( f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(m_geoNwPdu( m_geoNwLsReplyPacket( p_repSrcPosVector, f_longPosVector2ShortPosVector(v_repDstPosVector), p_repSenderPosVector, vc_localSeqNumber )))); } Loading Loading @@ -1218,9 +1205,8 @@ module LibItsGeoNetworking_Functions { f_sendGeoNetMessage( m_geoNwReq_linkLayerBroadcast( m_geoNwPduNoPayload( m_lsRequestHeader( p_reqSrcPosVector, m_geoNwPdu( m_geoNwLsRequestPacket( p_reqSrcPosVector, p_reqSeqNumber, p_gnAddress Loading @@ -1234,7 +1220,7 @@ module LibItsGeoNetworking_Functions { [] geoNetworkingPort.receive( mw_geoNwInd( mw_geoNwPdu( mw_lsReplyHeader( mw_geoNwLsReplyPacket( ?, mw_shortPosVectorPosition(f_longPosVector2ShortPosVector(valueof(p_reqSrcPosVector))) ) Loading @@ -1242,7 +1228,7 @@ module LibItsGeoNetworking_Functions { ) ) -> value v_msg { tc_ac.stop; p_repSrcPosVector := valueof(v_msg.msgIn.header.lsReplyHeader.srcPosVector); p_repSrcPosVector := valueof(v_msg.msgIn.gnPacket.packet.extendedHeader.lsRequestHeader.srcPosVector); v_ret := e_success; } } Loading Loading @@ -1406,11 +1392,47 @@ module LibItsGeoNetworking_Functions { */ function f_sendGeoNetMessage(in template (value) GeoNetworkingReq p_geoNetReq) runs on ItsGeoNetworking { geoNetworkingPort.send(p_geoNetReq); if (not (ischosen(p_geoNetReq.msgOut.header.shbHeader) or ischosen(p_geoNetReq.msgOut.header.beaconHeader))) { if (not (ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.shbHeader) or ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.beaconHeader))) { f_setLocalSequenceNumber(); } } /** * @desc Sends a GeoNetworking message with a payload and in case of an included sequence number in the message the * local sequence number will be increased by one. * @param p_geoNetReq The message to send. * @param p_payload The payload to include. */ function f_sendGeoNetMessageWithPayload( in template (value) GeoNetworkingReq p_geoNetReq, in template (value) Payload p_payload ) runs on ItsGeoNetworking { p_geoNetReq.msgOut.gnPacket.packet.payload := p_payload; geoNetworkingPort.send(p_geoNetReq); if (not (ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.shbHeader) or ischosen(p_geoNetReq.msgOut.gnPacket.packet.extendedHeader.beaconHeader))) { f_setLocalSequenceNumber(); } } /** * @desc Receive a GeoNetworking message with a payload and in case of an included sequence number in the message the * local sequence number will be increased by one. * @param p_geoNetInd The message to receive. * @param p_payload The payload to include. */ function f_receiveGeoNetMessageWithPayload( in template (present) GeoNetworkingInd p_geoNetInd, in template (present) Payload p_payload ) return template (present) GeoNetworkingInd { var template (present) GeoNetworkingInd v_geoNetInd := p_geoNetInd; v_geoNetInd.msgIn.gnPacket.packet.payload := p_payload; return v_geoNetInd; } /** * @desc Sets the value of the sequence number for the next event. */ Loading @@ -1432,7 +1454,6 @@ module LibItsGeoNetworking_Functions { * @return Number of messages to be sent */ function f_getMessageCount() return integer { return PX_MESSAGE_COUNT; } Loading
ttcn/GeoNetworking/LibItsGeoNetworking_Pics.ttcn +7 −13 Original line number Diff line number Diff line Loading @@ -23,13 +23,7 @@ module LibItsGeoNetworking_Pics { */ modulepar GN_Address PICS_GN_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -40,12 +34,12 @@ module LibItsGeoNetworking_Pics { */ modulepar TypeOfAddress PICS_GN_LOCAL_ADDR_CONF_METHOD := e_initial; /** * @desc Type of ITS Station * @see ETSI TS 102 871-1 v1.1.1 A.40/4 */ modulepar StationTypeIdentifier PICS_GN_STATION_TYPE := e_vehicleStation; // /** // * @desc Type of ITS Station // * @see ETSI TS 102 871-1 v1.1.1 A.40/4 // */ // modulepar StationTypeIdentifier PICS_GN_STATION_TYPE := e_vehicleStation; // /** * @desc Minimum update frequency of local position vector (LPV) in ms * @see ETSI TS 102 871-1 v1.1.1 A.40/5 Loading
ttcn/GeoNetworking/LibItsGeoNetworking_Pixits.ttcn +4 −28 Original line number Diff line number Diff line Loading @@ -23,13 +23,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_A_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -39,13 +33,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_B_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -55,13 +43,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_C_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading @@ -71,13 +53,7 @@ module LibItsGeoNetworking_Pixits { */ modulepar GN_Address PX_TS_NODE_D_LOCAL_GN_ADDR := { typeOfAddress := e_manual, stationType := { vehicleStation := { stationType := e_vehicleStation, vsKind := e_car } }, stationSubType := e_private, stationType := e_passengerCar, stationCountryCode := c_uInt10Zero, mid := c_6ZeroBytes }; Loading
ttcn/GeoNetworking/LibItsGeoNetworking_Templates.ttcn +871 −820 File changed.Preview size limit exceeded, changes collapsed. Show changes
ttcn/GeoNetworking/LibItsGeoNetworking_TestSystem.ttcn +4 −4 Original line number Diff line number Diff line Loading @@ -126,7 +126,7 @@ module LibItsGeoNetworking_TestSystem { * @desc NT2 GeoNetworking Indication Primitive */ type record GeoNetworkingInd { GeoNetworkingPacket msgIn, GeoNetworkingPdu msgIn, MacAddress macDestinationAddress } Loading @@ -134,7 +134,7 @@ module LibItsGeoNetworking_TestSystem { * @desc NT2 GeoNetworking Request Primitive */ type record GeoNetworkingReq { GeoNetworkingPacket msgOut, GeoNetworkingPdu msgOut, MacAddress macDestinationAddress } Loading