39 public yarp::dev::IAxisInfoRaw,
40 public yarp::dev::IControlModeRaw,
41 public yarp::dev::IPWMControlRaw,
48 bool open(yarp::os::Searchable & config)
override;
49 bool close()
override;
53 unsigned int getId()
override;
62#if YARP_VERSION_COMPARE(>=, 4, 0, 0)
63 yarp::dev::ReturnValue getAxes(std::size_t & ax)
override;
64 yarp::dev::ReturnValue getAxisNameRaw(
int j, std::string & name)
override;
65 yarp::dev::ReturnValue getJointTypeRaw(
int j, yarp::dev::JointTypeEnum & type)
override;
67 bool getAxes(
int * ax)
override;
68 bool getAxisNameRaw(
int j, std::string & name)
override;
69 bool getJointTypeRaw(
int j, yarp::dev::JointTypeEnum & type)
override;
74#if YARP_VERSION_COMPARE(>=, 4, 0, 0)
75 yarp::dev::ReturnValue getAvailableControlModesRaw(
int j, std::vector<yarp::dev::SelectableControlModeEnum> & avail)
override;
76 yarp::dev::ReturnValue getControlModeRaw(
int j, yarp::dev::ControlModeEnum & mode)
override;
77 yarp::dev::ReturnValue getControlModesRaw(std::vector<yarp::dev::ControlModeEnum> & modes)
override;
78 yarp::dev::ReturnValue getControlModesRaw(
const std::vector<int> & joints, std::vector<yarp::dev::ControlModeEnum> & modes)
override;
79 yarp::dev::ReturnValue setControlModeRaw(
int j, yarp::dev::SelectableControlModeEnum mode)
override;
80 yarp::dev::ReturnValue setControlModesRaw(
const std::vector<int> & joints,
const std::vector<yarp::dev::SelectableControlModeEnum> & modes)
override;
81 yarp::dev::ReturnValue setControlModesRaw(
const std::vector<yarp::dev::SelectableControlModeEnum> & modes)
override;
83 bool getControlModeRaw(
int j,
int * mode)
override;
84 bool getControlModesRaw(
int * modes)
override;
85 bool getControlModesRaw(
int n_joint,
const int * joints,
int * modes)
override;
86 bool setControlModeRaw(
int j,
int mode)
override;
87 bool setControlModesRaw(
int * modes)
override;
88 bool setControlModesRaw(
int n_joint,
const int * joints,
int * modes)
override;
93#if YARP_VERSION_COMPARE(>=, 4, 0, 0)
94 yarp::dev::ReturnValue getNumberOfMotorsRaw(
int * number)
override;
95 yarp::dev::ReturnValue setRefDutyCycleRaw(
int m,
double ref)
override;
96 yarp::dev::ReturnValue setRefDutyCyclesRaw(
const double * refs)
override;
97 yarp::dev::ReturnValue getRefDutyCycleRaw(
int m,
double * ref)
override;
98 yarp::dev::ReturnValue getRefDutyCyclesRaw(
double * refs)
override;
99 yarp::dev::ReturnValue getDutyCycleRaw(
int m,
double * val)
override;
100 yarp::dev::ReturnValue getDutyCyclesRaw(
double * vals)
override;
102 bool getNumberOfMotorsRaw(
int * number)
override;
103 bool setRefDutyCycleRaw(
int m,
double ref)
override;
104 bool setRefDutyCyclesRaw(
const double * refs)
override;
105 bool getRefDutyCycleRaw(
int m,
double * ref)
override;
106 bool getRefDutyCyclesRaw(
double * refs)
override;
107 bool getDutyCycleRaw(
int m,
double * val)
override;
108 bool getDutyCyclesRaw(
double * vals)
override;
112 static constexpr unsigned int CAN_OP = 0x780;
114 bool send(
unsigned int len,
const std::uint8_t * msgData)
115 {
return sender && sender->
prepareMessage({CAN_OP + m_canId, len, msgData}); }
117 yarp::conf::float32_t refDutyCycles {0};
bool registerSender(roboticslab::ICanSenderDelegate *sender) override
Pass a handle to a CAN sender delegate instance.
Definition ICanBusSharerImpl.cpp:37
bool synchronize(double timestamp) override
Perform synchronized action on CAN master's request.
Definition ICanBusSharerImpl.cpp:45
bool notifyMessage(const roboticslab::can_message &message) override
Notify observers that a new CAN message has arrived.
Definition ICanBusSharerImpl.cpp:30