|
|
|
|
@@ -9,6 +9,7 @@ import com.zhidao.adas.client.bean.BaseInfo;
|
|
|
|
|
import com.zhidao.adas.client.bean.BasicInfoReq;
|
|
|
|
|
import com.zhidao.adas.client.bean.CarConfigResp;
|
|
|
|
|
import com.zhidao.adas.client.bean.ChassisStates;
|
|
|
|
|
import com.zhidao.adas.client.bean.DataShow;
|
|
|
|
|
import com.zhidao.adas.client.bean.ErrorData;
|
|
|
|
|
import com.zhidao.adas.client.bean.FSMFunctionStates;
|
|
|
|
|
import com.zhidao.adas.client.bean.GlobalPathResp;
|
|
|
|
|
@@ -102,29 +103,52 @@ public class DataDistribution {
|
|
|
|
|
this.isCutDown = cutDown;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private static final int LIST_SIZE = 50;//默认list最大数据量5个
|
|
|
|
|
public final List<String> listTrajectory = new ArrayList<>();
|
|
|
|
|
public final List<String> listTrackedObjects = new ArrayList<>();
|
|
|
|
|
public final List<String> listGnssInfo = new ArrayList<>();
|
|
|
|
|
public final List<String> listVehicleState = new ArrayList<>();
|
|
|
|
|
public final List<String> listAutopilotState = new ArrayList<>();
|
|
|
|
|
public final List<String> listMogoReportMessage = new ArrayList<>();
|
|
|
|
|
public final List<String> listPerceptionTrafficLight = new ArrayList<>();
|
|
|
|
|
public final List<String> listPredictionObstacleTrajectory = new ArrayList<>();
|
|
|
|
|
public final List<String> listRecordPanel = new ArrayList<>();
|
|
|
|
|
public final List<String> listGlobalPathResp = new ArrayList<>();
|
|
|
|
|
public final List<String> listWarn = new ArrayList<>();
|
|
|
|
|
public final List<String> listArrivalNotification = new ArrayList<>();
|
|
|
|
|
public final List<String> listStatusInfo = new ArrayList<>();
|
|
|
|
|
public final List<String> listRecordDataConfig = new ArrayList<>();
|
|
|
|
|
public final List<String> listErrorData = new ArrayList<>();
|
|
|
|
|
public final List<String> listOriginalPointCloud = new ArrayList<>();
|
|
|
|
|
public final List<String> listPlanningObjects = new ArrayList<>();
|
|
|
|
|
public final List<String> listPlanningDecisionState = new ArrayList<>();
|
|
|
|
|
public final List<String> listChassisStates = new ArrayList<>();
|
|
|
|
|
public final List<String> listFSMFunctionStates = new ArrayList<>();
|
|
|
|
|
public final List<String> listRoboSweeperTaskIndex = new ArrayList<>();
|
|
|
|
|
public final List<String> listBagManagerCmd = new ArrayList<>();
|
|
|
|
|
private static final int LIST_SIZE = 30;//默认list最大数据量
|
|
|
|
|
public final List<DataShow> listTrajectory = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listTrackedObjects = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listGnssInfo = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listVehicleState = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listAutopilotState = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listMogoReportMessage = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listPerceptionTrafficLight = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listPredictionObstacleTrajectory = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listRecordPanel = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listGlobalPathResp = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listWarn = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listArrivalNotification = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listStatusInfo = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listRecordDataConfig = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listErrorData = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listOriginalPointCloud = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listPlanningObjects = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listPlanningDecisionState = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listChassisStates = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listFSMFunctionStates = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listRoboSweeperTaskIndex = new ArrayList<>();
|
|
|
|
|
public final List<DataShow> listBagManagerCmd = new ArrayList<>();
|
|
|
|
|
|
|
|
|
|
private long listTrajectorySize = 0;
|
|
|
|
|
private long listTrackedObjectsSize = 0;
|
|
|
|
|
private long listGnssInfoSize = 0;
|
|
|
|
|
private long listVehicleStateSize = 0;
|
|
|
|
|
private long listAutopilotStateSize = 0;
|
|
|
|
|
private long listMogoReportMessageSize = 0;
|
|
|
|
|
private long listPerceptionTrafficLightSize = 0;
|
|
|
|
|
private long listPredictionObstacleTrajectorySize = 0;
|
|
|
|
|
private long listRecordPanelSize = 0;
|
|
|
|
|
private long listGlobalPathRespSize = 0;
|
|
|
|
|
private long listWarnSize = 0;
|
|
|
|
|
private long listArrivalNotificationSize = 0;
|
|
|
|
|
private long listStatusInfoSize = 0;
|
|
|
|
|
private long listRecordDataConfigSize = 0;
|
|
|
|
|
private long listErrorDataSize = 0;
|
|
|
|
|
private long listOriginalPointCloudSize = 0;
|
|
|
|
|
private long listPlanningObjectsSize = 0;
|
|
|
|
|
private long listPlanningDecisionStateSize = 0;
|
|
|
|
|
private long listChassisStatesSize = 0;
|
|
|
|
|
private long listFSMFunctionStatesSize = 0;
|
|
|
|
|
private long listRoboSweeperTaskIndexSize = 0;
|
|
|
|
|
private long listBagManagerCmdSize = 0;
|
|
|
|
|
|
|
|
|
|
public String cutDown(String str) {
|
|
|
|
|
if (isCutDown && str.length() > 650) {
|
|
|
|
|
@@ -137,7 +161,7 @@ public class DataDistribution {
|
|
|
|
|
String temp = data.toString();
|
|
|
|
|
String str = cutDown(temp);
|
|
|
|
|
if (data instanceof Trajectory) {
|
|
|
|
|
listTrajectory.add(0, time + str);
|
|
|
|
|
listTrajectory.add(0, new DataShow(listTrajectorySize++, time + str));
|
|
|
|
|
if (listTrajectory.size() > LIST_SIZE) {
|
|
|
|
|
listTrajectory.remove(listTrajectory.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -145,7 +169,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof TrackedObjects) {
|
|
|
|
|
listTrackedObjects.add(0, time + str);
|
|
|
|
|
listTrackedObjects.add(0, new DataShow(listTrackedObjectsSize++, time + str));
|
|
|
|
|
if (listTrackedObjects.size() > LIST_SIZE) {
|
|
|
|
|
listTrackedObjects.remove(listTrackedObjects.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -153,7 +177,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof OriginalPointCloudData) {
|
|
|
|
|
listOriginalPointCloud.add(0, time + str);
|
|
|
|
|
listOriginalPointCloud.add(0, new DataShow(listOriginalPointCloudSize++, time + str));
|
|
|
|
|
if (listOriginalPointCloud.size() > LIST_SIZE) {
|
|
|
|
|
listOriginalPointCloud.remove(listOriginalPointCloud.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -161,7 +185,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof PlanningObjects) {
|
|
|
|
|
listPlanningObjects.add(0, time + str);
|
|
|
|
|
listPlanningObjects.add(0, new DataShow(listPlanningObjectsSize++, time + str));
|
|
|
|
|
if (listPlanningObjects.size() > LIST_SIZE) {
|
|
|
|
|
listPlanningObjects.remove(listPlanningObjects.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -169,7 +193,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof PlanningDecisionState) {
|
|
|
|
|
listPlanningDecisionState.add(0, time + str);
|
|
|
|
|
listPlanningDecisionState.add(0, new DataShow(listPlanningDecisionStateSize++, time + str));
|
|
|
|
|
if (listPlanningDecisionState.size() > LIST_SIZE) {
|
|
|
|
|
listPlanningDecisionState.remove(listPlanningDecisionState.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -177,7 +201,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof GnssInfo) {
|
|
|
|
|
listGnssInfo.add(0, time + str);
|
|
|
|
|
listGnssInfo.add(0, new DataShow(listGnssInfoSize++, time + str));
|
|
|
|
|
if (listGnssInfo.size() > LIST_SIZE) {
|
|
|
|
|
listGnssInfo.remove(listGnssInfo.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -185,7 +209,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof VehicleState) {
|
|
|
|
|
listVehicleState.add(0, time + str);
|
|
|
|
|
listVehicleState.add(0, new DataShow(listVehicleStateSize++, time + str));
|
|
|
|
|
if (listVehicleState.size() > LIST_SIZE) {
|
|
|
|
|
listVehicleState.remove(listVehicleState.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -193,7 +217,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof ChassisStates) {
|
|
|
|
|
listChassisStates.add(0, time + str);
|
|
|
|
|
listChassisStates.add(0, new DataShow(listChassisStatesSize++, time + str));
|
|
|
|
|
if (listChassisStates.size() > LIST_SIZE) {
|
|
|
|
|
listChassisStates.remove(listChassisStates.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -201,7 +225,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof AutopilotState) {
|
|
|
|
|
listAutopilotState.add(0, time + str);
|
|
|
|
|
listAutopilotState.add(0, new DataShow(listAutopilotStateSize++, time + str));
|
|
|
|
|
if (listAutopilotState.size() > LIST_SIZE) {
|
|
|
|
|
listAutopilotState.remove(listAutopilotState.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -209,7 +233,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof MogoReportMessage) {
|
|
|
|
|
listMogoReportMessage.add(0, time + str);
|
|
|
|
|
listMogoReportMessage.add(0, new DataShow(listMogoReportMessageSize++, time + str));
|
|
|
|
|
if (listMogoReportMessage.size() > LIST_SIZE) {
|
|
|
|
|
listMogoReportMessage.remove(listMogoReportMessage.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -217,7 +241,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof PerceptionTrafficLight) {
|
|
|
|
|
listPerceptionTrafficLight.add(0, time + str);
|
|
|
|
|
listPerceptionTrafficLight.add(0, new DataShow(listPerceptionTrafficLightSize++, time + str));
|
|
|
|
|
if (listPerceptionTrafficLight.size() > LIST_SIZE) {
|
|
|
|
|
listPerceptionTrafficLight.remove(listPerceptionTrafficLight.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -225,7 +249,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onPerceptionTrafficLight((PerceptionTrafficLight) data);
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof PredictionObstacleTrajectory) {
|
|
|
|
|
listPredictionObstacleTrajectory.add(0, time + str);
|
|
|
|
|
listPredictionObstacleTrajectory.add(0, new DataShow(listPredictionObstacleTrajectorySize++, time + str));
|
|
|
|
|
if (listPredictionObstacleTrajectory.size() > LIST_SIZE) {
|
|
|
|
|
listPredictionObstacleTrajectory.remove(listPredictionObstacleTrajectory.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -239,7 +263,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof RecordPanel) {
|
|
|
|
|
listRecordPanel.add(0, time + str);
|
|
|
|
|
listRecordPanel.add(0, new DataShow(listRecordPanelSize++, time + str));
|
|
|
|
|
if (listRecordPanel.size() > LIST_SIZE) {
|
|
|
|
|
listRecordPanel.remove(listRecordPanel.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -247,7 +271,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof BagManagerCmd) {
|
|
|
|
|
listBagManagerCmd.add(0, time + str);
|
|
|
|
|
listBagManagerCmd.add(0, new DataShow(listBagManagerCmdSize++, time + str));
|
|
|
|
|
if (listBagManagerCmd.size() > LIST_SIZE) {
|
|
|
|
|
listBagManagerCmd.remove(listBagManagerCmd.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -255,7 +279,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof GlobalPathResp) {
|
|
|
|
|
listGlobalPathResp.add(0, time + str);
|
|
|
|
|
listGlobalPathResp.add(0, new DataShow(listGlobalPathRespSize++, time + str));
|
|
|
|
|
if (listGlobalPathResp.size() > LIST_SIZE) {
|
|
|
|
|
listGlobalPathResp.remove(listGlobalPathResp.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -263,7 +287,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof Warn) {
|
|
|
|
|
listWarn.add(0, time + str);
|
|
|
|
|
listWarn.add(0, new DataShow(listWarnSize++, time + str));
|
|
|
|
|
if (listWarn.size() > LIST_SIZE) {
|
|
|
|
|
listWarn.remove(listWarn.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -271,7 +295,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof ArrivalNotification) {
|
|
|
|
|
listArrivalNotification.add(0, time + str);
|
|
|
|
|
listArrivalNotification.add(0, new DataShow(listArrivalNotificationSize++, time + str));
|
|
|
|
|
if (listArrivalNotification.size() > LIST_SIZE) {
|
|
|
|
|
listArrivalNotification.remove(listArrivalNotification.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -279,7 +303,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof StatusInfo) {
|
|
|
|
|
listStatusInfo.add(0, time + str);
|
|
|
|
|
listStatusInfo.add(0, new DataShow(listStatusInfoSize++, time + str));
|
|
|
|
|
if (listStatusInfo.size() > LIST_SIZE) {
|
|
|
|
|
listStatusInfo.remove(listStatusInfo.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -287,7 +311,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof RecordDataConfig) {
|
|
|
|
|
listRecordDataConfig.add(0, time + str);
|
|
|
|
|
listRecordDataConfig.add(0, new DataShow(listRecordDataConfigSize++, time + str));
|
|
|
|
|
if (listRecordDataConfig.size() > LIST_SIZE) {
|
|
|
|
|
listRecordDataConfig.remove(listRecordDataConfig.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -295,7 +319,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof RoboSweeperTaskIndex) {
|
|
|
|
|
listRoboSweeperTaskIndex.add(0, time + str);
|
|
|
|
|
listRoboSweeperTaskIndex.add(0, new DataShow(listRoboSweeperTaskIndexSize++, time + str));
|
|
|
|
|
if (listRoboSweeperTaskIndex.size() > LIST_SIZE) {
|
|
|
|
|
listRoboSweeperTaskIndex.remove(listRoboSweeperTaskIndex.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -303,7 +327,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof FSMFunctionStates) {
|
|
|
|
|
listFSMFunctionStates.add(0, time + str);
|
|
|
|
|
listFSMFunctionStates.add(0, new DataShow(listFSMFunctionStatesSize++, time + str));
|
|
|
|
|
if (listFSMFunctionStates.size() > LIST_SIZE) {
|
|
|
|
|
listFSMFunctionStates.remove(listFSMFunctionStates.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
@@ -311,7 +335,7 @@ public class DataDistribution {
|
|
|
|
|
listener.second.onRefresh();
|
|
|
|
|
}
|
|
|
|
|
} else if (data instanceof ErrorData) {
|
|
|
|
|
listErrorData.add(0, time + str);
|
|
|
|
|
listErrorData.add(0, new DataShow(listErrorDataSize++, time + str));
|
|
|
|
|
if (listErrorData.size() > 100) {
|
|
|
|
|
listErrorData.remove(listErrorData.size() - 1);
|
|
|
|
|
}
|
|
|
|
|
|