Fawkes API
Fawkes Development Version
|
57 #ifndef _PLUGINS_ROBOTSTATEPUBLISHER_ROBOTSTATEPUBLISHER_THREAD_H_
58 #define _PLUGINS_ROBOTSTATEPUBLISHER_ROBOTSTATEPUBLISHER_THREAD_H_
60 #include <aspect/blackboard.h>
61 #include <aspect/blocked_timing.h>
62 #include <aspect/clock.h>
63 #include <aspect/configurable.h>
64 #include <aspect/logging.h>
65 #include <aspect/tf.h>
66 #include <blackboard/interface_listener.h>
67 #include <blackboard/interface_observer.h>
68 #include <core/threading/thread.h>
69 #include <interfaces/JointInterface.h>
71 #include <kdl/frames.hpp>
72 #include <kdl/kdl.hpp>
73 #include <kdl/segment.hpp>
74 #include <kdl/tree.hpp>
89 SegmentPair(
const KDL::Segment &p_segment,
const std::string &p_root,
const std::string &p_tip)
125 unsigned int instance_serial)
throw();
127 unsigned int instance_serial)
throw();
130 void publish_fixed_transforms();
132 void add_children(
const KDL::SegmentMap::const_iterator segment);
133 void transform_kdl_to_tf(
const KDL::Frame &k, fawkes::tf::Transform &t);
134 bool joint_is_in_model(
const char *
id);
138 std::map<std::string, SegmentPair> segments_, segments_fixed_;
140 std::string cfg_urdf_path_;
141 float cfg_postdate_to_future_;
143 std::list<fawkes::JointInterface *> ifs_;
This class represents the segment between a parent and a child joint.
KDL::Segment segment
The segment of the joint pair.
SegmentPair(const KDL::Segment &p_segment, const std::string &p_root, const std::string &p_tip)
Constructor.
virtual void bb_interface_reader_removed(fawkes::Interface *interface, unsigned int instance_serial)
A reading instance has been closed for a watched interface.
BlackBoard interface listener.
Thread aspect to use blocked timing.
virtual void finalize()
Finalize the thread.
Thread to publish the robot's transforms.
virtual void init()
Initialize the thread.
Thread aspect to access to BlackBoard.
Thread aspect to log output.
BlackBoard interface observer.
Base class for all Fawkes BlackBoard interfaces.
virtual void bb_interface_writer_removed(fawkes::Interface *interface, unsigned int instance_serial)
A writing instance has been closed for a watched interface.
virtual void bb_interface_data_changed(fawkes::Interface *interface)
BlackBoard data changed notification.
RobotStatePublisherThread()
Constructor.
Thread class encapsulation of pthreads.
virtual void bb_interface_created(const char *type, const char *id)
BlackBoard interface created notification.
Thread aspect to access configuration data.
std::string tip
The name of the child joint.
std::string root
The name of the parent joint.
virtual void loop()
Code to execute in the thread.
Thread aspect that allows to obtain the current time from the clock.