42 bool Init(
const std::string& config_dir,
const std::string& name,
43 const std::shared_ptr<DependencyInjector>& injector)
override;
50 void InterpolateTrajectory(
54 void UpdateVehicleInfo();
57 std::string*
const encoding);
59 bool CheckTrajTraversed(
const std::string& trajectory_encoding_to_check);
61 void UpdateTrajHistory(
const std::string& chosen_trajectory_encoding);
64 std::vector<TrajGearPair>* partitioned_trajectories);
67 const bool is_trajectory_last_point,
75 const size_t trajectories_size,
76 size_t* current_trajectory_point_index);
78 bool UseFailSafeSearch(
79 const std::vector<TrajGearPair>& partitioned_trajectories,
80 const std::vector<std::string>& trajectories_encodings,
81 size_t* current_trajectory_index,
size_t* current_trajectory_point_index);
83 bool InsertGearShiftTrajectory(
84 const bool flag_change_to_next,
const size_t current_trajectory_index,
85 const std::vector<TrajGearPair>& partitioned_trajectories,
88 void GenerateGearShiftTrajectory(
91 void GenerateStopTrajectory(
94 void AdjustRelativeTimeAndS(
95 const std::vector<TrajGearPair>& partitioned_trajectories,
96 const size_t current_trajectory_index,
97 const size_t closest_trajectory_point_index,
100 bool CheckArrivePoint(
103 const double& lateral_offset_to_midpoint,
104 const double& longitudinal_offset_to_midpoint,
105 const double& heading_offset_to_midpoint);
109 double heading_search_range_ = 0.0;
110 double heading_track_range_ = 0.0;
111 double distance_search_range_ = 0.0;
112 double heading_offset_to_midpoint_ = 0.0;
113 double lateral_offset_to_midpoint_ = 0.0;
114 double longitudinal_offset_to_midpoint_ = 0.0;
115 double vehicle_box_iou_threshold_to_midpoint_ = 0.0;
116 double scale_destination_ = 0.0;
117 int stop_check_window_ = 0;
118 int stop_check_count_ = 0;
121 double ego_length_ = 0.0;
122 double ego_width_ = 0.0;
123 double shift_distance_ = 0.0;
124 double wheel_base_ = 0.0;
126 double ego_theta_ = 0.0;
130 apollo::canbus::Chassis_GearPosition ego_gear_;
132 double vehicle_moving_direction_ = 0.0;
133 int last_index_ = -1;
134 size_t current_trajectory_index_ = 0;
135 bool fail_search_fallback_ =
false;
136 double last_time_ = 0;
139 const std::pair<std::pair<size_t, size_t>,
double>& left,
140 const std::pair<std::pair<size_t, size_t>,
double>& right)
const {
141 return left.second <= right.second;
145 bool operator()(
const std::pair<size_t, double>& left,
146 const std::pair<size_t, double>& right) {
147 return left.second <= right.second;
bool Init(const std::string &config_dir, const std::string &name, const std::shared_ptr< DependencyInjector > &injector) override