22 #ifndef _PLUGINS_ROS_IMAGE_THREAD_H_
23 #define _PLUGINS_ROS_IMAGE_THREAD_H_
25 #include <aspect/blocked_timing.h>
26 #include <aspect/clock.h>
27 #include <aspect/configurable.h>
28 #include <aspect/logging.h>
29 #include <core/threading/mutex.h>
30 #include <core/threading/thread.h>
31 #include <image_transport/image_transport.h>
32 #include <plugins/ros/aspect/ros.h>
33 #include <ros/node_handle.h>
34 #include <sensor_msgs/Image.h>
39 namespace firevision {
40 class SharedMemoryImageBuffer;
68 void get_sets(std::set<std::string> &missing_images, std::set<std::string> &unbacked_images);
74 image_transport::Publisher pub;
75 sensor_msgs::Image msg;
80 std::map<std::string, PublisherInfo> pubs_;
82 image_transport::ImageTransport *it_;
Thread to export Fawkes images to ROS.
virtual void init()
Initialize the thread.
virtual void loop()
Code to execute in the thread.
virtual void run()
Stub to see name in backtrace for easier debugging.
virtual ~RosImagesThread()
Destructor.
RosImagesThread()
Constructor.
virtual void finalize()
Finalize the thread.
Thread aspect to use blocked timing.
Thread aspect that allows to obtain the current time from the clock.
Thread aspect to access configuration data.
Thread aspect to log output.
Thread aspect to get access to a ROS node handle.
Thread class encapsulation of pthreads.
A class for handling time.
Shared memory image buffer.