#include <zone_planner.H>
Classes | |
| class | filler_t |
Public Member Functions | |
| zone_planner_t (world_state_t *ws_, rndf_t const *rndf_, unsigned zone_id, rndf_point_t *start_rp_, rndf_point_t *end_rp_) | |
| ~zone_planner_t () | |
| void | generate_path (double tstamp_, path_t &path_, double start_x_, double start_y_, double orient_) |
| void | mark_obstacles (unsigned zone_id_) |
| void | publish_grids (double tstamp_) |
Private Member Functions | |
| void | compute_goal (rndf_point_t *end_rp_) |
| Compute goal xy an goal orientation. | |
| void | mark_zone_region (unsigned zone_id_) |
| void | mark_goal (rndf_point_t *end_rp_) |
| void | get_non_blocking_start (double &new_x, double &new_y, double x_, double y_) |
| void | mark_obstacle (obstacle_points_data_t const &obst_) |
| bool | obstacle_in_zone (obstacle_points_data_t const &obst_, rndf_t::zone_t const &zone) |
| void | parking_properly (path_t &path_) |
Private Attributes | |
| rndf_point_t * | m_start_rp |
| rndf_point_t * | m_end_rp |
| double | m_goal_x |
| double | m_goal_y |
| double | m_goal_orient |
| double | m_start_x |
| double | m_start_y |
| double | m_orient |
| double | m_cell_size |
| world_state_t * | m_ws |
| rndf_t const * | m_rndf |
| const uc_planner_param_t * | m_uc_param |
| unsigned | m_zone_id |
| map_grid_t | m_map_grid |
| map_grid_publisher_t * | m_map_publisher |
| zone_marker_t * | m_zone_marker |
| goal_marker_t * | m_goal_marker |
| obstacle_marker_t * | m_obstacle_marker |
| search_grid_t | m_search_grid |
| search_grid_publisher_t * | m_search_publisher |
| work_list_interface_t * | m_work_list |
| gc_oracle_t * | m_gc_oracle |
| path_extractor_t * | m_path_extractor |
| obstacle_free_t * | m_obstacle_free |
| zone_planner_t::zone_planner_t | ( | world_state_t * | ws_, | |
| rndf_t const * | rndf_, | |||
| unsigned | zone_id, | |||
| rndf_point_t * | start_rp_, | |||
| rndf_point_t * | end_rp_ | |||
| ) |
References compute_goal(), cajun::uc_planner_param_t::get_uc_planner_param(), m_cell_size, m_end_rp, m_gc_oracle, m_goal_marker, cajun::uc_planner_param_t::m_grid_cell_size, cajun::uc_planner_param_t::m_grid_neighbor_mode, cajun::uc_planner_param_t::m_grid_path_extraction_type, m_map_grid, m_map_publisher, cajun::uc_planner_param_t::m_mark_grid_around_all_parking_spot, m_obstacle_free, m_obstacle_marker, m_path_extractor, m_rndf, m_search_grid, m_search_publisher, m_start_rp, m_uc_param, m_work_list, m_ws, m_zone_id, m_zone_marker, cajun::zone_marker_t::mark_all_parking_spots(), mark_goal(), mark_obstacles(), mark_zone_region(), OBSTACLE_POINTS_QID, cajun::path_extractor_t::set_gc_oracle(), cajun::path_extractor_t::set_map_grid(), cajun::gc_oracle_t::set_map_grid(), cajun::path_extractor_t::set_search_grid(), and cajun::gc_oracle_t::set_search_grid().
| zone_planner_t::~zone_planner_t | ( | ) |
References m_goal_marker, m_map_publisher, m_path_extractor, m_search_publisher, m_work_list, and m_zone_marker.
| void zone_planner_t::compute_goal | ( | rndf_point_t * | end_rp_ | ) | [private] |
Compute goal xy an goal orientation.
References cajun::rndf_point_t::is_exit(), cajun::rndf_point_t::is_rndf_wp(), cajun::rndf_point_t::is_spot(), m_goal_orient, m_goal_x, m_goal_y, m_rndf, cajun::rndf_point_t::x(), and cajun::rndf_point_t::y().
Referenced by zone_planner_t().
| void zone_planner_t::generate_path | ( | double | tstamp_, | |
| path_t & | path_, | |||
| double | start_x_, | |||
| double | start_y_, | |||
| double | orient_ | |||
| ) |
References cajun::path_extractor_t::extract(), get_non_blocking_start(), cajun::rndf_point_t::is_spot(), m_end_rp, m_gc_oracle, m_goal_orient, m_goal_x, m_goal_y, m_orient, m_path_extractor, m_rndf, m_search_grid, m_start_x, m_start_y, m_zone_id, mark_obstacles(), parking_properly(), publish_grids(), cajun::path_extractor_t::set_search_orient(), and cajun::gc_oracle_t::set_vehicle_position().
Referenced by cajun::zone_task_planner_t::generate_new_path().
| void zone_planner_t::get_non_blocking_start | ( | double & | new_x, | |
| double & | new_y, | |||
| double | x_, | |||
| double | y_ | |||
| ) | [private] |
References dx, dy, m_cell_size, m_goal_x, m_goal_y, cajun::uc_planner_param_t::m_grid_non_blocking_start_find_step, m_map_grid, and m_uc_param.
Referenced by generate_path().
| void zone_planner_t::mark_goal | ( | rndf_point_t * | end_rp_ | ) | [private] |
References cajun::rndf_point_t::in_zone(), cajun::uc_planner_param_t::m_basic_PE_goal_radius, cajun::uc_planner_param_t::m_curved_PE_goal_radius, m_goal_marker, m_goal_x, m_goal_y, cajun::uc_planner_param_t::m_grid_path_extraction_type, m_uc_param, and cajun::goal_marker_t::mark_circle().
Referenced by zone_planner_t().
| void zone_planner_t::mark_obstacle | ( | obstacle_points_data_t const & | obst_ | ) | [private] |
References m_obstacle_marker, and cajun::obstacle_marker_t::mark_line().
Referenced by mark_obstacles().
| void zone_planner_t::mark_obstacles | ( | unsigned | zone_id_ | ) |
References m_rndf, m_ws, mark_obstacle(), OBSTACLE_POINTS_QID, and cajun::STATIC.
Referenced by cajun::zone_task_planner_t::generate_path(), generate_path(), and zone_planner_t().
| void zone_planner_t::mark_zone_region | ( | unsigned | zone_id_ | ) | [private] |
References cajun::rndf_point_t::id(), cajun::rndf_point_t::is_entry(), m_cell_size, cajun::uc_planner_param_t::m_grid_entry_unblock_box_len, m_map_grid, m_rndf, m_start_rp, m_uc_param, cajun::zone_planner_t::filler_t::set_cost(), cajun::rndf_point_t::x(), and cajun::rndf_point_t::y().
Referenced by zone_planner_t().
| bool cajun::zone_planner_t::obstacle_in_zone | ( | obstacle_points_data_t const & | obst_, | |
| rndf_t::zone_t const & | zone | |||
| ) | [private] |
| void zone_planner_t::parking_properly | ( | path_t & | path_ | ) | [private] |
References cajun::rndf_point_t::id(), m_end_rp, m_rndf, and m_zone_id.
Referenced by generate_path().
| void zone_planner_t::publish_grids | ( | double | tstamp_ | ) |
References m_gc_oracle, m_map_grid, m_map_publisher, m_orient, m_search_grid, m_search_publisher, m_start_x, m_start_y, cajun::gc_oracle_t::max_cost(), cajun::search_grid_publisher_t::publish(), cajun::map_grid_publisher_t::publish(), and cajun::gc_oracle_t::sequence().
Referenced by cajun::zone_task_planner_t::generate_path(), and generate_path().
double cajun::zone_planner_t::m_cell_size [private] |
Referenced by get_non_blocking_start(), mark_zone_region(), and zone_planner_t().
rndf_point_t* cajun::zone_planner_t::m_end_rp [private] |
Referenced by generate_path(), parking_properly(), and zone_planner_t().
gc_oracle_t* cajun::zone_planner_t::m_gc_oracle [private] |
Referenced by generate_path(), publish_grids(), and zone_planner_t().
Referenced by mark_goal(), zone_planner_t(), and ~zone_planner_t().
double cajun::zone_planner_t::m_goal_orient [private] |
Referenced by compute_goal(), and generate_path().
double cajun::zone_planner_t::m_goal_x [private] |
Referenced by compute_goal(), generate_path(), get_non_blocking_start(), and mark_goal().
double cajun::zone_planner_t::m_goal_y [private] |
Referenced by compute_goal(), generate_path(), get_non_blocking_start(), and mark_goal().
map_grid_t cajun::zone_planner_t::m_map_grid [private] |
Referenced by get_non_blocking_start(), mark_zone_region(), publish_grids(), and zone_planner_t().
Referenced by publish_grids(), zone_planner_t(), and ~zone_planner_t().
Referenced by zone_planner_t().
Referenced by mark_obstacle(), and zone_planner_t().
double cajun::zone_planner_t::m_orient [private] |
Referenced by generate_path(), and publish_grids().
Referenced by generate_path(), zone_planner_t(), and ~zone_planner_t().
rndf_t const* cajun::zone_planner_t::m_rndf [private] |
Referenced by compute_goal(), generate_path(), mark_obstacles(), mark_zone_region(), parking_properly(), and zone_planner_t().
Referenced by generate_path(), publish_grids(), and zone_planner_t().
Referenced by publish_grids(), zone_planner_t(), and ~zone_planner_t().
rndf_point_t* cajun::zone_planner_t::m_start_rp [private] |
Referenced by mark_zone_region(), and zone_planner_t().
double cajun::zone_planner_t::m_start_x [private] |
Referenced by generate_path(), and publish_grids().
double cajun::zone_planner_t::m_start_y [private] |
Referenced by generate_path(), and publish_grids().
const uc_planner_param_t* cajun::zone_planner_t::m_uc_param [private] |
Referenced by get_non_blocking_start(), mark_goal(), mark_zone_region(), and zone_planner_t().
Referenced by zone_planner_t(), and ~zone_planner_t().
world_state_t* cajun::zone_planner_t::m_ws [private] |
Referenced by mark_obstacles(), and zone_planner_t().
unsigned cajun::zone_planner_t::m_zone_id [private] |
Referenced by generate_path(), parking_properly(), and zone_planner_t().
Referenced by zone_planner_t(), and ~zone_planner_t().
1.6.1