Apollo  6.0
Open source self driving car software
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
apollo::planning::scenario::Scenario Class Referenceabstract

#include <scenario.h>

Inheritance diagram for apollo::planning::scenario::Scenario:
Inheritance graph
Collaboration diagram for apollo::planning::scenario::Scenario:
Collaboration graph

Public Types

enum  ScenarioStatus { STATUS_UNKNOWN = 0, STATUS_PROCESSING = 1, STATUS_DONE = 2 }
 

Public Member Functions

 Scenario (const ScenarioConfig &config, const ScenarioContext *context, const std::shared_ptr< DependencyInjector > &injector)
 
virtual ~Scenario ()=default
 
ScenarioConfig::ScenarioType scenario_type () const
 
virtual std::unique_ptr< StageCreateStage (const ScenarioConfig::StageConfig &stage_config, const std::shared_ptr< DependencyInjector > &injector)=0
 
virtual bool IsTransferable (const Scenario &other_scenario, const Frame &frame)
 
virtual ScenarioStatus Process (const common::TrajectoryPoint &planning_init_point, Frame *frame)
 
const ScenarioStatusGetStatus () const
 
const ScenarioConfig::StageType GetStage () const
 
virtual void Init ()
 
const std::string & Name () const
 
const std::string & GetMsg () const
 

Static Public Member Functions

static bool LoadConfig (const std::string &config_file, ScenarioConfig *config)
 

Protected Attributes

ScenarioStatus scenario_status_ = STATUS_UNKNOWN
 
std::unique_ptr< Stagecurrent_stage_
 
ScenarioConfig config_
 
std::unordered_map< ScenarioConfig::StageType, const ScenarioConfig::StageConfig *, std::hash< int > > stage_config_map_
 
const ScenarioContextscenario_context_ = nullptr
 
std::string name_
 
std::string msg_
 
std::shared_ptr< DependencyInjectorinjector_
 

Member Enumeration Documentation

◆ ScenarioStatus

Enumerator
STATUS_UNKNOWN 
STATUS_PROCESSING 
STATUS_DONE 

Constructor & Destructor Documentation

◆ Scenario()

apollo::planning::scenario::Scenario::Scenario ( const ScenarioConfig &  config,
const ScenarioContext context,
const std::shared_ptr< DependencyInjector > &  injector 
)

◆ ~Scenario()

virtual apollo::planning::scenario::Scenario::~Scenario ( )
virtualdefault

Member Function Documentation

◆ CreateStage()

virtual std::unique_ptr<Stage> apollo::planning::scenario::Scenario::CreateStage ( const ScenarioConfig::StageConfig &  stage_config,
const std::shared_ptr< DependencyInjector > &  injector 
)
pure virtual

◆ GetMsg()

const std::string& apollo::planning::scenario::Scenario::GetMsg ( ) const
inline

◆ GetStage()

const ScenarioConfig::StageType apollo::planning::scenario::Scenario::GetStage ( ) const
inline

◆ GetStatus()

const ScenarioStatus& apollo::planning::scenario::Scenario::GetStatus ( ) const
inline

◆ Init()

virtual void apollo::planning::scenario::Scenario::Init ( )
virtual

◆ IsTransferable()

virtual bool apollo::planning::scenario::Scenario::IsTransferable ( const Scenario other_scenario,
const Frame frame 
)
inlinevirtual

◆ LoadConfig()

static bool apollo::planning::scenario::Scenario::LoadConfig ( const std::string &  config_file,
ScenarioConfig *  config 
)
static

◆ Name()

const std::string& apollo::planning::scenario::Scenario::Name ( ) const

◆ Process()

virtual ScenarioStatus apollo::planning::scenario::Scenario::Process ( const common::TrajectoryPoint &  planning_init_point,
Frame frame 
)
virtual

◆ scenario_type()

ScenarioConfig::ScenarioType apollo::planning::scenario::Scenario::scenario_type ( ) const
inline

Member Data Documentation

◆ config_

ScenarioConfig apollo::planning::scenario::Scenario::config_
protected

◆ current_stage_

std::unique_ptr<Stage> apollo::planning::scenario::Scenario::current_stage_
protected

◆ injector_

std::shared_ptr<DependencyInjector> apollo::planning::scenario::Scenario::injector_
protected

◆ msg_

std::string apollo::planning::scenario::Scenario::msg_
protected

◆ name_

std::string apollo::planning::scenario::Scenario::name_
protected

◆ scenario_context_

const ScenarioContext* apollo::planning::scenario::Scenario::scenario_context_ = nullptr
protected

◆ scenario_status_

ScenarioStatus apollo::planning::scenario::Scenario::scenario_status_ = STATUS_UNKNOWN
protected

◆ stage_config_map_

std::unordered_map<ScenarioConfig::StageType, const ScenarioConfig::StageConfig*, std::hash<int> > apollo::planning::scenario::Scenario::stage_config_map_
protected

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