25#include <unordered_map>
29#include "modules/planning/tasks/speed_decider/proto/speed_decider.pb.h"
41 bool Init(
const std::string& config_dir,
const std::string& name,
42 const std::shared_ptr<DependencyInjector>& injector)
override;
54 STLocation GetSTLocation(
const PathDecision*
const path_decision,
58 bool CheckKeepClearCrossable(
const PathDecision*
const path_decision,
60 const STBoundary& keep_clear_st_boundary)
const;
62 bool CheckKeepClearBlocked(
const PathDecision*
const path_decision,
63 const Obstacle& keep_clear_obstacle)
const;
72 bool CheckIsFollow(
const Obstacle& obstacle,
75 bool CheckStopForPedestrian(
const Obstacle& obstacle)
const;
77 bool CreateStopDecision(
const Obstacle& obstacle,
78 ObjectDecisionType*
const stop_decision,
79 double stop_distance)
const;
84 bool CreateFollowDecision(
const Obstacle& obstacle,
85 ObjectDecisionType*
const follow_decision)
const;
90 bool CreateYieldDecision(
const Obstacle& obstacle,
91 ObjectDecisionType*
const yield_decision)
const;
96 bool CreateOvertakeDecision(
98 ObjectDecisionType*
const overtake_decision)
const;
103 void AppendIgnoreDecision(
Obstacle* obstacle)
const;
110 bool IsFollowTooClose(
const Obstacle& obstacle)
const;
112 double EstimateProperOvertakingGap(
const double target_obs_speed,
113 const double adc_speed)
const;
115 double EstimateProperFollowGap(
const double& adc_speed)
const;
122 std::vector<std::pair<double, double>> follow_distance_function_;
A general class to denote the return status of an API call.
Frame holds all data for one planning cycle.
This is the class that associates an Obstacle with its path properties.
PathDecision represents all obstacle decisions on one path.
ReferenceLineInfo holds all data for one reference line.
bool Init(const std::string &config_dir, const std::string &name, const std::shared_ptr< DependencyInjector > &injector) override
common::Status Execute(Frame *frame, ReferenceLineInfo *reference_line_info) override
Planning module main class.
#define CYBER_PLUGIN_MANAGER_REGISTER_PLUGIN(name, base)