|
@@ -37,6 +37,7 @@ public class SecondaryClient {
|
|
|
|
|
|
int size = di.readInt(); //4
|
|
|
int pType = di.readByte() & 0xff; //+1=5
|
|
|
+ log.info("ptype: "+pType);
|
|
|
switch (pType) {
|
|
|
case MessageType.ROBOT_MESSAGE:
|
|
|
readRobotMessage(di, size);
|
|
@@ -56,6 +57,25 @@ public class SecondaryClient {
|
|
|
case PackageType.KINEMATICS_INFO:
|
|
|
readKinemsticsInfo(di, size);
|
|
|
break;
|
|
|
+ case PackageType.CONFIGURATION_DATA:
|
|
|
+ readConfigurationData(di, size);
|
|
|
+ break;
|
|
|
+ case PackageType.FORCE_MODE_DATA:
|
|
|
+ readForceModeData(di, size);
|
|
|
+ break;
|
|
|
+ case PackageType.ADDITIONAL_INFO:
|
|
|
+ readAdditionalInfo(di, size);
|
|
|
+ break;
|
|
|
+ case PackageType.NEEDED_FOR_CALIB_DATA:
|
|
|
+ skip(PackageType.NEEDED_FOR_CALIB_DATA,di, size);
|
|
|
+ break;
|
|
|
+ case PackageType.SAFETY_DATA:
|
|
|
+ skip(PackageType.SAFETY_DATA,di, size);
|
|
|
+ break;
|
|
|
+ case PackageType.TOOL_COMM_INFO:
|
|
|
+ readToolCommInfo(di, size);
|
|
|
+ break;
|
|
|
+
|
|
|
|
|
|
default:
|
|
|
log.warn("unknown ptype: "+pType+", size: "+size);
|
|
@@ -64,6 +84,38 @@ public class SecondaryClient {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ private ToolCommInfo readToolCommInfo(DataInputStream di, int size) throws IOException {
|
|
|
+ ToolCommInfo tci=new ToolCommInfo();
|
|
|
+ tci.read(di);
|
|
|
+ return tci;
|
|
|
+ }
|
|
|
+
|
|
|
+ private void skip(int pType, DataInputStream di, int size) throws IOException {
|
|
|
+ log.trace("skip data for package type: "+pType);
|
|
|
+ byte[] data=new byte[size-5];
|
|
|
+ di.readFully(data);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ private AdditionalInfo readAdditionalInfo(DataInputStream di, int size) throws IOException {
|
|
|
+ AdditionalInfo ai=new AdditionalInfo();
|
|
|
+ ai.read(di, size);
|
|
|
+ return ai;
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+ private ForceModeData readForceModeData(DataInputStream di, int size) throws IOException {
|
|
|
+ ForceModeData fmd=new ForceModeData();
|
|
|
+ fmd.read(di, size);
|
|
|
+ return fmd;
|
|
|
+ }
|
|
|
+
|
|
|
+ private ConfigurationData readConfigurationData(DataInputStream di, int size) throws IOException {
|
|
|
+ ConfigurationData cd=new ConfigurationData();
|
|
|
+ cd.read(di, size);
|
|
|
+ return cd;
|
|
|
+ }
|
|
|
+
|
|
|
void readRobotMessage(DataInputStream di, int size) throws IOException {
|
|
|
long ts = di.readLong();
|
|
|
char source = (char) (di.readByte() & 0xFF);
|