Loading TOPO/TOPO.asn +82 −53 Original line number Diff line number Diff line -- This ASN.1 specification has been checked for conformance with the ASN.1 standard by the OSS ASN.1 Tools TOPO-PDU-Descriptions Loading @@ -6,78 +5,57 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, ReferencePosition FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (1) IMPORTS ItsPduHeader, Latitude, Longitude FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (2) }; -- The root data frame for spat TopoPdu ::= SEQUENCE { header ItsPduHeader, topo Intersection topo TOPO } Intersection ::= SEQUENCE { TOPO ::= SEQUENCE { id IntersectionID, refPoint ReferencePosition, approaches SEQUENCE SIZE(1..32) OF ApproachObject refPoint IntersectionReferencePosition, -- In SAE2735 this values is called Position3D -- To stay compatible with current TOPO implementation, it has been renamed to ReferencePosition approaches SEQUENCE (SIZE(1..32)) OF ApproachObject } IntersectionID ::= INTEGER (0..999999) --ReferencePosition ::= SEQUENCE { -- longitude Longitude, --latitude Latitude --} Latitude ::= SEQUENCE { degree INTEGER (-900000000..900000000) -- multiples of 0.1 microdegree IntersectionReferencePosition ::= SEQUENCE { lat Latitude, long Longitude } ApproachObject ::= SEQUENCE { approach Approach laneWidth LaneWidth OPTIONAL, -- Not used in DRIVE C2X approach Approach, egress Approach OPTIONAL -- Not used in DRIVE C2X } Approach ::= SEQUENCE { -- Egress or approach of a link containing all lanes drivingLanes SEQUENCE SIZE(0..32) OF VehicleReferenceLane Approach ::= SEQUENCE { -- Computed and Special lanes have been removed id ApproachNumber, drivingLanes SEQUENCE (SIZE(0..32)) OF VehicleReferenceLane } VehicleReferenceLane ::= SEQUENCE { -- lane defined by a point list VehicleReferenceLane ::= SEQUENCE { laneNumber LaneNumber, laneWidth LaneWidth, laneAttributes VehicleLaneAttributes, -- Used in DRIVE C2X to specify turn possibilities. -- Replaces ConnectsTo information. nodeList NodeList, connectsTo ConnectsTo , keepOutList NodeList OPTIONAL, -- Not used in DRIVE C2X connectsTo ConnectsTo OPTIONAL, -- Not used in DRIVE C2X speedLimit INTEGER (0..150) } LaneNumber ::= INTEGER LaneWidth ::= Dimension -- Dimension of an object, e.g. height, wheelbase Granularity 0.01m Dimension ::= INTEGER (0..16383) -- List of relative positions describing an egress or approach -- first point is the the stop line or point at the boarder of the intersection area NodeList ::= SEQUENCE{ nodes SEQUENCE SIZE (2..64) OF Offsets } Offsets ::= SEQUENCE { -- providing offsets in an karthesian coordinate system in 1cm granularity xOffset INTEGER (-32767..32767), yOffset INTEGER (-32767..32767) } ConnectsTo ::= SEQUENCE(SIZE(1..48)) OF ConnectionInformation -- List of possible connection of a lane ConnectionInformation ::= SEQUENCE { ConnectionInformation ::= SEQUENCE { -- Not used in DRIVE C2X lane LaneNumber, intersection IntersectionID, maneuver TurnDirection } TurnDirection ::= BIT STRING { TurnDirection ::= BIT STRING { -- Not used in DRIVE C2X uTurn (0), sharpRight (1), right (2), Loading @@ -88,4 +66,55 @@ TurnDirection ::= BIT STRING { sharpLeft (7) } NodeList ::= SEQUENCE{ nodes SEQUENCE SIZE (2..64) OF Offsets } Offsets ::= SEQUENCE { -- z-offset has been removed. xOffset INTEGER (-32767..32767), yOffset INTEGER (-32767..32767) } VehicleLaneAttributes ::= BIT STRING { noData (0), -- Not used in DRIVE C2X egressPath (1), -- Not used in DRIVE C2X maneuverStraightAllowed (2), maneuverLeftAllowed (3), maneuverRightAllowed (4), yield (5), -- Not used in DRIVE C2X maneuverNoUTurn (6), -- Not used in DRIVE C2X maneuverNoTurnOnRed (7), -- Not used in DRIVE C2X maneuverNoStop (8), -- Not used in DRIVE C2X noStop (9), -- Not used in DRIVE C2X noTurnOnRed (10), -- Not used in DRIVE C2X hovLane (11), -- Not used in DRIVE C2X bus (12), -- Not used in DRIVE C2X taxi (13), -- Not used in DRIVE C2X maneuverHOVLane (14), -- Not used in DRIVE C2X maneuverSharedLane (15), -- Not used in DRIVE C2X bike (16), -- Not used in DRIVE C2X train (17), -- Not used in DRIVE C2X individualTraffic (18), -- Not used in DRIVE C2X vehiclesEntering (19), -- Not used in DRIVE C2X vehiclesLeaving (20) -- Not used in DRIVE C2X } ConnectsTo ::= SEQUENCE(SIZE(1..48)) OF ConnectionInformation TimeToChange ::= INTEGER (0..65535) Confidence ::= INTEGER (0..15) -- Not (yet) used in DRIVE C2X IntersectionID ::= INTEGER (0..999999) LaneSet ::= SET( SIZE(1..127)) OF LaneNumber LaneNumber ::= INTEGER LaneWidth ::= Dimension Dimension ::= INTEGER (0..16383) ApproachNumber ::= INTEGER (0..127) END No newline at end of file Loading
TOPO/TOPO.asn +82 −53 Original line number Diff line number Diff line -- This ASN.1 specification has been checked for conformance with the ASN.1 standard by the OSS ASN.1 Tools TOPO-PDU-Descriptions Loading @@ -6,78 +5,57 @@ DEFINITIONS AUTOMATIC TAGS ::= BEGIN IMPORTS ItsPduHeader, ReferencePosition FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (1) IMPORTS ItsPduHeader, Latitude, Longitude FROM ITS-Container { itu-t (0) identified-organization (4) etsi (0) itsDomain (5) wg1 (1) ts (102637) cc (0) version (2) }; -- The root data frame for spat TopoPdu ::= SEQUENCE { header ItsPduHeader, topo Intersection topo TOPO } Intersection ::= SEQUENCE { TOPO ::= SEQUENCE { id IntersectionID, refPoint ReferencePosition, approaches SEQUENCE SIZE(1..32) OF ApproachObject refPoint IntersectionReferencePosition, -- In SAE2735 this values is called Position3D -- To stay compatible with current TOPO implementation, it has been renamed to ReferencePosition approaches SEQUENCE (SIZE(1..32)) OF ApproachObject } IntersectionID ::= INTEGER (0..999999) --ReferencePosition ::= SEQUENCE { -- longitude Longitude, --latitude Latitude --} Latitude ::= SEQUENCE { degree INTEGER (-900000000..900000000) -- multiples of 0.1 microdegree IntersectionReferencePosition ::= SEQUENCE { lat Latitude, long Longitude } ApproachObject ::= SEQUENCE { approach Approach laneWidth LaneWidth OPTIONAL, -- Not used in DRIVE C2X approach Approach, egress Approach OPTIONAL -- Not used in DRIVE C2X } Approach ::= SEQUENCE { -- Egress or approach of a link containing all lanes drivingLanes SEQUENCE SIZE(0..32) OF VehicleReferenceLane Approach ::= SEQUENCE { -- Computed and Special lanes have been removed id ApproachNumber, drivingLanes SEQUENCE (SIZE(0..32)) OF VehicleReferenceLane } VehicleReferenceLane ::= SEQUENCE { -- lane defined by a point list VehicleReferenceLane ::= SEQUENCE { laneNumber LaneNumber, laneWidth LaneWidth, laneAttributes VehicleLaneAttributes, -- Used in DRIVE C2X to specify turn possibilities. -- Replaces ConnectsTo information. nodeList NodeList, connectsTo ConnectsTo , keepOutList NodeList OPTIONAL, -- Not used in DRIVE C2X connectsTo ConnectsTo OPTIONAL, -- Not used in DRIVE C2X speedLimit INTEGER (0..150) } LaneNumber ::= INTEGER LaneWidth ::= Dimension -- Dimension of an object, e.g. height, wheelbase Granularity 0.01m Dimension ::= INTEGER (0..16383) -- List of relative positions describing an egress or approach -- first point is the the stop line or point at the boarder of the intersection area NodeList ::= SEQUENCE{ nodes SEQUENCE SIZE (2..64) OF Offsets } Offsets ::= SEQUENCE { -- providing offsets in an karthesian coordinate system in 1cm granularity xOffset INTEGER (-32767..32767), yOffset INTEGER (-32767..32767) } ConnectsTo ::= SEQUENCE(SIZE(1..48)) OF ConnectionInformation -- List of possible connection of a lane ConnectionInformation ::= SEQUENCE { ConnectionInformation ::= SEQUENCE { -- Not used in DRIVE C2X lane LaneNumber, intersection IntersectionID, maneuver TurnDirection } TurnDirection ::= BIT STRING { TurnDirection ::= BIT STRING { -- Not used in DRIVE C2X uTurn (0), sharpRight (1), right (2), Loading @@ -88,4 +66,55 @@ TurnDirection ::= BIT STRING { sharpLeft (7) } NodeList ::= SEQUENCE{ nodes SEQUENCE SIZE (2..64) OF Offsets } Offsets ::= SEQUENCE { -- z-offset has been removed. xOffset INTEGER (-32767..32767), yOffset INTEGER (-32767..32767) } VehicleLaneAttributes ::= BIT STRING { noData (0), -- Not used in DRIVE C2X egressPath (1), -- Not used in DRIVE C2X maneuverStraightAllowed (2), maneuverLeftAllowed (3), maneuverRightAllowed (4), yield (5), -- Not used in DRIVE C2X maneuverNoUTurn (6), -- Not used in DRIVE C2X maneuverNoTurnOnRed (7), -- Not used in DRIVE C2X maneuverNoStop (8), -- Not used in DRIVE C2X noStop (9), -- Not used in DRIVE C2X noTurnOnRed (10), -- Not used in DRIVE C2X hovLane (11), -- Not used in DRIVE C2X bus (12), -- Not used in DRIVE C2X taxi (13), -- Not used in DRIVE C2X maneuverHOVLane (14), -- Not used in DRIVE C2X maneuverSharedLane (15), -- Not used in DRIVE C2X bike (16), -- Not used in DRIVE C2X train (17), -- Not used in DRIVE C2X individualTraffic (18), -- Not used in DRIVE C2X vehiclesEntering (19), -- Not used in DRIVE C2X vehiclesLeaving (20) -- Not used in DRIVE C2X } ConnectsTo ::= SEQUENCE(SIZE(1..48)) OF ConnectionInformation TimeToChange ::= INTEGER (0..65535) Confidence ::= INTEGER (0..15) -- Not (yet) used in DRIVE C2X IntersectionID ::= INTEGER (0..999999) LaneSet ::= SET( SIZE(1..127)) OF LaneNumber LaneNumber ::= INTEGER LaneWidth ::= Dimension Dimension ::= INTEGER (0..16383) ApproachNumber ::= INTEGER (0..127) END No newline at end of file