80 if (driver && driver->ienc_ll)
82 driver->ienc_ll->getEncoders(encs);
91 if (driver && driver->ipid_ll)
93 driver->ipid_ll->getPidOutputs(VOCAB_PIDTYPE_POSITION,outs);
102 if (driver && driver->ipid_ll)
104 driver->ipid_ll->getPidErrors(VOCAB_PIDTYPE_POSITION,errs);
113 if (driver && driver->imotenc_ll)
115 driver->imotenc_ll->getMotorEncoders(opts);
122 int j = actions->current_action;
124 Bottle& bot2 = this->port_data_out.prepare();
126 bot2.addInt32(actions->action_vector[j].counter);
127 bot2.addFloat64(actions->action_vector[j].time);
130 double *ll = actions->action_vector[j].q_joints;
132 bot2.addString(
"commands:");
133 for (
int ix=0;ix<size;ix++)
135 bot2.addFloat64(ll[ix]);
137 bot2.addString(
"encoders:");
138 for (
int ix=0;ix<size;ix++)
140 bot2.addFloat64(encs[ix]);
142 bot2.addString(
"outputs:");
143 for (
int ix=0;ix<size;ix++)
145 bot2.addFloat64(outs[ix]);
147 bot2.addString(
"optical:");
148 for (
int ix=0;ix<size;ix++)
150 bot2.addFloat64(opts[ix]);
152 bot2.addString(
"errors:");
153 for (
int ix=0;ix<size;ix++)
155 bot2.addFloat64(errs[ix]);
157 bot2.addString(
"timestamp:");
158 bot2.addFloat64(yarp::os::Time::now());
159 this->port_data_out.write();