Public Types | |
typedef actionlib::SimpleActionServer < bwi_msgs::LogicalNavigationAction > | LogicalNavActionServer |
Public Member Functions | |
void | execute (const bwi_msgs::LogicalNavigationGoalConstPtr &goal) |
SegbotLogicalNavigator () | |
Protected Member Functions | |
bool | approachDoor (const std::string &door_name, std::vector< PlannerAtom > &observations, std::string &error_message, bool gothrough=false) |
bool | approachObject (const std::string &object_name, std::vector< PlannerAtom > &observations, std::string &error_message) |
bool | changeFloor (const std::string &new_room, const std::string &facing_door, std::vector< PlannerAtom > &observations, std::string &error_message) |
void | costmapSubscriber (const nav_msgs::OccupancyGrid::ConstPtr &costmap) |
void | costmapUpdatesSubscriber (const map_msgs::OccupancyGridUpdate::ConstPtr &costmap_updates) |
void | currentLevelHandler (const multi_level_map_msgs::LevelMetaData::ConstPtr ¤t_level) |
bool | executeNavigationGoal (const geometry_msgs::PoseStamped &pose) |
void | multimapHandler (const multi_level_map_msgs::MultiLevelMapData::ConstPtr &multimap) |
void | odometryHandler (const nav_msgs::Odometry::ConstPtr &odom) |
void | publishNavigationMap (bool publish_map_with_doors=false, bool wait_for_costmap_change=false) |
bool | senseDoor (const std::string &door_name, std::vector< PlannerAtom > &observations, std::string &error_message) |
void | senseState (std::vector< PlannerAtom > &observations, size_t door_idx=NO_DOOR_IDX) |
Protected Attributes | |
std::vector < multi_level_map_msgs::LevelMetaData > | all_levels_ |
ros::ServiceClient | change_level_client_ |
bool | change_level_client_available_ |
ros::Subscriber | costmap_subscriber_ |
ros::Subscriber | costmap_updates_subscriber_ |
std::string | current_level_id_ |
ros::Subscriber | current_level_subscriber_ |
double | door_proximity_distance_ |
boost::shared_ptr < LogicalNavActionServer > | execute_action_server_ |
bool | execute_action_server_started_ |
bool | full_global_costmap_update_ |
int | global_costmap_width_ |
bool | last_map_published_with_doors_ |
std::map< std::string, std::vector < bwi_planning_common::Door > > | level_to_doors_map_ |
std::map< std::string, std::vector< int32_t > > | level_to_loc_map_ |
std::map< std::string, std::vector< std::string > > | level_to_loc_names_map_ |
ros::Subscriber | multimap_subscriber_ |
ros::Publisher | navigation_map_publisher_ |
boost::shared_ptr < message_filters::Subscriber < nav_msgs::Odometry > > | odom_subscriber_ |
boost::shared_ptr < actionlib::SimpleActionClient < move_base_msgs::MoveBaseAction > > | robot_controller_ |
bool | robot_controller_available_ |
float | robot_x_ |
float | robot_y_ |
float | robot_yaw_ |
boost::shared_ptr < tf::TransformListener > | tf_ |
boost::shared_ptr < tf::MessageFilter < nav_msgs::Odometry > > | tf_filter_ |
Definition at line 65 of file segbot_logical_navigator.cpp.
typedef actionlib::SimpleActionServer<bwi_msgs::LogicalNavigationAction> SegbotLogicalNavigator::LogicalNavActionServer |
Definition at line 69 of file segbot_logical_navigator.cpp.
Definition at line 143 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::approachDoor | ( | const std::string & | door_name, |
std::vector< PlannerAtom > & | observations, | ||
std::string & | error_message, | ||
bool | gothrough = false |
||
) | [protected] |
Definition at line 397 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::approachObject | ( | const std::string & | object_name, |
std::vector< PlannerAtom > & | observations, | ||
std::string & | error_message | ||
) | [protected] |
Definition at line 447 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::changeFloor | ( | const std::string & | new_room, |
const std::string & | facing_door, | ||
std::vector< PlannerAtom > & | observations, | ||
std::string & | error_message | ||
) | [protected] |
Definition at line 485 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::costmapSubscriber | ( | const nav_msgs::OccupancyGrid::ConstPtr & | costmap | ) | [protected] |
Definition at line 209 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::costmapUpdatesSubscriber | ( | const map_msgs::OccupancyGridUpdate::ConstPtr & | costmap_updates | ) | [protected] |
Definition at line 213 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::currentLevelHandler | ( | const multi_level_map_msgs::LevelMetaData::ConstPtr & | current_level | ) | [protected] |
Definition at line 195 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::execute | ( | const bwi_msgs::LogicalNavigationGoalConstPtr & | goal | ) |
Definition at line 603 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::executeNavigationGoal | ( | const geometry_msgs::PoseStamped & | pose | ) | [protected] |
Definition at line 348 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::multimapHandler | ( | const multi_level_map_msgs::MultiLevelMapData::ConstPtr & | multimap | ) | [protected] |
Definition at line 219 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::odometryHandler | ( | const nav_msgs::Odometry::ConstPtr & | odom | ) | [protected] |
Definition at line 379 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::publishNavigationMap | ( | bool | publish_map_with_doors = false , |
bool | wait_for_costmap_change = false |
||
) | [protected] |
Definition at line 242 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::senseDoor | ( | const std::string & | door_name, |
std::vector< PlannerAtom > & | observations, | ||
std::string & | error_message | ||
) | [protected] |
Definition at line 582 of file segbot_logical_navigator.cpp.
void SegbotLogicalNavigator::senseState | ( | std::vector< PlannerAtom > & | observations, |
size_t | door_idx = NO_DOOR_IDX |
||
) | [protected] |
Definition at line 265 of file segbot_logical_navigator.cpp.
std::vector<multi_level_map_msgs::LevelMetaData> SegbotLogicalNavigator::all_levels_ [protected] |
Definition at line 123 of file segbot_logical_navigator.cpp.
Definition at line 121 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::change_level_client_available_ [protected] |
Definition at line 122 of file segbot_logical_navigator.cpp.
Definition at line 134 of file segbot_logical_navigator.cpp.
Definition at line 135 of file segbot_logical_navigator.cpp.
std::string SegbotLogicalNavigator::current_level_id_ [protected] |
Definition at line 106 of file segbot_logical_navigator.cpp.
Definition at line 119 of file segbot_logical_navigator.cpp.
double SegbotLogicalNavigator::door_proximity_distance_ [protected] |
Definition at line 108 of file segbot_logical_navigator.cpp.
boost::shared_ptr<LogicalNavActionServer> SegbotLogicalNavigator::execute_action_server_ [protected] |
Definition at line 110 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::execute_action_server_started_ [protected] |
Definition at line 111 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::full_global_costmap_update_ [protected] |
Definition at line 136 of file segbot_logical_navigator.cpp.
int SegbotLogicalNavigator::global_costmap_width_ [protected] |
Definition at line 137 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::last_map_published_with_doors_ [protected] |
Definition at line 129 of file segbot_logical_navigator.cpp.
std::map<std::string, std::vector<bwi_planning_common::Door> > SegbotLogicalNavigator::level_to_doors_map_ [protected] |
Definition at line 124 of file segbot_logical_navigator.cpp.
std::map<std::string, std::vector<int32_t> > SegbotLogicalNavigator::level_to_loc_map_ [protected] |
Definition at line 126 of file segbot_logical_navigator.cpp.
std::map<std::string, std::vector<std::string> > SegbotLogicalNavigator::level_to_loc_names_map_ [protected] |
Definition at line 125 of file segbot_logical_navigator.cpp.
Definition at line 120 of file segbot_logical_navigator.cpp.
Definition at line 128 of file segbot_logical_navigator.cpp.
boost::shared_ptr<message_filters::Subscriber<nav_msgs::Odometry> > SegbotLogicalNavigator::odom_subscriber_ [protected] |
Definition at line 117 of file segbot_logical_navigator.cpp.
boost::shared_ptr<actionlib::SimpleActionClient<move_base_msgs::MoveBaseAction> > SegbotLogicalNavigator::robot_controller_ [protected] |
Definition at line 113 of file segbot_logical_navigator.cpp.
bool SegbotLogicalNavigator::robot_controller_available_ [protected] |
Definition at line 139 of file segbot_logical_navigator.cpp.
float SegbotLogicalNavigator::robot_x_ [protected] |
Definition at line 103 of file segbot_logical_navigator.cpp.
float SegbotLogicalNavigator::robot_y_ [protected] |
Definition at line 104 of file segbot_logical_navigator.cpp.
float SegbotLogicalNavigator::robot_yaw_ [protected] |
Definition at line 105 of file segbot_logical_navigator.cpp.
boost::shared_ptr<tf::TransformListener> SegbotLogicalNavigator::tf_ [protected] |
Definition at line 115 of file segbot_logical_navigator.cpp.
boost::shared_ptr<tf::MessageFilter<nav_msgs::Odometry> > SegbotLogicalNavigator::tf_filter_ [protected] |
Definition at line 116 of file segbot_logical_navigator.cpp.