28#include "modules/planning/planning_interface_base/scenario_base/proto/scenario_pipeline.pb.h"
44class ReferenceLineInfo;
51 const std::shared_ptr<DependencyInjector>& injector,
52 const std::string& config_dir,
void* context);
64 const std::string&
Name()
const;
85 const std::string& name,
const double time_diff_ms);
Frame holds all data for one planning cycle.
ReferenceLineInfo holds all data for one reference line.
virtual StageResult FinishScenario()
StageResult ExecuteTaskOnOpenSpace(Frame *frame)
const std::string & NextStage() const
virtual bool Init(const StagePipeline &config, const std::shared_ptr< DependencyInjector > &injector, const std::string &config_dir, void *context)
std::shared_ptr< DependencyInjector > injector_
virtual StageResult Process(const common::TrajectoryPoint &planning_init_point, Frame *frame)=0
Each stage does its business logic inside Process function.
StagePipeline pipeline_config_
StageResult ExecuteTaskOnReferenceLineForOnlineLearning(const common::TrajectoryPoint &planning_start_point, Frame *frame)
void RecordDebugInfo(ReferenceLineInfo *reference_line_info, const std::string &name, const double time_diff_ms)
StageResult ExecuteTaskOnReferenceLine(const common::TrajectoryPoint &planning_start_point, Frame *frame)
std::shared_ptr< Task > fallback_task_
const std::string & Name() const
std::vector< std::shared_ptr< Task > > task_list_
Planning module main class.