Public Member Functions | Protected Member Functions | Static Protected Attributes | Private Attributes | Static Private Attributes | List of all members
ttl_driver::AbstractTtlDriver Class Referenceabstract

The AbstractTtlDriver class. More...

#include <abstract_ttl_driver.hpp>

Inheritance diagram for ttl_driver::AbstractTtlDriver:
Inheritance graph
[legend]

Public Member Functions

 AbstractTtlDriver ()=default
 
 AbstractTtlDriver (std::shared_ptr< dynamixel::PortHandler > portHandler, std::shared_ptr< dynamixel::PacketHandler > packetHandler)
 AbstractTtlDriver::AbstractTtlDriver. More...
 
virtual int checkModelNumber (uint8_t id)=0
 
virtual int getModelNumber (uint8_t id, uint16_t &model_number)
 AbstractTtlDriver::getModelNumber. More...
 
virtual std::string interpretErrorState (uint32_t hw_state) const =0
 
virtual int ping (uint8_t id)
 AbstractTtlDriver::ping. More...
 
virtual int readCustom (uint16_t address, uint8_t data_len, uint8_t id, uint32_t &data)
 AbstractTtlDriver::readCustom. More...
 
virtual int readFirmwareVersion (uint8_t id, std::string &version)=0
 
virtual int readHwErrorStatus (uint8_t id, uint8_t &hardware_error_status)=0
 
virtual int readTemperature (uint8_t id, uint8_t &temperature)=0
 
virtual int readVoltage (uint8_t id, double &voltage)=0
 
virtual int reboot (uint8_t id)
 AbstractTtlDriver::reboot. More...
 
virtual int scan (std::vector< uint8_t > &id_list)
 AbstractTtlDriver::scan. More...
 
virtual std::string str () const
 AbstractTtlDriver::str : build a string describing the object. For debug purpose only. More...
 
virtual int syncReadFirmwareVersion (const std::vector< uint8_t > &id_list, std::vector< std::string > &firmware_version)=0
 
virtual int syncReadHwErrorStatus (const std::vector< uint8_t > &id_list, std::vector< uint8_t > &hw_error_list)=0
 
virtual int syncReadHwStatus (const std::vector< uint8_t > &id_list, std::vector< std::pair< double, uint8_t > > &data_array_list)=0
 
virtual int syncReadRawVoltage (const std::vector< uint8_t > &id_list, std::vector< double > &voltage_list)=0
 
virtual int syncReadTemperature (const std::vector< uint8_t > &id_list, std::vector< uint8_t > &temperature_list)=0
 
virtual int syncReadVoltage (const std::vector< uint8_t > &id_list, std::vector< double > &voltage_list)=0
 
virtual int writeCustom (uint16_t address, uint8_t data_len, uint8_t id, uint32_t data)
 AbstractTtlDriver::writeCustom. More...
 
virtual int writeSingleCmd (const std::unique_ptr< common::model::AbstractTtlSingleMotorCmd > &cmd)=0
 
virtual int writeSyncCmd (int type, const std::vector< uint8_t > &ids, const std::vector< uint32_t > &params)=0
 
virtual ~AbstractTtlDriver ()=default
 

Protected Member Functions

 AbstractTtlDriver (AbstractTtlDriver &&)=default
 
 AbstractTtlDriver (const AbstractTtlDriver &)=default
 
virtual std::string interpretFirmwareVersion (uint32_t fw_version) const =0
 
AbstractTtlDriveroperator= (AbstractTtlDriver &&)=default
 
AbstractTtlDriveroperator= (const AbstractTtlDriver &)=default
 
template<typename T >
int read (uint16_t address, uint8_t id, T &data)
 AbstractTtlDriver::read. More...
 
template<typename T >
int syncRead (uint16_t address, const std::vector< uint8_t > &id_list, std::vector< T > &data_list)
 AbstractTtlDriver::syncRead. More...
 
