diff --git a/modules/planning/common/BUILD b/modules/planning/common/BUILD index ec572f817455ec780a242ee29cee94bae9be8bad..0f02c56eee7c2f0a66664ab3b290cd6a2f2a4afb 100644 --- a/modules/planning/common/BUILD +++ b/modules/planning/common/BUILD @@ -98,6 +98,7 @@ cc_library( deps = [ ":indexed_list", ":obstacle", + "//modules/planning/common/speed:st_boundary", "//modules/planning/proto:planning_proto", "//modules/planning/reference_line", ], diff --git a/modules/planning/common/path_obstacle.cc b/modules/planning/common/path_obstacle.cc index 8c6aeee705408cb1ba37bc86f54bc9f449676c6a..b366f10211588647291af5483751d3ee50cffa35 100644 --- a/modules/planning/common/path_obstacle.cc +++ b/modules/planning/common/path_obstacle.cc @@ -55,6 +55,13 @@ bool PathObstacle::Init(const ReferenceLine& reference_line) { AERROR << "Failed to get sl boundary for obstacle: " << id_; return false; } + if (!BuildStBoundary(reference_line, obstacle_)) { + } + return true; +} + +bool PathObstacle::BuildStBoundary(const ReferenceLine& reference_line, + const Obstacle* obstacle) { return true; } diff --git a/modules/planning/common/path_obstacle.h b/modules/planning/common/path_obstacle.h index 9556d7dbc914e9225d43c7d3dde5aa9c97f8121b..e073882e2bea7072d80b450b12c893e0c520ece8 100644 --- a/modules/planning/common/path_obstacle.h +++ b/modules/planning/common/path_obstacle.h @@ -37,6 +37,7 @@ #include "modules/common/math/vec2d.h" #include "modules/planning/common/indexed_list.h" #include "modules/planning/common/obstacle.h" +#include "modules/planning/common/speed/st_boundary.h" #include "modules/planning/reference_line/reference_line.h" namespace apollo { @@ -123,14 +124,16 @@ class PathObstacle { static ObjectDecisionType MergeLateralDecision(const ObjectDecisionType& lhs, const ObjectDecisionType& rhs); + bool BuildStBoundary(const ReferenceLine& reference_line, + const Obstacle* obstacle); + std::string id_; const Obstacle* obstacle_ = nullptr; std::vector decisions_; std::vector decider_tags_; SLBoundary perception_sl_boundary_; - // TODO(zhangliangliang): add st_boundary_ here. - // StBoundary st_boundary_; + StBoundary st_boundary_; ObjectDecisionType lateral_decision_; ObjectDecisionType longitudinal_decision_; diff --git a/modules/planning/common/speed/BUILD b/modules/planning/common/speed/BUILD index 781606c86e83c1be21c5c19d47219ba4c833e52b..3b427bf9ca8a411a7c082d284b7fe502f0757a83 100644 --- a/modules/planning/common/speed/BUILD +++ b/modules/planning/common/speed/BUILD @@ -17,6 +17,36 @@ cc_library( ], ) +cc_library( + name = "st_boundary", + srcs = [ + "st_boundary.cc", + ], + hdrs = [ + "st_boundary.h", + ], + deps = [ + ":st_point", + "//modules/common:log", + "//modules/planning/proto:planning_proto", + ], +) + +cc_test( + name = "st_boundary_test", + size = "small", + srcs = [ + "st_boundary_test.cc", + ], + deps = [ + ":st_boundary", + "//modules/common:log", + "//modules/common/time", + "//modules/common/util", + "@gtest//:main", + ], +) + cc_library( name = "speed_data", srcs = [ diff --git a/modules/planning/tasks/st_graph/st_boundary.cc b/modules/planning/common/speed/st_boundary.cc similarity index 98% rename from modules/planning/tasks/st_graph/st_boundary.cc rename to modules/planning/common/speed/st_boundary.cc index d8273c94c5ae4cd4e00a2163b3ffd6ee9e2193af..2cb425397afbd67717169d21bdd89a162af9e625 100644 --- a/modules/planning/tasks/st_graph/st_boundary.cc +++ b/modules/planning/common/speed/st_boundary.cc @@ -18,7 +18,7 @@ * @file **/ -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" #include diff --git a/modules/planning/tasks/st_graph/st_boundary.h b/modules/planning/common/speed/st_boundary.h similarity index 100% rename from modules/planning/tasks/st_graph/st_boundary.h rename to modules/planning/common/speed/st_boundary.h diff --git a/modules/planning/tasks/st_graph/st_boundary_test.cc b/modules/planning/common/speed/st_boundary_test.cc similarity index 97% rename from modules/planning/tasks/st_graph/st_boundary_test.cc rename to modules/planning/common/speed/st_boundary_test.cc index 6fc7f2a01b15b560ff3ebf350f57cd9e1e76114e..cc522d28cc4b7dd4c395339e90bcf7802ebe6aa3 100644 --- a/modules/planning/tasks/st_graph/st_boundary_test.cc +++ b/modules/planning/common/speed/st_boundary_test.cc @@ -14,7 +14,7 @@ * limitations under the License. *****************************************************************************/ -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" #include #include diff --git a/modules/planning/tasks/BUILD b/modules/planning/tasks/BUILD index 45b2cd06c6c42223cdf2d9361de2a3a7beecd8f8..514bd8e44d26f5fff18e6fbf0ab285d426fdafea 100644 --- a/modules/planning/tasks/BUILD +++ b/modules/planning/tasks/BUILD @@ -55,7 +55,7 @@ cc_library( "//modules/planning/common:speed_limit", "//modules/planning/common/path:path_data", "//modules/planning/common/speed:speed_data", - "//modules/planning/tasks/st_graph:st_boundary", + "//modules/planning/common/speed:st_boundary", "@eigen//:eigen", ], ) diff --git a/modules/planning/tasks/dp_st_speed/BUILD b/modules/planning/tasks/dp_st_speed/BUILD index 6fb21a3b75124ac2b995073ec477f31a5a2440f3..56f53106e0546707e9438f91b57f382f6ae1cc2c 100644 --- a/modules/planning/tasks/dp_st_speed/BUILD +++ b/modules/planning/tasks/dp_st_speed/BUILD @@ -27,9 +27,9 @@ cc_library( deps = [ "//modules/common/proto:pnc_point_proto", "//modules/planning/common:frame", + "//modules/planning/common/speed:st_boundary", "//modules/planning/math:double", "//modules/planning/proto:dp_st_speed_config_proto", - "//modules/planning/tasks/st_graph:st_boundary", ], ) diff --git a/modules/planning/tasks/dp_st_speed/dp_st_cost.h b/modules/planning/tasks/dp_st_speed/dp_st_cost.h index 762fd6c2351fcfc9558b14462f1c95c619616d34..2f1be8878d2a0e1a3c58d36c8a988cf9c9d2c4d1 100644 --- a/modules/planning/tasks/dp_st_speed/dp_st_cost.h +++ b/modules/planning/tasks/dp_st_speed/dp_st_cost.h @@ -27,7 +27,7 @@ #include "modules/planning/proto/dp_st_speed_config.pb.h" #include "modules/planning/common/speed/st_point.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" namespace apollo { namespace planning { diff --git a/modules/planning/tasks/qp_spline_st_speed/qp_spline_st_graph.h b/modules/planning/tasks/qp_spline_st_speed/qp_spline_st_graph.h index 0c028e9a8270cd90d3b039d72da126fce4d57162..df8ef15c6aa439aed714891d8934f4b2384f111e 100644 --- a/modules/planning/tasks/qp_spline_st_speed/qp_spline_st_graph.h +++ b/modules/planning/tasks/qp_spline_st_speed/qp_spline_st_graph.h @@ -34,7 +34,7 @@ #include "modules/planning/common/planning_util.h" #include "modules/planning/common/speed/speed_data.h" #include "modules/planning/math/smoothing_spline/spline_1d_generator.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" #include "modules/planning/tasks/st_graph/st_graph_data.h" namespace apollo { diff --git a/modules/planning/tasks/speed_optimizer.h b/modules/planning/tasks/speed_optimizer.h index c47e539ae676d82a188a9595456f9b077d702a07..9103a5ef92f5644dd9c94cf3888f6c736e0ae45e 100644 --- a/modules/planning/tasks/speed_optimizer.h +++ b/modules/planning/tasks/speed_optimizer.h @@ -27,7 +27,7 @@ #include "modules/common/status/status.h" #include "modules/planning/common/speed/speed_data.h" #include "modules/planning/common/speed_limit.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" #include "modules/planning/tasks/task.h" namespace apollo { diff --git a/modules/planning/tasks/st_graph/BUILD b/modules/planning/tasks/st_graph/BUILD index 67bed2248369af4eed13767b8b696a721d8538e1..3560cdd30772411f2e6f103c97d9f1816056abda 100644 --- a/modules/planning/tasks/st_graph/BUILD +++ b/modules/planning/tasks/st_graph/BUILD @@ -2,22 +2,6 @@ load("//tools:cpplint.bzl", "cpplint") package(default_visibility = ["//visibility:public"]) -cc_library( - name = "st_boundary", - srcs = [ - "st_boundary.cc", - ], - hdrs = [ - "st_boundary.h", - ], - deps = [ - "//modules/common:log", - "//modules/common/math", - "//modules/planning/common/speed:st_point", - "//modules/planning/proto:planning_proto", - ], -) - cc_library( name = "st_graph_data", srcs = [ @@ -27,9 +11,9 @@ cc_library( "st_graph_data.h", ], deps = [ - ":st_boundary", "//modules/planning/common:planning_gflags", "//modules/planning/common:speed_limit", + "//modules/planning/common/speed:st_boundary", ], ) @@ -42,7 +26,6 @@ cc_library( "st_boundary_mapper.h", ], deps = [ - ":st_boundary", "//modules/common/configs:vehicle_config_helper", "//modules/common/configs/proto:vehicle_config_proto", "//modules/common/proto:pnc_point_proto", @@ -57,6 +40,7 @@ cc_library( "//modules/planning/common/path:discretized_path", "//modules/planning/common/path:frenet_frame_path", "//modules/planning/common/path:path_data", + "//modules/planning/common/speed:st_boundary", "//modules/planning/common/trajectory:discretized_trajectory", "//modules/planning/math:double", "//modules/planning/proto:planning_proto", @@ -83,21 +67,6 @@ cc_test( ], ) -cc_test( - name = "st_boundary_test", - size = "small", - srcs = [ - "st_boundary_test.cc", - ], - deps = [ - ":st_boundary", - "//modules/common:log", - "//modules/common/time", - "//modules/common/util", - "@gtest//:main", - ], -) - cc_test( name = "st_graph_data_test", size = "small", @@ -105,7 +74,6 @@ cc_test( "st_graph_data_test.cc", ], deps = [ - ":st_boundary", ":st_graph_data", "//modules/common:log", "//modules/common/time", diff --git a/modules/planning/tasks/st_graph/st_boundary_mapper.h b/modules/planning/tasks/st_graph/st_boundary_mapper.h index 6c34dfca18e65efa1ea5fa304d8746fe7c19f113..8e669e4faed6611320effe80e24220d12d47f3db 100644 --- a/modules/planning/tasks/st_graph/st_boundary_mapper.h +++ b/modules/planning/tasks/st_graph/st_boundary_mapper.h @@ -31,7 +31,7 @@ #include "modules/planning/common/path_decision.h" #include "modules/planning/common/speed_limit.h" #include "modules/planning/reference_line/reference_line.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" namespace apollo { namespace planning { diff --git a/modules/planning/tasks/st_graph/st_graph_data.h b/modules/planning/tasks/st_graph/st_graph_data.h index 71f4ba83d148b5646deb77244cb624baebd05e47..fdcecbcb0785a8e20cfe5a3b9d7d3461721b17bb 100644 --- a/modules/planning/tasks/st_graph/st_graph_data.h +++ b/modules/planning/tasks/st_graph/st_graph_data.h @@ -27,7 +27,7 @@ #include "modules/common/proto/pnc_point.pb.h" #include "modules/planning/common/speed_limit.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" namespace apollo { namespace planning { diff --git a/modules/planning/tasks/st_graph/st_graph_data_test.cc b/modules/planning/tasks/st_graph/st_graph_data_test.cc index a6bbb520bc4fba3efc626bfd51de4540224248e2..04cb56a93cb3321f9dc8336a60a2cbb0532b53cf 100644 --- a/modules/planning/tasks/st_graph/st_graph_data_test.cc +++ b/modules/planning/tasks/st_graph/st_graph_data_test.cc @@ -23,7 +23,7 @@ #include "gtest/gtest.h" #include "modules/common/log.h" -#include "modules/planning/tasks/st_graph/st_boundary.h" +#include "modules/planning/common/speed/st_boundary.h" namespace apollo { namespace planning {