10 #ifndef CEnoseModular_H
11 #define CEnoseModular_H
#define DEFINE_GENERIC_SENSOR(class_name)
This declaration must be inserted in all CGenericSensor classes definition, within the class declarat...
This class allows loading and storing values and vectors of different types from a configuration text...
A class for interfacing an e-NoseModular via a FTDI USB link.
std::vector< float > enose_poses_yaw
void purgeBuffers()
Purge the Serial/FTDI buffer.
CEnoseModular()
Constructor.
std::vector< float > enose_poses_x
The 3D pose of the master + N slave eNoses on the robot (meters & radians)
std::vector< float > enose_poses_pitch
std::string getSerialPort() const
std::unique_ptr< mrpt::comms::CInterfaceFTDI > m_stream_FTDI
FTDI comms pipe (when not in serial port mode)
unsigned int getSerialPortBaud() const
void doProcess()
This method should be called periodically (at least at 1Hz to capture ALL the real-time data) It is t...
unsigned int m_COM_baud
Default=115200.
void setSerialPort(const std::string &port)
If not an empty string, will open that serial port, otherwise will try to open USB FTDI device "m_usb...
std::string m_COM_port
If not an empty string (default), will open that serial port, otherwise will try to open USB FTDI dev...
std::vector< float > enose_poses_roll
std::unique_ptr< mrpt::comms::CSerialPort > m_stream_SERIAL
Serial port comms.
void loadConfig_sensorSpecific(const mrpt::config::CConfigFileBase &configSource, const std::string §ion)
See the class documentation at the top for expected parameters.
bool getObservation(mrpt::obs::CObservationGasSensors &outObservation)
Request the master eNose the latest readings from all the eNoses.
std::string m_usbSerialNumber
A copy of the device serial number (to open the USB FTDI chip)
void setSerialPortBaud(unsigned int baud)
Set the serial port baud rate (default: 115200)
std::vector< float > enose_poses_y
mrpt::io::CStream * checkConnectionAndConnect()
Tries to connect to the USB device (if disconnected).
mrpt::system::TTimeStamp initial_timestamp
std::vector< float > enose_poses_z
A generic interface for a wide-variety of sensors designed to be used in the application RawLogGrabbe...
This base class is used to provide a unified interface to files,memory buffers,..Please see the deriv...
Declares a class derived from "CObservation" that represents a set of readings from gas sensors.
GLsizei const GLchar ** string
mrpt::Clock::time_point TTimeStamp
A system independent time type, it holds the the number of 100-nanosecond intervals since January 1,...
Contains classes for various device interfaces.