/** * @author ETSI / STF405 / STF449 * @version $URL$ * $Id$ * @desc Module containing types and values for CAM Protocol * */ module LibItsCam_TypesAndValues { // LibCommon import from LibCommon_BasicTypesAndValues all; import from LibCommon_DataStrings all; // LibIts import from ITS_Container language "ASN.1:1997" all; import from CAM_PDU_Descriptions language "ASN.1:1997" all; import from DENM_PDU_Descriptions language "ASN.1:1997" all; import from LibItsCommon_TypesAndValues { type UtChangePosition }; group camValues { const float c_lowFrequencyGenerationTime := 0.5; //500 ms const float c_specialVehicleGenerationTime := 0.5; //500 ms const AccelerationControl c_accCtrlIdle := '0000000'B; const AccelerationControl c_brakePedalEngaged := '0000001'B; const AccelerationControl c_gasPedalEngaged := '0000010'B; const AccelerationControl c_emergencyBrakeEngaged := '0000100'B; const AccelerationControl c_collisionWarningEngaged := '0001000'B; const AccelerationControl c_accEngaged := '0010000'B; const AccelerationControl c_cruiseControlEngaged := '0100000'B; const AccelerationControl c_speedLimiterEngaged := '1000000'B; const ExteriorLights c_elAllLightsOff := '00000000'B; const ExteriorLights c_lowBeamHeadlightsOn := '00000001'B; const ExteriorLights c_highBeamHeadlightsOn := '00000010'B; const ExteriorLights c_leftTurnSignalOn := '00000100'B; const ExteriorLights c_rightTurnSignalOn := '00001000'B; const ExteriorLights c_daytimeRunningLightsOn := '00010000'B; const ExteriorLights c_reverseLightOn := '00100000'B; const ExteriorLights c_fogLightOn := '01000000'B; const ExteriorLights c_parkingLightsOn := '10000000'B; } // end group camValues group utPrimitives { group utCommonPrimitives { /** * @desc Upper Tester message to check event/status on IUT */ type record UtCheck { /* FIXME: change this as in DENM */ UtCamTrigger utEvent } with { encode (utEvent) "UpperTester" } /** * @desc Upper Tester response message */ type boolean UtResult; } with { encode "LibItsCommon" } /** * @desc * @member changeCurvature Changes the curvature. * @member changeSpeed Changes the speed in cm/s. * @member setAccelerationControlStatus Sets the acceleration control status. * @member setExteriorLightsStatus Sets the exterior lights status. * @member changeHeading Changes the heading. * @member setDriveDirection Sets the drive direction. * @member setStationType * @member setVehicleRole * @member setEmbarkationStatus * @member setPtActivation * @member setDangerousGoods * @member setDangerousGoodsExt * @member setLightBarSireneStatus * @member changeYawRate Changes the yaw rate in offsets of 0.01 degrees per second. * @member changePosition Changes the position in the direction of the current heading in meters. * @member checkLdm Checks that the received CAM was provided at LDM. */ type union UtCamTrigger { CurvatureValue changeCurvature, SpeedValue changeSpeed, AccelerationControl setAccelerationControlStatus, ExteriorLights setExteriorLightsStatus, HeadingValue changeHeading, DriveDirection setDriveDirection, YawRateValue changeYawRate, StationType setStationType, VehicleRole setVehicleRole, EmbarkationStatus setEmbarkationStatus, PtActivation setPtActivation, DangerousGoodsBasic setDangerousGoods, DangerousGoodsExtended setDangerousGoodsExt, LightBarSirenInUse setLightBarSirene, UtChangePosition changePosition, /* FIXME: obselete, to be removed */ CAM checkLdm /* FIXME: obselete, to be removed */ } /** * @desc Upper Tester result message of request of triggering of an event at IUT */ type boolean UtCamTriggerResult; } with { encode "UpperTester" } // end utPrimitives } with { encode "LibItsCam" }