The AbstractTtlDriver class. More...
#include <abstract_ttl_driver.hpp>
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 > ¶ms)=0 |
virtual | ~AbstractTtlDriver ()=default |
Protected Member Functions | |
AbstractTtlDriver (AbstractTtlDriver &&)=default | |
AbstractTtlDriver (const AbstractTtlDriver &)=default | |
virtual std::string | interpretFirmwareVersion (uint32_t fw_version) const =0 |
AbstractTtlDriver & | operator= (AbstractTtlDriver &&)=default |
AbstractTtlDriver & | operator= (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 |
The AbstractTtlDriver class.
Definition at line 37 of file abstract_ttl_driver.hpp.
|
default |
ttl_driver::AbstractTtlDriver::AbstractTtlDriver | ( | std::shared_ptr< dynamixel::PortHandler > | portHandler, |
std::shared_ptr< dynamixel::PacketHandler > | packetHandler | ||
) |
AbstractTtlDriver::AbstractTtlDriver.
portHandler | |
packetHandler |
Definition at line 38 of file abstract_ttl_driver.cpp.
|
virtualdefault |
|
protecteddefault |
|
protecteddefault |
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
virtual |
AbstractTtlDriver::getModelNumber.
id | |
model_number |
Reimplemented in ttl_driver::MockEndEffectorDriver, ttl_driver::MockDxlDriver, and ttl_driver::MockStepperDriver.
Definition at line 63 of file abstract_ttl_driver.cpp.
|
pure virtual |
Implemented in ttl_driver::AbstractEndEffectorDriver, ttl_driver::MockDxlDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::AbstractStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::DxlDriver< reg_type >, ttl_driver::DxlDriver< reg_type >, ttl_driver::DxlDriver< reg_type >, ttl_driver::DxlDriver< reg_type >, and ttl_driver::DxlDriver< reg_type >.
|
protectedpure virtual |
|
protecteddefault |
|
protecteddefault |
|
virtual |
id |
Reimplemented in ttl_driver::MockEndEffectorDriver, ttl_driver::MockDxlDriver, and ttl_driver::MockStepperDriver.
Definition at line 48 of file abstract_ttl_driver.cpp.
|
protected |
address | |
id | |
data |
Definition at line 134 of file abstract_ttl_driver.hpp.
|
virtual |
AbstractTtlDriver::readCustom.
address | |
data_len | |
id | |
data |
Reimplemented in ttl_driver::MockDxlDriver.
Definition at line 121 of file abstract_ttl_driver.cpp.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::Ned3ProStepperDriver< reg_type >, ttl_driver::StepperDriver< reg_type >, and ttl_driver::MockEndEffectorDriver.
|
virtual |
id |
Reimplemented in ttl_driver::MockEndEffectorDriver, ttl_driver::MockDxlDriver, and ttl_driver::MockStepperDriver.
Definition at line 84 of file abstract_ttl_driver.cpp.
|
virtual |
id_list |
Reimplemented in ttl_driver::MockEndEffectorDriver, ttl_driver::MockDxlDriver, and ttl_driver::MockStepperDriver.
Definition at line 77 of file abstract_ttl_driver.cpp.
|
virtual |
AbstractTtlDriver::str : build a string describing the object. For debug purpose only.
Reimplemented in ttl_driver::AbstractEndEffectorDriver, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::Ned3ProStepperDriver< reg_type >, ttl_driver::AbstractMotorDriver, ttl_driver::StepperDriver< reg_type >, ttl_driver::AbstractStepperDriver, ttl_driver::AbstractDxlDriver, ttl_driver::MockDxlDriver, and ttl_driver::MockStepperDriver.
Definition at line 98 of file abstract_ttl_driver.cpp.
|
protected |
address | |
id_list | |
data_list |
Definition at line 252 of file abstract_ttl_driver.hpp.
|
protected |
AbstractTtlDriver::syncReadConsecutiveBytes.
address | |
id_list | |
data_list | Reads N consecutive blocks of T bytes simultaneously |
Definition at line 194 of file abstract_ttl_driver.hpp.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
pure virtual |
Implemented in ttl_driver::MockDxlDriver, ttl_driver::MockStepperDriver, ttl_driver::DxlDriver< reg_type >, ttl_driver::EndEffectorDriver< reg_type >, ttl_driver::Ned3ProEndEffectorDriver< reg_type >, ttl_driver::MockEndEffectorDriver, ttl_driver::Ned3ProStepperDriver< reg_type >, and ttl_driver::StepperDriver< reg_type >.
|
protected |
Definition at line 337 of file abstract_ttl_driver.hpp.
|
protected |
Definition at line 303 of file abstract_ttl_driver.hpp.
|
virtual |
AbstractTtlDriver::writeCustom.
address | |
data_len | |
id | |
data |
Reimplemented in ttl_driver::MockDxlDriver.
Definition at line 166 of file abstract_ttl_driver.cpp.
|
pure virtual |
|
pure virtual |
|
private |
Definition at line 107 of file abstract_ttl_driver.hpp.
|
private |
Definition at line 106 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 111 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 109 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 110 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 114 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 113 of file abstract_ttl_driver.hpp.
|
staticconstexprprivate |
Definition at line 115 of file abstract_ttl_driver.hpp.
|
staticconstexprprotected |
Definition at line 101 of file abstract_ttl_driver.hpp.