Index: AtsCAM/ItsCam_TpFunctions.ttcn =================================================================== --- AtsCAM/ItsCam_TpFunctions.ttcn (revision 2639) +++ AtsCAM/ItsCam_TpFunctions.ttcn (working copy) @@ -30,6 +30,7 @@ import from LibItsCommon_Templates all; import from LibItsCommon_Functions all; import from LibItsCommon_Pixits all; + import from LibItsCommon_ASN1_NamedNumbers all; // LibItsCam import from LibItsCam_TestSystem all; @@ -406,7 +407,7 @@ } for (v_cnt:=0; v_cnt value v_msgInd { +//FIXME RGY the received value stored in the template variable too + vt_msgInd:= v_msgInd tc_ac.stop; log("*** " & testcasename() & ": PASS: Pre-conditions: GBC message correctly forwarded to area center ***"); f_selfOrClientSyncAndVerdict(c_prDone, e_success); @@ -8533,10 +8546,11 @@ } // Test Body - v_msgInd.msgIn.basicHeader.routerHopLimit := ?; +//FIXME RGY for the AnyValue the template varibale is used + vt_msgInd.msgIn.basicHeader.routerHopLimit := ?; tc_noac.start; alt { - [] geoNetworkingPort.receive(v_msgInd) { + [] geoNetworkingPort.receive(vt_msgInd) { tc_noac.stop; log("*** " & testcasename() & ": FAIL: GBC message re-forwarded to area center ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_error); @@ -8563,7 +8577,7 @@ // Preamble f_prNeighbour(); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -8574,7 +8588,7 @@ c_defaultHopLimit ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -8615,7 +8629,7 @@ // Test Body // send geoBroadcast for second time (same source + same seq Nr + lower RHL) f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -8626,7 +8640,7 @@ c_defaultHopLimit - 1 ) ) - ); + )); tc_noac.start; alt { @@ -8703,7 +8717,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeB, @@ -8715,7 +8729,7 @@ c_defaultHopLimit ) ) - ); + )); tc_ac.start; alt { @@ -8830,7 +8844,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeB, @@ -8841,7 +8855,7 @@ c_hopLimit1 ) ) - ); + )); tc_noac.start; alt { @@ -8933,7 +8947,7 @@ f_getGeoBroadcastArea(c_area1) ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -9019,7 +9033,7 @@ -, c_defaultHopLimit ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(valueof(v_gnPacket))); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); // IUT should also rebroadcast the packet. Get ready tc_ac.start; @@ -9039,14 +9053,14 @@ f_sleep(PX_TAC); - v_sentRawPayload := f_adaptPayloadForUtInd_m(valueof(v_gnPacket.gnPacket.packet.payload)); - for(i:=0; i < lengthof(vc_utInds) and not match(vc_utInds[i].rawPayload, v_sentRawPayload); i:=i+1) { + v_sentRawPayload := f_adaptPayloadForUtInd_m(valueof(v_gnPacket.gnPacket.packet.payload)); + for(i:=0; i < lengthof(vc_utInds) and not match(vc_utInds[i].rawPayload, v_sentRawPayload); i:=i+1) { // empty on purpose } if(i < lengthof(vc_utInds)) { log("*** " & testcasename() & ": PASS: GN was transmitted to upper layer ***"); - //flush received upper indications - vc_utInds := {}; + //flush received upper indications + vc_utInds := {}; f_selfOrClientSyncAndVerdict(c_prDone, e_success); } else { @@ -9078,7 +9092,9 @@ // Local variables var LongPosVector v_longPosVectorNodeB := f_getPosition(c_compNodeB); - var template (value) GeoNetworkingInd v_msgInd; +//FIXME RGY variable shall not be of template type, because a message is stored into it +// var template (value) GeoNetworkingInd v_msgInd; + var GeoNetworkingInd v_msgInd; var integer i; // Preamble @@ -9104,7 +9120,7 @@ // Test Body v_msgInd.msgIn.basicHeader.routerHopLimit := valueof(v_msgInd.msgIn.basicHeader.routerHopLimit) / 2; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn))); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -9149,7 +9165,7 @@ f_getGeoBroadcastArea(c_area2) ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -9383,7 +9399,7 @@ p_distanceTooBig ); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -9392,7 +9408,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -9569,7 +9585,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -9578,7 +9594,7 @@ ) ) ) - ); + )); tc_ac.start; alt { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( @@ -9730,7 +9746,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -9739,7 +9755,7 @@ ) ) ) - ); + )); tc_ac.start; alt { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( @@ -9937,7 +9953,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwTsbPacket( vc_localSeqNumber, @@ -9947,7 +9963,7 @@ c_defaultHopLimit ) ) - ); + )); tc_ac.start; alt { @@ -10075,7 +10091,7 @@ c_defaultHopLimit ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(valueof(v_gnPacket))); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); v_gnPacket.basicHeader.routerHopLimit := ?; tc_noac.start; alt { @@ -10134,7 +10150,9 @@ // Local variables var LongPosVector v_longPosVectorNodeB := f_getPosition(c_compNodeB); - var template (value) GeoNetworkingInd v_msgInd; +//FIXME RGY variable shall not be of template type, because a message is stored into it +// var template (value) GeoNetworkingInd v_msgInd; + var GeoNetworkingInd v_msgInd; // Preamble f_prNeighbour(); @@ -10162,7 +10180,7 @@ // Test Body v_msgInd.msgIn.basicHeader.routerHopLimit := valueof(v_msgInd.msgIn.basicHeader.routerHopLimit) -1; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn))); tc_noac.start; alt { @@ -10208,7 +10226,7 @@ // Preamble // Start components - v_nodeB := f_getComponent(c_compNodeB); + v_nodeB := f_getComponent(c_compNodeB); v_nodeD := f_getComponent(c_compNodeD); v_nodeB.start(f_GEONW_PON_TSB_BV_04_nodeB()); v_nodeD.start(f_GEONW_PON_TSB_BV_04_nodeD()); @@ -10235,7 +10253,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwTsbPacket( vc_localSeqNumber, @@ -10246,7 +10264,7 @@ c_defaultHopLimit ) ) - ); + )); tc_ac.start; alt { @@ -10405,7 +10423,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwTsbPacket( vc_localSeqNumber, @@ -10415,7 +10433,7 @@ 1 ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -10499,7 +10517,7 @@ v_longPosVectorNodeB ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -10582,7 +10600,7 @@ -, c_defaultHopLimit ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(valueof(v_gnPacket))); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(valueof(v_gnPacket)))); tc_ac.start; alt { @@ -10648,7 +10666,9 @@ // Local variables var LongPosVector v_longPosVectorNodeB := f_getPosition(c_compNodeB); - var template (value) GeoNetworkingInd v_msgInd; +//FIXME RGY variable shall not be of template type, because a message is stored into it +// var template (value) GeoNetworkingInd v_msgInd; + var GeoNetworkingInd v_msgInd; var integer i; var template (value) GeoNetworkingPdu v_gnPacket; @@ -10680,7 +10700,7 @@ // Test Body v_msgInd.msgIn.basicHeader.routerHopLimit := valueof(v_msgInd.msgIn.basicHeader.routerHopLimit) - 1; v_gnPacket := v_msgInd.msgIn; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_msgInd.msgIn))); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -10843,7 +10863,7 @@ // Test Body v_gnPacket := m_geoNwPdu(m_geoNwShbPacket(v_longPosVectorNodeB)); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -11151,7 +11171,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeB, @@ -11160,7 +11180,7 @@ ) ) ) - ); + )); tc_noac.start; alt { @@ -11307,7 +11327,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -11316,7 +11336,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -11408,7 +11428,9 @@ // Local variables var LongPosVector v_longPosVectorNodeC := f_getPosition(c_compNodeC); - var template (present) GeoNetworkingInd v_msgInd; + var template (present) GeoNetworkingInd vt_msgInd; +//FIXME RGY variable is declared to store the received message + var GeoNetworkingInd v_msgInd; // Preamble f_prNeighbour(); @@ -11425,6 +11447,8 @@ ) ) ) -> value v_msgInd { +//FIXME RGY the received value stored in the template variable too + vt_msgInd:= v_msgInd tc_ac.stop; log("*** " & testcasename() & ": PASS: Pre-conditions: GAC message correctly forwarded to area center ***"); f_selfOrClientSyncAndVerdict(c_prDone, e_success); @@ -11436,10 +11460,11 @@ } // Test Body - v_msgInd.msgIn.basicHeader.routerHopLimit := ?; +//FIXME RGY for the AnyValue the template varibale is used + vt_msgInd.msgIn.basicHeader.routerHopLimit := ?; tc_noac.start; alt { - [] geoNetworkingPort.receive(v_msgInd) { + [] geoNetworkingPort.receive(vt_msgInd) { tc_noac.stop; log("*** " & testcasename() & ": FAIL: GAC message re-forwarded to area center ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_error); @@ -11466,7 +11491,7 @@ // Preamble f_prNeighbour(); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -11477,7 +11502,7 @@ c_defaultHopLimit ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -11532,7 +11557,7 @@ // Test Body // send geoAnycast for second time (same source + same seq Nr + lower RHL) f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -11543,7 +11568,7 @@ c_defaultHopLimit - 1 ) ) - ); + )); tc_noac.start; alt { @@ -11656,7 +11681,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -11668,7 +11693,7 @@ c_defaultHopLimit ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -11763,7 +11788,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -11774,7 +11799,7 @@ c_hopLimit1 ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -11819,7 +11844,7 @@ f_getGeoAnycastArea(c_area1) ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -11923,7 +11948,7 @@ // Test Body v_gnPacket.basicHeader.routerHopLimit := valueof(v_gnPacket.basicHeader.routerHopLimit) / 2; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -11961,7 +11986,7 @@ -, c_defaultHopLimit ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_selfOrClientSyncAndVerdict(c_prDone, e_success); @@ -12010,7 +12035,7 @@ f_getGeoAnycastArea(c_area2) ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleep(PX_TAC); @@ -12127,7 +12152,7 @@ p_distanceTooBig ); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeC, @@ -12136,7 +12161,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -12409,7 +12434,7 @@ // Preamble f_prNeighbour(); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -12418,7 +12443,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -12458,7 +12483,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -12467,7 +12492,7 @@ ) ) ) - ); + )); tc_noac.start; alt { @@ -12599,7 +12624,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -12608,7 +12633,7 @@ ) ) ) - ); + )); t_toCbf.start; tc_ac.start; @@ -12785,7 +12810,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -12794,7 +12819,7 @@ ) ) ) - ); + )); tc_noac.start; alt { @@ -12971,7 +12996,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeD, @@ -12980,7 +13005,7 @@ ) ) ) - ); + )); tc_noac.start; alt { @@ -13138,7 +13163,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -13147,7 +13172,7 @@ ) ) ) - ); + )); t_toCbf.start; tc_ac.start; @@ -13316,7 +13341,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -13325,7 +13350,7 @@ ) ) ) - ); + )); tc_ac.start; alt { @@ -13450,7 +13475,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -13459,7 +13484,7 @@ ) ) ) - ); + )); tc_ac.start; alt { @@ -13659,7 +13684,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeC, @@ -13668,7 +13693,7 @@ ) ) ) - ); + )); t_toCbf.start; tc_ac.start; @@ -13808,12 +13833,12 @@ f_getGeoBroadcastArea(c_area1) ) ); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body for(i:=1; i < f_getAdvancedGbcForwardingMaxCounter(); i:=i+1) { - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(v_gnPacket)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(v_gnPacket))); f_sleepIgnoreDef(0.5); } tc_noac.start; @@ -13894,7 +13919,7 @@ // Preamble f_prNeighbour(); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -13901,7 +13926,7 @@ f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -13936,7 +13961,7 @@ f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -13943,7 +13968,7 @@ f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); tc_noac.start; alt { [] geoNetworkingPort.receive (mw_geoNwInd(mw_geoNwPdu(?))){ @@ -14022,7 +14047,7 @@ // Preamble f_prNeighbour(); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -14029,7 +14054,7 @@ f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -14075,14 +14100,15 @@ f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( - m_geoNwPdu(m_geoNwBroadcastPacket( + f_sendGeoNetMessage( + valueof(m_geoNwReq_linkLayerBroadcast( + m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); t_toCbf.start; tc_ac.start; alt { @@ -14093,7 +14119,7 @@ )))) { tc_ac.stop; - if(t_toCbf.running) { + if(t_toCbf.running) { t_toCbf.stop; log("*** " & testcasename() & ": FAIL: GBC retransmitted before CBF timer expiration ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_error); @@ -14182,8 +14208,8 @@ // Test Body tc_ac.start; - alt { - [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( + alt { + [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( mw_longPosVectorPosition(v_longPosVectorNodeA), ?, f_getGeoBroadcastArea(c_area1) @@ -14217,17 +14243,17 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_withLinkLayerDestination( - m_geoNwPdu(m_geoNwBroadcastPacket( - v_longPosVectorNodeA, - 0, - f_getGeoBroadcastArea(c_area1) - ) - ), + valueof(m_geoNwReq_withLinkLayerDestination( + m_geoNwPdu(m_geoNwBroadcastPacket( + v_longPosVectorNodeA, + 0, + f_getGeoBroadcastArea(c_area1) + ) + ), -, - f_getIutMacAddress() - ) - ); + f_getIutMacAddress() + ) + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -14299,7 +14325,7 @@ // Test Body tc_ac.start; - alt { + alt { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( mw_longPosVectorPosition(v_longPosVectorNodeA), ?, @@ -14334,7 +14360,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_withLinkLayerDestination( + valueof(m_geoNwReq_withLinkLayerDestination( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeA, 0, @@ -14344,9 +14370,9 @@ -, f_getIutMacAddress() ) - ); + )); tc_ac.start; - alt { + alt { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( mw_longPosVectorPosition(v_longPosVectorNodeA), ?, @@ -14491,7 +14517,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeE, 0, @@ -14499,7 +14525,7 @@ ) ) ) - ); + )); t_toCbf.start; tc_ac.start; @@ -14638,7 +14664,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeC, 0, @@ -14646,7 +14672,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -14811,7 +14837,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeD, 0, @@ -14819,7 +14845,7 @@ ) ) ) - ); + )); f_selfOrClientSyncAndVerdict(c_tbDone, e_success); // Postamble @@ -14902,7 +14928,7 @@ tc_ac.stop; if(t_toCbf.running) { - t_toCbf.stop; + t_toCbf.stop; log("*** " & testcasename() & ": FAIL: GBC retransmitted before CBF timer expiration ***"); f_selfOrClientSyncAndVerdict(c_tbDone, e_error); } @@ -14941,7 +14967,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -14949,7 +14975,7 @@ ) ) ) - ); + )); t_toCbf.start; tc_ac.start; @@ -15088,7 +15114,7 @@ // Test Body f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeC, 0, @@ -15096,7 +15122,7 @@ ) ) ) - ); + )); tc_ac.start; alt { [] geoNetworkingPort.receive(mw_geoNwInd(mw_geoNwPdu(mw_geoNwBroadcastPacketWithArea( @@ -15214,7 +15240,7 @@ // Preamble f_prNeighbour(); - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -15221,7 +15247,7 @@ f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body @@ -15266,7 +15292,7 @@ f_selfOrClientSyncAndVerdict(c_prDone, e_success); // Test Body - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast( + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu(m_geoNwBroadcastPacket( v_longPosVectorNodeB, 0, @@ -15273,7 +15299,7 @@ f_getGeoBroadcastArea(c_area1) ) ) - )); + ))); t_toCbf.start; tc_ac.start; @@ -15401,15 +15427,15 @@ v_nbrOfPackets := f_getLsPacketBufferSize() / v_packetSize + 1; log("*** " & testcasename() & ": " & int2str(v_nbrOfPackets) & " ***"); for (v_index:=1; v_index <= v_nbrOfPackets; v_index:=v_index+1) { - if ( not f_utTriggerEvent(m_generateGeoUnicastMessageWithPayload(v_longPosVectorNodeA.gnAddr, char2oct("PAYLOAD_" & oct2str(int2oct(v_index, 2))))) ) { - log("*** " & testcasename() & ": INCONC: Trigger failed ***"); - f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); - } + if ( not f_utTriggerEvent(m_generateGeoUnicastMessageWithPayload(v_longPosVectorNodeA.gnAddr, char2oct("PAYLOAD_" & oct2str(int2oct(v_index, 2))))) ) { + log("*** " & testcasename() & ": INCONC: Trigger failed ***"); + f_selfOrClientSyncAndVerdict(c_tbDone, e_timeout); + } } f_sleepIgnoreDef(0.5); f_sendGeoNetMessage( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwLsReplyPacket( v_longPosVectorNodeB, @@ -15418,7 +15444,7 @@ ) ) ) - ); + )); // packet 1 shall be dropped v_index := 2; @@ -15617,7 +15643,7 @@ p_geoNetworkingMsg.gnPacket.packet.extendedHeader.geoUnicastHeader.dstPosVector := f_longPosVector2ShortPosVector(v_longPosVectorNodeA); for (i:=0; i < p_nbrOfPackets; i:=i+1) { p_geoNetworkingMsg.gnPacket.packet.extendedHeader.geoUnicastHeader.seqNumber := vc_localSeqNumber; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(p_geoNetworkingMsg)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(p_geoNetworkingMsg))); } f_selfOrClientSyncAndVerdict(c_prDone, e_success); @@ -15783,7 +15809,7 @@ for (i:=0; i < p_nbrOfPackets; i:=i+1) { p_geoNetworkingMsg.gnPacket.packet.extendedHeader.geoBroadcastHeader.seqNumber := vc_localSeqNumber; - f_sendGeoNetMessage(m_geoNwReq_linkLayerBroadcast(p_geoNetworkingMsg)); + f_sendGeoNetMessage(valueof(m_geoNwReq_linkLayerBroadcast(p_geoNetworkingMsg))); } f_selfOrClientSyncAndVerdict(c_prDone, e_success); Index: AtsIPv6OverGeoNetworking/ItsIpv6OverGeoNetworking_TestCases.ttcn =================================================================== --- AtsIPv6OverGeoNetworking/ItsIpv6OverGeoNetworking_TestCases.ttcn (revision 2639) +++ AtsIPv6OverGeoNetworking/ItsIpv6OverGeoNetworking_TestCases.ttcn (working copy) @@ -1084,7 +1084,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -1092,7 +1092,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl1].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1190,7 +1190,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -1198,7 +1198,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl2].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1289,7 +1289,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwAnycastPacket( v_longPosVectorNodeA, @@ -1297,7 +1297,7 @@ f_getGeoAnycastArea(vc_gvlTable[c_gvl1].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1394,7 +1394,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -1402,7 +1402,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl1].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1507,7 +1507,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -1515,7 +1515,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl3].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1614,7 +1614,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwUnicastPacket( v_longPosVectorNodeA, @@ -1622,7 +1622,7 @@ vc_localSeqNumber ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1723,7 +1723,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwUnicastPacket( v_longPosVectorNodeB, @@ -1731,7 +1731,7 @@ vc_localSeqNumber ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1830,7 +1830,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwUnicastPacket( v_longPosVectorNodeB, @@ -1838,7 +1838,7 @@ vc_localSeqNumber ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -1939,7 +1939,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwUnicastPacket( v_longPosVectorNodeB, @@ -1947,7 +1947,7 @@ vc_localSeqNumber ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -2049,7 +2049,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwUnicastPacket( v_longPosVectorNodeB, @@ -2057,7 +2057,7 @@ vc_localSeqNumber ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -2154,7 +2154,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwTsbPacket( vc_localSeqNumber, @@ -2161,7 +2161,7 @@ v_longPosVectorIut ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -2267,7 +2267,7 @@ // Test Body f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -2275,7 +2275,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl3].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); @@ -2362,7 +2362,7 @@ ); f_sendGeoNetMessageWithPayload( - m_geoNwReq_linkLayerBroadcast( + valueof(m_geoNwReq_linkLayerBroadcast( m_geoNwPdu( m_geoNwBroadcastPacket( v_longPosVectorNodeA, @@ -2370,7 +2370,7 @@ f_getGeoBroadcastArea(vc_gvlTable[c_gvl3].area) ) ) - ), + )), m_ipv6Payload(v_ipv6Packet) ); Index: AtsIVIM/ItsIvim_TpFunctions.ttcn =================================================================== --- AtsIVIM/ItsIvim_TpFunctions.ttcn (revision 2639) +++ AtsIVIM/ItsIvim_TpFunctions.ttcn (working copy) @@ -22,6 +22,7 @@ import from LibItsCommon_Pixits all; import from LibItsCommon_Functions all; import from LibItsCommon_TypesAndValues all; + import from LibItsCommon_ASN1_NamedNumbers all; // LibIts import from ITS_Container language "ASN.1:1997" all; @@ -34,6 +35,7 @@ import from LibItsIvim_TestSystem all; import from LibItsIvim_Functions all; import from LibItsIvim_Pics all; + import from LibItsIvim_ASN1_IVInamedNumbers all; group iviMessageTransmission { @@ -177,7 +179,7 @@ // Preamble f_prInitialState(); for (i := 0; i < lengthof(v_utTriggers) - 1; i := i + 1) { - f_utTriggerEvent(v_utTriggers[i]); + f_utTriggerEvent(valueof(v_utTriggers[i])); f_awaitIviMessage(mw_ivimInd(mw_anyIvimPdu), v_ivimInd); v_iviIdentificationNumbers[i] := v_ivimInd.msgIn.ivi.mandatory.iviIdentificationNumber; } @@ -184,7 +186,7 @@ f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body - f_utTriggerEvent(v_utTriggers[lengthof(v_utTriggers) - 1]); + f_utTriggerEvent(valueof(v_utTriggers[lengthof(v_utTriggers) - 1])); f_awaitIviMessage(mw_ivimInd(mw_anyIvimPdu), v_ivimInd); v_iviIdentificationNumbers[lengthof(v_iviIdentificationNumbers) - 1] := v_ivimInd.msgIn.ivi.mandatory.iviIdentificationNumber; @@ -239,7 +241,7 @@ // Preamble f_prInitialState(); for (i := 0; i < lengthof(v_utTriggers) - 1; i := i + 1) { - f_utTriggerEvent(v_utTriggers[i]); + f_utTriggerEvent(valueof(v_utTriggers[i])); f_awaitIviMessage(mw_ivimInd(mw_anyIvimPdu), v_ivimInd); f_poCancelEvent(e_iut, v_ivimInd.msgIn.ivi.mandatory.iviIdentificationNumber); } @@ -248,7 +250,7 @@ f_selfOrClientSyncAndVerdictPreamble(c_prDone, e_success); // Test Body - f_utTriggerEvent(v_utTriggers[lengthof(v_utTriggers) - 1]); + f_utTriggerEvent(valueof(v_utTriggers[lengthof(v_utTriggers) - 1])); tc_ac.start; alt { @@ -1565,13 +1567,13 @@ v_ivimReq := valueof( m_ivimReq( m_ivimStructurePdu( - m_ivimStructure( - m_iviManagementContainer( + valueof(m_ivimStructure( + valueof(m_iviManagementContainer( f_getProvider(), 1, IviStatus_new_ - ) - ) + )) + )) ) ) ); Index: AtsMapemSpatem/ItsMapem_TpFunctions.ttcn =================================================================== --- AtsMapemSpatem/ItsMapem_TpFunctions.ttcn (revision 2639) +++ AtsMapemSpatem/ItsMapem_TpFunctions.ttcn (working copy) @@ -26,7 +26,7 @@ import from ITS_Container language "ASN.1:1997" all; import from MAPEM_PDU_Descriptions language "ASN.1:1997" all; import from SPATEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; // LibItsMapemSpatem import from LibItsMapemSpatem_TestSystem all; Index: AtsMapemSpatem/ItsSpatem_TpFunctions.ttcn =================================================================== --- AtsMapemSpatem/ItsSpatem_TpFunctions.ttcn (revision 2639) +++ AtsMapemSpatem/ItsSpatem_TpFunctions.ttcn (working copy) @@ -26,7 +26,7 @@ import from ITS_Container language "ASN.1:1997" all; import from MAPEM_PDU_Descriptions language "ASN.1:1997" all; import from SPATEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; // LibItsMapemSpatem import from LibItsMapemSpatem_TestSystem all; Index: AtsRSUsSimulator/ItsRSUSimulator_PicsInitConsts.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUSimulator_PicsInitConsts.ttcn (nonexistent) +++ AtsRSUsSimulator/ItsRSUSimulator_PicsInitConsts.ttcn (working copy) @@ -0,0 +1,5636 @@ +module ItsRSUSimulator_PicsInitConsts { + + // LibCommon + import from LibCommon_BasicTypesAndValues all; + + // LibIts + import from ITS_Container language "ASN.1:1997" all; + import from IVI language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; + import from EVCSN_PDU_Descriptions language "ASN.1:1997" all; + + // LibItsCommon + import from LibItsCommon_ASN1_NamedNumbers all; + + // LibItsBtp + import from LibItsBtp_TypesAndValues all; + + // LibItsGeoNetworking + import from LibItsGeoNetworking_TypesAndValues all; + + // LibItsSecurity + import from LibItsSecurity_TypesAndValues all; + + // ItsRSUsSimulator + import from ItsRSUsSimulator_TypesAndValues all; + + /** + * @desc This group describes the RSUs installed on the track + */ + group rsuParameters { + + /** + * @desc RSU #1 + */ + group rsu1 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU1 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0201'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU1 + + const RsuParm c_PICS_RSU1 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU1, + timestamp_ := 0, + latitude := 435529150, + longitude := 103010520, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111101, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU1 + } // End of c_PICS_RSU1 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU1 := {}; + + } // End of group rsu1 + + /** + * @desc RSU #2 + */ + group rsu2 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU2 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0202'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU2 + + const RsuParm c_PICS_RSU2 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU2, + timestamp_ := 0, + latitude := 435512090, + longitude := 103002510, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111102, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU2 + } // End of c_PICS_RSU2 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU2 := {}; + + } // End of group rsu2 + + /** + * @desc RSU #3 + */ + group rsu3 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU3 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0203'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU3 + + const RsuParm c_PICS_RSU3 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU3, + timestamp_ := 0, + latitude := 435546630, + longitude := 103041900, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111103, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU3 + } // End of c_PICS_RSU3 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU3 := {}; + + } // End of group rsu3 + + /** + * @desc RSU #4 + */ + group rsu4 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU4 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0204'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU4 + + const RsuParm c_PICS_RSU4 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU4, + timestamp_ := 0, + latitude := 435582150, + longitude := 103065170, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111104, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU4 + } // End of c_PICS_RSU4 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU4 := {}; + + } // End of group rsu4 + + /** + * @desc RSU #5 + */ + group rsu5 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU5 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0205'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU5 + + const RsuParm c_PICS_RSU5 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU5, + timestamp_ := 0, + latitude := 435838400, + longitude := 103249780, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111105, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU5 + } // End of c_PICS_RSU5 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU5 := {}; + + } // End of group rsu5 + + /** + * @desc RSU #6 + */ + group rsu6 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU6 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0206'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU6 + + const RsuParm c_PICS_RSU6 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU6, + timestamp_ := 0, + latitude := 435923480, + longitude := 103375540, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111106, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU6 + } // End of c_PICS_RSU6 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU6 := {}; + + } // End of group rsu6 + + /** + * @desc RSU #7 + */ + group rsu7 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU7 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0207'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU7 + + const RsuParm c_PICS_RSU7 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU7, + timestamp_ := 0, + latitude := 435550580, + longitude := 103032980, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111107, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU7 + } // End of c_PICS_RSU7 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU7 := {}; + + } // End of group rsu7 + + /** + * @desc RSU #8 + */ + group rsu8 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_RSU_GN_ADDRESS_RSU8 := { + typeOfAddress := e_manual, + stationType := e_roadSideUnit, + stationCountryCode := 33, + mid := '001C6B0D0208'O + } // End of c_PICS_RSU_GN_ADDRESS_RSU8 + + const RsuParm c_PICS_RSU8 := { + longPosVector := { + gnAddr := c_PICS_RSU_GN_ADDRESS_RSU8, + timestamp_ := 0, + latitude := 435546630, + longitude := 103041900, + pai := '0'B, + speed := 0, + heading := 0 + }, + stationID := 1111108, + stationType := StationType_roadSideUnit_, + vehicleRole := roadOperator, + geoShape := e_geoCircle, + geoParms := { + radius := 5000 + }, + pathHistory := c_PICS_RSU_PATH_HISTORY_RSU8 + } // End of c_PICS_RSU8 + + /** + * @desc Path history to approch the RSU + */ + const PathHistory c_PICS_RSU_PATH_HISTORY_RSU8 := {}; + + } // End of group rsu8 + + } // End of group rsuParameters + + /* + * @desc This group describes the BEACON common settings for the RSUs CAM message broadcast + */ + group beaconParams { + + /** + * @desc Common settings + */ + group beaconCommonSettings { + + const UInt32 c_PICS_BEACON_ITS_AID := 141; + + } // End of group beaconCommonSettings + + } // End of group beaconParams + + /** + * @desc This group describes the CAM common settings for the RSUs CAM message broadcast + */ + group camParams { + + /** + * @desc Common settings + */ + group camCommonSettings { + + const BtpPortId c_PICS_CAM_BTP_DESTINATION_PORT := 2001; + + const BtpPortId c_PICS_CAM_BTP_SOURCE_PORT := 0; + + const UInt32 c_PICS_CAM_ITS_AID := 36; + + } // End of group camCommonSettings + + group camUseCase6 { + + group camUseCase6VehicleTemplateDescription { + + const LongPosVector c_PICS_UC6_VEHICLE_TEMPLATE_POSITION := { + gnAddr := { + typeOfAddress := e_manual, + stationType := e_passengerCar, + stationCountryCode := 33, + mid := '001C6B0D02FF'O + }, + timestamp_ := 0, + latitude := 0, + longitude := 0, + pai := '0'B, + speed := 30, + heading := 0 + } // End of c_PICS_UC6_VEHICLE_POSITION + + const GeoArea c_PICS_UC6_VEHICLE_TEMPLATE_GEOAREA := { + shape := e_geoElip, + area := { + geoAreaPosLatitude := 0, + geoAreaPosLongitude := 0, + distanceA := 5, + distanceB := 3, + angle := 0 + } + } // End of c_PICS_UC6_VEHICLE_GEOAREA + + } // End of group camUseCase6VehicleDescription + + group camUseCase6SyncLocation { + + /** + * @desc Coordinates of the collision point + */ + const ThreeDLocation PICS_UC6_COLLISION_POINT := { + latitude := 435522970, + longitude := 103000170, + elevation := '0000'O + } // End of c_PICS_UC6_COLLISION_POINT + + /** + * @desc Vehicle detection area + */ + const RectangularRegion c_PICS_UC6_CAM_DETECTION_AREA := { + northwest := { + latitude := 435529170, + longitude := 102998330 + }, + southeast := { + latitude := 435522420, + longitude := 103011400 + } + } // End of c_PICS_UC6_CAM_DETECTION_AREA + + } // End of group camUseCase6SyncLocation + + } // End of group camUseCase6 + + group camUseCase7 { + + /** + * @desc RSU GN address + */ + const GN_Address c_PICS_UC7_GN_ADDRESS := { + typeOfAddress := e_manual, + stationType := e_bus, + stationCountryCode := 39, + mid := '001C6B0DEEEE'O + } // End of c_PICS_UC7_GN_ADDRESS + + const RsuParm c_PICS_UC7_LPV := { + longPosVector := { + gnAddr := c_PICS_UC7_GN_ADDRESS, + timestamp_ := 0, + latitude := 435582150, + longitude := 103065170, + pai := '0'B, + speed := 0, + heading := 10 + }, + stationID := 7895, + stationType := StationType_passengerCar_, + vehicleRole := taxi, + geoShape := e_geoCircle, + geoParms := { + radius := 300 + }, + pathHistory := {} + } // End of c_PICS_UC7_LPV + + const ReferencePosition c_PICS_UC7_COLLISION_POINT := { + latitude := 435582150, + longitude := 103065170, + positionConfidenceEllipse := { + semiMajorConfidence := 100, + semiMinorConfidence := 100, + semiMajorOrientation := HeadingValue_wgs84North_ + }, + altitude := { + altitudeValue := AltitudeValue_referenceEllipsoidSurface_, + altitudeConfidence := unavailable + } + } // End of c_PICS_UC7_COLLISION_POINT + + } // End of group camUseCase7 + + group camUseCase9 { + + const ProtectedCommunicationZone c_PICS_USECASE9_PCZ_1 := { + protectedZoneType := cenDsrcTolling, + expiryTime := omit, + protectedZoneLatitude := 435838400, + protectedZoneLongitude := 103249780, + protectedZoneRadius := 100, + protectedZoneID := 1 + } // End of c_PICS_USECASE9_PCZ_1 + + } // End of group camUseCase7 + + } // End of group camParams + + /** + * @desc This group describes the DENM common settings for the each use cases and for each RSU. + */ + group denmEvents { + + /** + * @desc Common settings + */ + group denmCommonSettings { + + const BtpPortId c_PICS_DENM_BTP_DESTINATION_PORT := 2002; + + const BtpPortId c_PICS_DENM_BTP_SOURCE_PORT := 0; + + const UInt32 c_PICS_DENM_ITS_AID := 37; + + const PosConfidenceEllipse c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE := { + semiMajorConfidence := 100, + semiMinorConfidence := 100, + semiMajorOrientation := 0 + } // End of c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE + + const Altitude c_PICS_DENM_ALTITUDE := { + altitudeValue := AltitudeValue_referenceEllipsoidSurface_, + altitudeConfidence := alt_000_01 + } // End of c_PICS_DENM_ALTITUDE + + /** + * @desc DENM repetition interval, in ms + */ + const TransmissionInterval c_PICS_DENM_REPETITION_INTERVAL := 1000; + + /** + * @desc DENM RelevanceDistance + */ + const RelevanceDistance c_PICS_DENM_RELEVANCE_DISTANCE := lessThan200m; + + /** + * @desc DENM ValidityDuration + */ + const ValidityDuration c_PICS_DENM_VALIDITY_DURATION := 90 * 60; // 90 minutes + + /** + * @desc DENM RelevanceTrafficDirection + */ + const RelevanceTrafficDirection c_PICS_DENM_RELEVANCE_TRAFFIC_DIRECTION := upstreamTraffic; + + + } // End of group denmCommonSettings + + /** + * @desc Use case #1: Z1-D1-SL/Speed limit + */ + group denmUseCase1 { + + /** + * @desc Use case #1: Z1-D1-EP/Event position + */ + group denmZone1 { + + const SpeedLimit c_PICS_SPEED_LIMIT := 30; + + group denmZone1_D1 { + + /** + * @desc Z1-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z1_D1_POS0 := { + deltaLatitude := 2616, + deltaLongitude := 4067, + deltaAltitude := 0 + }; // End of c_PICS_Z1_D1_POS0 + + /** + * @desc Z1-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z1_D1_EP := { + latitude := 435525352, // Z1-D1-EP/latitude + longitude := 103003415, // Z1-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z1_D1_EP + + /** + * @desc Z1-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z1_D1_Hx := { + { // Z1_D1_H1 + eventPosition := { + deltaLatitude := -2546, + deltaLongitude := -3697, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z1_D1_H2 + eventPosition := { + deltaLatitude := -3699, + deltaLongitude := -5788, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z1_D1_Hx + + /** + * @desc Z1-D1-Traces/Trace1 + */ + const Traces c_PICS_Z1_D1_Tx := { + { + { // Z1-D1-T1 + pathPosition := { + deltaLatitude := 4659, + deltaLongitude := 7205, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D1-T2 + pathPosition := { + deltaLatitude := 510, + deltaLongitude := 720, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D1-T3 + pathPosition := { + deltaLatitude := 208, + deltaLongitude := 531, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D1-T4 + pathPosition := { + deltaLatitude := 154, + deltaLongitude := 409, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D1-T5 + pathPosition := { + deltaLatitude := 160, + deltaLongitude := 1041, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z1_D1_Tx + + const DenmParm c_PICS_Z1_D1 := { + eventPosition := c_PICS_Z1_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z1_D1_Hx, + traces := c_PICS_Z1_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z1_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z1_D1 + + } // End of group denmZone1_D1 + + group denmZone1_D2 { + + /** + * @desc Z1-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z1_D2_EP := { + latitude := 435519107, // Z1-D2-EP/latitude + longitude := 102993930, // Z1-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z1_D2_EP + + /** + * @desc Z1-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z1_D2_Hx := { + { // Z1_D2_H1 + eventPosition := { + deltaLatitude := -2750, + deltaLongitude := -4251, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z1_D2_H2 + eventPosition := { + deltaLatitude := -2936, + deltaLongitude := -3641, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z1_D2_Hx + + /** + * @desc Z1-D2-Traces/Trace2 + */ + const Traces c_PICS_Z1_D2_Tx := { + { + { // Z1-D2-T1 + pathPosition := { + deltaLatitude := 3699, + deltaLongitude := 5788, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D2-T2 + pathPosition := { + deltaLatitude := 456, + deltaLongitude := 598, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D2-T3 + pathPosition := { + deltaLatitude := 450, + deltaLongitude := 697, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D2-T4 + pathPosition := { + deltaLatitude := 619, + deltaLongitude := 963, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D2-T5 + pathPosition := { + deltaLatitude := 510, + deltaLongitude := 719, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z1_D2_Tx + + const DenmParm c_PICS_Z1_D2 := { + eventPosition := c_PICS_Z1_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z1_D2_Hx, + traces := c_PICS_Z1_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z1_D2 + + } // End of group denmZone1_D2 + + group denmZone1_D3 { + + /** + * @desc Z1-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z1_D3_EP := { + latitude := 435513421, // Z1-D3-EP/latitude + longitude := 102986038, // Z1-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z1_D3_EP + + /** + * @desc Z1-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z1_D3_Hx := { + { // Z1_D3_H1 + eventPosition := { + deltaLatitude := -1158, + deltaLongitude := -45, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z1_D3_H2 + eventPosition := { + deltaLatitude := -1299, + deltaLongitude := 819, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z1_D3_Hx + + /** + * @desc Z1-D3-Traces/Trace1 + */ + const Traces c_PICS_Z1_D3_Tx := { + { + { // Z1-D3-T1 + pathPosition := { + deltaLatitude := 3435, + deltaLongitude := 4483, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D3-T2 + pathPosition := { + deltaLatitude := 626, + deltaLongitude := 863, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D3-T3 + pathPosition := { + deltaLatitude := 500, + deltaLongitude := 541, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z1-D3-T4 + pathPosition := { + deltaLatitude := 564, + deltaLongitude := 841, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z1_D3_Tx + + const DenmParm c_PICS_Z1_D3 := { + eventPosition := c_PICS_Z1_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z1_D3_Hx, + traces := c_PICS_Z1_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := { + deltaLatitude := 0, + deltaLongitude := 0, + deltaAltitude := 0 + }, + trafficFlowRule := passToLeft, + referenceDenms := omit + } + + } // End of c_PICS_Z1_D3 + + } // End of denmZone1_D3 + + } // End of group denmZone1 + + group denmZone2 { + + group denmZone2_D1 { + + /** + * @desc Z2-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z2_D1_POS0 := { + deltaLatitude := -676, + deltaLongitude := -6542, + deltaAltitude := 0 + }; // End of c_PICS_Z2_D1_POS0 + + /** + * @desc Z2-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z2_D1_EP := { + latitude := 435512286, // Z2-D1-EP/latitude + longitude := 102999675, // Z2-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z2_D1_EP + + /** + * @desc Z2-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z2_D1_Hx := { + { // Z2_D1_H1 + eventPosition := { + deltaLatitude := 718, + deltaLongitude := 7406, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z2_D1_H2 + eventPosition := { + deltaLatitude := 577, + deltaLongitude := 5717, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z2_D1_Hx + + /** + * @desc Z2-D1-Traces/Trace1 + */ + const Traces c_PICS_Z2_D1_Tx := { + { + { // Z2-D1-T1 + pathPosition := { + deltaLatitude := -1377, + deltaLongitude := -12164, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D1-T2 + pathPosition := { + deltaLatitude := 55, + deltaLongitude := -609, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D1-T3 + pathPosition := { + deltaLatitude := 312, + deltaLongitude := -587, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D1-T4 + pathPosition := { + deltaLatitude := 358, + deltaLongitude := -421, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D1-T5 + pathPosition := { + deltaLatitude := 860, + deltaLongitude := -254, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z2_D1_Tx + + const DenmParm c_PICS_Z2_D1 := { + eventPosition := c_PICS_Z2_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z2_D1_Hx, + traces := c_PICS_Z2_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z2_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z2_D1 + + } // End of group denmZone2_D1 + + group denmZone2_D2 { + + /** + * @desc Z2-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z2_D2_EP := { + latitude := 435513581, // Z2-D2-EP/latitude + longitude := 103012798, // Z2-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z2_D2_EP + + /** + * @desc Z2-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z2_D2_Hx := { + { // Z2_D2_H1 + eventPosition := { + deltaLatitude := 3883, + deltaLongitude := 5826, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z2_D2_H2 + eventPosition := { + deltaLatitude := 3550, + deltaLongitude := 1859, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z2_D2_Hx + + /** + * @desc Z2-D2-Traces/Trace2 + */ + const Traces c_PICS_Z2_D2_Tx := { + { + { // Z2-D2-T1 + pathPosition := { + deltaLatitude := -861, + deltaLongitude := -8506, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D2-T2 + pathPosition := { + deltaLatitude := -88, + deltaLongitude := -949, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D2-T3 + pathPosition := { + deltaLatitude := -97, + deltaLongitude := -817, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D2-T4 + pathPosition := { + deltaLatitude := -118, + deltaLongitude := -815, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D2-T5 + pathPosition := { + deltaLatitude := -5, + deltaLongitude := -631, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z2_D2_Tx + + const DenmParm c_PICS_Z2_D2 := { + eventPosition := c_PICS_Z2_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z2_D2_Hx, + traces := c_PICS_Z2_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z2_D2 + + } // End of group denmZone2_D2 + + group denmZone2_D3 { + + /** + * @desc Z2-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z2_D3_EP := { + latitude := 435521014, // Z2-D3-EP/latitude + longitude := 103020483, // Z2-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z2_D3_EP + + /** + * @desc Z2-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z2_D3_Hx := { + { // Z2_D3_H1 + eventPosition := { + deltaLatitude := 3169, + deltaLongitude := 1084, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z2_D3_H2 + eventPosition := { + deltaLatitude := 2020, + deltaLongitude := -1029, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z2_D3_Hx + + /** + * @desc Z2-D3-Traces/Trace1 + */ + const Traces c_PICS_Z2_D3_Tx := { + { + { // Z2-D3-T1 + pathPosition := { + deltaLatitude := -6382, + deltaLongitude := -3852, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D3-T2 + pathPosition := { + deltaLatitude := -132, + deltaLongitude := -653, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D3-T3 + pathPosition := { + deltaLatitude := -355, + deltaLongitude := -1040, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z2-D3-T4 + pathPosition := { + deltaLatitude := -362, + deltaLongitude := -941, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z2_D3_Tx + + const DenmParm c_PICS_Z2_D3 := { + eventPosition := c_PICS_Z2_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z2_D3_Hx, + traces := c_PICS_Z2_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToLeft, + referenceDenms := omit + } + } // End of c_PICS_Z2_D3 + + } // group denmZone2_D3 + + } // End of group denmZone2 + + group denmZone3 { + + group denmZone3_D1 { + + /** + * @desc Z3-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z3_D1_POS0 := { + deltaLatitude := -3495, + deltaLongitude := -5236, + deltaAltitude := 0 + }; // End of c_PICS_Z3_D1_POS0 + + /** + * @desc Z3-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z3_D1_EP := { + latitude := 435537393, // Z3-D1-EP/latitude + longitude := 103003415, // Z3-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z3_D1_EP + + /** + * @desc Z3-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z3_D1_Hx := { + { // Z3_D1_H1 + eventPosition := { + deltaLatitude := -2546, + deltaLongitude := -3697, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z3_D1_H2 + eventPosition := { + deltaLatitude := 2969, + deltaLongitude := 3874, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z3_D1_Hx + + /** + * @desc Z3-D1-Traces/Trace1 + */ + const Traces c_PICS_Z3_D1_Tx := { + { + { // Z3-D1-T1 + pathPosition := { + deltaLatitude := -4657, + deltaLongitude := -9320, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D1-T2 + pathPosition := { + deltaLatitude := -34, + deltaLongitude := -1018, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D1-T3 + pathPosition := { + deltaLatitude := -109, + deltaLongitude := -897, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D1-T4 + pathPosition := { + deltaLatitude := -247, + deltaLongitude := -797, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D1-T5 + pathPosition := { + deltaLatitude := -258, + deltaLongitude := -675, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z3_D1_Tx + + const DenmParm c_PICS_Z3_D1 := { + eventPosition := c_PICS_Z3_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z3_D1_Hx, + traces := c_PICS_Z3_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z3_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z3_D1 + + } // End of group denmZone3_D1 + + group denmZone3_D2 { + + /** + * @desc Z3-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z3_D2_EP := { + latitude := 435543599, // Z3-D2-EP/latitude + longitude := 103041247, // Z3-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z3_D2_EP + + /** + * @desc Z3-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z3_D2_Hx := { + { // Z3_D2_H1 + eventPosition := { + deltaLatitude := 1910, + deltaLongitude := 2225, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z3_D2_H2 + eventPosition := { + deltaLatitude := 4675, + deltaLongitude := -6121, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z3_D2_Hx + + /** + * @desc Z3-D2-Traces/Trace2 + */ + const Traces c_PICS_Z3_D2_Tx := { + { + { // Z3-D2-T1 + pathPosition := { + deltaLatitude := -3929, + deltaLongitude := -5291, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D2-T2 + pathPosition := { + deltaLatitude := -461, + deltaLongitude := -575, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D2-T3 + pathPosition := { + deltaLatitude := -460, + deltaLongitude := -576, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D2-T4 + pathPosition := { + deltaLatitude := -494, + deltaLongitude := -996, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D2-T5 + pathPosition := { + deltaLatitude := -511, + deltaLongitude := -719, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z3_D2_Tx + + const DenmParm c_PICS_Z3_D2 := { + eventPosition := c_PICS_Z3_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z3_D2_Hx, + traces := c_PICS_Z3_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z3_D2 + + } // End of group denmZone3_D2 + + group denmZone3_D3 { + + /** + * @desc Z3-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z3_D3_EP := { + latitude := 435550184, // Z3-D3-EP/latitude + longitude := 103037351, // Z3-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z3_D3_EP + + /** + * @desc Z3-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z3_D3_Hx := { + { // Z3_D3_H1 + eventPosition := { + deltaLatitude := 1279, + deltaLongitude := -2037, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z3_D3_H2 + eventPosition := { + deltaLatitude := 1482, + deltaLongitude := -2136, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z3_D3_Hx + + /** + * @desc Z3-D3-Traces/Trace1 + */ + const Traces c_PICS_Z3_D3_Tx := { + { + { // Z3-D3-T1 + pathPosition := { + deltaLatitude := -3578, + deltaLongitude := 6055, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D3-T2 + pathPosition := { + deltaLatitude := -527, + deltaLongitude := 155, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D3-T3 + pathPosition := { + deltaLatitude := -1162, + deltaLongitude := 532, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z3-D3-T4 + pathPosition := { + deltaLatitude := -752, + deltaLongitude := -885, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z3_D3_Tx + + const DenmParm c_PICS_Z3_D3 := { + eventPosition := c_PICS_Z3_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z3_D3_Hx, + traces := c_PICS_Z3_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToLeft, + referenceDenms := omit + } + } // End of c_PICS_Z3_D3 + + } // group denmZone3_D3 + + } // group denmZone3 + + group denmZone4 { + + group denmZone4_D1 { + + /** + * @desc Z4-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z4_D1_POS0 := { + deltaLatitude := -3325, + deltaLongitude := -4184, + deltaAltitude := 0 + }; // End of c_PICS_Z4_D1_POS0 + + /** + * @desc Z4-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z4_D1_EP := { + latitude := 435562873, // Z4-D1-EP/latitude + longitude := 103041679, // Z4-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z4_D1_EP + + /** + * @desc Z4-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z4_D1_Hx := { + { // Z4_D1_H1 + eventPosition := { + deltaLatitude := 1817, + deltaLongitude := 5988, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z4_D1_H2 + eventPosition := { + deltaLatitude := 2484, + deltaLongitude := 4406, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z4_D1_Hx + + /** + * @desc Z4-D1-Traces/Trace1 + */ + const Traces c_PICS_Z4_D1_Tx := { + { + { // Z4-D1-T1 + pathPosition := { + deltaLatitude := -6894, + deltaLongitude := -8590, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D1-T2 + pathPosition := { + deltaLatitude := -587, + deltaLongitude := -598, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D1-T3 + pathPosition := { + deltaLatitude := -471, + deltaLongitude := -453, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D1-T4 + pathPosition := { + deltaLatitude := -565, + deltaLongitude := -244, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D1-T5 + pathPosition := { + deltaLatitude := -340, + deltaLongitude := 199, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z4_D1_Tx + + const DenmParm c_PICS_Z4_D1 := { + eventPosition := c_PICS_Z4_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z4_D1_Hx, + traces := c_PICS_Z4_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z4_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z4_D1 + + } // End of group denmZone4_D1 + + group denmZone4_D2 { + + /** + * @desc Z4-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z4_D2_EP := { + latitude := 435567174, // Z4-D2-EP/latitude + longitude := 103052073, // Z4-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z4_D2_EP + + /** + * @desc Z4-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z4_D2_Hx := { + { // Z4_D2_H1 + eventPosition := { + deltaLatitude := 3300, + deltaLongitude := 4505, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z4_D2_H2 + eventPosition := { + deltaLatitude := 3078, + deltaLongitude := 4173, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z4_D2_Hx + + /** + * @desc Z4-D2-Traces/Trace2 + */ + const Traces c_PICS_Z4_D2_Tx := { + { + { // Z4-D2-T1 + pathPosition := { + deltaLatitude := -3022, + deltaLongitude := -6896, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D2-T2 + pathPosition := { + deltaLatitude := -171, + deltaLongitude := -919, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D2-T3 + pathPosition := { + deltaLatitude := -197, + deltaLongitude := -653, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D2-T4 + pathPosition := { + deltaLatitude := -258, + deltaLongitude := -675, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D2-T5 + pathPosition := { + deltaLatitude := -258, + deltaLongitude := -676, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z4_D2_Tx + + const DenmParm c_PICS_Z4_D2 := { + eventPosition := c_PICS_Z4_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z4_D2_Hx, + traces := c_PICS_Z4_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z4_D2 + + } // End of group denmZone4_D2 + + group denmZone4_D3 { + + /** + * @desc Z4-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z4_D3_EP := { + latitude := 435573552, // Z4-D3-EP/latitude + longitude := 103060751, // Z4-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z4_D3_EP + + /** + * @desc Z4-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z4_D3_Hx := { + { // Z4_D3_H1 + eventPosition := { + deltaLatitude := 2629, + deltaLongitude := 3476, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z4_D3_H2 + eventPosition := { + deltaLatitude := 1984, + deltaLongitude := 2181, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z4_D3_Hx + + /** + * @desc Z4-D3-Traces/Trace1 + */ + const Traces c_PICS_Z4_D3_Tx := { + { + { // Z4-D3-T1 + pathPosition := { + deltaLatitude := -4167, + deltaLongitude := -5534, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D3-T2 + pathPosition := { + deltaLatitude := -450, + deltaLongitude := -698, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D3-T3 + pathPosition := { + deltaLatitude := -510, + deltaLongitude := -719, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z4-D3-T4 + pathPosition := { + deltaLatitude := -393, + deltaLongitude := -653, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z4_D3_Tx + + const DenmParm c_PICS_Z4_D3 := { + eventPosition := c_PICS_Z4_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z4_D3_Hx, + traces := c_PICS_Z4_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z4_D3 + + } // group denmZone4_D3 + + } // group denmZone4 + + group denmZone5 { + + group denmZone5_D1 { + + /** + * @desc Z5-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z5_D1_POS0 := { + deltaLatitude := 3984, + deltaLongitude := 4085, + deltaAltitude := 0 + }; // End of c_PICS_Z5_D1_POS0 + + /** + * @desc Z5-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z5_D1_EP := { + latitude := 435574984, // Z5-D1-EP/latitude + longitude := 103061238, // Z5-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z5_D1_EP + + /** + * @desc Z5-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z5_D1_Hx := { + { // Z5_D1_H1 + eventPosition := { + deltaLatitude := -3178, + deltaLongitude := -4461, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z5_D1_H2 + eventPosition := { + deltaLatitude := -3255, + deltaLongitude := -4339, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z5_D1_Hx + + /** + * @desc Z5-D1-Traces/Trace1 + */ + const Traces c_PICS_Z5_D1_Tx := { + { + { // Z5-D1-T1 + pathPosition := { + deltaLatitude := 10830, + deltaLongitude := 4285, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D1-T2 + pathPosition := { + deltaLatitude := 729, + deltaLongitude := -255, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D1-T3 + pathPosition := { + deltaLatitude := 754, + deltaLongitude := -443, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D1-T4 + pathPosition := { + deltaLatitude := 592, + deltaLongitude := -155, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D1-T5 + pathPosition := { + deltaLatitude := 734, + deltaLongitude := 321, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z5_D1_Tx + + const DenmParm c_PICS_Z5_D1 := { + eventPosition := c_PICS_Z5_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z5_D1_Hx, + traces := c_PICS_Z5_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z5_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z5_D1 + + } // End of group denmZone5_D1 + + group denmZone5_D2 { + + /** + * @desc Z5-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z5_D2_EP := { + latitude := 435568551, // Z5-D2-EP/latitude + longitude := 103052438, // Z5-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z5_D2_EP + + /** + * @desc Z5-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z5_D2_Hx := { + { // Z5_D2_H1 + eventPosition := { + deltaLatitude := -2673, + deltaLongitude := -4372, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z5_D2_H2 + eventPosition := { + deltaLatitude := -703, + deltaLongitude := -6930, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z5_D2_Hx + + /** + * @desc Z5-D2-Traces/Trace2 + */ + const Traces c_PICS_Z5_D2_Tx := { + { + { // Z5-D2-T1 + pathPosition := { + deltaLatitude := 3869, + deltaLongitude := 5325, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D2-T2 + pathPosition := { + deltaLatitude := 637, + deltaLongitude := 741, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D2-T3 + pathPosition := { + deltaLatitude := 561, + deltaLongitude := 864, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D2-T4 + pathPosition := { + deltaLatitude := 575, + deltaLongitude := 719, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D2-T5 + pathPosition := { + deltaLatitude := 511, + deltaLongitude := 720, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z5_D2_Tx + + const DenmParm c_PICS_Z5_D2 := { + eventPosition := c_PICS_Z5_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z5_D2_Hx, + traces := c_PICS_Z5_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z5_D2 + + } // End of group denmZone5_D2 + + group denmZone5_D3 { + + /** + * @desc Z5-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z5_D3_EP := { + latitude := 435565175, // Z5-D3-EP/latitude + longitude := 103041136, // Z5-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z5_D3_EP + + /** + * @desc Z5-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z5_D3_Hx := { + { // Z5_D3_H1 + eventPosition := { + deltaLatitude := -2151, + deltaLongitude := -3121, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z5_D3_H2 + eventPosition := { + deltaLatitude := -2343, + deltaLongitude := -2413, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z5_D3_Hx + + /** + * @desc Z5-D3-Traces/Trace1 + */ + const Traces c_PICS_Z5_D3_Tx := { + { + { // Z5-D3-T1 + pathPosition := { + deltaLatitude := 1334, + deltaLongitude := 8424, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D3-T2 + pathPosition := { + deltaLatitude := 450, + deltaLongitude := 697, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D3-T3 + pathPosition := { + deltaLatitude := 510, + deltaLongitude := 720, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z5-D3-T4 + pathPosition := { + deltaLatitude := 511, + deltaLongitude := 719, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z5_D3_Tx + + const DenmParm c_PICS_Z5_D3 := { + eventPosition := c_PICS_Z5_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z5_D3_Hx, + traces := c_PICS_Z5_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToLeft, + referenceDenms := omit + } + } // End of c_PICS_Z5_D3 + + } // group denmZone5_D3 + + } // group denmZone5 + + group denmZone6 { + + group denmZone6_D1 { + + /** + * @desc Z6-D1-EP/POS0 + */ + const DeltaReferencePosition c_PICS_Z6_D1_POS0 := { + deltaLatitude := 2738, + deltaLongitude := -3929, + deltaAltitude := 0 + }; // End of c_PICS_Z6_D1_POS0 + + /** + * @desc Z6-D1-EP/POS1 + */ + const ReferencePosition c_PICS_Z6_D1_EP := { + latitude := 435549548, // Z6-D1-EP/latitude + longitude := 103036609, // Z6-D1-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z6_D1_EP + + /** + * @desc Z6-D1-EP/EventHistory1 + */ + const EventHistory c_PICS_Z6_D1_Hx := { + { // Z6_D1_H1 + eventPosition := { + deltaLatitude := -2399, + deltaLongitude := 2347, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z6_D1_H2 + eventPosition := { + deltaLatitude := -4549, + deltaLongitude := -6309, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z6_D1_Hx + + /** + * @desc Z6-D1-Traces/Trace1 + */ + const Traces c_PICS_Z6_D1_Tx := { + { + { // Z6-D1-T1 + pathPosition := { + deltaLatitude := 4977, + deltaLongitude := -7317, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D1-T2 + pathPosition := { + deltaLatitude := 264, + deltaLongitude := -77, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D1-T3 + pathPosition := { + deltaLatitude := 263, + deltaLongitude := -78, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D1-T4 + pathPosition := { + deltaLatitude := 131, + deltaLongitude := 0, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D1-T5 + pathPosition := { + deltaLatitude := 803, + deltaLongitude := 299, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z6_D1_Tx + + const DenmParm c_PICS_Z6_D1 := { + eventPosition := c_PICS_Z6_D1_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z6_D1_Hx, + traces := c_PICS_Z6_D1_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0001'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := c_PICS_Z6_D1_POS0, + trafficFlowRule := passToRight, + referenceDenms := omit + } + } // End of c_PICS_Z6_D1 + + } // End of group denmZone6_D1 + + group denmZone6_D2 { + + /** + * @desc Z6-D2-EP/POS2 + */ + const ReferencePosition c_PICS_Z6_D2_EP := { + latitude := 435542600, // Z6-D2-EP/latitude + longitude := 103032647, // Z6-D2-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z6_D2_EP + + /** + * @desc Z6-D2-EP/EventHistory2 + */ + const EventHistory c_PICS_Z6_D2_Hx := { + { // Z6_D2_H1 + eventPosition := { + deltaLatitude := -2465, + deltaLongitude := -3601, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z6_D2_H2 + eventPosition := { + deltaLatitude := -3375, + deltaLongitude := -4701, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z6_D2_Hx + + /** + * @desc Z6-D2-Traces/Trace2 + */ + const Traces c_PICS_Z6_D2_Tx := { + { + { // Z6-D2-T1 + pathPosition := { + deltaLatitude := 3966, + deltaLongitude := 5689, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D2-T2 + pathPosition := { + deltaLatitude := 583, + deltaLongitude := 620, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D2-T3 + pathPosition := { + deltaLatitude := 780, + deltaLongitude := -111, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D2-T4 + pathPosition := { + deltaLatitude := 412, + deltaLongitude := -299, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D2-T5 + pathPosition := { + deltaLatitude := 373, + deltaLongitude := -564, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z6_D2_Tx + + const DenmParm c_PICS_Z6_D2 := { + eventPosition := c_PICS_Z6_D2_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z6_D2_Hx, + traces := c_PICS_Z6_D2_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := availableForDriving, + drivingLaneStatus := '0011'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToRight, + referenceDenms := omit + } + + } // End of c_PICS_Z6_D2 + + } // End of group denmZone6_D2 + + group denmZone6_D3 { + + /** + * @desc Z6-D3-EP/POS3 + */ + const ReferencePosition c_PICS_Z6_D3_EP := { + latitude := 435536760, // Z6-D3-EP/latitude + longitude := 103024345, // Z6-D3-EP/longitude + positionConfidenceEllipse := c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE, + altitude := c_PICS_DENM_ALTITUDE + }; // End of c_PICS_Z6_D3_EP + + /** + * @desc Z6-D3-EP/EventHistory1 + */ + const EventHistory c_PICS_Z6_D3_Hx := { + { // Z6_D3_H1 + eventPosition := { + deltaLatitude := -1685, + deltaLongitude := -2568, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + }, + { // Z6_D3_H2 + eventPosition := { + deltaLatitude := -1864, + deltaLongitude := -2789, + deltaAltitude := 0 + }, + eventDeltaTime := omit, + informationQuality := 0 + } + }; // End of c_PICS_Z6_D3_Hx + + /** + * @desc Z6-D3-Traces/Trace1 + */ + const Traces c_PICS_Z6_D3_Tx := { + { + { // Z6-D3-T1 + pathPosition := { + deltaLatitude := 4423, + deltaLongitude := 6287, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D3-T2 + pathPosition := { + deltaLatitude := 287, + deltaLongitude := 332, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D3-T3 + pathPosition := { + deltaLatitude := 400, + deltaLongitude := 554, + deltaAltitude := 0 + }, + pathDeltaTime := omit + }, + { // Z6-D3-T4 + pathPosition := { + deltaLatitude := 395, + deltaLongitude := 575, + deltaAltitude := 0 + }, + pathDeltaTime := omit + } + } + }; // End of c_PICS_Z6_D3_Tx + + const DenmParm c_PICS_Z6_D3 := { + eventPosition := c_PICS_Z6_D3_EP, + causeCodeType := CauseCodeType_roadworks_, + eventHistory := c_PICS_Z6_D3_Hx, + traces := c_PICS_Z6_D3_Tx, + roadWorksContainerExtended := { + lightBarSirenInUse := omit, + closedLanes := { + hardShoulderStatus := closed, + drivingLaneStatus := '0100'B + }, + restriction := omit, + speedLimit := c_PICS_SPEED_LIMIT, + incidentIndication := omit, + recommendedPath := omit, + startingPointSpeedLimit := omit, + trafficFlowRule := passToLeft, + referenceDenms := omit + } + } // End of c_PICS_Z6_D3 + + } // group denmZone6_D3 + + } // group denmZone6 + + const DenmEventsParmsUseCase c_PICS_DENM_PARMS_UC1_RWW := { + { // Zone 1 + c_PICS_Z1_D1, + c_PICS_Z1_D2, + c_PICS_Z1_D3 + }, + { // Zone 2 + c_PICS_Z2_D1, + c_PICS_Z2_D2, + c_PICS_Z2_D3 + }, + { // Zone 3 + c_PICS_Z3_D1, + c_PICS_Z3_D2, + c_PICS_Z3_D3 + }, + { // Zone 4 + c_PICS_Z4_D1, + c_PICS_Z4_D2, + c_PICS_Z4_D3 + }, + { // Zone 5 + c_PICS_Z5_D1, + c_PICS_Z5_D2, + c_PICS_Z5_D3 + }, + { // Zone 6 + c_PICS_Z6_D1, + c_PICS_Z6_D2, + c_PICS_Z6_D3 + } + } // End of c_PICS_DENM_PARMS_UC1_RWW + + } // End of group denmUseCase1 + + } // End of group denmEvents + + group mapemEvents { + + group mapemCommonParams { + + const BtpPortId c_PICS_MAPEM_BTP_DESTINATION_PORT := 2003; + + const BtpPortId c_PICS_MAPEM_BTP_SOURCE_PORT := 0; + + const UInt32 c_PICS_MAPEM_ITS_AID := 138; + + } // End of group mapemCommonParams + + group mapemZone1 { + + const IntersectionReferenceID c_PICS_Z1_M1_SL_IDX := { + region := 1, + id := 13001 + } // End of c_PICS_Z1_M1_SL_IDX + + const Position3D c_PICS_Z1_M1_SL_RP := { + lat := 435527493, + long := 103006446, + elevation := omit, + regional := omit + } // End of c_PICS_Z1_M1_SL_RP + + const NodeListXY c_PICS_Z1_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := 83, + y := -124 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 1696, + y := 1555 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 1251, + y := 1111 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 1326, + y := 1026 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 1471, + y := 304 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z1_M1_SL_LANE1 + + const NodeListXY c_PICS_Z1_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := -109, + y := -348 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2926, + y := -2636 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z1_M1_SL_LANE20 + + const MapemParm c_PICS_Z1_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z1_M1_SL", + id := c_PICS_Z1_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z1_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z1_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z1_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z1_M1_SL + + } // End of group mapemZone1 + + group mapemZone2 { + + const IntersectionReferenceID c_PICS_Z2_M1_SL_IDX := { + region := 1, + id := 23001 + } // End of c_PICS_Z2_M1_SL_IDX + + const Position3D c_PICS_Z2_M1_SL_RP := { + lat := 435512756, + long := 103002535, + elevation := omit, + regional := omit + } // End of c_PICS_Z2_M1_SL_RP + + const NodeListXY c_PICS_Z2_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := -5, + y := -253 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -5082, + y := -701 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -1984, + y := -341 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -1965, + y := -390 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -3093, + y := -391 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z2_M1_SL_LANE10 + + const NodeListXY c_PICS_Z2_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := 287, + y := -200 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 2988, + y := 429 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z2_M1_SL_LANE20 + + const MapemParm c_PICS_Z2_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z2_M1_SL", + id := c_PICS_Z2_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z2_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z2_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z2_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z2_M1_SL + + } // End of group mapemZone2 + + group mapemZone3 { + + const IntersectionReferenceID c_PICS_Z3_M1_SL_IDX := { + region := 1, + id := 33001 + } // End of c_PICS_Z3_M1_SL_IDX + + const Position3D c_PICS_Z3_M1_SL_RP := { + lat := 435536609, + long := 103031286, + elevation := omit, + regional := omit + } // End of c_PICS_Z3_M1_SL_RP + + const NodeListXY c_PICS_Z3_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := -240, + y := -460 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -3319, + y := -3078 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -1299, + y := -625 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -3597, + y := -564 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2191, + y := -1668 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z3_M1_SL_LANE10 + + const NodeListXY c_PICS_Z3_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := 552, + y := 232 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 3778, + y := 3636 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z3_M1_SL_LANE20 + + const MapemParm c_PICS_Z3_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z3_M1_SL", + id := c_PICS_Z3_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z3_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z3_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z3_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z3_M1_SL + + } // End of group mapemZone3 + + group mapemZone4 { + + const IntersectionReferenceID c_PICS_Z4_M1_SL_IDX := { + region := 1, + id := 43001 + } // End of c_PICS_Z4_M1_SL_IDX + + const Position3D c_PICS_Z4_M1_SL_RP := { + lat := 435563484, + long := 103042973, + elevation := omit, + regional := omit + } // End of c_PICS_Z4_M1_SL_RP + + const NodeListXY c_PICS_Z4_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := -37, + y := 40 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -4376, + y := -4428 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2378, + y := -2588 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2191, + y := -2842 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 1100, + y := -1934 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z4_M1_SL_LANE10 + + const NodeListXY c_PICS_Z4_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := 3170, + y := 1134 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 2579, + y := 1415 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z4_M1_SL_LANE20 + + const MapemParm c_PICS_Z4_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z4_M1_SL", + id := c_PICS_Z4_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z4_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z4_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z4_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z4_M1_SL + + } // End of group mapemZone4 + + group mapemZone5 { + + const IntersectionReferenceID c_PICS_Z5_M1_SL_IDX := { + region := 1, + id := 53001 + } // End of c_PICS_Z5_M1_SL_IDX + + const Position3D c_PICS_Z5_M1_SL_RP := { + lat := 435578537, + long := 103061555, + elevation := omit, + regional := omit + } // End of c_PICS_Z5_M1_SL_RP + + const NodeListXY c_PICS_Z5_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := 446, + y := -183 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 2217, + y := 2119 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 792, + y := 1744 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -70, + y := 2749 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -382, + y := 2467 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z5_M1_SL_LANE10 + + const NodeListXY c_PICS_Z5_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := -134, + y := -795 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2408, + y := -2491 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z5_M1_SL_LANE20 + + const MapemParm c_PICS_Z5_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z5_M1_SL", + id := c_PICS_Z5_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z5_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z5_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z5_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z5_M1_SL + + } // End of group mapemZone5 + + group mapemZone6 { + + const IntersectionReferenceID c_PICS_Z6_M1_SL_IDX := { + region := 1, + id := 63001 + } // End of c_PICS_Z6_M1_SL_IDX + + const Position3D c_PICS_Z6_M1_SL_RP := { + lat := 435551186, + long := 103033248, + elevation := omit, + regional := omit + } // End of c_PICS_Z6_M1_SL_RP + + const NodeListXY c_PICS_Z6_M1_SL_LANE10 := { + nodes := { + { + delta := { + node_XY6 := { + x := 538, + y := 348 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -2933, + y := 2469 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := -840, + y := 1203 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 573, + y := 1870 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 2043, + y := 2312 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z6_M1_SL_LANE10 + + const NodeListXY c_PICS_Z6_M1_SL_LANE20 := { + nodes := { + { + delta := { + node_XY6 := { + x := 1175, + y := -327 + } + }, + attributes := omit + }, + { + delta := { + node_XY6 := { + x := 2984, + y := -2781 + } + }, + attributes := omit + } + } + } // End of c_PICS_Z6_M1_SL_LANE20 + + const MapemParm c_PICS_Z6_M1_SL := { + intersections := { + { // Start of intersection #0 + name := "PICS_Z6_M1_SL", + id := c_PICS_Z6_M1_SL_IDX, + revision := 0, + refPoint := c_PICS_Z6_M1_SL_RP, + laneWidth := omit, + speedLimits := omit, + laneSet := { + { // Start of Lane #1 + laneID := 10, + name := omit, + ingressApproach := 1, + egressApproach := omit, + laneAttributes := { + directionalUse := '10'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z6_M1_SL_LANE10, + connectsTo := { + { + connectingLane := { + lane := 20, + maneuver := omit + }, + remoteIntersection := omit, + signalGroup := 50, + userClass := omit, + connectionID := omit + } + }, + overlays := omit, + regional := omit + }, // End of Lane #1 + { // Start of Lane #2 + laneID := 20, + name := omit, + ingressApproach := omit, + egressApproach := 2, + laneAttributes := { + directionalUse := '01'B, + sharedWith := '0000000000'B, + laneType := { + vehicle := '00000000'B + }, + regional := omit + }, + maneuvers := omit, + nodeList := c_PICS_Z6_M1_SL_LANE20, + connectsTo := omit, + overlays := omit, + regional := omit + } // End of Lane #2 + }, // End of LaneSet + preemptPriorityData := omit, + regional := omit + } // End of intersection #0 + }, // End of field intersections + roadSegments := omit + } // End of c_PICS_Z6_M1_SL + + } // End of group mapemZone6 + + } // End of group mapemEvents + + group spatemEvents { + + group spatemCommonParams { + + const BtpPortId c_PICS_SPATEM_BTP_DESTINATION_PORT := 2004; + + const BtpPortId c_PICS_SPATEM_BTP_SOURCE_PORT := 0; + + const UInt32 c_PICS_SPATEM_ITS_AID := 137; + + const UInt32 c_PICS_SPATEM_REPITITION_DURATION_STATE_10 := 10*10; // In units of 1/10th second + + const UInt32 c_PICS_SPATEM_REPITITION_DURATION_STATE_20 := 20*10; // In units of 1/10th second + + const UInt32 c_PICS_SPATEM_REPITITION_DURATION_STATE_30 := 30*10; // In units of 1/10th second + + const UInt32 c_PICS_SPATEM_REPITITION_DURATION_STATE_40 := 40*10; // In units of 1/10th second + + const UInt32 c_PICS_SPATEM_REPITITION_DURATION_STATE_50 := 50*10; // In units of 1/10th second + + } // End of group spatemCommonParams + + group spatemZone1 { + + const SignalGroupParm c_PICS_Z1_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z1_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z1_S1_SL + + const SignalGroupParmList c_PICS_Z1_S1_SL_LIST := { + c_PICS_Z1_S1_SL + } // End of type c_PICS_Z1_S1_SL_LIST + + } // End of group spatemZone1 + + group spatemZone2 { + + const SignalGroupParm c_PICS_Z2_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z2_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z2_S1_SL + + const SignalGroupParmList c_PICS_Z2_S1_SL_LIST := { + c_PICS_Z2_S1_SL + } // End of type c_PICS_Z2_S1_SL_LIST + + } // End of group spatemZone2 + + group spatemZone3 { + + const SignalGroupParm c_PICS_Z3_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z3_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z3_S1_SL + + const SignalGroupParmList c_PICS_Z3_S1_SL_LIST := { + c_PICS_Z3_S1_SL + } // End of type c_PICS_Z3_S1_SL_LIST + + } // End of group spatemZone3 + + group spatemZone4 { + + const SignalGroupParm c_PICS_Z4_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z4_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z4_S1_SL + + const SignalGroupParmList c_PICS_Z4_S1_SL_LIST := { + c_PICS_Z4_S1_SL + } // End of type c_PICS_Z4_S1_SL_LIST + + } // End of group spatemZone4 + + group spatemZone5 { + + const SignalGroupParm c_PICS_Z5_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z5_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z5_S1_SL + + const SignalGroupParmList c_PICS_Z5_S1_SL_LIST := { + c_PICS_Z5_S1_SL + } // End of type c_PICS_Z5_S1_SL_LIST + + } // End of group spatemZone5 + + group spatemZone6 { + + const SignalGroupParm c_PICS_Z6_S1_SL := { + signalGroupID := 1, + intersections := { + { + name := "PICS_SPATEM_PARMS_SG_50", + id := c_PICS_Z6_M1_SL_IDX, + revision := 0, + status := int2bit(0, 16), + moy := 0, // To be updated in real-time + timeStamp := 0, // To be updated in real-time + enabledLanes := omit, + states := { + { + movementName := "permissive-Movement-Allowed", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_Movement_Allowed, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "permissive-clearance", + signalGroup := 50, + state_time_speed:= { + { + eventState := permissive_clearance, + timing := { + startTime := 0, // To be updated in real-time + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + }, + { + movementName := "stop-And-Remain", + signalGroup := 50, + state_time_speed:= { + { + eventState := stop_And_Remain, + timing := { + startTime := omit, + minEndTime := 0, // To be updated in real-time + maxEndTime := omit, + likelyTime := omit, + confidence := omit, + nextTime := omit + }, + speeds := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + }, + maneuverAssistList := omit, + regional := omit + } + } // End of field states + } // End of type c_PICS_Z6_S1_SL + + const SignalGroupParmList c_PICS_Z6_S1_SL_LIST := { + c_PICS_Z6_S1_SL + } // End of type c_PICS_Z6_S1_SL_LIST + + } // End of group spatemZone6 + + } // End of group spatemEvents + + group ivimEvents { + + group ivimCommonParams { + + const BtpPortId c_PICS_IVIM_BTP_DESTINATION_PORT := 2006; + + const BtpPortId c_PICS_IVIM_BTP_SOURCE_PORT := 0; + + const UInt32 c_PICS_IVIM_ITS_AID := 139; + + const PosConfidenceEllipse c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE := { + semiMajorConfidence := SemiAxisLength_oneCentimeter_, + semiMinorConfidence := SemiAxisLength_oneCentimeter_, + semiMajorOrientation := 0 + } // End of c_PICS_DENM_POSITION_CONFIDENCE_ELLIPSE + + const Altitude c_PICS_IVIM_ALTITUDE := { + altitudeValue := AltitudeValue_referenceEllipsoidSurface_, + altitudeConfidence := alt_000_01 + } // End of c_PICS_DENM_ALTITUDE + + } // End of group ivimCommonParams + + group ivimZone1 { + + const ReferencePosition c_PICS_Z1_I1_POS1_RP := { + latitude := 435527493, + longitude := 103006446, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z1_I1_POS1_RP + + const GlcPart c_PICS_Z1_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -111, + deltaLongitude := 103 + }, + { + deltaLatitude := 287, + deltaLongitude := 475 + }, + { + deltaLatitude := 292, + deltaLongitude := 446 + }, + { + deltaLatitude := 412, + deltaLongitude := 609 + }, + { + deltaLatitude := 407, + deltaLongitude := 573 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z1_I1_POS1_GP_1 + + const GlcPart c_PICS_Z1_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -312, + deltaLongitude := -134 + }, + { + deltaLatitude := -575, + deltaLongitude := -822 + }, + { + deltaLatitude := -608, + deltaLongitude := -994 + }, + { + deltaLatitude := -660, + deltaLongitude := -1064 + }, + { + deltaLatitude := -525, + deltaLongitude := -746 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z1_I1_POS1_GP_2 + + const IvimParm c_PICS_Z1_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z1_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z1_I1_POS1_GP_1, + c_PICS_Z1_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z1_I1_POS1 + + } // End of group ivimZone1 + + group ivimZone2 { + + const ReferencePosition c_PICS_Z2_I1_POS1_RP := { + latitude := 435512756, + longitude := 103002535, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z2_I1_POS1_RP + + const GlcPart c_PICS_Z2_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -227, + deltaLongitude := -5 + }, + { + deltaLatitude := -146, + deltaLongitude := -1187 + }, + { + deltaLatitude := -109, + deltaLongitude := -1664 + }, + { + deltaLatitude := -141, + deltaLongitude := -1295 + }, + { + deltaLatitude := -233, + deltaLongitude := -2153 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z2_I1_POS1_GP_1 + + const GlcPart c_PICS_Z2_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -179, + deltaLongitude := 356 + }, + { + deltaLatitude := 100, + deltaLongitude := 891 + }, + { + deltaLatitude := 94, + deltaLongitude := 953 + }, + { + deltaLatitude := 87, + deltaLongitude := 930 + }, + { + deltaLatitude := 105, + deltaLongitude := 930 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z2_I1_POS1_GP_2 + + const IvimParm c_PICS_Z2_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z2_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z2_I1_POS1_GP_1, + c_PICS_Z2_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z2_I1_POS1 + + } // End of group ivimZone2 + + group ivimZone3 { + + const ReferencePosition c_PICS_Z3_I1_POS1_RP := { + latitude := 435533069, + longitude := 103024528, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z3_I1_POS1_RP + + const GlcPart c_PICS_Z3_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -294, + deltaLongitude := -141 + }, + { + deltaLatitude := -51, + deltaLongitude := -902 + }, + { + deltaLatitude := -40, + deltaLongitude := -1008 + }, + { + deltaLatitude := -116, + deltaLongitude := -908 + }, + { + deltaLatitude := -236, + deltaLongitude := -769 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z3_I1_POS1_GP_1 + + const GlcPart c_PICS_Z3_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -77, + deltaLongitude := 1495 + }, + { + deltaLatitude := 457, + deltaLongitude := 858 + }, + { + deltaLatitude := 711, + deltaLongitude := 1088 + }, + { + deltaLatitude := 844, + deltaLongitude := 1338 + }, + { + deltaLatitude := 591, + deltaLongitude := 821 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z3_I1_POS1_GP_2 + + const IvimParm c_PICS_Z3_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z3_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z3_I1_POS1_GP_1, + c_PICS_Z3_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z3_I1_POS1 + + } // End of group ivimZone3 + + group ivimZone4 { + + const ReferencePosition c_PICS_Z4_I1_POS1_RP := { + latitude := 435563484, + longitude := 103042973, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z4_I1_POS1_RP + + const GlcPart c_PICS_Z4_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := 36, + deltaLongitude := -45 + }, + { + deltaLatitude := -662, + deltaLongitude := -1245 + }, + { + deltaLatitude := -846, + deltaLongitude := -1164 + }, + { + deltaLatitude := -1328, + deltaLongitude := -1569 + }, + { + deltaLatitude := -1142, + deltaLongitude := -1446 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z4_I1_POS1_GP_1 + + const GlcPart c_PICS_Z4_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := 1019, + deltaLongitude := 3930 + }, + { + deltaLatitude := 189, + deltaLongitude := 774 + }, + { + deltaLatitude := 348, + deltaLongitude := 815 + }, + { + deltaLatitude := 366, + deltaLongitude := 934 + }, + { + deltaLatitude := 369, + deltaLongitude := 674 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z4_I1_POS1_GP_2 + + const IvimParm c_PICS_Z4_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z4_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z4_I1_POS1_GP_1, + c_PICS_Z4_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z4_I1_POS1 + + } // End of group ivimZone4 + + group ivimZone5 { + + const ReferencePosition c_PICS_Z5_I1_POS1_RP := { + latitude := 435582342, + longitude := 103065544, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z5_I1_POS1_RP + + const GlcPart c_PICS_Z5_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -9, + deltaLongitude := 354 + }, + { + deltaLatitude := 565, + deltaLongitude := -118 + }, + { + deltaLatitude := 848, + deltaLongitude := -39 + }, + { + deltaLatitude := 570, + deltaLongitude := 10 + }, + { + deltaLatitude := 567, + deltaLongitude := -121 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z5_I1_POS1_GP_1 + + const GlcPart c_PICS_Z5_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -866, + deltaLongitude := 340 + }, + { + deltaLatitude := -632, + deltaLongitude := -103 + }, + { + deltaLatitude := -756, + deltaLongitude := -132 + }, + { + deltaLatitude := -648, + deltaLongitude := -213 + }, + { + deltaLatitude := -471, + deltaLongitude := -115 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z5_I1_POS1_GP_2 + + const IvimParm c_PICS_Z5_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z5_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z5_I1_POS1_GP_1, + c_PICS_Z5_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z5_I1_POS1 + + } // End of group ivimZone5 + + group ivimZone6 { + + const ReferencePosition c_PICS_Z6_I1_POS1_RP := { + latitude := 435551186, + longitude := 103033248, + positionConfidenceEllipse := c_PICS_IVIM_POSITION_CONFIDENCE_ELLIPSE , + altitude := c_PICS_IVIM_ALTITUDE + } // End of c_PICS_Z6_I1_POS1_RP + + const GlcPart c_PICS_Z6_I1_POS1_GP_1 := { + zoneId := 1, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := 313, + deltaLongitude := 668 + }, + { + deltaLatitude := 548, + deltaLongitude := -879 + }, + { + deltaLatitude := 545, + deltaLongitude := -940 + }, + { + deltaLatitude := 529, + deltaLongitude := -824 + }, + { + deltaLatitude := 597, + deltaLongitude := -992 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z6_I1_POS1_GP_1 + + const GlcPart c_PICS_Z6_I1_POS1_GP_2 := { + zoneId := 2, + laneNumber := omit, + zoneExtension := omit, + zoneHeading := omit, + zone := { + segment := { + line := { + deltaPositions := { + { + deltaLatitude := -293, + deltaLongitude := 1457 + }, + { + deltaLatitude := -610, + deltaLongitude := 903 + }, + { + deltaLatitude := -716, + deltaLongitude := 1013 + }, + { + deltaLatitude := -587, + deltaLongitude := 945 + }, + { + deltaLatitude := -585, + deltaLongitude := 838 + } + } + }, + laneWidth := omit + } + } + } // End of c_PICS_Z6_I1_POS1_GP_2 + + const IvimParm c_PICS_Z6_I1_POS1 := { + provider := { + countryCode := '0000000001'B, + providerIdentifier := 13 + }, + iviIdentificationNumber := 12, + iviContainers := { + { + glc := { + referencePosition := c_PICS_Z6_I1_POS1_RP, + referencePositionTime := omit, + referencePositionHeading := omit, + referencePositionSpeed := omit, + parts := { + c_PICS_Z6_I1_POS1_GP_1, + c_PICS_Z6_I1_POS1_GP_2 + } + } + }, + { + giv := { + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 4, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := omit, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 57 + + } + }, + attributes := { + { + spe := { + spm := 30, + mns := omit, + unit := 0 + } + } + } + } + } + } + }, + extraText := omit + }, + { + detectionZoneIds := { + 1 + }, + its_Rrid := omit, + relevanceZoneIds := { + 2 + }, + direction := 0, //Direction_sameDirection_, + driverAwarenessZoneIds := omit, + minimumAwarenessTime := 15, + applicableLanes := omit, + iviType := 1, //IviType_regulatoryMessages_, + iviPurpose := omit, + laneStatus := omit, + vehicleCharacteristics := { + { + tractor := omit, + trailer := omit, + train := { + equalTo := { + { + euVehicleCategoryCode := { + euVehicleCategoryN := n2 + } + }, + { + euVehicleCategoryCode := { + euVehicleCategoryN := n3 + } + } + }, + notEqualTo := omit, + ranges := { + { + comparisonOperator := 0, // greaterThan + limits := { + vehicleWeightLimits := { + vehicleMaxLadenWeight := 0, + vehicleTrainMaximumWeight := 750, + vehicleWeightUnladen := 0 + } + } + } + } + } + } + }, + driverCharacteristics := omit, + layoutId := omit, + preStoredlayoutId := omit, + roadSignCodes := { + { + layoutComponentId := omit, + code := { + iso14823 := { + pictogramCode := { + countryCode := omit, + serviceCategoryCode := { + trafficSignPictogram := regulatory + }, + pictogramCategoryCode := { + nature := 5, + serialNumber := 44 + + } + }, + attributes := omit + } + } + } + }, + extraText := omit + } + } + } + } + } // End of c_PICS_Z6_I1_POS1 + + } // End of group ivimZone6 + + } // End of group ivimEvents + + group poimEvents { + + group poimCommonParams { + + const ItsChargingSpotDataElements c_PICS_CHARGING_SPOT_DATA_01 := { + type_ := '0'B,//standardChargeMode1 + evEquipmentID := omit, + typeOfReceptacle := '000'B, + energyAvailability := "all", + parkingPlacesData := omit + } // End of c_PICS_CHARGING_SPOT_DATA_01 + + } // End of group poimCommonParams + + group poimZone1 { + + const ReferencePosition c_PICS_POI_LOCATION_01 := { + latitude := 435582150, + longitude := 103065170, + positionConfidenceEllipse := { + semiMajorConfidence := 100, + semiMinorConfidence := 100, + semiMajorOrientation := 0 + }, + altitude := { + altitudeValue := AltitudeValue_referenceEllipsoidSurface_, + altitudeConfidence := alt_000_01 + } + } // End of c_PICS_POI_LOCATION_01 + + const ItsChargingStationData c_PICS_ITS_CHARGING := { + chargingStationID := 9876, + utilityDistributorId := omit, + providerID := omit, + chargingStationLocation := c_PICS_POI_LOCATION_01, + address_ := omit, + phoneNumber := omit, + accessibility := "open", + digitalMap := omit, + openingDaysHours := "full", + pricing := "2.00", + bookingContactInfo := omit, + payment := omit, + chargingSpotsAvailable := { c_PICS_CHARGING_SPOT_DATA_01 } + } // End of c_PICS_ITS_CHARGING + } // End of group poimZone1 + + } // End of group poimEvents + + group ssemEvents { + + group ssemCommonParams { + + const BtpPortId c_PICS_SSEM_BTP_DESTINATION_PORT := 2008; + + const BtpPortId c_PICS_SSEM_BTP_SOURCE_PORT := 0; + + } // End of group ssemCommonParams + + } // End of group ssemEvents + + group sremEvents { + + group sremCommonParams { + + const BtpPortId c_PICS_SREM_BTP_DESTINATION_PORT := 2007; + + const BtpPortId c_PICS_SREM_BTP_SOURCE_PORT := 0; + + } // End of group sremCommonParams + + } // End of group sremEvents + + group generationFrequencies { + + /** + * @desc Beacon frequency timer + */ + const float c_PICS_BEACON_FREQUENCY := 1.0; + + /** + * @desc CAM frequency timer + */ + const float c_PICS_CAM_FREQUENY := 1.0; + + /** + * @desc DENM frequency timer + */ + const float c_PICS_DENM_FREQUENY := int2float(c_PICS_DENM_REPETITION_INTERVAL) / 1000.0; + + /** + * @desc MAPEM frequency timer + */ + const float c_PICS_MAPEM_FREQUENY := 1.0; + + /** + * @desc SPATEMM frequency timer + */ + const float c_PICS_SPATEM_FREQUENY := 1.0; + + /** + * @desc IVIM frequency timer + */ + const float c_PICS_IVIM_FREQUENY := 1.0; + + } // End of group generationFrequencies + +} // End of module ItsRSUsSimulator_Pics \ No newline at end of file Index: AtsRSUsSimulator/ItsRSUsSimulator_Functions.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_Functions.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_Functions.ttcn (working copy) @@ -17,7 +17,7 @@ import from EVCSN_PDU_Descriptions language "ASN.1:1997" all; import from SREM_PDU_Descriptions language "ASN.1:1997" all; import from SSEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; // LibItsCommon import from LibItsCommon_Functions all; @@ -238,14 +238,14 @@ v_ivim := m_ivimParm( PICS_RSU_PARAMS[p_rsu_id].stationID, - m_ivimStructure( - m_iviManagementContainer( + valueof(m_ivimStructure( + valueof(m_iviManagementContainer( PICS_IVIM_PARMS_RSUs[p_rsu_id].provider, PICS_IVIM_PARMS_RSUs[p_rsu_id].iviIdentificationNumber, 0//IviStatus_new_ - ), + )), PICS_IVIM_PARMS_RSUs[p_rsu_id].iviContainers - )); + ))); // Update ivi status v_ivim.ivi.mandatory.validFrom := f_getCurrentTime(); v_ivim.ivi.mandatory.validTo := valueof(v_ivim.ivi.mandatory.validFrom) + 43200000; // 12hours @@ -266,7 +266,7 @@ ), m_itsEVCSNData( -, - { PICS_ITS_CHARGING } + { PICS_EVCSN_PARMS_RSUs[p_rsu_id] } ) )); // Update poi status @@ -295,7 +295,7 @@ m_denmPdu_rsu( PICS_RSU_PARAMS[p_rsu_id].stationID, m_denm( - v_denmParmContainers.managementContainer, + valueof(v_denmParmContainers.managementContainer), v_denmParmContainers.situationContainer, v_denmParmContainers.locationContainer ))); @@ -380,7 +380,7 @@ } // Build the messages value list for this RSU vc_rsuMessagesValueList[p_rsu_id] := - m_rsuProfile( + valueof(m_rsuProfile( v_beacon, v_cam, v_denms, @@ -389,7 +389,7 @@ v_ivim, v_evcsn, v_ssem - ); + )); if (PICS_RSU_PARAMS[p_rsu_id].geoShape == e_geoCircle) { vc_geoArea := { shape := e_geoCircle, @@ -449,7 +449,7 @@ p_payload := valueof( f_adaptPayload( - vc_rsuMessagesValueList[vc_rsu_id].beacon, + valueof(vc_rsuMessagesValueList[vc_rsu_id].beacon), 0, -, e_any @@ -631,7 +631,7 @@ ) runs on ItsRSUsSimulator { vc_rsuMessagesValueList[vc_rsu_id].evcsn.evcsn.poiHeader.timeStamp := f_getCurrentTime(); // Check if it is ITS or UTC time - log("vc_rsuMessagesValueList[vc_rsu_id].evcsn", valueof(vc_rsuMessagesValueList[vc_rsu_id].evcsn)); + log("vc_rsuMessagesValueList[vc_rsu_id].evcsn", vc_rsuMessagesValueList[vc_rsu_id].evcsn); p_payload := valueof( f_adaptPayload( bit2oct( Index: AtsRSUsSimulator/ItsRSUsSimulator_Pics.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_Pics.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_Pics.ttcn (working copy) @@ -14,9 +14,12 @@ import from EVCSN_PDU_Descriptions language "ASN.1:1997" all; import from SREM_PDU_Descriptions language "ASN.1:1997" all; import from SSEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; import from ElectronicRegistrationIdentificationVehicleDataModule language "ASN.1:1997" all; + // LibItsCommon + import from LibItsCommon_ASN1_NamedNumbers all; + // LibItsBtp import from LibItsBtp_TypesAndValues all; import from LibItsBtp_Templates all; @@ -433,23 +436,23 @@ modulepar integer SIMULTANEOUS_VEHICLE_NUM := 10; + modulepar LongPosVector PICS_UC6_VEHICLE_TEMPLATE_POSITION := { + gnAddr := { + typeOfAddress := e_manual, + stationType := e_passengerCar, + stationCountryCode := 33, + mid := '001C6B0D02FF'O + }, + timestamp_ := 0, + latitude := 0, + longitude := 0, + pai := '0'B, + speed := 30, + heading := 0 + } // End of PICS_UC6_VEHICLE_POSITION + group camUseCase6VehicleTemplateDescription { - modulepar LongPosVector PICS_UC6_VEHICLE_TEMPLATE_POSITION := { - gnAddr := { - typeOfAddress := e_manual, - stationType := e_passengerCar, - stationCountryCode := 33, - mid := '001C6B0D02FF'O - }, - timestamp_ := 0, - latitude := 0, - longitude := 0, - pai := '0'B, - speed := 30, - heading := 0 - } // End of PICS_UC6_VEHICLE_POSITION - modulepar GeoArea PICS_UC6_VEHICLE_TEMPLATE_GEOAREA := { shape := e_geoElip, area := { @@ -585,7 +588,7 @@ } // End of PICS_UC9_PCZ_1 modulepar ProtectedCommunicationZonesRSU PICS_UC9_PCZ := { - PICS_UC9_PCZ_1 + c_PICS_USECASE9_PCZ_1 } // End of PICS_UC9_PCZ } // End of group camUseCase9 @@ -974,8 +977,7 @@ deltaAltitude := 0 }, trafficFlowRule := passToLeft, - referenceDenms := { - } + referenceDenms := omit } } // End of PICS_Z1_D3 @@ -4221,8 +4223,8 @@ } // End of PICS_DENM_POSITION_CONFIDENCE_ELLIPSE modulepar Altitude PICS_IVIM_ALTITUDE := { - altitudeValue := AltitudeValue_referenceEllipsoidSurface_, - altitudeConfidence := alt_000_01 + altitudeValue := AltitudeValue_referenceEllipsoidSurface_, + altitudeConfidence := alt_000_01 } // End of PICS_DENM_ALTITUDE } // End of group ivimCommonParams @@ -5661,50 +5663,10 @@ modulepar UInt32 PICS_EVCSN_ITS_AID := 100; // FIXME Find the correct value - modulepar ItsChargingSpotDataElements PICS_CHARGING_SPOT_DATA_01 := { - type_ := ChargingSpotType_standardOrFastChargeMode3_, - evEquipmentID := omit, - typeOfReceptacle := '000'B, - energyAvailability := "all", - parkingPlacesData := omit - } // End of PICS_CHARGING_SPOT_DATA_01 - } // End of group poimCommonParams - group poimZone1 { - - modulepar ReferencePosition PICS_POI_LOCATION_01 := { - latitude := 435582150, - longitude := 103065170, - positionConfidenceEllipse := { - semiMajorConfidence := 100, - semiMinorConfidence := 100, - semiMajorOrientation := 0 - }, - altitude := { - altitudeValue := AltitudeValue_referenceEllipsoidSurface_, - altitudeConfidence := alt_000_01 - } - } // End of PICS_POI_LOCATION_01 - - modulepar ItsChargingStationData PICS_ITS_CHARGING := { - chargingStationID := 9876, - utilityDistributorId := omit, - providerID := omit, - chargingStationLocation := PICS_POI_LOCATION_01, - address_ := omit, - phoneNumber := omit, - accessibility := "open", - digitalMap := omit, - openingDaysHours := "full", - pricing := "2.00", - bookingContactInfo := omit, - payment := omit, - chargingSpotsAvailable := { PICS_CHARGING_SPOT_DATA_01 } - } - } modulepar PoimParmListRsu PICS_EVCSN_PARMS_RSUs := { - PICS_ITS_CHARGING // RSU #1 + c_PICS_ITS_CHARGING // RSU #1 } } // End of group poimEvents @@ -5750,7 +5712,7 @@ /** * @desc DENM frequency timer */ - modulepar float PICS_DENM_FREQUENCY := int2float(PICS_DENM_REPETITION_INTERVAL) / 1000.0; + modulepar float PICS_DENM_FREQUENCY := int2float(c_PICS_DENM_REPETITION_INTERVAL) / 1000.0; /** * @desc MAPEM frequency timer Index: AtsRSUsSimulator/ItsRSUsSimulator_Templates.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_Templates.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_Templates.ttcn (working copy) @@ -2,6 +2,7 @@ // LibCommon import from LibCommon_BasicTypesAndValues all; + import from LibCommon_DataStrings all; // LibIts import from ITS_Container language "ASN.1:1997" all; @@ -13,11 +14,11 @@ import from IVI language "ASN.1:1997" all; import from EVCSN_PDU_Descriptions language "ASN.1:1997" all; import from SSEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; // LibItsCommon import from LibItsCommon_Functions all; - import from LibCommon_DataStrings all; + import from LibItsCommon_ASN1_NamedNumbers all; // LibItsGeoNetworking import from LibItsGeoNetworking_TestSystem all; @@ -400,21 +401,21 @@ } template (value) ItsPOIHeader m_itsPOIHeader( - in template (value) POIType p_poiType := 1, + in template (value) POIType p_poiType := 1, in template (value) TimestampIts p_timeStamp, - in template (value) boolean p_relayCapable := true + in template (value) boolean p_relayCapable := true ) := { - poiType := p_poiType, + poiType := p_poiType, timeStamp := p_timeStamp, - relayCapable := p_relayCapable + relayCapable := p_relayCapable } template (value) ItsEVCSNData m_itsEVCSNData( - in template (value) NumberStations p_totalNumberOfStations := 1, - in template (value) ItsChargingStationDatas p_itsChargingStationDatas + in template (value) NumberStations p_totalNumberOfStations := 1, + in template (value) ItsEVCSNData.chargingStationsData p_chargingStationsData ) := { - totalNumberOfStations := p_totalNumberOfStations, - chargingStationsData := p_itsChargingStationDatas + totalNumberOfStations := p_totalNumberOfStations, + chargingStationsData := p_chargingStationsData } } // End of group evcsnTemplates Index: AtsRSUsSimulator/ItsRSUsSimulator_TestCases.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_TestCases.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_TestCases.ttcn (working copy) @@ -140,7 +140,7 @@ [vc_spatem == true] tc_spatem.timeout { log("*** " & testcasename() & ": DEBUG: Processing SPATEM ***"); for (var integer v_counter := 0; v_counter < lengthof(vc_rsuMessagesValueList[PX_RSU_ID - 1].spatems); v_counter := v_counter + 1) { - f_prepare_spatem(vc_rsuMessagesValueList[PX_RSU_ID - 1].spatems[v_counter], v_payload); + f_prepare_spatem(valueof(vc_rsuMessagesValueList[PX_RSU_ID - 1].spatems[v_counter]), v_payload); f_send(v_payload, PICS_SPATEM_ITS_AID); } tc_spatem.start; @@ -180,7 +180,7 @@ */ testcase TC_RSUSIMU_BV_02() runs on ItsRSUsSimulator system ItsRSUsSimulatorSystem { // Local variables - const RectangularRegions c_detectionArea := { PICS_UC6_CAM_DETECTION_AREA_Z2 }; // PICS_UC6_CAM_DETECTION_AREA_Z1 +// const RectangularRegions c_detectionArea := { PICS_UC6_CAM_DETECTION_AREA_Z2 }; // PICS_UC6_CAM_DETECTION_AREA_Z1 var VehiclesSimulator v_vehicles := {}; var integer v_stationID; var boolean v_isInDetectionZone; @@ -191,7 +191,7 @@ var CfEvent v_cfEvent; // Test control - if (f_isLocationInsideRectangularRegion(c_detectionArea, PICS_UC6_COLLISION_POINT_Z2) == false) { //PICS_UC6_COLLISION_POINT_Z1 + if (f_isLocationInsideRectangularRegion({ PICS_UC6_CAM_DETECTION_AREA_Z2 }/*c_detectionArea*/, PICS_UC6_COLLISION_POINT_Z2) == false) { //PICS_UC6_COLLISION_POINT_Z1 log("Collision location is outside of the area"); stop; } @@ -339,7 +339,7 @@ ) runs on ItsRSUsSimulator { // Local variables - const RectangularRegions c_detectionArea := { PICS_UC6_CAM_DETECTION_AREA_Z2 }; // PICS_UC6_CAM_DETECTION_AREA_Z1 +// const RectangularRegions c_detectionArea := { valueof(PICS_UC6_CAM_DETECTION_AREA_Z2) }; // PICS_UC6_CAM_DETECTION_AREA_Z1 var GeoNetworkingInd v_gnInd; var template (value) CAM v_camSimu; var ThreeDLocation v_location; Index: AtsRSUsSimulator/ItsRSUsSimulator_TestSystem.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_TestSystem.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_TestSystem.ttcn (working copy) @@ -2,7 +2,7 @@ // LibIts import from ITS_Container language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; // LibItsGeoNetworking import from LibItsGeoNetworking_TestSystem all; @@ -53,7 +53,7 @@ /** * @desc List of MovementState per intersection and per RSU */ - var template (value) MovementListPerIntersectionRsu vc_states; + var template (omit) MovementListPerIntersectionRsu vc_states; /** * @desc The SPATEM message to use in SignalGroupParmList */ Index: AtsRSUsSimulator/ItsRSUsSimulator_TypesAndValues.ttcn =================================================================== --- AtsRSUsSimulator/ItsRSUsSimulator_TypesAndValues.ttcn (revision 2639) +++ AtsRSUsSimulator/ItsRSUsSimulator_TypesAndValues.ttcn (working copy) @@ -13,7 +13,8 @@ import from IVI language "ASN.1:1997" all; import from EVCSN_PDU_Descriptions language "ASN.1:1997" all; import from SSEM_PDU_Descriptions language "ASN.1:1997" all; - import from DSRC language "ASN.1:1997" all; + import from IS_DSRC language "ASN.1:1997" all; + import from IS_DSRC_REGION_noCircular language "ASN.1:1997" all; import from EfcDsrcApplication language "ASN.1:1997" all; // LibItsGeoNetworking @@ -180,8 +181,6 @@ */ group ivimDataStructures { - type record length (1 .. 8) of IviContainer IviContainers; - /** * @desc Describe the parameter for each IVIM event */ @@ -188,7 +187,7 @@ type record IvimParm { Provider provider optional, IviIdentificationNumber iviIdentificationNumber optional, - IviContainers iviContainers optional + IviStructure.optional_ iviContainers optional } // End of type IvimParm /** @@ -206,8 +205,6 @@ */ group evcsnDataStructures { - type record length (1 .. 256) of ItsChargingStationData ItsChargingStationDatas; - /** * @desc List of evcsn parms per RSU *