19 #ifndef LASERHOKUYO_THREAD_H
20 #define LASERHOKUYO_THREAD_H
59 HOKUYO_STATUS_ACQUISITION_COMPLETE =1,
61 HOKUYO_STATUS_ERROR_BUSY = -1,
62 HOKUYO_STATUS_ERROR_INVALID_COMMAND = -2,
63 HOKUYO_STATUS_ERROR_INVALID_CHECKSUM = -3,
64 HOKUYO_STATUS_ERROR_NOTHING_RECEIVED = -4,
65 HOKUYO_STATUS_NOT_READY = -5
108 bool close()
override;
109 bool threadInit()
override;
110 void threadRelease()
override;
116 bool getLaserMeasurement(std::vector<LaserMeasurementData> &data)
override;
117 bool getDeviceStatus (Device_status &status)
override;
118 bool getDeviceInfo (std::string &device_info)
override;
119 bool getDistanceRange (
double& min,
double& max)
override;
120 bool setDistanceRange (
double min,
double max)
override;
121 bool getScanLimits (
double& min,
double& max)
override;
122 bool setScanLimits (
double min,
double max)
override;
123 bool getHorizontalResolution (
double& step)
override;
124 bool setHorizontalResolution (
double step)
override;
125 bool getScanRate (
double& rate)
override;
126 bool setScanRate (
double rate)
override;
130 int calculateCheckSum(
const char*
buffer,
int size,
char actual_sum);
131 long decodeDataValue(
const char* data,
int data_byte);
132 int readData(
const Laser_mode_type laser_mode,
const char* text_data,
const int lext_data_len,
int current_line,
yarp::sig::Vector& values);
define control board standard interfaces
contains the definition of a Vector type
Device_status device_status
laserHokuyo(double period=0.02)
yarp::sig::Vector laser_data
Laser_mode_type laser_mode
Interface implemented by all device drivers.
A generic interface for planar laser range finders.
A generic interface to serial port devices.
A container for a device driver.
An abstraction for a periodic thread.
A base class for nested structures that can be searched.
An interface for the device drivers.
An interface to the operating system, including Port based communication.