23 #ifndef _PLUGINS_GAZSIMTIMESOURCE_THREAD_H__
24 #define _PLUGINS_GAZSIMTIMESOURCE_THREAD_H__
26 #include "../msgs/SimTime.pb.h"
27 #include "gazsim_timesource_source.h"
29 #include <aspect/blocked_timing.h>
30 #include <aspect/clock.h>
31 #include <aspect/configurable.h>
32 #include <aspect/logging.h>
33 #include <core/threading/thread.h>
34 #include <google/protobuf/message.h>
35 #include <plugins/gazebo/aspect/gazebo.h>
37 #include <boost/asio.hpp>
38 #include <gazebo/physics/physics.hh>
40 typedef const boost::shared_ptr<gazsim_msgs::SimTime const> ConstSimTimePtr;
62 gazebo::transport::SubscriberPtr time_sync_sub_;
65 void on_time_sync_msg(ConstSimTimePtr &msg);
Plugin provides the simulation time from gazebo.
virtual void finalize()
Finalize the thread.
virtual void init()
Initialize the thread.
virtual void loop()
Code to execute in 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 get access to a Gazebo node handle.
This time-source provides the simulation time from Gazebo in Fawkes.
Thread aspect to log output.
Thread class encapsulation of pthreads.