28#include "modules/common/vehicle_state/proto/vehicle_state.pb.h"
29#include "modules/common_msgs/chassis_msgs/chassis.pb.h"
30#include "modules/common_msgs/map_msgs/map_id.pb.h"
31#include "modules/common_msgs/planning_msgs/planning_internal.pb.h"
50typedef std::pair<DiscretizedTrajectory, canbus::Chassis::GearPosition>
69 return target_parking_spot_id_;
73 return &target_parking_spot_id_;
77 return target_parking_spot_;
81 return &target_parking_spot_;
85 return target_parking_lane_;
89 target_parking_lane_ = lane_info_const_ptr;
93 return open_space_pre_stop_fence_s_;
97 open_space_pre_stop_fence_s_ = s;
103 pre_stop_rightaway_flag_ = flag;
107 return pre_stop_rightaway_point_;
111 return &pre_stop_rightaway_point_;
115 return is_on_open_space_trajectory_;
119 is_on_open_space_trajectory_ = flag;
129 return obstacles_edges_num_;
133 return &obstacles_edges_num_;
138 return obstacles_vertices_vec_;
141 std::vector<std::vector<common::math::Vec2d>> *
143 return &obstacles_vertices_vec_;
146 const Eigen::MatrixXd &
obstacles_A()
const {
return obstacles_A_; }
150 const Eigen::MatrixXd &
obstacles_b()
const {
return obstacles_b_; }
157 origin_heading_ = original_heading;
165 return ROI_xy_boundary_;
171 return open_space_end_pose_;
175 return &open_space_end_pose_;
179 return optimizer_trajectory_data_;
183 return &optimizer_trajectory_data_;
188 return stitching_trajectory_data_;
192 return &stitching_trajectory_data_;
196 return stitched_trajectory_result_;
200 return &stitched_trajectory_result_;
204 return open_space_provider_success_;
208 open_space_provider_success_ = flag;
218 openspace_planning_finish_ = flag;
222 return interpolated_trajectory_result_;
226 return &interpolated_trajectory_result_;
231 return partitioned_trajectories_;
235 return &partitioned_trajectories_;
239 return gear_switch_states_;
243 return &gear_switch_states_;
248 return chosen_partitioned_trajectory_;
252 return &chosen_partitioned_trajectory_;
266 return fallback_trajectory_;
269 std::pair<PublishableTrajectory, canbus::Chassis::GearPosition> *
271 return &publishable_trajectory_data_;
274 const std::pair<PublishableTrajectory, canbus::Chassis::GearPosition> &
276 return publishable_trajectory_data_;
281 return &future_collision_point_;
285 return future_collision_point_;
297 return debug_instance_;
301 return &debug_instance_;
308 debug_instance_.mutable_planning_data()
309 ->mutable_open_space()
312 debug_instance_.MergeFrom(*debug_);
320 std::string target_parking_spot_id_;
326 double open_space_pre_stop_fence_s_ = 0.0;
328 bool pre_stop_rightaway_flag_ =
false;
332 bool is_on_open_space_trajectory_ =
false;
335 size_t obstacles_num_ = 0;
339 Eigen::MatrixXi obstacles_edges_num_;
342 std::vector<double> ROI_xy_boundary_;
346 std::vector<double> open_space_end_pose_;
349 std::vector<std::vector<common::math::Vec2d>> obstacles_vertices_vec_;
352 Eigen::MatrixXd obstacles_A_;
353 Eigen::MatrixXd obstacles_b_;
356 double origin_heading_ = 0.0;
364 std::vector<common::TrajectoryPoint> stitching_trajectory_data_;
368 bool open_space_provider_success_ =
false;
370 bool destination_reached_ =
false;
372 bool openspace_planning_finish_ =
false;
376 std::vector<TrajGearPair> partitioned_trajectories_;
382 bool fallback_flag_ =
false;
384 bool stop_flag_ =
false;
390 std::pair<PublishableTrajectory, canbus::Chassis::GearPosition>
391 publishable_trajectory_data_;
400 double time_latency_ = 0.0;
408 return path_planning_trajectory_result_;
412 return &path_planning_trajectory_result_;
423 const std::vector<std::vector<common::math::Vec2d>> &
425 return soft_boundary_vertices_vec_;
428 std::vector<std::vector<common::math::Vec2d>> *
430 return &soft_boundary_vertices_vec_;
434 trajectory_type_ = type;
438 return trajectory_type_;
452 bool replan_flag_ =
false;
455 std::vector<std::vector<common::math::Vec2d>> soft_boundary_vertices_vec_;
459 bool is_collision_ =
false;
Implements a class of 2-dimensional vectors.
hdmap::MapPathPoint * mutable_pre_stop_rightaway_point()
bool openspace_planning_finish() const
bool fallback_flag() const
void set_debug(apollo::planning_internal::Debug *debug)
const TrajGearPair & fallback_trajectory() const
std::vector< double > * mutable_ROI_xy_boundary()
bool is_on_open_space_trajectory() const
void set_destination_reached(const bool flag)
double open_space_pre_stop_fence_s() const
std::string * mutable_target_parking_spot_id()
const std::vector< double > & ROI_xy_boundary() const
void set_is_collision(const bool &is_collision)
Eigen::MatrixXd * mutable_obstacles_b()
apollo::planning_internal::Debug * mutable_debug_instance()
void set_parking_type(const ParkingType type)
const std::vector< common::TrajectoryPoint > & stitching_trajectory_data() const
void set_open_space_pre_stop_fence_s(const double s)
common::TrajectoryPoint * mutable_future_collision_point()
bool is_collision() const
void sync_debug_instance()
bool destination_reached() const
void set_pre_stop_rightaway_flag(const bool flag)
void set_is_on_open_space_trajectory(const bool flag)
void set_replan_flag(const bool flag)
bool open_space_provider_success() const
GearSwitchStates * mutable_gear_switch_states()
const std::vector< double > & open_space_end_pose() const
const common::math::Vec2d & origin_point() const
const std::string target_parking_spot_id() const
double origin_heading() const
const hdmap::MapPathPoint & pre_stop_rightaway_point() const
Eigen::MatrixXd * mutable_obstacles_A()
const hdmap::ParkingSpaceInfoConstPtr target_parking_spot() const
const TrajGearPair & chosen_partitioned_trajectory() const
const apollo::planning_internal::Debug & debug() const
void set_target_parking_lane(hdmap::LaneInfoConstPtr lane_info_const_ptr)
ADCTrajectory::TrajectoryType trajectory_type() const
std::vector< common::TrajectoryPoint > * mutable_stitching_trajectory_data()
std::vector< double > * mutable_open_space_end_pose()
void set_trajectory_type(const ADCTrajectory::TrajectoryType type)
void set_time_latency(double time_latency)
const Eigen::MatrixXd & obstacles_A() const
void set_stop_flag(const bool flag)
const std::vector< std::vector< common::math::Vec2d > > & obstacles_vertices_vec() const
const DiscretizedTrajectory & interpolated_trajectory_result() const
TrajGearPair * mutable_fallback_trajectory()
ParkingType parking_type() const
size_t obstacles_num() const
void set_open_space_provider_success(const bool flag)
common::math::Vec2d * mutable_origin_point()
const Eigen::MatrixXd & obstacles_b() const
hdmap::ParkingSpaceInfoConstPtr * mutable_target_parking_spot()
const std::pair< PublishableTrajectory, canbus::Chassis::GearPosition > & publishable_trajectory_data() const
std::pair< PublishableTrajectory, canbus::Chassis::GearPosition > * mutable_publishable_trajectory_data()
void set_fallback_flag(const bool flag)
bool pre_stop_rightaway_flag() const
Eigen::MatrixXi * mutable_obstacles_edges_num()
const common::TrajectoryPoint & future_collision_point() const
DiscretizedTrajectory * mutable_path_planning_trajectory_result()
std::vector< std::vector< common::math::Vec2d > > * mutable_obstacles_vertices_vec()
DiscretizedTrajectory * mutable_interpolated_trajectory_result()
const Eigen::MatrixXi & obstacles_edges_num() const
void set_origin_heading(const double original_heading)
void set_openspace_planning_finish(const bool flag)
DiscretizedTrajectory * mutable_optimizer_trajectory_data()
const std::vector< std::vector< common::math::Vec2d > > & soft_boundary_vertices_vec() const
std::vector< std::vector< common::math::Vec2d > > * mutable_soft_boundary_vertices_vec()
const DiscretizedTrajectory & stitched_trajectory_result() const
TrajGearPair * mutable_chosen_partitioned_trajectory()
void RecordDebug(apollo::planning_internal::Debug *ptr_debug)
const DiscretizedTrajectory & path_planning_trajectory_result() const
void set_obstacles_num(const size_t obstacles_num)
std::vector< TrajGearPair > * mutable_partitioned_trajectories()
DiscretizedTrajectory * mutable_stitched_trajectory_result()
const DiscretizedTrajectory & optimizer_trajectory_data() const
const std::vector< TrajGearPair > & partitioned_trajectories() const
const GearSwitchStates & gear_switch_states() const
const apollo::planning_internal::Debug debug_instance() const
const hdmap::LaneInfoConstPtr target_parking_lane() const
apollo::planning_internal::Debug * mutable_debug()
Planning module main class.
std::shared_ptr< const LaneInfo > LaneInfoConstPtr
std::shared_ptr< const ParkingSpaceInfo > ParkingSpaceInfoConstPtr
std::pair< DiscretizedTrajectory, canbus::Chassis::GearPosition > TrajGearPair
double gear_shift_period_time
bool gear_shift_period_finished
double gear_shift_start_time
apollo::canbus::Chassis::GearPosition gear_shift_position
bool gear_shift_period_started
optional PlanningData planning_data
repeated apollo::planning_internal::ObstacleDebug obstacles
optional OpenSpaceDebug open_space