Skip to content

Commit 7404d0d

Browse files
committed
handle lane_change status change in module side
Signed-off-by: Mamoru Sobue <[email protected]>
1 parent eb76162 commit 7404d0d

File tree

5 files changed

+8
-19
lines changed

5 files changed

+8
-19
lines changed

planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/include/autoware/behavior_path_goal_planner_module/decision_state.hpp

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ class PathDecisionStateController
5555
const autoware_perception_msgs::msg::PredictedObjects & dynamic_target_objects,
5656
const std::shared_ptr<const PlannerData> planner_data,
5757
const std::shared_ptr<OccupancyGridBasedCollisionDetector> occupancy_grid_map,
58-
const bool is_current_safe, const bool lane_change_status,
58+
const bool is_current_safe, const bool lane_change_status_changed,
5959
const GoalPlannerParameters & parameters, const GoalSearcher & goal_searcher,
6060
std::vector<autoware_utils::Polygon2d> & ego_polygons_expanded);
6161

@@ -66,8 +66,6 @@ class PathDecisionStateController
6666

6767
PathDecisionState current_state_{};
6868

69-
std::optional<bool> prev_lane_change_status_{};
70-
7169
/**
7270
* @brief update current state and save old current state to prev state
7371
*/

planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/include/autoware/behavior_path_goal_planner_module/thread_data.hpp

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ class LaneParkingRequest
4545
const PlannerData & planner_data, const ModuleStatus & current_status,
4646
const BehaviorModuleOutput & upstream_module_output,
4747
const std::optional<PullOverPath> & pull_over_path, const PathDecisionState & prev_data,
48-
const bool trigger_thread_on_approach, const bool lane_change_status);
48+
const bool trigger_thread_on_approach, const bool lane_change_status_changed);
4949

5050
const autoware_utils::LinearRing2d vehicle_footprint_;
5151
const GoalCandidates goal_candidates_;
@@ -69,7 +69,6 @@ class LaneParkingRequest
6969
std::optional<PullOverPath> pull_over_path_; //<! pull over path selected by main thread
7070
PathDecisionState prev_data_;
7171
bool trigger_thread_on_approach_{false};
72-
std::optional<bool> prev_lane_change_status_{};
7372
bool lane_change_status_changed_{false};
7473
};
7574

planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/src/decision_state.cpp

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -31,14 +31,10 @@ void PathDecisionStateController::transit_state(
3131
const PredictedObjects & dynamic_target_objects,
3232
const std::shared_ptr<const PlannerData> planner_data,
3333
const std::shared_ptr<OccupancyGridBasedCollisionDetector> occupancy_grid_map,
34-
const bool is_current_safe, const bool lane_change_status,
34+
const bool is_current_safe, const bool lane_change_status_changed,
3535
const GoalPlannerParameters & parameters, const GoalSearcher & goal_searcher,
3636
std::vector<autoware_utils::Polygon2d> & ego_polygons_expanded)
3737
{
38-
const bool lane_change_status_changed =
39-
prev_lane_change_status_ && prev_lane_change_status_.value() != lane_change_status;
40-
prev_lane_change_status_ = lane_change_status;
41-
4238
const auto next_state = get_next_state(
4339
pull_over_path_opt, upstream_module_has_stopline, now, static_target_objects,
4440
dynamic_target_objects, planner_data, occupancy_grid_map, is_current_safe,

planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/src/goal_planner_module.cpp

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -702,9 +702,8 @@ void GoalPlannerModule::updateData()
702702
getPreviousModuleOutput().path, planner_data_->route_handler->getLaneletMapPtr(),
703703
planner_data_->route_handler->getRoutingGraphPtr())
704704
.has_value();
705-
if (prev_lane_change_status_ && prev_lane_change_status_.value() != lane_change_status) {
706-
lane_change_status_changed_ = true;
707-
}
705+
lane_change_status_changed_ =
706+
prev_lane_change_status_ && prev_lane_change_status_.value() != lane_change_status;
708707
prev_lane_change_status_ = lane_change_status;
709708

710709
const lanelet::ConstLanelets current_lanes =
@@ -767,7 +766,7 @@ void GoalPlannerModule::updateData()
767766
path_decision_controller_.transit_state(
768767
pull_over_path_recv, upstream_module_has_stopline_except_terminal, clock_->now(),
769768
static_target_objects, dynamic_target_objects, planner_data_, occupancy_grid_map_,
770-
is_current_safe, lane_change_status, parameters_, goal_searcher,
769+
is_current_safe, lane_change_status_changed_, parameters_, goal_searcher,
771770
debug_data_.ego_polygons_expanded);
772771
const auto new_decision_state = path_decision_controller_.get_current_state();
773772

planning/behavior_path_planner/autoware_behavior_path_goal_planner_module/src/thread_data.cpp

Lines changed: 2 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@ void LaneParkingRequest::update(
2323
const PlannerData & planner_data, const ModuleStatus & current_status,
2424
const BehaviorModuleOutput & upstream_module_output,
2525
const std::optional<PullOverPath> & pull_over_path, const PathDecisionState & prev_data,
26-
const bool trigger_thread_on_approach, const bool lane_change_status)
26+
const bool trigger_thread_on_approach, const bool lane_change_status_changed)
2727
{
2828
planner_data_ = std::make_shared<PlannerData>(planner_data);
2929
planner_data_->route_handler = std::make_shared<RouteHandler>(*(planner_data.route_handler));
@@ -32,10 +32,7 @@ void LaneParkingRequest::update(
3232
pull_over_path_ = pull_over_path;
3333
prev_data_ = prev_data;
3434
trigger_thread_on_approach_ = trigger_thread_on_approach;
35-
36-
lane_change_status_changed_ =
37-
prev_lane_change_status_ && prev_lane_change_status_.value() != lane_change_status;
38-
prev_lane_change_status_ = lane_change_status;
35+
lane_change_status_changed_ = lane_change_status_changed;
3936
}
4037

4138
void FreespaceParkingRequest::initializeOccupancyGridMap(

0 commit comments

Comments
 (0)