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);
82 public:
virtual bool Init();
98 virtual bool IGN_DEPRECATED(4) Update(
const common::Time &_now) = 0;
113 public:
virtual bool Update(
114 const std::chrono::steady_clock::duration &_now) = 0;
117 public: ignition::common::Time IGN_DEPRECATED(4) NextUpdateTime()
const;
120 public: std::chrono::steady_clock::duration NextDataUpdateTime()
const;
136 public:
bool IGN_DEPRECATED(4)
137 Update(
const ignition::common::Time &_now,
const bool _force);
154 const std::chrono::steady_clock::duration &_now,
const bool _force);
161 public:
double UpdateRate()
const;
167 public:
void SetUpdateRate(
const double _hz);
171 public: ignition::math::Pose3d Pose()
const;
174 public:
void SetPose(
const ignition::math::Pose3d &_pose);
177 public:
virtual void SetParent(
const std::string &_parent);
194 public:
bool EnableMetrics()
const;
198 public:
void SetEnableMetrics(
bool _enableMetrics);
211 public: sdf::ElementPtr SDF()
const;
231 public:
void AddSequence(ignition::msgs::Header *_msg,
237 public:
void PublishMetrics(
240 IGN_COMMON_WARN_IGNORE__DLL_INTERFACE_MISSING
244 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