21 #include <unordered_set> 32 namespace prediction {
39 const std::shared_ptr<ContainerManager>& container_manager);
46 void AssignCautionLevelInJunction(
const Obstacle& ego_vehicle,
48 const std::string& junction_id);
50 void AssignCautionLevelCruiseKeepLane(
53 void AssignCautionLevelCruiseChangeLane(
56 void AssignCautionLevelByEgoReferenceLine(
59 void AssignCautionLevelPedestrianByEgoReferenceLine(
62 void AssignCautionLevelPedestrianInFront(
65 void RankingCautionLevelObstacles(
const Obstacle& ego_vehicle,
68 void AssignCautionByMerge(
70 std::shared_ptr<const hdmap::LaneInfo> lane_info_ptr,
71 std::unordered_set<std::string>*
const visited_lanes,
74 void AssignCautionByOverlap(
76 std::shared_ptr<const hdmap::LaneInfo> lane_info_ptr,
77 std::unordered_set<std::string>*
const visited_lanes,
80 void SetCautionBackward(
81 const double distance,
const Obstacle& ego_vehicle,
82 std::shared_ptr<const hdmap::LaneInfo> start_lane_info_ptr,
83 std::unordered_set<std::string>*
const visited_lanes,
86 void SetCautionIfCloseToEgo(
const Obstacle& ego_vehicle,
87 const double distance_threshold,
91 std::unordered_set<std::string> ego_back_lane_id_set_;
93 std::shared_ptr<ContainerManager> container_manager_;
95 std::string ego_lane_id_ =
"";
97 double ego_lane_s_ = 0.0;
Prediction obstacle.
Definition: obstacle.h:52
ObstaclesPrioritizer()=delete
Definition: obstacles_container.h:39
PlanningContext is the runtime context in planning. It is persistent across multiple frames...
Definition: atomic_hash_map.h:25
Definition: obstacles_prioritizer.h:34
void AssignCautionLevel()
Use container manager to manage all containers.