26 #ifndef __UUV_POSE_GT_SENSOR_ROS_PLUGIN_HH__ 27 #define __UUV_POSE_GT_SENSOR_ROS_PLUGIN_HH__ 29 #include <gazebo/gazebo.hh> 31 #include <nav_msgs/Odometry.h> 32 #include <gazebo/physics/physics.hh> 33 #include <geometry_msgs/TransformStamped.h> 35 #include <boost/shared_ptr.hpp> 49 public:
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf);
52 protected:
virtual bool OnUpdate(
const common::UpdateInfo& _info);
55 ignition::math::Pose3d _pose, ignition::math::Vector3d _linVel,
56 ignition::math::Vector3d _angVel);
59 ignition::math::Pose3d _pose, ignition::math::Vector3d _linVel,
60 ignition::math::Vector3d _angVel);
67 protected: ignition::math::Pose3d
offset;
83 protected: ignition::math::Vector3d
linAcc;
84 protected: ignition::math::Vector3d
angAcc;
92 #endif // __UUV_POSE_GT_SENSOR_ROS_PLUGIN_HH__ ignition::math::Vector3d lastRefAngVel
ignition::math::Vector3d lastRefLinVel
ignition::math::Pose3d nedTransform
ignition::math::Pose3d offset
Pose offset.
~PoseGTROSPlugin()
Class destructor.
virtual bool OnUpdate(const common::UpdateInfo &_info)
Update sensor measurement.
ignition::math::Vector3d linAcc
ignition::math::Vector3d angAcc
void PublishOdomMessage(common::Time _time, ignition::math::Pose3d _pose, ignition::math::Vector3d _linVel, ignition::math::Vector3d _angVel)
ignition::math::Vector3d lastAngVel
ignition::math::Vector3d lastLinVel
ignition::math::Vector3d refLinAcc
boost::shared_ptr< tf2_ros::TransformListener > tfListener
virtual void Load(physics::ModelPtr _model, sdf::ElementPtr _sdf)
Load the plugin.
PoseGTROSPlugin()
Class constructor.
void PublishNEDOdomMessage(common::Time _time, ignition::math::Pose3d _pose, ignition::math::Vector3d _linVel, ignition::math::Vector3d _angVel)
ignition::math::Vector3d refAngAcc
ros::Publisher nedOdomPub
void UpdateNEDTransform()