6#ifndef LASERHOKUYO_THREAD_H
7#define LASERHOKUYO_THREAD_H
100 bool close()
override;
108 bool getLaserMeasurement(std::vector<LaserMeasurementData> &data,
double* timestamp)
override;
122 int calculateCheckSum(
const char*
buffer,
int size,
char actual_sum);
123 long decodeDataValue(
const char* data,
int data_byte);
define control board standard interfaces
contains the definition of a Vector type
laserHokuyo: Documentation to be added
Device_status device_status
bool setScanRate(double rate) override
set the scan rate (scans per seconds)
bool getRawData(yarp::sig::Vector &data, double *timestamp) override
Get the device measurements.
bool getDeviceStatus(Device_status &status) override
get the device status
@ HOKUYO_STATUS_ERROR_INVALID_CHECKSUM
@ HOKUYO_STATUS_NOT_READY
@ HOKUYO_STATUS_ERROR_BUSY
@ HOKUYO_STATUS_ERROR_INVALID_COMMAND
@ HOKUYO_STATUS_ERROR_NOTHING_RECEIVED
@ HOKUYO_STATUS_ACQUISITION_COMPLETE
void run() override
Loop function.
bool getScanRate(double &rate) override
get the scan rate (scans per seconds)
bool getScanLimits(double &min, double &max) override
get the scan angular range.
laserHokuyo(double period=0.02)
bool getDistanceRange(double &min, double &max) override
get the device detection range
void threadRelease() override
Release method.
yarp::sig::Vector laser_data
struct laserHokuyo::sensor_property_struct sensor_properties
bool setHorizontalResolution(double step) override
get the angular step between two measurements (if available)
bool threadInit() override
Initialization method.
bool close() override
Close the DeviceDriver.
bool open(yarp::os::Searchable &config) override
Open the DeviceDriver.
bool getLaserMeasurement(std::vector< LaserMeasurementData > &data, double *timestamp) override
Get the device measurements.
bool setDistanceRange(double min, double max) override
set the device detection range.
bool getDeviceInfo(std::string &device_info) override
get the device hardware characteristics
Laser_mode_type laser_mode
bool setScanLimits(double min, double max) override
set the scan angular range.
bool getHorizontalResolution(double &step) override
get the angular step between two measurements.
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.
void step()
Call this to "step" the thread rather than starting it.
A base class for nested structures that can be searched.
For streams capable of holding different kinds of content, check what they actually have.
An interface to the operating system, including Port based communication.