Loading asn1/DENM/DENM.asn +2 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, CauseCode, StationID, Speed, InformationQuality, ReferencePosition, ClosedLanes, DangerousGoodsExtended, Heading, LaneNumber, LightBarSirenInUse, PathHistory, RoadClass, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, PositioningSolutionType, RequestResponseIndication, StationType, SpeedLimit, StationarySince, TimestampIts, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, EnergyStorageType FROM ITS-Container { ItsPduHeader, CauseCode, StationID, Speed, InformationQuality, ReferencePosition, ClosedLanes, DangerousGoodsExtended, Heading, LaneNumber, LightBarSirenInUse, PathHistory, RoadType, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, PositioningSolutionType, RequestResponseIndication, StationType, SpeedLimit, StationarySince, TimestampIts, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, EnergyStorageType FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (1) }; Loading Loading @@ -49,7 +49,7 @@ LocationContainer ::= SEQUENCE { eventSpeed Speed OPTIONAL, eventPositionHeading Heading OPTIONAL, traces Traces, roadClass RoadClass OPTIONAL roadType RoadType OPTIONAL } ImpactReductionContainer ::= SEQUENCE { Loading asn1/ITS-Container/ITS-Container.asn +49 −31 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ BEGIN ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER{ currentVersion(1) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3), spat(4), map(5), ivi(6), ivs(7), ev-rsr(8) } (0..255), stationID StationID } Loading @@ -18,33 +18,50 @@ ReferencePosition ::= SEQUENCE { latitude Latitude, longitude Longitude, positionConfidenceEllipse PosConfidenceEllipse , elevation Elevation altitude Altitude } DeltaReferencePosition ::= SEQUENCE { deltaLatitude DeltaLatitude, deltaLongitude DeltaLongitude, deltaElevation DeltaElevation deltaAltitude DeltaAltitude } Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10), unavailable(1800000001) } (-1799999999..1800000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10), unavailable(900000001) } (-900000000..900000001) -- multiples of 0.1 microdegree Elevation ::= SEQUENCE { elevationValue ElevationValue, elevationConfidence ElevationConfidence Altitude ::= SEQUENCE { altitudeValue AltitudeValue, altitudeConfidence AltitudeConfidence } ElevationValue ::= INTEGER { seaLevel(0), oneMeter(1), unavailable(7191) } (-1000..7191) ElevationConfidence ::= INTEGER { withinOneMeter(1), outOfRange(126), unavailable(127) } (1..127) AltitudeValue ::= INTEGER { seaLevel(0), oneCentimeter(1), unavailable(800001) } (-100000..800001) AltitudeConfidence ::= ENUMERATED { alt-000-01 (0), alt-000-02 (1), alt-000-05 (2), alt-000-10 (3), alt-000-20 (4), alt-000-50 (5), alt-001-00 (6), alt-002-00 (7), alt-005-00 (8), alt-010-00 (9), alt-020-00 (10), alt-050-00 (11), alt-100-00 (12), alt-200-00 (13), outOfRange (14), unavailable (15) } DeltaLongitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-131072..131071) -- multiples of 0.1 microdegree DeltaLatitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10) } (-131072..131071) -- multiples of 0.1 microdegree DeltaElevation ::= INTEGER { oneMeterUp (1), oneMeterDown (-1), unavailable(128) } (-127..128) DeltaAltitude ::= INTEGER { oneCentimeterUp (1), oneCentimeterDown (-1), unavailable(12800) } (-12700..12800) PosConfidenceEllipse ::= SEQUENCE { Loading @@ -70,13 +87,13 @@ PtActivationType ::= INTEGER { undefinedCodingType(0), r09-16CodingType(1), vdv- PtActivationData ::= OCTET STRING (SIZE(1..20)) AccelerationControl ::= BIT STRING { brakePedalActive (0), gasPedalActive (1), emergencyBrakeActive (2), collisionWarningActive (3), accActive (4), cruiseControl (5), speedLimiterActive (6) brakePedalEngaged (0), gasPedalEngaged (1), emergencyBrakeEngaged (2), collisionWarningEngaged (3), accEngaged (4), cruiseControlEngaged (5), speedLimiterEngaged (6) } (SIZE(7)) Loading Loading @@ -159,7 +176,7 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), outOfRange(4094), unavailable(4095 DangerousEndOfQueueSubCauseCode ::= INTEGER {unavailable(0), suddenEndOfQueue(1), queueOverHill(2), queueAroundBend(3), queueInTunnel(4) } (0..255) DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrake(1), preCrashSystemActivated(2), espActivated(3), absActivated(4), aebActivated(5), brakeWarningActivated(6), collisionRiskWarningActivated(7) } (0..255) DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrakeEngaged(1), preCrashSystemEngaged(2), espEngaged(3), absEngaged(4), aebEngaged(5), brakeWarningEngaged(6), collisionRiskWarningEngaged(7) } (0..255) VehicleBreakdownSubCauseCode ::= INTEGER {unavailable(0), lackOfFuel (1), lackOfBatteryPower (2), engineProblem(3), transmissionProblem(4), engineCoolingProblem(5), brakingSystemProblem(6), steeringProblem(7), tyrePuncture(8)} (0..255) Loading Loading @@ -316,7 +333,7 @@ PosCentMass ::= INTEGER { tenCentimeters(1), unavailable(63) } (0..63) RequestResponseIndication ::= ENUMERATED { request(0), response(1) } SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..150) SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..255) StationarySince ::= ENUMERATED { lessThan1Minute(0), lessThan2Minutes(1), lessThan15Minutes(2), over15Minutes(3) } Loading Loading @@ -381,11 +398,11 @@ VehicleWidth ::= INTEGER { tenCentimeters(1), outOfRange(61), unavailable(62) } PathHistory::= SEQUENCE (SIZE(0..23)) OF PathPoint EmergencyPriority ::= INTEGER { requestForRightOfWay(0), requestForFreeCrossingAtATrafficLight(1) } (0..1) EmergencyPriority ::= BIT STRING { requestForRightOfWay(0), requestForFreeCrossingAtATrafficLight(1) } (SIZE(2)) InformationQuality ::= INTEGER { unavailable(0), lowest(1), highest(7) } (0..7) RoadClass ::= ENUMERATED { RoadType ::= ENUMERATED { urban-NoStructuralSeparationToOppositeLanes(0), urban-WithStructuralSeparationToOppositeLanes(1), nonUrban-NoStructuralSeparationToOppositeLanes(2), Loading Loading @@ -413,16 +430,17 @@ YawRateValue ::= INTEGER { straight(0), degSec-000-01ToRight(-1), degSec-000-01T -- LSB units of 0.01 degrees per second YawRateConfidence ::= ENUMERATED { unavailable (0), degSec-100-00 (1), -- within 100 deg/sec degSec-010-00 (2), -- within 10 deg/sec degSec-005-00 (3), -- within 5 deg/sec degSec-001-00 (4), -- within 1 deg/sec degSec-000-10 (5), -- within 0.1 deg/sec degSec-000-05 (6), -- within 0.05 deg/sec degSec-000-01 (7), -- within 0.01 deg/sec outOfRange (8) degSec-000-01 (0), degSec-000-05 (1), degSec-000-10 (2), degSec-001-00 (3), degSec-005-00 (4), degSec-010-00 (5), degSec-100-00 (6), outOfRange (7), unavailable (8) } END ttcn/CAM/LibItsCam_Templates.ttcn +3 −3 Original line number Diff line number Diff line Loading @@ -138,9 +138,9 @@ module LibItsCam_Templates { headingConfidence := 10 } }, elevation := { elevationValue := ElevationValue_seaLevel_, elevationConfidence := ElevationConfidence_unavailable_ altitude := { altitudeValue := AltitudeValue_seaLevel_, altitudeConfidence := unavailable } } Loading ttcn/Common/LibItsCommon_TypesAndValues.ttcn +2 −5 Original line number Diff line number Diff line Loading @@ -43,11 +43,8 @@ module LibItsCommon_TypesAndValues { group commonConstants { const ElevationValue c_seaLevel := 0; const ElevationValue c_oneMeter := 1; const ElevationConfidence c_withinOneMeter := 1; const ElevationConfidence c_notValid := 127; const AltitudeValue c_seaLevel := 0; const AltitudeValue c_oneMeter := 1; const SemiAxisLength c_semiAxisLengthOneCentimeter := 1; const SemiAxisLength c_semiAxisLengthUnavailable := 4095; Loading ttcn/DENM/LibItsDenm_Templates.ttcn +13 −13 Original line number Diff line number Diff line Loading @@ -261,7 +261,7 @@ module LibItsDenm_Templates { longitude := p_longitude, latitude := p_latitude, positionConfidenceEllipse := m_posConfidenceEllipse, elevation := m_elevation altitude := m_altitude } /** Loading Loading @@ -290,16 +290,16 @@ module LibItsDenm_Templates { } /** * @desc Send template for elevation * @param p_elevationValue The elevation (Default: Sea level) * @param p_elevationConfidence The confidence of the elevation (Default: within one meter) * @desc Send template for altitude * @param p_altitudeValue The altitude (Default: Sea level) * @param p_altitudeConfidence The confidence of the elevation (Default: within one meter) */ template (value) Elevation m_elevation( template (value) ElevationValue p_elevationValue := c_seaLevel, template (value) ElevationConfidence p_elevationConfidence := c_withinOneMeter template (value) Altitude m_altitude( template (value) AltitudeValue p_altitudeValue := c_seaLevel, template (value) AltitudeConfidence p_altitudeConfidence := alt_000_01 ) := { elevationValue := p_elevationValue, elevationConfidence := p_elevationConfidence altitudeValue := p_altitudeValue, altitudeConfidence := p_altitudeConfidence } } // end positionTemplates Loading Loading @@ -576,13 +576,13 @@ module LibItsDenm_Templates { pathPosition := { deltaLatitude := 0, deltaLongitude := 0, deltaElevation := 0 deltaAltitude := 0 }, pathDeltaTime := 0 } } }, roadClass := omit roadType := omit } /** Loading @@ -592,7 +592,7 @@ module LibItsDenm_Templates { eventSpeed := *, eventPositionHeading := *, traces := ?, roadClass := * roadType := * } /** Loading @@ -605,7 +605,7 @@ module LibItsDenm_Templates { eventSpeed := *, eventPositionHeading := *, traces := p_traces, roadClass := * roadType := * } } // end group decentralizedLocationTemplates Loading Loading
asn1/DENM/DENM.asn +2 −2 Original line number Diff line number Diff line Loading @@ -7,7 +7,7 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, CauseCode, StationID, Speed, InformationQuality, ReferencePosition, ClosedLanes, DangerousGoodsExtended, Heading, LaneNumber, LightBarSirenInUse, PathHistory, RoadClass, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, PositioningSolutionType, RequestResponseIndication, StationType, SpeedLimit, StationarySince, TimestampIts, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, EnergyStorageType FROM ITS-Container { ItsPduHeader, CauseCode, StationID, Speed, InformationQuality, ReferencePosition, ClosedLanes, DangerousGoodsExtended, Heading, LaneNumber, LightBarSirenInUse, PathHistory, RoadType, HeightLonCarr, PosLonCarr, PosPillar, PosCentMass, PositioningSolutionType, RequestResponseIndication, StationType, SpeedLimit, StationarySince, TimestampIts, WheelBaseVehicle, TurningRadius, PosFrontAx, PositionOfOccupants, Temperature, VehicleMass, VehicleIdentification, EnergyStorageType FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (1) }; Loading Loading @@ -49,7 +49,7 @@ LocationContainer ::= SEQUENCE { eventSpeed Speed OPTIONAL, eventPositionHeading Heading OPTIONAL, traces Traces, roadClass RoadClass OPTIONAL roadType RoadType OPTIONAL } ImpactReductionContainer ::= SEQUENCE { Loading
asn1/ITS-Container/ITS-Container.asn +49 −31 Original line number Diff line number Diff line Loading @@ -8,7 +8,7 @@ BEGIN ItsPduHeader ::= SEQUENCE { protocolVersion INTEGER{ currentVersion(1) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3) } (0..255), messageID INTEGER{ denm(1),cam(2), poi(3), spat(4), map(5), ivi(6), ivs(7), ev-rsr(8) } (0..255), stationID StationID } Loading @@ -18,33 +18,50 @@ ReferencePosition ::= SEQUENCE { latitude Latitude, longitude Longitude, positionConfidenceEllipse PosConfidenceEllipse , elevation Elevation altitude Altitude } DeltaReferencePosition ::= SEQUENCE { deltaLatitude DeltaLatitude, deltaLongitude DeltaLongitude, deltaElevation DeltaElevation deltaAltitude DeltaAltitude } Longitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10), unavailable(1800000001) } (-1799999999..1800000001) -- multiples of 0.1 microdegree Latitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10), unavailable(900000001) } (-900000000..900000001) -- multiples of 0.1 microdegree Elevation ::= SEQUENCE { elevationValue ElevationValue, elevationConfidence ElevationConfidence Altitude ::= SEQUENCE { altitudeValue AltitudeValue, altitudeConfidence AltitudeConfidence } ElevationValue ::= INTEGER { seaLevel(0), oneMeter(1), unavailable(7191) } (-1000..7191) ElevationConfidence ::= INTEGER { withinOneMeter(1), outOfRange(126), unavailable(127) } (1..127) AltitudeValue ::= INTEGER { seaLevel(0), oneCentimeter(1), unavailable(800001) } (-100000..800001) AltitudeConfidence ::= ENUMERATED { alt-000-01 (0), alt-000-02 (1), alt-000-05 (2), alt-000-10 (3), alt-000-20 (4), alt-000-50 (5), alt-001-00 (6), alt-002-00 (7), alt-005-00 (8), alt-010-00 (9), alt-020-00 (10), alt-050-00 (11), alt-100-00 (12), alt-200-00 (13), outOfRange (14), unavailable (15) } DeltaLongitude ::= INTEGER { oneMicrodegreeEast (10), oneMicrodegreeWest (-10) } (-131072..131071) -- multiples of 0.1 microdegree DeltaLatitude ::= INTEGER { oneMicrodegreeNorth (10), oneMicrodegreeSouth (-10) } (-131072..131071) -- multiples of 0.1 microdegree DeltaElevation ::= INTEGER { oneMeterUp (1), oneMeterDown (-1), unavailable(128) } (-127..128) DeltaAltitude ::= INTEGER { oneCentimeterUp (1), oneCentimeterDown (-1), unavailable(12800) } (-12700..12800) PosConfidenceEllipse ::= SEQUENCE { Loading @@ -70,13 +87,13 @@ PtActivationType ::= INTEGER { undefinedCodingType(0), r09-16CodingType(1), vdv- PtActivationData ::= OCTET STRING (SIZE(1..20)) AccelerationControl ::= BIT STRING { brakePedalActive (0), gasPedalActive (1), emergencyBrakeActive (2), collisionWarningActive (3), accActive (4), cruiseControl (5), speedLimiterActive (6) brakePedalEngaged (0), gasPedalEngaged (1), emergencyBrakeEngaged (2), collisionWarningEngaged (3), accEngaged (4), cruiseControlEngaged (5), speedLimiterEngaged (6) } (SIZE(7)) Loading Loading @@ -159,7 +176,7 @@ SemiAxisLength ::= INTEGER{ oneCentimeter(1), outOfRange(4094), unavailable(4095 DangerousEndOfQueueSubCauseCode ::= INTEGER {unavailable(0), suddenEndOfQueue(1), queueOverHill(2), queueAroundBend(3), queueInTunnel(4) } (0..255) DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrake(1), preCrashSystemActivated(2), espActivated(3), absActivated(4), aebActivated(5), brakeWarningActivated(6), collisionRiskWarningActivated(7) } (0..255) DangerousSituationSubCauseCode ::= INTEGER {unavailable(0), emergencyElectronicBrakeEngaged(1), preCrashSystemEngaged(2), espEngaged(3), absEngaged(4), aebEngaged(5), brakeWarningEngaged(6), collisionRiskWarningEngaged(7) } (0..255) VehicleBreakdownSubCauseCode ::= INTEGER {unavailable(0), lackOfFuel (1), lackOfBatteryPower (2), engineProblem(3), transmissionProblem(4), engineCoolingProblem(5), brakingSystemProblem(6), steeringProblem(7), tyrePuncture(8)} (0..255) Loading Loading @@ -316,7 +333,7 @@ PosCentMass ::= INTEGER { tenCentimeters(1), unavailable(63) } (0..63) RequestResponseIndication ::= ENUMERATED { request(0), response(1) } SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..150) SpeedLimit ::= INTEGER { oneKmPerHour(1) } (0..255) StationarySince ::= ENUMERATED { lessThan1Minute(0), lessThan2Minutes(1), lessThan15Minutes(2), over15Minutes(3) } Loading Loading @@ -381,11 +398,11 @@ VehicleWidth ::= INTEGER { tenCentimeters(1), outOfRange(61), unavailable(62) } PathHistory::= SEQUENCE (SIZE(0..23)) OF PathPoint EmergencyPriority ::= INTEGER { requestForRightOfWay(0), requestForFreeCrossingAtATrafficLight(1) } (0..1) EmergencyPriority ::= BIT STRING { requestForRightOfWay(0), requestForFreeCrossingAtATrafficLight(1) } (SIZE(2)) InformationQuality ::= INTEGER { unavailable(0), lowest(1), highest(7) } (0..7) RoadClass ::= ENUMERATED { RoadType ::= ENUMERATED { urban-NoStructuralSeparationToOppositeLanes(0), urban-WithStructuralSeparationToOppositeLanes(1), nonUrban-NoStructuralSeparationToOppositeLanes(2), Loading Loading @@ -413,16 +430,17 @@ YawRateValue ::= INTEGER { straight(0), degSec-000-01ToRight(-1), degSec-000-01T -- LSB units of 0.01 degrees per second YawRateConfidence ::= ENUMERATED { unavailable (0), degSec-100-00 (1), -- within 100 deg/sec degSec-010-00 (2), -- within 10 deg/sec degSec-005-00 (3), -- within 5 deg/sec degSec-001-00 (4), -- within 1 deg/sec degSec-000-10 (5), -- within 0.1 deg/sec degSec-000-05 (6), -- within 0.05 deg/sec degSec-000-01 (7), -- within 0.01 deg/sec outOfRange (8) degSec-000-01 (0), degSec-000-05 (1), degSec-000-10 (2), degSec-001-00 (3), degSec-005-00 (4), degSec-010-00 (5), degSec-100-00 (6), outOfRange (7), unavailable (8) } END
ttcn/CAM/LibItsCam_Templates.ttcn +3 −3 Original line number Diff line number Diff line Loading @@ -138,9 +138,9 @@ module LibItsCam_Templates { headingConfidence := 10 } }, elevation := { elevationValue := ElevationValue_seaLevel_, elevationConfidence := ElevationConfidence_unavailable_ altitude := { altitudeValue := AltitudeValue_seaLevel_, altitudeConfidence := unavailable } } Loading
ttcn/Common/LibItsCommon_TypesAndValues.ttcn +2 −5 Original line number Diff line number Diff line Loading @@ -43,11 +43,8 @@ module LibItsCommon_TypesAndValues { group commonConstants { const ElevationValue c_seaLevel := 0; const ElevationValue c_oneMeter := 1; const ElevationConfidence c_withinOneMeter := 1; const ElevationConfidence c_notValid := 127; const AltitudeValue c_seaLevel := 0; const AltitudeValue c_oneMeter := 1; const SemiAxisLength c_semiAxisLengthOneCentimeter := 1; const SemiAxisLength c_semiAxisLengthUnavailable := 4095; Loading
ttcn/DENM/LibItsDenm_Templates.ttcn +13 −13 Original line number Diff line number Diff line Loading @@ -261,7 +261,7 @@ module LibItsDenm_Templates { longitude := p_longitude, latitude := p_latitude, positionConfidenceEllipse := m_posConfidenceEllipse, elevation := m_elevation altitude := m_altitude } /** Loading Loading @@ -290,16 +290,16 @@ module LibItsDenm_Templates { } /** * @desc Send template for elevation * @param p_elevationValue The elevation (Default: Sea level) * @param p_elevationConfidence The confidence of the elevation (Default: within one meter) * @desc Send template for altitude * @param p_altitudeValue The altitude (Default: Sea level) * @param p_altitudeConfidence The confidence of the elevation (Default: within one meter) */ template (value) Elevation m_elevation( template (value) ElevationValue p_elevationValue := c_seaLevel, template (value) ElevationConfidence p_elevationConfidence := c_withinOneMeter template (value) Altitude m_altitude( template (value) AltitudeValue p_altitudeValue := c_seaLevel, template (value) AltitudeConfidence p_altitudeConfidence := alt_000_01 ) := { elevationValue := p_elevationValue, elevationConfidence := p_elevationConfidence altitudeValue := p_altitudeValue, altitudeConfidence := p_altitudeConfidence } } // end positionTemplates Loading Loading @@ -576,13 +576,13 @@ module LibItsDenm_Templates { pathPosition := { deltaLatitude := 0, deltaLongitude := 0, deltaElevation := 0 deltaAltitude := 0 }, pathDeltaTime := 0 } } }, roadClass := omit roadType := omit } /** Loading @@ -592,7 +592,7 @@ module LibItsDenm_Templates { eventSpeed := *, eventPositionHeading := *, traces := ?, roadClass := * roadType := * } /** Loading @@ -605,7 +605,7 @@ module LibItsDenm_Templates { eventSpeed := *, eventPositionHeading := *, traces := p_traces, roadClass := * roadType := * } } // end group decentralizedLocationTemplates Loading