7 #ifndef GAZEBO_ROS_PROJECTOR_HH 8 #define GAZEBO_ROS_PROJECTOR_HH 15 #include <boost/thread/mutex.hpp> 17 #include <gazebo/physics/physics.hh> 18 #include <gazebo/transport/TransportTypes.hh> 19 #include <gazebo/transport/Node.hh> 20 #include <gazebo/common/Time.hh> 21 #include <gazebo/common/Plugin.hh> 22 #include <gazebo/common/Events.hh> 23 #include <gazebo/rendering/RenderTypes.hh> 25 #include <std_msgs/String.h> 26 #include <std_msgs/Int32.h> 28 #include <OgrePrerequisites.h> 29 #include <OgreTexture.h> 30 #include <OgreFrameListener.h> 34 class PlaneBoundedVolumeListSceneQuery;
86 protected:
virtual void Load( physics::ModelPtr _parent, sdf::ElementPtr _sdf );
92 private:
void LoadImage(
const std_msgs::String::ConstPtr& imageMsg);
95 private:
void ToggleProjector(
const std_msgs::Int32::ConstPtr& projectorMsg);
113 private:
void QueueThread();
ros::CallbackQueue queue_
std::string robot_namespace_
For setting ROS name space.
ros::Subscriber projectorSubscriber_
std::string projector_topic_name_
ROS projector topic name.
boost::thread callback_queue_thread_
physics::WorldPtr world_
pointer to the world
ros::NodeHandle * rosnode_
A pointer to the ROS node. A node will be instantiated if it does not exist.
event::ConnectionPtr add_model_event_
ros::Subscriber imageSubscriber_
transport::PublisherPtr projector_pub_
std::string texture_topic_name_
ROS texture topic name.