template<typename T , const size_t N>
int syncReadConsecutiveBytes (uint16_t address, const std::vector< uint8_t > &id_list, std::vector< std::array< T, N > > &data_list)
 AbstractTtlDriver::syncReadConsecutiveBytes. More...
 
template<typename T >
int syncWrite (uint16_t address, const std::vector< uint8_t > &id_list, const std::vector< T > &data_list)
 
template<typename T >
int write (uint16_t address, uint8_t id, T data)
 

Static Protected Attributes

static constexpr int PING_WRONG_MODEL_NUMBER = 30
 

Private Attributes

std::shared_ptr< dynamixel::PacketHandler > _dxlPacketHandler
 
std::shared_ptr< dynamixel::PortHandler > _dxlPortHandler
 

Static Private Attributes

static constexpr uint8_t DXL_LEN_FOUR_BYTES = 4
 
static constexpr uint8_t DXL_LEN_ONE_BYTE = 1
 
static constexpr uint8_t DXL_LEN_TWO_BYTES = 2
 
static constexpr int GROUP_SYNC_READ_RX_FAIL = 11
 
static constexpr int GROUP_SYNC_REDONDANT_ID = 10
 
static constexpr int LEN_ID_DATA_NOT_SAME = 20
 

Detailed Description

The AbstractTtlDriver class.

Definition at line 37 of file abstract_ttl_driver.hpp.

Constructor & Destructor Documentation

◆ AbstractTtlDriver() [1/4]

ttl_driver::AbstractTtlDriver::AbstractTtlDriver ( )
default

◆ AbstractTtlDriver() [2/4]

ttl_driver::AbstractTtlDriver::AbstractTtlDriver ( std::shared_ptr< dynamixel::PortHandler >  portHandler,
std::shared_ptr< dynamixel::PacketHandler >  packetHandler 
)

AbstractTtlDriver::AbstractTtlDriver.

Parameters
portHandler
packetHandler

Definition at line 38 of file abstract_ttl_driver.cpp.

◆ ~AbstractTtlDriver()

virtual ttl_driver::AbstractTtlDriver::~AbstractTtlDriver ( )
virtualdefault

◆ AbstractTtlDriver() [3/4]

ttl_driver::AbstractTtlDriver::AbstractTtlDriver ( const AbstractTtlDriver )
protecteddefault

◆ AbstractTtlDriver() [4/4]

ttl_driver::AbstractTtlDriver::AbstractTtlDriver ( AbstractTtlDriver &&  )
protecteddefault

Member Function Documentation

◆ checkModelNumber()

virtual int ttl_driver::AbstractTtlDriver::checkModelNumber ( uint8_t  id)
pure virtual

◆ getModelNumber()

int ttl_driver::AbstractTtlDriver::getModelNumber ( uint8_t  id,
uint16_t &  model_number 
)
virtual

◆ interpretErrorState()

virtual std::string ttl_driver::AbstractTtlDriver::interpretErrorState ( uint32_t  hw_state) const
pure virtual

◆ interpretFirmwareVersion()

virtual std::string ttl_driver::AbstractTtlDriver::interpretFirmwareVersion ( uint32_t  fw_version) const
protectedpure virtual

◆ operator=() [1/2]

AbstractTtlDriver& ttl_driver::AbstractTtlDriver::operator= ( AbstractTtlDriver &&  )
protecteddefault

◆ operator=() [2/2]

AbstractTtlDriver& ttl_driver::AbstractTtlDriver::operator= ( const AbstractTtlDriver )
protecteddefault

◆ ping()

int ttl_driver::AbstractTtlDriver::ping ( uint8_t  id)
virtual

◆ read()

template<typename T >
int ttl_driver::AbstractTtlDriver::read ( uint16_t  address,
uint8_t  id,
T &  data 
)
protected

AbstractTtlDriver::read.

