17 #ifndef GAZEBO_SENSORS_IMUSENSOR_HH_ 18 #define GAZEBO_SENSORS_IMUSENSOR_HH_ 22 #include <ignition/math/Quaternion.hh> 23 #include <ignition/math/Vector3.hh> 33 class ImuSensorPrivate;
49 protected:
void Load(
const std::string &_worldName, sdf::ElementPtr _sdf);
52 protected:
virtual void Load(
const std::string &_worldName);
55 public:
virtual void Init();
58 protected:
virtual bool UpdateImpl(
const bool _force);
61 protected:
virtual void Fini();
70 public: msgs::IMU ImuMessage()
const;
76 public: ignition::math::Vector3d AngularVelocity(
77 const bool _noiseFree =
false)
const;
84 public: ignition::math::Vector3d LinearAcceleration(
85 const bool _noiseFree =
false)
const;
94 public: ignition::math::Quaterniond Orientation()
const;
100 public:
void SetReferencePose();
103 public:
virtual bool IsActive()
const;
112 public:
void SetWorldToReferencePose(
113 const ignition::math::Pose3d &_pose = ignition::math::Pose3d());
117 private:
void OnLinkData(ConstLinkDataPtr &_msg);
121 private: std::unique_ptr<ImuSensorPrivate> dataPtr;
Forward declarations for the common classes.
Definition: Animation.hh:33
#define GAZEBO_DEPRECATED(version)
Definition: CommonTypes.hh:48
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
An IMU sensor.
Definition: ImuSensor.hh:40
Base class for sensors.
Definition: Sensor.hh:50
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:59