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

#include <st_obstacles_processor.h>

Collaboration diagram for apollo::planning::STObstaclesProcessor:
Collaboration graph

Public Member Functions

 STObstaclesProcessor ()
 
void Init (const double planning_distance, const double planning_time, const PathData &path_data, PathDecision *const path_decision, History *const history)
 
virtual ~STObstaclesProcessor ()=default
 
common::Status MapObstaclesToSTBoundaries (PathDecision *const path_decision)
 
std::unordered_map< std::string, STBoundaryGetAllSTBoundaries ()
 
bool GetSBoundsFromDecisions (double t, std::vector< std::pair< double, double >> *const available_s_bounds, std::vector< std::vector< std::pair< std::string, ObjectDecisionType >>> *const available_obs_decisions)
 Given a time t, get the lower and upper s-boundaries. If the boundary is well-defined based on decision made previously, fill "available_s_bounds" with only one boundary. Otherwise, fill "available_s_bounds with all candidates and "available_obs_decisions" with corresponding possible obstacle decisions. More...
 
bool GetLimitingSpeedInfo (double t, std::pair< double, double > *const limiting_speed_info)
 Provided that decisions for all existing obstacles are made, get the speed limiting info from limiting st-obstacles. More...
 
void SetObstacleDecision (const std::string &obs_id, const ObjectDecisionType &obs_decision)
 Set the decision for a given obstacle. More...
 
void SetObstacleDecision (const std::vector< std::pair< std::string, ObjectDecisionType >> &obstacle_decisions)
 Set the decision for a list of obstacles. More...
 

Constructor & Destructor Documentation

◆ STObstaclesProcessor()

apollo::planning::STObstaclesProcessor::STObstaclesProcessor ( )
inline

◆ ~STObstaclesProcessor()

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

Member Function Documentation

◆ GetAllSTBoundaries()

std::unordered_map<std::string, STBoundary> apollo::planning::STObstaclesProcessor::GetAllSTBoundaries ( )

◆ GetLimitingSpeedInfo()

bool apollo::planning::STObstaclesProcessor::GetLimitingSpeedInfo ( double  t,
std::pair< double, double > *const  limiting_speed_info 
)

Provided that decisions for all existing obstacles are made, get the speed limiting info from limiting st-obstacles.

Parameters
Timet.
Theactual limiting speed-info: (lower, upper)
Returns
True if there is speed limiting info; otherwise, false.

◆ GetSBoundsFromDecisions()

bool apollo::planning::STObstaclesProcessor::GetSBoundsFromDecisions ( double  t,
std::vector< std::pair< double, double >> *const  available_s_bounds,
std::vector< std::vector< std::pair< std::string, ObjectDecisionType >>> *const  available_obs_decisions 
)

Given a time t, get the lower and upper s-boundaries. If the boundary is well-defined based on decision made previously, fill "available_s_bounds" with only one boundary. Otherwise, fill "available_s_bounds with all candidates and "available_obs_decisions" with corresponding possible obstacle decisions.

Parameters
Timet
Theavailable s-boundaries to be filled up.
Thecorresponding possible obstacle decisions.
Returns
Whether we can get valid s-bounds.

◆ Init()

void apollo::planning::STObstaclesProcessor::Init ( const double  planning_distance,
const double  planning_time,
const PathData path_data,
PathDecision *const  path_decision,
History *const  history 
)

◆ MapObstaclesToSTBoundaries()

common::Status apollo::planning::STObstaclesProcessor::MapObstaclesToSTBoundaries ( PathDecision *const  path_decision)

◆ SetObstacleDecision() [1/2]

void apollo::planning::STObstaclesProcessor::SetObstacleDecision ( const std::string &  obs_id,
const ObjectDecisionType &  obs_decision 
)

Set the decision for a given obstacle.

◆ SetObstacleDecision() [2/2]

void apollo::planning::STObstaclesProcessor::SetObstacleDecision ( const std::vector< std::pair< std::string, ObjectDecisionType >> &  obstacle_decisions)

Set the decision for a list of obstacles.


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