Parameters
address
id
data
Returns
TODO(CC) : use a better method from dynamixel driver (bulk read ? maybe readRxTx ?)

Definition at line 134 of file abstract_ttl_driver.hpp.

◆ readCustom()

int ttl_driver::AbstractTtlDriver::readCustom ( uint16_t  address,
uint8_t  data_len,
uint8_t  id,
uint32_t &  data 
)
virtual

AbstractTtlDriver::readCustom.

Parameters
address
data_len
id
data
Returns

Reimplemented in ttl_driver::MockDxlDriver.

Definition at line 121 of file abstract_ttl_driver.cpp.

◆ readFirmwareVersion()

virtual int ttl_driver::AbstractTtlDriver::readFirmwareVersion ( uint8_t  id,
std::string &  version 
)
pure virtual

◆ readHwErrorStatus()

virtual int ttl_driver::AbstractTtlDriver::readHwErrorStatus ( uint8_t  id,
uint8_t &  hardware_error_status 
)
pure virtual

◆ readTemperature()

virtual int ttl_driver::AbstractTtlDriver::readTemperature ( uint8_t  id,
uint8_t &  temperature 
)
pure virtual

◆ readVoltage()

virtual int ttl_driver::AbstractTtlDriver::readVoltage ( uint8_t  id,
double &  voltage 
)
pure virtual

◆ reboot()

int ttl_driver::AbstractTtlDriver::reboot ( uint8_t  id)
virtual

◆ scan()

int ttl_driver::AbstractTtlDriver::scan ( std::vector< uint8_t > &  id_list)
virtual

◆ str()

std::string ttl_driver::AbstractTtlDriver::str ( ) const
virtual

◆ syncRead()

template<typename T >
int ttl_driver::AbstractTtlDriver::syncRead ( uint16_t  address,
const std::vector< uint8_t > &  id_list,
std::vector< T > &  data_list 
)
protected

AbstractTtlDriver::syncRead.

Parameters
address
id_list
data_list
Returns

Definition at line 252 of file abstract_ttl_driver.hpp.

◆ syncReadConsecutiveBytes()

template<typename T , const size_t N>
int ttl_driver::AbstractTtlDriver::syncReadConsecutiveBytes ( uint16_t  address,
const std::vector< uint8_t > &  id_list,
std::vector< std::array< T, N > > &  data_list 
)
protected

AbstractTtlDriver::syncReadConsecutiveBytes.

Parameters
address
id_list
data_listReads N consecutive blocks of T bytes simultaneously
Returns

Definition at line 194 of file abstract_ttl_driver.hpp.

◆ syncReadFirmwareVersion()

virtual int ttl_driver::AbstractTtlDriver::syncReadFirmwareVersion ( const std::vector< uint8_t > &  id_list,
std::vector< std::string > &  firmware_version 
)
pure virtual

◆ syncReadHwErrorStatus()

virtual int ttl_driver::AbstractTtlDriver::syncReadHwErrorStatus ( const std::vector< uint8_t > &  id_list,
std::vector< uint8_t > &  hw_error_list 
)
pure virtual

◆ syncReadHwStatus()

virtual int ttl_driver::AbstractTtlDriver::syncReadHwStatus ( const std::vector< uint8_t > &  id_list,
std::vector< std::pair< double, uint8_t > > &  data_array_list 
)
pure virtual

◆ syncReadRawVoltage()

virtual int ttl_driver::AbstractTtlDriver::syncReadRawVoltage ( const std::vector< uint8_t > &  id_list,
std::vector< double > &  voltage_list 
)
pure virtual

◆ syncReadTemperature()

virtual int ttl_driver::AbstractTtlDriver::syncReadTemperature ( const std::vector< uint8_t > &  id_list,
std::vector< uint8_t > &  temperature_list 
)
pure virtual

◆ syncReadVoltage()

virtual int ttl_driver::AbstractTtlDriver::syncReadVoltage ( const std::vector< uint8_t > &  id_list,
std::vector< double > &  voltage_list 
)
pure virtual

