18 #include "robot_interfaces.h"
21 using namespace yarp::os;
22 using namespace yarp::dev;
24 robot_interfaces::robot_interfaces()
26 for (
int i=0; i<5; i++)
41 robot_interfaces::~robot_interfaces()
43 for (
int i = 0; i < 5; i++)
54 bool robot_interfaces::init(std::string robot)
57 std::string localPort;
58 std::string remotePort;
61 for (
int i=0; i<5; i++)
65 case LEFT_ARM: part =
"left_arm";
break;
66 case RIGHT_ARM: part =
"right_arm";
break;
67 case LEFT_LEG: part =
"left_leg";
break;
68 case RIGHT_LEG: part =
"right_leg";
break;
69 case TORSO: part =
"torso";
break;
72 localPort =
"/demoForceControl/" + part;
73 remotePort =
"/" + robot +
"/" + part;
74 options[i].put(
"robot",robot);
75 options[i].put(
"part",part);
76 options[i].put(
"device",
"remote_controlboard");
77 options[i].put(
"local",localPort);
78 options[i].put(
"remote",remotePort);
80 dd[i] =
new PolyDriver(options[i]);
81 if(!dd[i] || !(dd[i]->isValid()))
83 yError(
"Problems instantiating the device driver %d\n", i);
90 ok = ok & dd[i]->view(ipos[i]);
91 ok = ok & dd[i]->view(itrq[i]);
92 ok = ok & dd[i]->view(iimp[i]);
93 ok = ok & dd[i]->view(icmd[i]);
94 ok = ok & dd[i]->view(ivel[i]);
95 ok = ok & dd[i]->view(ienc[i]);
96 ok = ok & dd[i]->view(ipid[i]);
97 ok = ok & dd[i]->view(iamp[i]);
98 ok = ok & dd[i]->view(iint[i]);