54 unsigned int _port = 12002);
93 float vrad,
float hrad,
float distance);
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
A TCP socket that can be connected to a TCP server, implementing MRPT's CStream interface for passing...
This class allows loading and storing values and vectors of different types from a configuration text...
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
This "software driver" implements the communication protocol for interfacing a Ibeo Lux laser scanner...
void makeStopCommand(unsigned char *buffer)
unsigned int m_scanFrequency
virtual ~CIbeoLuxETH()
Destructor.
void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string &iniSection)
Load sensor pose on the robot, or keep the default sensor pose.
void doProcess()
This function acquire a laser scan from the device.
CIbeoLuxETH(std::string _ip=std::string("10.152.36.93"), unsigned int _port=12002)
Constructor.
mrpt::poses::CPoint3D convertToCartesian(float vrad, float hrad, float distance)
void initialize()
This method can or cannot be implemented in the derived class, depending on the need for it.
unsigned int lastScanNumber
double convertTicksToHRad(int hticks, int hticksPerRotation)
std::vector< mrpt::obs::CObservation3DRangeScan > m_observations
double convertLayerToRad(int scanlayer)
std::thread dataCollectionThread
mrpt::poses::CPose3D m_sensorPose
mrpt::comms::CClientTCPSocket m_client
unsigned int curScanNumber
void makeCommandHeader(unsigned char *buffer)
void makeStartCommand(unsigned char *buffer)
void makeTypeCommand(unsigned char *buffer)
A class used to store a 3D point.
A class used to store a 3D pose (a 3D translation + a rotation in 3D).
GLsizei const GLchar ** string
double distance(const TPoint2D &p1, const TPoint2D &p2)
Gets the distance between two points in a 2D space.
Contains classes for various device interfaces.