24 #ifndef GAZEBO_ROS_P3D_HH 25 #define GAZEBO_ROS_P3D_HH 29 #include <boost/thread.hpp> 30 #include <boost/thread/mutex.hpp> 33 #include <nav_msgs/Odometry.h> 38 #include <gazebo/physics/physics.hh> 39 #include <gazebo/transport/TransportTypes.hh> 40 #include <gazebo/common/Time.hh> 41 #include <gazebo/common/Plugin.hh> 42 #include <gazebo/common/Events.hh> 57 public:
void Load(physics::ModelPtr _parent, sdf::ElementPtr _sdf);
66 private: physics::LinkPtr
link_;
95 private: boost::mutex
lock;
101 private: ignition::math::Vector3d
apos_;
102 private: ignition::math::Vector3d
aeul_;
ignition::math::Pose3d offset_
allow specifying constant xyz and rpy offsets
double gaussian_noise_
Gaussian noise.
double GaussianKernel(double mu, double sigma)
Gaussian noise generator.
GazeboRosP3D()
Constructor.
ignition::math::Vector3d frame_aeul_
physics::LinkPtr reference_link_
The body of the frame to display pose, twist.
std::string frame_name_
frame transform name, should match link name FIXME: extract link name directly?
event::ConnectionPtr update_connection_
virtual void UpdateChild()
Update the controller.
boost::mutex lock
mutex to lock access to fields used in message callbacks
ros::NodeHandle * rosnode_
pointer to ros node
virtual ~GazeboRosP3D()
Destructor.
std::string robot_namespace_
for setting ROS name space
A collection of PubQueue objects, potentially of different types. This class is the programmer's inte...
ignition::math::Vector3d aeul_
ignition::math::Vector3d last_frame_vpos_
A queue of outgoing messages. Instead of calling publish() directly, you can push() messages here to ...
ignition::math::Vector3d last_vpos_
PubQueue< nav_msgs::Odometry >::Ptr pub_Queue
ros::CallbackQueue p3d_queue_
ignition::math::Vector3d apos_
ignition::math::Vector3d last_veul_
common::Time last_time_
save last_time
void Load(physics::ModelPtr _parent, sdf::ElementPtr _sdf)
Load the controller.
physics::LinkPtr link_
The parent Model.
ignition::math::Vector3d frame_apos_
boost::thread callback_queue_thread_
ignition::math::Vector3d last_frame_veul_
std::string topic_name_
topic name
nav_msgs::Odometry pose_msg_
ros message
std::string tf_frame_name_
std::string link_name_
store bodyname