Apollo 11.0
自动驾驶开放平台
apollo::planning::Planner类 参考abstract

Planner is a base class for specific planners. 更多...

#include <planner.h>

类 apollo::planning::Planner 继承关系图:
apollo::planning::Planner 的协作图:

Public 成员函数

virtual ~Planner ()=default
 Destructor
 
virtual std::string Name ()=0
 
virtual apollo::common::Status Init (const std::shared_ptr< DependencyInjector > &injector, const std::string &config_path="")
 
virtual apollo::common::Status Plan (const common::TrajectoryPoint &planning_init_point, Frame *frame, ADCTrajectory *ptr_computed_trajectory)=0
 Compute trajectories for execution.
 
virtual void Stop ()=0
 
virtual void Reset (Frame *frame)
 
template<typename T >
bool LoadConfig (const std::string &custom_config_path, T *config)
 

Protected 属性

std::shared_ptr< DependencyInjectorinjector_ = nullptr
 

详细描述

Planner is a base class for specific planners.

It contains a pure virtual function Plan which must be implemented in derived class.

在文件 planner.h45 行定义.

构造及析构函数说明

◆ ~Planner()

virtual apollo::planning::Planner::~Planner ( )
virtualdefault

Destructor

成员函数说明

◆ Init()

virtual apollo::common::Status apollo::planning::Planner::Init ( const std::shared_ptr< DependencyInjector > &  injector,
const std::string &  config_path = "" 
)
inlinevirtual

apollo::planning::LatticePlanner, apollo::planning::NaviPlanner, apollo::planning::PublicRoadPlanner , 以及 apollo::planning::RTKReplayPlanner 重载.

在文件 planner.h54 行定义.

56 {
57 injector_ = injector;
58 return common::Status::OK();
59 }
static Status OK()
generate a success status.
Definition status.h:60
std::shared_ptr< DependencyInjector > injector_
Definition planner.h:79

◆ LoadConfig()

template<typename T >
bool apollo::planning::Planner::LoadConfig ( const std::string &  custom_config_path,
T *  config 
)

在文件 planner.h83 行定义.

83 {
84 std::string config_path = custom_config_path;
85 // Get the default config file if "custom_config_path" is empty.
86 if ("" == config_path) {
87 int status;
88 // Get the name of this class.
89 std::string class_name =
90 abi::__cxa_demangle(typeid(*this).name(), 0, 0, &status);
92 ->GetPluginConfPath<Planner>(
93 class_name, "conf/planner_config.pb.txt");
94 }
95 return apollo::cyber::common::LoadConfig<T>(config_path, config);
96}
std::string GetPluginConfPath(const std::string &class_name, const std::string &conf_name)
get plugin configuration file location
static PluginManager * Instance()
get singleton instance of PluginManager

◆ Name()

virtual std::string apollo::planning::Planner::Name ( )
pure virtual

◆ Plan()

virtual apollo::common::Status apollo::planning::Planner::Plan ( const common::TrajectoryPoint planning_init_point,
Frame frame,
ADCTrajectory ptr_computed_trajectory 
)
pure virtual

Compute trajectories for execution.

参数
planning_init_pointThe trajectory point where planning starts.
frameCurrent planning frame.
返回
OK if planning succeeds; error otherwise.

apollo::planning::LatticePlanner, apollo::planning::NaviPlanner, apollo::planning::PublicRoadPlanner , 以及 apollo::planning::RTKReplayPlanner 内被实现.

◆ Reset()

virtual void apollo::planning::Planner::Reset ( Frame frame)
inlinevirtual

apollo::planning::PublicRoadPlanner 重载.

在文件 planner.h73 行定义.

73{}

◆ Stop()

virtual void apollo::planning::Planner::Stop ( )
pure virtual

类成员变量说明

◆ injector_

std::shared_ptr<DependencyInjector> apollo::planning::Planner::injector_ = nullptr
protected

在文件 planner.h79 行定义.


该类的文档由以下文件生成: