52 const std::shared_ptr<DependencyInjector>& injector);
58 void OnHMIStatus(apollo::dreamview::HMIStatus hmi_status);
76 struct ADCCurrentInfo {
77 std::pair<double, double> adc_cur_position_;
78 std::pair<double, double> adc_cur_velocity_;
79 std::pair<double, double> adc_cur_acc_;
80 double adc_cur_heading_;
85 bool GetADCCurrentRoutingIndex(
int* adc_road_index,
int* adc_passage_index,
86 double* adc_passage_s);
88 int GetADCCurrentInfo(ADCCurrentInfo* adc_curr_info);
90 void GenerateObstacleTrajectory(
const int frame_num,
const int obstacle_id,
91 const ADCCurrentInfo& adc_curr_info,
94 void GenerateObstaclePrediction(
97 const ADCCurrentInfo& adc_curr_info,
ObstacleFeature* obstacle_feature);
101 bool GenerateLocalRouting(
const int frame_num,
103 std::vector<std::string>* local_routing_lane_ids);
105 void GenerateRoutingFeature(
107 const std::vector<std::string>& local_routing_lane_ids,
110 void GenerateTrafficLightDetectionFeature(
112 void GenerateADCTrajectoryPoints(
113 const std::list<apollo::localization::LocalizationEstimate>&
122 std::shared_ptr<DependencyInjector> injector_;
124 std::chrono::time_point<std::chrono::system_clock> start_time_;
125 std::ofstream log_file_;
126 std::string record_file_;
127 std::unordered_map<std::string, std::string> map_m_;
129 int learning_data_file_index_ = 0;
130 std::list<apollo::localization::LocalizationEstimate> localizations_;
131 std::unordered_map<int, apollo::prediction::PredictionObstacle>
132 prediction_obstacles_map_;
133 std::unordered_map<int, std::list<PerceptionObstacleFeature>>
134 obstacle_history_map_;
136 std::string map_name_;
139 double traffic_light_detection_message_timestamp_;
140 std::vector<TrafficLightFeature> traffic_lights_;
141 int total_learning_data_frame_num_ = 0;
142 double last_localization_message_timestamp_sec_ = 0.0;