3package apollo.planning;
11 optional
string id = 1;
12 optional
double start_s = 2;
13 optional
double end_s = 3;
14 optional
double speed_limit = 4;
17message ObjectIgnore {}
20 STOP_REASON_HEAD_VEHICLE = 1;
21 STOP_REASON_DESTINATION = 2;
22 STOP_REASON_PEDESTRIAN = 3;
23 STOP_REASON_OBSTACLE = 4;
24 STOP_REASON_PREPARKING = 5;
25 STOP_REASON_SIGNAL = 100;
26 STOP_REASON_STOP_SIGN = 101;
27 STOP_REASON_YIELD_SIGN = 102;
28 STOP_REASON_CLEAR_ZONE = 103;
29 STOP_REASON_CROSSWALK = 104;
30 STOP_REASON_CREEPER = 105;
31 STOP_REASON_REFERENCE_END = 106;
32 STOP_REASON_YELLOW_SIGNAL = 107;
33 STOP_REASON_PULL_OVER = 108;
34 STOP_REASON_SIDEPASS_SAFETY = 109;
35 STOP_REASON_PRE_OPEN_SPACE_STOP = 200;
36 STOP_REASON_LANE_CHANGE_URGENCY = 201;
37 STOP_REASON_EMERGENCY = 202;
41 optional StopReasonCode reason_code = 1;
42 optional
double distance_s = 2;
46 optional
double stop_heading = 4;
47 repeated
string wait_for_obstacle = 5;
55 DYNAMIC_LEFT_NUDGE = 3;
56 DYNAMIC_RIGHT_NUDGE = 4;
58 optional Type type = 1;
61 optional
double distance_l = 2;
65 optional
double distance_s = 1;
67 optional
double fence_heading = 3;
68 optional
double time_buffer = 4;
73 optional
double distance_s = 1;
75 optional
double fence_heading = 3;
78message ObjectOvertake {
79 optional
double distance_s = 1;
81 optional
double fence_heading = 3;
82 optional
double time_buffer = 4;
86message ObjectSidePass {
91 optional Type type = 1;
98 optional ObjectMotionType motion_type = 1;
99 optional ObjectDecisionType decision_type = 2;
102message ObjectStatic {}
104message ObjectDynamic {}
106message ObjectMotionType {
108 ObjectStatic
static = 1;
109 ObjectDynamic dynamic = 2;
113message ObjectDecisionType {
115 ObjectIgnore ignore = 1;
117 ObjectFollow follow = 3;
118 ObjectYield yield = 4;
119 ObjectOvertake overtake = 5;
120 ObjectNudge nudge = 6;
121 ObjectAvoid avoid = 7;
122 ObjectSidePass side_pass = 8;
126message ObjectDecision {
127 optional
string id = 1;
128 optional int32 perception_id = 2;
129 repeated ObjectDecisionType object_decision = 3;
132message ObjectDecisions {
133 repeated ObjectDecision decision = 1;
137 optional StopReasonCode reason_code = 1;
138 optional
string reason = 2;
142 optional
double stop_heading = 4;
146message EmergencyStopHardBrake {}
148message EmergencyStopCruiseToStop {}
150message MainEmergencyStop {
153 ESTOP_REASON_INTERNAL_ERR = 1;
154 ESTOP_REASON_COLLISION = 2;
155 ESTOP_REASON_ST_FIND_PATH = 3;
156 ESTOP_REASON_ST_MAKE_DECISION = 4;
157 ESTOP_REASON_SENSOR_ERROR = 5;
159 optional ReasonCode reason_code = 1;
160 optional
string reason = 2;
162 EmergencyStopHardBrake hard_brake = 3;
163 EmergencyStopCruiseToStop cruise_to_stop = 4;
173message MainChangeLane {
178 optional Type type = 1;
179 repeated TargetLane default_lane = 2;
180 optional MainStop default_lane_stop = 3;
181 optional MainStop target_lane_stop = 4;
184message MainMissionComplete {
189 optional
double stop_heading = 2;
192message MainNotReady {
195 optional
string reason = 1;
203 optional ParkingStatus status = 1;
206message MainDecision {
208 MainCruise cruise = 1;
210 MainEmergencyStop estop = 3;
211 MainChangeLane change_lane = 4 [deprecated =
true];
212 MainMissionComplete mission_complete = 6;
213 MainNotReady not_ready = 7;
214 MainParking parking = 8;
216 repeated TargetLane target_lane = 5 [deprecated =
true];
219message DecisionResult {
220 optional MainDecision main_decision = 1;
221 optional ObjectDecisions object_decision = 2;