@@ -3,7 +3,6 @@ syntax = "proto2";
33option optimize_for = SPEED ;
44
55import "osi_common.proto" ;
6- import "osi_lane.proto" ;
76
87package osi3 ;
98
@@ -277,7 +276,7 @@ message LogicalLane
277276
278277 // The type of the logical lane.
279278 //
280- optional Lane.Classification.Subtype type = 2 ;
279+ optional Type type = 2 ;
281280
282281 // Optional external reference to the lane source.
283282 //
@@ -465,6 +464,96 @@ message LogicalLane
465464 //
466465 repeated LaneConnection successor_lane = 15 ;
467466
467+ //
468+ // \brief Definition of available lane types.
469+ //
470+ // This is mostly aligned with OpenDRIVE, except that lane types modelling
471+ // access restrictions (e.g. "taxi") are not made available here. These are
472+ // already deprecated in OpenDRIVE. To support this, access restrictions
473+ // should be added later, in alignment with OpenDRIVE.
474+ //
475+ enum Type
476+ {
477+ // %Lane of unknown type. Do not use in ground truth.
478+ //
479+ TYPE_UNKNOWN = 0 ;
480+
481+ // Any other type of lane.
482+ //
483+ TYPE_OTHER = 1 ;
484+
485+ // A normal driving lane.
486+ // Example: Lanes with IDs l1, l2, l3 and l4 in image \ref
487+ // HighwayExit.
488+ // This matches the OpenDRIVE type "driving".
489+ //
490+ TYPE_NORMAL = 2 ;
491+
492+ // A lane that is designated for bicylists.
493+ //
494+ TYPE_BIKING = 3 ;
495+
496+ // A lane that is designated for pedestrians (sidewalk).
497+ //
498+ TYPE_SIDEWALK = 4 ;
499+
500+ // A lane with parking spaces.
501+ //
502+ TYPE_PARKING = 5 ;
503+
504+ // A hard shoulder on motorways for emergency stops.
505+ // Example: Lane l5 in image \ref
506+ // HighwayExit.
507+ //
508+ TYPE_STOP = 6 ;
509+
510+ // A lane on which cars should not drive.
511+ //
512+ TYPE_RESTRICTED = 7 ;
513+
514+ // A hard border on the edge of a road.
515+ //
516+ TYPE_BORDER = 8 ;
517+
518+ // A soft border on the edge of a road.
519+ //
520+ TYPE_SHOULDER = 9 ;
521+
522+ // A deceleration lane in parallel to the main road.
523+ // Example: Lane l6 in image \ref
524+ // HighwayExit.
525+ //
526+ TYPE_EXIT = 10 ;
527+
528+ // An acceleration lane in parallel to the main road.
529+ //
530+ TYPE_ENTRY = 11 ;
531+
532+ // A ramp from rural or urban roads joining a motorway.
533+ //
534+ TYPE_ONRAMP = 12 ;
535+
536+ // A ramp leading off a motorway onto rural or urban roads.
537+ //
538+ TYPE_OFFRAMP = 13 ;
539+
540+ // A ramp that connect two motorways.
541+ //
542+ TYPE_CONNECTINGRAMP = 14 ;
543+
544+ // A lane that sits between driving lanes
545+ // that lead in opposite directions. It is
546+ // typically used to separate traffic in
547+ // towns on large roads.
548+ //
549+ TYPE_MEDIAN = 15 ;
550+
551+ // Curb stones. Curb stones have a different
552+ // height than the adjacent drivable lanes.
553+ //
554+ TYPE_CURB = 16 ;
555+ }
556+
468557 //
469558 // \brief Connection to another lane (predecessor or successor)
470559 //
0 commit comments