Loading ttcn/CAM/LibItsCam_Functions.ttcn +6 −2 Original line number Diff line number Diff line Loading @@ -301,9 +301,13 @@ module LibItsCam_Functions { * @desc Initialize the IUT * @remark No specific actions specified in the base standard */ function f_prInitialState(Scenario p_scenario := e_staticPosition, boolean p_awaitInitialCAM := true) runs on ItsCam { function f_prInitialState( Scenario p_scenario := e_staticPosition, boolean p_awaitInitialCAM := true, template (value) UtInitialize p_init := m_camInitialize ) runs on ItsCam { f_utInitializeIut(m_camInitialize); f_utInitializeIut(p_init); f_prDefault(); Loading ttcn/CAM/LibItsCam_Templates.ttcn +43 −0 Original line number Diff line number Diff line Loading @@ -623,6 +623,49 @@ module LibItsCam_Templates { } }; template (value) CAM m_camMsg_publicTransport( StationID p_stationId, GenerationDeltaTime p_generationTime, template (value) ReferencePosition p_referencePosition ) modifies m_camMsg_vehicle := { cam := { camParameters := { lowFrequencyContainer := { basicVehicleContainerLowFrequency := { vehicleRole := publicTransport } }, specialVehicleContainer := { publicTransportContainer := { embarkationStatus := true, ptActivation := omit } } } } }; template (value) CAM m_camMsg_specialTransport( StationID p_stationId, GenerationDeltaTime p_generationTime, template (value) ReferencePosition p_referencePosition ) modifies m_camMsg_vehicle := { cam := { camParameters := { lowFrequencyContainer := { basicVehicleContainerLowFrequency := { vehicleRole := specialTransport } }, specialVehicleContainer := { specialTransportContainer := { specialTransportType := '1000'B length(4), // heavyLoad lightBarSirenInUse := '11'B length(2) // siren and lightBar } } } } }; } // end camAnyVehicle group camAccelerationControlTemplates { Loading ttcn/DENM/LibItsDenm_Functions.ttcn +4 −2 Original line number Diff line number Diff line Loading @@ -391,10 +391,12 @@ module LibItsDenm_Functions { * @desc Brings the IUT into an initial state. * @return FncRetCode */ function f_prInitialState(Scenario p_scenario := e_staticPosition) runs on ItsDenm return FncRetCode { function f_prInitialState(Scenario p_scenario := e_staticPosition, template (value) UtInitialize p_denmInitialize := m_denmInitialize ) runs on ItsDenm return FncRetCode { var FncRetCode v_ret := e_success; f_utInitializeIut(m_denmInitialize); f_utInitializeIut(p_denmInitialize); f_acLoadScenario(valueof(p_scenario)); f_acStartScenario(); Loading ttcn/DENM/LibItsDenm_Templates.ttcn +27 −0 Original line number Diff line number Diff line Loading @@ -808,4 +808,31 @@ module LibItsDenm_Templates { } // end alacarteTemplates group sspTemplates { template (present) DenmInd mw_denmInd_SSP ( template (present) DENM p_denMsg, template (present) bitstring p_SSP := ? ) := { msgIn := p_denMsg, gnNextHeader := *, gnHeaderType := *, gnHeaderSubtype := *, gnLifetime := *, gnTrafficClass := *, btpDestinationPort := *, btpInfo := *, // TODO: add support for SSP // ssp := p_SSP, ssp := *, // TODO: add support for ItsAid // its_aid := c_denmItsAid its_aid := * } template (present) bitstring mw_sspTrafficCondition := '*1'B; template (present) bitstring mw_sspAccident := '*1?'B; template (present) bitstring mw_sspRoadworks := '*1??'B; } // end sspTemplates } // end LibItsDenmTemplates No newline at end of file ttcn/DENM/LibItsDenm_TypesAndValues.ttcn +2 −0 Original line number Diff line number Diff line Loading @@ -49,6 +49,8 @@ module LibItsDenm_TypesAndValues { const TransmissionInterval c_interval_5sec := 5000; const TransmissionInterval c_interval_10sec := 10000; const integer c_denmItsAid := 37; } // end group denmConstants group utPrimitives { Loading Loading
ttcn/CAM/LibItsCam_Functions.ttcn +6 −2 Original line number Diff line number Diff line Loading @@ -301,9 +301,13 @@ module LibItsCam_Functions { * @desc Initialize the IUT * @remark No specific actions specified in the base standard */ function f_prInitialState(Scenario p_scenario := e_staticPosition, boolean p_awaitInitialCAM := true) runs on ItsCam { function f_prInitialState( Scenario p_scenario := e_staticPosition, boolean p_awaitInitialCAM := true, template (value) UtInitialize p_init := m_camInitialize ) runs on ItsCam { f_utInitializeIut(m_camInitialize); f_utInitializeIut(p_init); f_prDefault(); Loading
ttcn/CAM/LibItsCam_Templates.ttcn +43 −0 Original line number Diff line number Diff line Loading @@ -623,6 +623,49 @@ module LibItsCam_Templates { } }; template (value) CAM m_camMsg_publicTransport( StationID p_stationId, GenerationDeltaTime p_generationTime, template (value) ReferencePosition p_referencePosition ) modifies m_camMsg_vehicle := { cam := { camParameters := { lowFrequencyContainer := { basicVehicleContainerLowFrequency := { vehicleRole := publicTransport } }, specialVehicleContainer := { publicTransportContainer := { embarkationStatus := true, ptActivation := omit } } } } }; template (value) CAM m_camMsg_specialTransport( StationID p_stationId, GenerationDeltaTime p_generationTime, template (value) ReferencePosition p_referencePosition ) modifies m_camMsg_vehicle := { cam := { camParameters := { lowFrequencyContainer := { basicVehicleContainerLowFrequency := { vehicleRole := specialTransport } }, specialVehicleContainer := { specialTransportContainer := { specialTransportType := '1000'B length(4), // heavyLoad lightBarSirenInUse := '11'B length(2) // siren and lightBar } } } } }; } // end camAnyVehicle group camAccelerationControlTemplates { Loading
ttcn/DENM/LibItsDenm_Functions.ttcn +4 −2 Original line number Diff line number Diff line Loading @@ -391,10 +391,12 @@ module LibItsDenm_Functions { * @desc Brings the IUT into an initial state. * @return FncRetCode */ function f_prInitialState(Scenario p_scenario := e_staticPosition) runs on ItsDenm return FncRetCode { function f_prInitialState(Scenario p_scenario := e_staticPosition, template (value) UtInitialize p_denmInitialize := m_denmInitialize ) runs on ItsDenm return FncRetCode { var FncRetCode v_ret := e_success; f_utInitializeIut(m_denmInitialize); f_utInitializeIut(p_denmInitialize); f_acLoadScenario(valueof(p_scenario)); f_acStartScenario(); Loading
ttcn/DENM/LibItsDenm_Templates.ttcn +27 −0 Original line number Diff line number Diff line Loading @@ -808,4 +808,31 @@ module LibItsDenm_Templates { } // end alacarteTemplates group sspTemplates { template (present) DenmInd mw_denmInd_SSP ( template (present) DENM p_denMsg, template (present) bitstring p_SSP := ? ) := { msgIn := p_denMsg, gnNextHeader := *, gnHeaderType := *, gnHeaderSubtype := *, gnLifetime := *, gnTrafficClass := *, btpDestinationPort := *, btpInfo := *, // TODO: add support for SSP // ssp := p_SSP, ssp := *, // TODO: add support for ItsAid // its_aid := c_denmItsAid its_aid := * } template (present) bitstring mw_sspTrafficCondition := '*1'B; template (present) bitstring mw_sspAccident := '*1?'B; template (present) bitstring mw_sspRoadworks := '*1??'B; } // end sspTemplates } // end LibItsDenmTemplates No newline at end of file
ttcn/DENM/LibItsDenm_TypesAndValues.ttcn +2 −0 Original line number Diff line number Diff line Loading @@ -49,6 +49,8 @@ module LibItsDenm_TypesAndValues { const TransmissionInterval c_interval_5sec := 5000; const TransmissionInterval c_interval_10sec := 10000; const integer c_denmItsAid := 37; } // end group denmConstants group utPrimitives { Loading