17 #ifndef _GAZEBO_SENSORS_RAYSENSOR_HH_
18 #define _GAZEBO_SENSORS_RAYSENSOR_HH_
24 #include <ignition/math/Angle.hh>
31 class OgreDynamicLines;
40 class RaySensorPrivate;
60 public:
virtual void Load(
const std::string &_worldName);
63 public:
virtual void Init();
66 protected:
virtual bool UpdateImpl(
const bool _force);
69 protected:
virtual void Fini();
72 public:
virtual std::string Topic()
const;
76 public: ignition::math::Angle AngleMin()
const;
80 public: ignition::math::Angle AngleMax()
const;
89 public:
double AngleResolution()
const;
98 public:
double RangeMin()
const;
107 public:
double RangeMax()
const;
116 public:
double RangeResolution()
const;
125 public:
int RayCount()
const;
134 public:
int RangeCount()
const;
143 public:
int VerticalRayCount()
const;
152 public:
int VerticalRangeCount()
const;
156 public: ignition::math::Angle VerticalAngleMin()
const;
160 public: ignition::math::Angle VerticalAngleMax()
const;
169 public:
double VerticalAngleResolution()
const;
192 public:
double Range(
const unsigned int _index)
const;
197 public:
void GetRanges(std::vector<double> &_ranges)
202 public:
void Ranges(std::vector<double> &_ranges)
const;
225 public:
double Retro(
const unsigned int _index)
const;
248 public:
int Fiducial(
const unsigned int _index)
const;
261 public:
virtual bool IsActive()
const;
265 private: std::unique_ptr<RaySensorPrivate> dataPtr;
#define GAZEBO_DEPRECATED(version)
Definition: CommonTypes.hh:48
boost::shared_ptr< MultiRayShape > MultiRayShapePtr
Definition: PhysicsTypes.hh:153
Sensor with one or more rays.
Definition: RaySensor.hh:51
GAZEBO_VISIBLE void Init(google::protobuf::Message &_message, const std::string &_id="")
Initialize a message.
Base class for sensors.
Definition: Sensor.hh:50
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:59