17 #ifndef _MULTIRAYSHAPE_HH_    18 #define _MULTIRAYSHAPE_HH_    51       public: 
virtual void Init();
    60       public: 
double GetRange(
unsigned int _index);
    65       public: 
double GetRetro(
unsigned int _index);
    70       public: 
int GetFiducial(
unsigned int _index);
    74       public: 
double GetMinRange() 
const;
    78       public: 
double GetMaxRange() 
const;
    82       public: 
double GetResRange() 
const;
    86       public: 
int GetSampleCount() 
const;
    90       public: 
double GetScanResolution() 
const;
   102       public: 
int GetVerticalSampleCount() 
const;
   106       public: 
double GetVerticalScanResolution() 
const;
   117       public: 
void Update();
   122       public: 
void FillMsg(msgs::Geometry &_msg);
   127       public: 
virtual void ProcessMsg(
const msgs::Geometry &_msg);
   130       public: 
virtual double ComputeVolume() 
const;
   135       public: 
template<
typename T>
   137               {
return this->newLaserScans.Connect(_subscriber);}
   142               {this->newLaserScans.Disconnect(_conn);}
   145       protected: 
virtual void UpdateRays() = 0;
   154       protected: std::vector<RayShapePtr> 
rays;
 sdf::ElementPtr scanElem
Scan SDF element pointer. 
Definition: MultiRayShape.hh:163
 
math::Pose offset
Pose offset of all the rays. 
Definition: MultiRayShape.hh:157
 
Forward declarations for the common classes. 
Definition: Animation.hh:33
 
Encapsulates a position and rotation in three space. 
Definition: Pose.hh:37
 
The Vector3 class represents the generic vector containing 3 elements. 
Definition: Vector3.hh:39
 
Laser collision contains a set of ray-collisions, structured to simulate a laser range scanner...
Definition: MultiRayShape.hh:41
 
Base class for all shapes. 
Definition: Shape.hh:46
 
void DisconnectNewLaserScans(event::ConnectionPtr &_conn)
Disconnect from the new laser scans signal. 
Definition: MultiRayShape.hh:141
 
sdf::ElementPtr rayElem
Ray SDF element pointer. 
Definition: MultiRayShape.hh:160
 
sdf::ElementPtr horzElem
Horizontal SDF element pointer. 
Definition: MultiRayShape.hh:166
 
sdf::ElementPtr rangeElem
Range SDF element pointer. 
Definition: MultiRayShape.hh:172
 
std::vector< RayShapePtr > rays
Ray data. 
Definition: MultiRayShape.hh:154
 
boost::shared_ptr< Connection > ConnectionPtr
Definition: CommonTypes.hh:153
 
event::ConnectionPtr ConnectNewLaserScans(T _subscriber)
Connect a to the new laser scan signal. 
Definition: MultiRayShape.hh:136
 
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< Collision > CollisionPtr
Definition: PhysicsTypes.hh:104
 
event::EventT< void()> newLaserScans
New laser scans event. 
Definition: MultiRayShape.hh:175
 
sdf::ElementPtr vertElem
Vertical SDF element pointer. 
Definition: MultiRayShape.hh:169