From 3610f7878bf6ea11977abf8c1ec450cfef3f1b05 Mon Sep 17 00:00:00 2001 From: xinfengkun Date: Fri, 9 Aug 2024 16:55:52 +0800 Subject: [PATCH] =?UTF-8?q?[660][adas]=E5=BD=93=E8=83=BD=E5=90=A6=E5=90=AF?= =?UTF-8?q?=E5=8A=A8=E8=87=AA=E9=A9=BE=E5=8E=9F=E5=A7=8B=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E7=BC=A9=E5=87=8F=EF=BC=8C=E5=8F=AA=E4=BF=9D=E7=95=99=E6=9C=89?= =?UTF-8?q?=E7=94=A8=E5=AD=97=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../adas/data/bean/LaunchConditionData.java | 65 +++++++++++++++---- 1 file changed, 53 insertions(+), 12 deletions(-) diff --git a/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/LaunchConditionData.java b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/LaunchConditionData.java index 5cb6b0df08..8a435ddcfe 100644 --- a/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/LaunchConditionData.java +++ b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/LaunchConditionData.java @@ -9,6 +9,8 @@ import org.json.JSONArray; import org.json.JSONException; import org.json.JSONObject; +import java.util.List; + import chassis.Chassis; import chassis.ChassisStatesOuterClass; import fsm.Fsm2024; @@ -149,16 +151,16 @@ public class LaunchConditionData { array.put(chassisStatesObject); } if (statusInfo != null) { - arrayPut(array, statusInfo); + arrayPutSSM1(array, statusInfo); } if (ssmInfo != null) { - arrayPut(array, ssmInfo); - } - if (fsmStatusReasonRespond != null) { - arrayPut(array, fsmStatusReasonRespond); + arrayPutSSM2(array, ssmInfo); } +// if (fsmStatusReasonRespond != null) { +// arrayPut(array, fsmStatusReasonRespond); +// } if (fsmState != null) { - arrayPut(array, fsmState); + arrayPutFSM(array, fsmState); } if (array.length() > 0) { jsonObject.put("data", array); @@ -169,14 +171,53 @@ public class LaunchConditionData { return jsonObject.toString(); } - private void arrayPut(JSONArray array, String name, boolean isReady, String reason) throws JSONException { + private void arrayPutSSM1(JSONArray array, SystemStatusInfo.StatusInfo ssmInfo) throws JSONException { JSONObject objectParse = new JSONObject(); - objectParse.put("auto_pilot_ready", isReady); - if (reason != null) { - objectParse.put("auto_pilot_unready_reason", reason); - } + objectParse.put("map_version", ssmInfo.getMapVersion()); + objectParse.put("master_version", ssmInfo.getMasterVersion()); + objectParse.put("auto_pilot_ready", ssmInfo.getAutoPilotReady()); + objectParse.put("auto_pilot_unready_reason", ssmInfo.getAutoPilotUnreadyReason()); JSONObject object = new JSONObject(); - object.put("name", name); + object.put("name", ssmInfo.getClass().getName()); + object.put("parse", objectParse); + array.put(object); + } + + private void arrayPutSSM2(JSONArray array, SsmInfo.SsmStatusInf ssmInfo) throws JSONException { + JSONObject objectParse = new JSONObject(); + objectParse.put("map_version", ssmInfo.getMapVersion()); + objectParse.put("master_version", ssmInfo.getMasterVersion()); + objectParse.put("auto_pilot_ready", ssmInfo.getAutoPilotReady()); + List autoPilotUnreadyList = ssmInfo.getAutoPilotUnreadyListList(); + if (!autoPilotUnreadyList.isEmpty()) { + JSONArray arr = new JSONArray(); + for (SsmInfo.NodeInf inf : autoPilotUnreadyList) { + arr.put(TextFormat.printer().escapingNonAscii(false).printToString(inf)); + } + objectParse.put("auto_pilot_unready_list", arr); + }else { + objectParse.put("auto_pilot_unready_list", "null"); + } + + objectParse.put("auto_pilot_unready_reason", ssmInfo.getAutoPilotUnreadyReason()); + JSONObject object = new JSONObject(); + object.put("name", ssmInfo.getClass().getName()); + object.put("parse", objectParse); + array.put(object); + } + + private void arrayPutFSM(JSONArray array, Fsm2024.FSMStateMsg fsmState) throws JSONException { + JSONObject objectParse = new JSONObject(); + objectParse.put("header", TextFormat.printer().escapingNonAscii(false).printToString(fsmState.getHeader())); + objectParse.put("function_state", fsmState.getFunctionState()); + objectParse.put("fsm_safety_stop_mode", fsmState.getFsmSafetyStopMode()); + objectParse.put("active_mode", fsmState.getActiveMode()); + objectParse.put("pilot_standby_flag", fsmState.getPilotStandbyFlag()); + objectParse.put("pilot_not_standby_reason", fsmState.getPilotNotStandbyReason()); + objectParse.put("fail_to_pilot_session_id", fsmState.getFailToPilotSessionId()); + objectParse.put("abnormal_state_trans_reason", fsmState.getAbnormalStateTransReason()); + JSONObject object = new JSONObject(); + object.put("name", fsmState.getClass().getName()); object.put("parse", objectParse); array.put(object); }