7 #ifndef __CANBUS_VIRTUAL_ANALOG_SENSOR_H__
8 #define __CANBUS_VIRTUAL_ANALOG_SENSOR_H__
13 #include <yarp/os/PeriodicThread.h>
14 #include <yarp/dev/ControlBoardInterfaces.h>
15 #include <yarp/dev/IVirtualAnalogSensor.h>
16 #include <yarp/dev/PolyDriver.h>
17 #include <yarp/dev/CanBusInterface.h>
18 #include <yarp/sig/Vector.h>
20 using namespace yarp::os;
27 ANALOG_FORMAT_ERR = 0,
28 ANALOG_FORMAT_8_BIT = 8,
29 ANALOG_FORMAT_16_BIT = 16,
36 ANALOG_NOT_RESPONDING=-1,
70 virtual bool open(yarp::os::Searchable& config);
75 virtual yarp::dev::VAS_status getVirtualAnalogSensorStatus (
int ch);
76 virtual int getVirtualAnalogSensorChannels();
78 virtual bool updateVirtualAnalogSensorMeasure(
int ch,
double &measure);
79 virtual bool updateVirtualAnalogSensorMeasure(yarp::sig::Vector &
data);
81 virtual bool threadInit();
82 virtual void threadRelease();
87 bool decode8 (
const unsigned char *msg,
int msg_id,
double *
data);
88 bool decode16(
const unsigned char *msg,
int msg_id,
double *
data);
89 bool sensor_start (yarp::os::Searchable& config);
91 bool readFullScaleAnalog(
int ch);
yarp::dev::VAS_status status
yarp::sig::Vector scaleFactor
AnalogDataFormat dataFormat
~CanBusVirtualAnalogSensor()
CanBusVirtualAnalogSensor(int period=20)
ICanBufferFactory * pCanBufferFactory