28 #include "modules/planning/proto/planning_config.pb.h" 29 #include "modules/planning/proto/planning_status.pb.h" 38 const std::shared_ptr<DependencyInjector>& injector);
58 const double search_beam_length,
59 const double search_beam_radius_intensity,
60 const double search_range,
61 const double is_block_angle_threshold);
64 const bool is_opt_succeed,
const Frame* frame,
73 static bool HysteresisFilter(
const double obstacle_distance,
74 const double safe_distance,
75 const double distance_buffer,
76 const bool is_obstacle_blocking);
78 void UpdateStatus(ChangeLaneStatus::Status status_code,
79 const std::string& path_id);
80 void UpdateStatus(
double timestamp, ChangeLaneStatus::Status status_code,
81 const std::string& path_id);
83 void PrioritizeChangeLane(
84 const bool is_prioritize_change_lane,
85 std::list<ReferenceLineInfo>* reference_line_info)
const;
87 void RemoveChangeLane(
88 std::list<ReferenceLineInfo>* reference_line_info)
const;
90 std::string GetCurrentPathId(
91 const std::list<ReferenceLineInfo>& reference_line_info)
const;
static bool IsPerceptionBlocked(const ReferenceLineInfo &reference_line_info, const double search_beam_length, const double search_beam_radius_intensity, const double search_range, const double is_block_angle_threshold)
A static function to estimate if an obstacle in certain range in front of ADV blocks too much space p...
Definition: planning_context.h:33
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
LaneChangeDecider(const TaskConfig &config, const std::shared_ptr< DependencyInjector > &injector)
Planning module main class. It processes GPS and IMU as input, to generate planning info...
Frame holds all data for one planning cycle.
Definition: frame.h:61
ReferenceLineInfo holds all data for one reference line.
Definition: reference_line_info.h:54
static void UpdatePreparationDistance(const bool is_opt_succeed, const Frame *frame, const ReferenceLineInfo *const reference_line_info, PlanningContext *planning_context)
static bool IsClearToChangeLane(ReferenceLineInfo *reference_line_info)
A static function to check if the ChangeLanePath type of reference line is safe or if current referen...
A general class to denote the return status of an API call. It can either be an OK status for success...
Definition: status.h:43
Definition: lane_change_decider.h:35