Apollo  6.0
Open source self driving car software
Public Member Functions | Static Public Member Functions | List of all members
apollo::planning::LaneChangeDecider Class Reference

#include <lane_change_decider.h>

Inheritance diagram for apollo::planning::LaneChangeDecider:
Inheritance graph
Collaboration diagram for apollo::planning::LaneChangeDecider:
Collaboration graph

Public Member Functions

 LaneChangeDecider (const TaskConfig &config, const std::shared_ptr< DependencyInjector > &injector)
 
- Public Member Functions inherited from apollo::planning::Decider
 Decider (const TaskConfig &config)
 
 Decider (const TaskConfig &config, const std::shared_ptr< DependencyInjector > &injector)
 
virtual ~Decider ()=default
 
apollo::common::Status Execute (Frame *frame, ReferenceLineInfo *reference_line_info) override
 
apollo::common::Status Execute (Frame *frame) override
 
- Public Member Functions inherited from apollo::planning::Task
 Task (const TaskConfig &config)
 
 Task (const TaskConfig &config, const std::shared_ptr< DependencyInjector > &injector)
 
virtual ~Task ()=default
 
const std::string & Name () const
 
const TaskConfig & Config () const
 

Static Public Member Functions

static bool IsClearToChangeLane (ReferenceLineInfo *reference_line_info)
 A static function to check if the ChangeLanePath type of reference line is safe or if current reference line is safe to deviate away and come back. More...
 
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 perception behind itself by beam scanning. More...
 
static void UpdatePreparationDistance (const bool is_opt_succeed, const Frame *frame, const ReferenceLineInfo *const reference_line_info, PlanningContext *planning_context)
 

Additional Inherited Members

- Protected Member Functions inherited from apollo::planning::Decider
virtual apollo::common::Status Process (Frame *frame)
 
- Protected Attributes inherited from apollo::planning::Task
Frameframe_ = nullptr
 
ReferenceLineInforeference_line_info_ = nullptr
 
TaskConfig config_
 
std::string name_
 
std::shared_ptr< DependencyInjectorinjector_
 

Constructor & Destructor Documentation

◆ LaneChangeDecider()

apollo::planning::LaneChangeDecider::LaneChangeDecider ( const TaskConfig &  config,
const std::shared_ptr< DependencyInjector > &  injector 
)

Member Function Documentation

◆ IsClearToChangeLane()

static bool apollo::planning::LaneChangeDecider::IsClearToChangeLane ( ReferenceLineInfo reference_line_info)
static

A static function to check if the ChangeLanePath type of reference line is safe or if current reference line is safe to deviate away and come back.

◆ IsPerceptionBlocked()

static bool apollo::planning::LaneChangeDecider::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 
)
static

A static function to estimate if an obstacle in certain range in front of ADV blocks too much space perception behind itself by beam scanning.

Parameters
search_beam_lengthis the length of scanning beam
search_beam_radius_intensityis the resolution of scanning
search_rangeis the scanning range centering at ADV heading
is_block_angle_thresholdis the threshold to tell how big a block angle range is perception blocking

◆ UpdatePreparationDistance()

static void apollo::planning::LaneChangeDecider::UpdatePreparationDistance ( const bool  is_opt_succeed,
const Frame frame,
const ReferenceLineInfo *const  reference_line_info,
PlanningContext planning_context 
)
static

The documentation for this class was generated from the following file: