// modified by inamura on 2013-12-30 bool RequestSetAngularVelocityToPartsEvent::set(int packetNum, int seq, char *data, int n) { char *p = data; { char *name = BINARY_GET_STRING_INCR(p); if (name != NULL) { m_data.agentName(name); } BINARY_FREE_STRING(name); } { char *name = BINARY_GET_STRING_INCR(p); if (name != NULL) { m_data.objectName(name); } BINARY_FREE_STRING(name); } double velocity = BINARY_GET_DOUBLE_INCR(p); m_data.angular_velocity(velocity); double max_ = BINARY_GET_DOUBLE_INCR(p); m_data.maxValue(max_); //double xAx = BINARY_GET_DOUBLE_INCR(p); //double yAx = BINARY_GET_DOUBLE_INCR(p); //double zAx = BINARY_GET_DOUBLE_INCR(p); return true; }
bool RecvEntitiesEvent::set(int packetNum, int seq, char *data, int n) { char *p = data; m_time = BINARY_GET_DOUBLE_INCR(p); for (;;) { int head = p - data; int left = n - head; if (left <= 0) { fprintf(stderr, "RecvEntitiesEvent : packet too small left = %d\n", left); return false; } if (CommData::isPacketEnd(p)) { break; } SimObj *obj = new SimObj(); int r = obj->setBinary(p, left); if (r < 0) { return false; } push(obj); p += r; } return true; }
bool ResultGetJointAngleEvent::set(int packetNum, int seq, char *data, int n) { char *p = data; double angle = BINARY_GET_DOUBLE_INCR(p); m_data.angle(angle); return true; }
bool RequestAddJointTorqueEvent::set(int packetNum, int seq, char *data, int n) { char *p = data; { char *name = BINARY_GET_STRING_INCR(p); if (name != NULL) { m_data.agentName(name); } BINARY_FREE_STRING(name); } { char *name = BINARY_GET_STRING_INCR(p); if (name != NULL) { m_data.jointName(name); } BINARY_FREE_STRING(name); } double torque = BINARY_GET_DOUBLE_INCR(p); m_data.torque(torque); return true; }