34 #include <tuw_multi_robot_msgs/RobotGoalsArray.h>    35 #include <tuw_multi_robot_msgs/RobotGoals.h>    37 #include <nav_msgs/Odometry.h>    38 #include <tuw_multi_robot_msgs/Graph.h>    39 #include <nav_msgs/Path.h>    40 #include <nav_msgs/OccupancyGrid.h>    41 #include <tuw_multi_robot_msgs/RouterStatus.h>    42 #include <dynamic_reconfigure/server.h>    43 #include <tuw_multi_robot_router/routerConfig.h>    47 #include <opencv/cv.hpp>    93     dynamic_reconfigure::Server<tuw_multi_robot_router::routerConfig> 
param_server;
    94     dynamic_reconfigure::Server<tuw_multi_robot_router::routerConfig>::CallbackType 
call_type;
   133     void parametersCallback ( tuw_multi_robot_router::routerConfig &config, uint32_t level );
   135     void graphCallback ( 
const tuw_multi_robot_msgs::Graph &msg );
   136     void goalsCallback ( 
const tuw_multi_robot_msgs::RobotGoalsArray &_goals );
   137     void mapCallback ( 
const nav_msgs::OccupancyGrid &_map );
   139     void goalCallback ( 
const geometry_msgs::PoseStamped &_goal );
   140     size_t getHash ( 
const std::vector<signed char> &_map, 
const Eigen::Vector2d &_origin, 
const float &_resolution );
   141     size_t getHash ( 
const std::vector<Segment> &_graph );
   147     float getYaw ( 
const geometry_msgs::Quaternion &_rot );
   148     float calcRadius ( 
const int shape, 
const std::vector<float> &shape_variables ) 
const;
   149     bool preparePlanning ( std::vector<float> &_radius, std::vector<Eigen::Vector3d> &_starts, std::vector<Eigen::Vector3d> &_goals, 
const tuw_multi_robot_msgs::RobotGoalsArray &_ros_goals, std::vector<std::string> &robot_names );
   152 #endif // Router_Node_H void goalsCallback(const tuw_multi_robot_msgs::RobotGoalsArray &_goals)
 
uint32_t getSegmentId() const 
 
float getYaw(const geometry_msgs::Quaternion &_rot)
 
Eigen::Vector2d mapOrigin_
 
dynamic_reconfigure::Server< tuw_multi_robot_router::routerConfig > param_server
 
std::vector< std::string > missing_robots_
robots finished with execution time 
 
void parametersCallback(tuw_multi_robot_router::routerConfig &config, uint32_t level)
 
size_t current_graph_hash_
 
std::vector< RobotInfoPtr > subscribed_robots_
 
void monitorExecution()
monitors the execution 
 
std::string singleRobotName_
 
void unsubscribeTopic(std::string _robot_name)
 
ros::Publisher pubPlannerStatus_
 
void odomCallback(const ros::MessageEvent< nav_msgs::Odometry const  > &_event, int _topic)
 
Router_Node(ros::NodeHandle &n)
Construct a new Router_Node object. 
 
std::string singleRobotGoalTopic_
 
ros::Subscriber subVoronoiGraph_
 
bool publish_routing_table_
 
double sum_processing_time_total_
 
std::string planner_status_topic_
 
size_t getHash(const std::vector< signed char > &_map, const Eigen::Vector2d &_origin, const float &_resolution)
 
void mapCallback(const nav_msgs::OccupancyGrid &_map)
 
void publish()
publishes a RoutingTable 
 
tuw_multi_robot_msgs::RouterStatus mrrp_status_
 
ros::Subscriber subSingleRobotGoal_
 
ros::NodeHandle n_
Node handler to the root node. 
 
ros::NodeHandle n_param_
Node handler to the current node. 
 
void robotInfoCallback(const tuw_multi_robot_msgs::RobotInfo &_robotInfo)
 
void graphCallback(const tuw_multi_robot_msgs::Graph &msg)
 
float calcRadius(const int shape, const std::vector< float > &shape_variables) const 
 
void publishEmpty()
publishes an empty RoutingTable 
 
std::map< std::string, double > finished_robots_
robots currently used by the planner 
 
static bool sortSegments(const Segment &i, const Segment &j)
 
std::string robot_info_topic_
 
ros::Time time_first_robot_started_
 
dynamic_reconfigure::Server< tuw_multi_robot_router::routerConfig >::CallbackType call_type
 
bool preparePlanning(std::vector< float > &_radius, std::vector< Eigen::Vector3d > &_starts, std::vector< Eigen::Vector3d > &_goals, const tuw_multi_robot_msgs::RobotGoalsArray &_ros_goals, std::vector< std::string > &robot_names)
 
std::string voronoi_topic_
 
std::vector< Segment > graph_
 
ros::Subscriber subRobotInfo_
 
void goalCallback(const geometry_msgs::PoseStamped &_goal)
 
ros::Subscriber subGoalSet_
 
double sum_processing_time_successful_
 
std::vector< ros::Subscriber > subOdom_
 
std::vector< RobotInfoPtr > active_robots_
robots avaliable 
 
void updateTimeout(const float _secs)
used to update the nodes timeout to latch topics