17 #ifndef _GAZEBO_RAYSENSOR_HH_
18 #define _GAZEBO_RAYSENSOR_HH_
23 #include <ignition/math/Angle.hh>
24 #include <ignition/math/Pose3.hh>
34 class OgreDynamicLines;
60 public:
virtual void Load(
const std::string &_worldName);
63 public:
virtual void Init();
66 protected:
virtual bool UpdateImpl(
bool _force);
69 protected:
virtual void Fini();
72 public:
virtual std::string GetTopic()
const;
82 public: ignition::math::Angle AngleMin()
const;
92 public: ignition::math::Angle AngleMax()
const;
96 public:
double GetAngleResolution()
const;
100 public:
double GetRangeMin()
const;
104 public:
double GetRangeMax()
const;
108 public:
double GetRangeResolution()
const;
112 public:
int GetRayCount()
const;
116 public:
int GetRangeCount()
const;
120 public:
int GetVerticalRayCount()
const;
124 public:
int GetVerticalRangeCount()
const;
134 public: ignition::math::Angle VerticalAngleMin()
const;
144 public: ignition::math::Angle VerticalAngleMax()
const;
148 public:
double GetVerticalAngleResolution()
const;
159 public:
double GetRange(
unsigned int _index);
163 public:
void GetRanges(std::vector<double> &_ranges);
174 public:
double GetRetro(
unsigned int _index);
185 public:
int GetFiducial(
unsigned int _index);
190 {
return this->laserShape;}
193 public:
virtual bool IsActive();
200 private: boost::mutex mutex;
201 private: msgs::LaserScanStamped laserMsg;
Forward declarations for transport.
#define GAZEBO_DEPRECATED(version)
Definition: CommonTypes.hh:47
physics::MultiRayShapePtr GetLaserShape() const
Returns a pointer to the internal physics::MultiRayShape.
Definition: RaySensor.hh:189
boost::shared_ptr< Collision > CollisionPtr
Definition: PhysicsTypes.hh:96
boost::shared_ptr< MultiRayShape > MultiRayShapePtr
Definition: PhysicsTypes.hh:128
boost::shared_ptr< Entity > EntityPtr
Definition: PhysicsTypes.hh:76
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.
An angle and related functions.
Definition: Angle.hh:53
boost::shared_ptr< Publisher > PublisherPtr
Definition: TransportTypes.hh:49
Base class for sensors.
Definition: Sensor.hh:69
#define GAZEBO_VISIBLE
Use to represent "symbol visible" if supported.
Definition: system.hh:66