pycrate/pycrate_asn1dir/ETSI_ITS_VAM_TS103300_3/AddGrpC.asn

213 lines
5.2 KiB
Groff

-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ISO TS 19091 2018
--
-- This document includes three ASN.1 modules
-- AddGrpC
-- REGION
-- DSRC
--
-- This document contains the data element needed for the encoding the SPAT, MapData, SignalRequestMessage, SignalStatusMessage, RTCMcorrections
-- as defined in ISO TS 19091 and basic data element referenced to SAEJ2735
--
-- It includes the addendum extensions for Addgrp-C (e.g. Europe)
--
-- ISO Standards maintenance Portal:
-- http://standards.iso.org/iso/ts/19091/addgrp_c/
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
--
-- module: AddGrpC
--
-- ^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-^-
AddGrpC {
iso (1) standard (0) signalizedIntersection (19091) profilec (2) addgrpc (0)
version2 (2)
}
DEFINITIONS AUTOMATIC TAGS::= BEGIN
IMPORTS
DeltaTime, FuelType, IntersectionID, LaneConnectionID, LaneID, NodeOffsetPointXY, NodeSetXY, PrioritizationResponseStatus, SignalGroupID, VehicleHeight
FROM DSRC {
iso (1) standard (0) signalizedIntersection (19091) profilec(2) dsrc (2) version2 (2)
}
Altitude, DeltaAltitude, StationID, VehicleMass
FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102894) cdd (2) version (2) };
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- AddGrpC data dictionary extensions to SAEJ2735
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ConnectionManeuverAssist-addGrpC ::= SEQUENCE {
itsStationPosition ItsStationPositionList OPTIONAL,
...
}
ConnectionTrajectory-addGrpC ::= SEQUENCE {
nodes NodeSetXY,
connectionID LaneConnectionID,
...
}
IntersectionState-addGrpC ::= SEQUENCE {
activePrioritizations PrioritizationResponseList OPTIONAL,
...
}
LaneAttributes-addGrpC ::= SEQUENCE {
maxVehicleHeight VehicleHeight OPTIONAL,
maxVehicleWeight VehicleMass OPTIONAL,
...
}
MapData-addGrpC ::= SEQUENCE {
signalHeadLocations SignalHeadLocationList OPTIONAL,
...
}
MovementEvent-addGrpC ::= SEQUENCE {
stateChangeReason ExceptionalCondition OPTIONAL,
...
}
NodeAttributeSet-addGrpC ::= SEQUENCE {
ptvRequest PtvRequestType OPTIONAL,
nodeLink NodeLink OPTIONAL,
node Node OPTIONAL,
...
}
Position3D-addGrpC ::= SEQUENCE {
altitude Altitude,
...
}
RestrictionUserType-addGrpC ::= SEQUENCE {
emission EmissionType OPTIONAL,
fuel FuelType OPTIONAL,
...
}
RequestorDescription-addGrpC ::= SEQUENCE {
fuel FuelType OPTIONAL,
batteryStatus BatteryStatus OPTIONAL,
...
}
SignalStatusPackage-addGrpC ::= SEQUENCE {
synchToSchedule DeltaTime OPTIONAL,
rejectedReason RejectedReason OPTIONAL,
...
}
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- Data frames
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ItsStationPosition ::= SEQUENCE {
stationID StationID,
laneID LaneID OPTIONAL,
nodeXY NodeOffsetPointXY OPTIONAL,
timeReference TimeReference OPTIONAL,
...
}
ItsStationPositionList ::= SEQUENCE SIZE(1..5) OF ItsStationPosition
Node ::= SEQUENCE {
id INTEGER,
lane LaneID OPTIONAL,
connectionID LaneConnectionID OPTIONAL,
intersectionID IntersectionID OPTIONAL,
...
}
NodeLink ::= SEQUENCE SIZE (1..5) OF Node
PrioritizationResponse ::= SEQUENCE {
stationID StationID,
priorState PrioritizationResponseStatus,
signalGroup SignalGroupID,
...
}
PrioritizationResponseList ::= SEQUENCE SIZE(1..10) OF PrioritizationResponse
SignalHeadLocation ::= SEQUENCE {
nodeXY NodeOffsetPointXY,
nodeZ DeltaAltitude,
signalGroupID SignalGroupID,
...
}
SignalHeadLocationList ::= SEQUENCE (SIZE(1..64)) OF SignalHeadLocation
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-- Data elements
-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BatteryStatus ::= ENUMERATED {
unknown,
critical,
low,
good,
...
}
EmissionType ::= ENUMERATED {
euro1,
euro2,
euro3,
euro4,
euro5,
euro6,
...
}
ExceptionalCondition ::= ENUMERATED {
unknown,
publicTransportPriority,
emergencyVehiclePriority,
trainPriority,
bridgeOpen,
vehicleHeight,
weather,
trafficJam,
tunnelClosure,
meteringActive,
truckPriority,
bicyclePlatoonPriority,
vehiclePlatoonPriority,
...
}
PtvRequestType ::= ENUMERATED {
preRequest,
mainRequest,
doorCloseRequest,
cancelRequest,
emergencyRequest,
...
}
RejectedReason ::= ENUMERATED {
unknown,
exceptionalCondition,
maxWaitingTimeExceeded,
ptPriorityDisabled,
higherPTPriorityGranted,
vehicleTrackingUnknown,
...
}
TimeReference ::= INTEGER { oneMilliSec(1) } (0..60000)
END