◆ syncWrite()

template<typename T >
int ttl_driver::AbstractTtlDriver::syncWrite ( uint16_t  address,
const std::vector< uint8_t > &  id_list,
const std::vector< T > &  data_list 
)
protected

Definition at line 337 of file abstract_ttl_driver.hpp.

◆ write()

template<typename T >
int ttl_driver::AbstractTtlDriver::write ( uint16_t  address,
uint8_t  id,
data 
)
protected

Definition at line 303 of file abstract_ttl_driver.hpp.

◆ writeCustom()

int ttl_driver::AbstractTtlDriver::writeCustom ( uint16_t  address,
uint8_t  data_len,
uint8_t  id,
uint32_t  data 
)
virtual

AbstractTtlDriver::writeCustom.

Parameters
address
data_len
id
data
Returns

Reimplemented in ttl_driver::MockDxlDriver.

Definition at line 166 of file abstract_ttl_driver.cpp.

◆ writeSingleCmd()

virtual int ttl_driver::AbstractTtlDriver::writeSingleCmd ( const std::unique_ptr< common::model::AbstractTtlSingleMotorCmd > &  cmd)
pure virtual

◆ writeSyncCmd()

virtual int ttl_driver::AbstractTtlDriver::writeSyncCmd ( int  type,
const std::vector< uint8_t > &  ids,
const std::vector< uint32_t > &  params 
)
pure virtual

Member Data Documentation

◆ _dxlPacketHandler

std::shared_ptr<dynamixel::PacketHandler> ttl_driver::AbstractTtlDriver::_dxlPacketHandler
private

Definition at line 107 of file abstract_ttl_driver.hpp.

◆ _dxlPortHandler

std::shared_ptr<dynamixel::PortHandler> ttl_driver::AbstractTtlDriver::_dxlPortHandler
private

Definition at line 106 of file abstract_ttl_driver.hpp.

◆ DXL_LEN_FOUR_BYTES

constexpr uint8_t ttl_driver::AbstractTtlDriver::DXL_LEN_FOUR_BYTES = 4
staticconstexprprivate

Definition at line 111 of file abstract_ttl_driver.hpp.

◆ DXL_LEN_ONE_BYTE

constexpr uint8_t ttl_driver::AbstractTtlDriver::DXL_LEN_ONE_BYTE = 1
staticconstexprprivate

Definition at line 109 of file abstract_ttl_driver.hpp.

◆ DXL_LEN_TWO_BYTES

constexpr uint8_t ttl_driver::AbstractTtlDriver::DXL_LEN_TWO_BYTES = 2
staticconstexprprivate

Definition at line 110 of file abstract_ttl_driver.hpp.

◆ GROUP_SYNC_READ_RX_FAIL

constexpr int ttl_driver::AbstractTtlDriver::GROUP_SYNC_READ_RX_FAIL = 11
staticconstexprprivate

Definition at line 114 of file abstract_ttl_driver.hpp.

◆ GROUP_SYNC_REDONDANT_ID

constexpr int ttl_driver::AbstractTtlDriver::GROUP_SYNC_REDONDANT_ID = 10
staticconstexprprivate

Definition at line 113 of file abstract_ttl_driver.hpp.

◆ LEN_ID_DATA_NOT_SAME

constexpr int ttl_driver::AbstractTtlDriver::LEN_ID_DATA_NOT_SAME = 20
staticconstexprprivate

Definition at line 115 of file abstract_ttl_driver.hpp.

◆ PING_WRONG_MODEL_NUMBER

constexpr int ttl_driver::AbstractTtlDriver::PING_WRONG_MODEL_NUMBER = 30
staticconstexprprotected

Definition at line 101 of file abstract_ttl_driver.hpp.


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


ttl_driver
Author(s): Clement Cocquempot
autogenerated on Wed May 21 2025 08:30:15