17 #ifndef IGNITION_SENSORS_SENSOR_HH_ 18 #define IGNITION_SENSORS_SENSOR_HH_ 22 #pragma warning(disable: 4005) 23 #pragma warning(disable: 4251) 25 #include <ignition/msgs/header.pb.h> 34 #include <ignition/common/SuppressWarning.hh> 35 #include <ignition/common/Time.hh> 36 #include <ignition/math/Pose3.hh> 37 #include <ignition/sensors/config.hh> 38 #include <ignition/sensors/Export.hh> 46 inline namespace IGNITION_SENSORS_VERSION_NAMESPACE {
60 class IGNITION_SENSORS_VISIBLE
Sensor 71 public:
virtual bool Load(
const sdf::Sensor &_sdf);
76 public:
virtual bool Load(sdf::ElementPtr _sdf);
79 public:
virtual bool Init();
94 public:
virtual bool Update(
const common::Time &_now) = 0;
97 public: common::Time NextUpdateTime()
const;
112 public:
bool Update(
const common::Time &_now,
const bool _force);
119 public:
double UpdateRate()
const;
125 public:
void SetUpdateRate(
const double _hz);
129 public: ignition::math::Pose3d Pose()
const;
132 public:
void SetPose(
const ignition::math::Pose3d &_pose);
135 public:
virtual void SetParent(
const std::string &_parent);
152 public:
bool EnableMetrics()
const;
156 public:
void SetEnableMetrics(
bool _enableMetrics);
169 public: sdf::ElementPtr SDF()
const;
189 public:
void AddSequence(ignition::msgs::Header *_msg,
195 public:
void PublishMetrics(
198 IGN_COMMON_WARN_IGNORE__DLL_INTERFACE_MISSING
202 IGN_COMMON_WARN_RESUME__DLL_INTERFACE_MISSING
a base sensor class
Definition: Sensor.hh:60
const SensorId NO_SENSOR
Definition: Sensor.hh:50
Definition: AirPressureSensor.hh:32