ArPiRobot-CoreLib C++
C++ library for ArPiRobot robots
Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | Friends | List of all members
arpirobot::ArduinoDevice Class Referenceabstract

#include <arpirobot/arduino/device/ArduinoDevice.hpp>

Inheritance diagram for arpirobot::ArduinoDevice:
arpirobot::IRReflectorModule arpirobot::Mpu6050Imu arpirobot::NxpAdafruit9Dof arpirobot::OldAdafruit9Dof arpirobot::QuadEncoder arpirobot::SingleEncoder arpirobot::Ultrasonic4Pin arpirobot::VoltageMonitor

Public Member Functions

 ArduinoDevice (bool createDevice, int deviceId)
 
virtual std::string getDeviceName ()
 

Protected Member Functions

void setArduino (BaseArduinoInterface *arduino)
 
void setDeviceId (int deviceId)
 
bool sendData (const std::vector< uint8_t > &data)
 
bool sendData (const std::string &data)
 
virtual void applyDefaultState ()=0
 
virtual std::vector< uint8_t > getCreateData ()=0
 
virtual void handleData (const std::vector< uint8_t > &data)=0
 

Static Protected Member Functions

static std::vector< uint8_t > stringToData (const std::string &str)
 

Protected Attributes

bool createDevice
 
int deviceId
 
std::string deviceName
 
BaseArduinoInterfacearduino = nullptr
 

Friends

class BaseArduinoInterface
 

Detailed Description

Common base class for any device that is connected to an arduino (any device that communicates with the Pi via an arduino or other microprocessor)

Constructor & Destructor Documentation

◆ ArduinoDevice()

arpirobot::ArduinoDevice::ArduinoDevice ( bool  createDevice,
int  deviceId 
)
Parameters
createDeviceIf this is true the arduino this device is added to will be instructed to instantiate this device. This should only be false if a device is hard-coded in the arduino firmware
deviceIdAssign a deviceId for a device that is hard-coded in the arduino firmware

Member Function Documentation

◆ getDeviceName()

virtual std::string arpirobot::ArduinoDevice::getDeviceName ( )
virtual

Get the human-readable name for this device


The documentation for this class was generated from the following file: