planning_internal.proto 3.3 KB
Newer Older
D
Dong Li 已提交
1 2 3 4
syntax = "proto2";

package apollo.planning_internal;

5
import "modules/canbus/proto/chassis.proto";
D
Dong Li 已提交
6
import "modules/common/proto/header.proto";
D
Dong Li 已提交
7
import "modules/common/proto/error_code.proto";
J
Jiangtao Hu 已提交
8
import "modules/common/proto/path_point.proto";
D
Dong Li 已提交
9 10
import "modules/localization/proto/localization.proto";
import "modules/localization/proto/pose.proto";
11
import "modules/map/proto/routing.proto";
D
Dong Li 已提交
12
import "modules/perception/proto/perception_obstacle.proto";
13
import "modules/planning/proto/decision.proto";
D
Dong Li 已提交
14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
import "modules/prediction/proto/prediction_obstacle.proto";

message PlanningObstacle {
  optional int32 perception_id = 1;
  optional string decision_id = 2;

  optional apollo.perception.Point position =
      3;  // obstacle position in the world coordinate system.
  optional double theta = 4;  // heading in the world coordinate system
  optional apollo.perception.Point velocity = 5;  // obstacle velocity.
  // obstacle speed ( == sqrt(velocity.x^2 + velocity.y^2)
  optional double speed = 6;

  // Size of obstacle bounding box.
  optional double length = 7;  // obstacle length.
  optional double width = 8;   // obstacle width.
  optional double height = 9;  // obstacle height.

  // obstacle corner points.
  repeated apollo.perception.Point polygon_point = 10;
  // duration of an obstacle since detection.
  optional double tracking_time = 11;

  // perception timestamp in ms
  optional double perception_timestamp = 12;
  // object type in perception
  optional apollo.perception.PerceptionObstacle.Type perception_object_type =
      13;

  optional double prediction_timestamp = 14;  // prediction_timestamp in ms
  // from prediction
  repeated apollo.prediction.Trajectory prediction_trajectory = 15;

47 48
  optional apollo.planning.ObjectDecision.ObjectType decision_object_type = 16;
  optional apollo.planning.ObjectDecisionType object_decision =
D
Dong Li 已提交
49
      17 [deprecated = true];
50
  repeated apollo.planning.ObjectDecisionType planning_object_decision = 18;
D
Dong Li 已提交
51 52 53 54 55 56 57 58
}

message Debug {
  /*
      PLEASE add id here
      id = 1: st_graph_info
  */
  message DebugMessage {
D
Dong Li 已提交
59
    optional apollo.common.ErrorCode error_code = 1;
D
Dong Li 已提交
60 61 62 63 64 65 66 67 68 69
    optional int32 id = 2;
    oneof debug_string {
      string trace = 3;
      string info = 4;
      string warn = 5;
      string error = 6;
      string fatal = 7;
    }
  }

D
Dong Li 已提交
70
  optional apollo.common.ErrorCode error_code = 1;
D
Dong Li 已提交
71 72 73 74
  optional PlanningData planning_data = 2;
  repeated DebugMessage debug_message = 3;
}

75 76 77 78 79 80 81 82 83 84
message LightSignal {
  optional bool emergency = 1; // hazard signal
  enum TurnSignal {
    NO_TURN = 1;
    LEFT_TURN = 2;
    RIGHT_TURN = 3;
  };
  optional TurnSignal turn_signal = 2 [default = NO_TURN];
}

J
Jiangtao Hu 已提交
85
// next id: 12
D
Dong Li 已提交
86 87
message PlanningData {
  optional apollo.common.Header header = 1;
88 89 90 91 92

  // input
  optional apollo.localization.LocalizationEstimate adc_position = 7;
  optional apollo.canbus.Chassis chassis = 8;
  optional apollo.hdmap.RoutingResult routing = 9;
93
  optional apollo.common.TrajectoryPoint init_point = 10;
J
Jiangtao Hu 已提交
94
  optional bool is_replan = 11;
95

D
Dong Li 已提交
96 97
  // processed planning_obstacles
  repeated PlanningObstacle planning_obstacle = 4;
J
Jiangtao Hu 已提交
98

A
Aaron Xiao 已提交
99
  repeated apollo.common.Path path = 6;
J
Jiangtao Hu 已提交
100

101
  optional apollo.localization.Pose init_status = 2 [deprecated = true];  // initial status of adc
J
Jiangtao Hu 已提交
102
  optional apollo.planning.MainDecision main_decision = 3 [deprecated = true];
103
  optional LightSignal light_signal = 5 [deprecated = true];
D
Dong Li 已提交
104
}