21 #ifndef __PLUGINS_NAVGRAPH_CLUSTERS_NAVGRAPH_CLUSTERS_THREAD_H_ 22 #define __PLUGINS_NAVGRAPH_CLUSTERS_NAVGRAPH_CLUSTERS_THREAD_H_ 24 #include <core/threading/thread.h> 25 #include <core/utils/lock_list.h> 26 #include <aspect/clock.h> 27 #include <aspect/configurable.h> 28 #include <aspect/logging.h> 29 #include <aspect/tf.h> 30 #include <aspect/blackboard.h> 31 #include <navgraph/aspect/navgraph.h> 32 #include <blackboard/interface_listener.h> 33 #include <blackboard/interface_observer.h> 35 #include <Eigen/Geometry> 42 class Position3DInterface;
44 class NavGraphEdgeConstraint;
45 class NavGraphEdgeCostConstraint;
65 virtual void finalize();
67 std::list<std::pair<std::string, std::string>> blocked_edges()
throw();
69 std::list<std::tuple<std::string, std::string, Eigen::Vector2f>>
70 blocked_edges_centroids()
throw();
72 bool robot_pose(Eigen::Vector2f &pose)
throw();
79 virtual void bb_interface_created(
const char *type,
const char *
id)
throw();
83 unsigned int instance_serial)
throw();
85 unsigned int instance_serial)
throw();
89 Eigen::Vector2f fixed_frame_pose(std::string frame,
const fawkes::Time ×tamp,
93 std::string cfg_iface_prefix_;
94 float cfg_close_threshold_;
95 std::string cfg_fixed_frame_;
96 std::string cfg_base_frame_;
97 int cfg_min_vishistory_;
98 std::string cfg_mode_;
Thread aspect to access to BlackBoard.
Constraint that can be queried to check if an edge is blocked.
virtual void run()
Stub to see name in backtrace for easier debugging.
Thread aspect that allows to obtain the current time from the clock.
Fawkes library namespace.
virtual void run()
Code to execute in the thread.
A class for handling time.
Thread class encapsulation of pthreads.
Base class for all Fawkes BlackBoard interfaces.
Constraint that can be queried for an edge cost factor.
Block navgraph paths based on laser clusters.
Thread aspect to log output.
BlackBoard interface observer.
Thread aspect to access configuration data.
BlackBoard interface listener.
Thread aspect to access NavGraph.