17 #ifndef ABSTRACT_MOTOR_DRIVER_HPP
18 #define ABSTRACT_MOTOR_DRIVER_HPP
25 #include "dynamixel_sdk/dynamixel_sdk.h"
26 #include "common/common_defs.hpp"
27 #include "common/model/hardware_type_enum.hpp"
43 std::shared_ptr<dynamixel::PacketHandler> packetHandler);
47 std::string
str()
const override;
53 virtual int changeId(uint8_t
id, uint8_t new_id) = 0;
69 const std::vector<uint8_t> &torque_percentage_list) = 0;
71 const std::vector<uint32_t> &position_list) = 0;
73 const std::vector<uint32_t> &velocity_list) = 0;
79 virtual int readPosition(uint8_t
id, uint32_t &present_position) = 0;
80 virtual int readVelocity(uint8_t
id, uint32_t &present_velocity) = 0;
82 virtual int syncReadPosition(
const std::vector<uint8_t> &id_list, std::vector<uint32_t> &position_list) = 0;
83 virtual int syncReadVelocity(
const std::vector<uint8_t> &id_list, std::vector<uint32_t> &velocity_list) = 0;
85 std::vector<std::array<uint32_t, 2> > &data_array_list) = 0;
90 #endif // ABSTRACT_MOTOR_DRIVER_HPP