From 21d809df8d79862509a2f1702176bb014a53bea3 Mon Sep 17 00:00:00 2001 From: renwj Date: Mon, 20 Jun 2022 17:35:18 +0800 Subject: [PATCH] =?UTF-8?q?[=E7=8A=B6=E6=80=81=E6=A0=8F][RTK]=E4=BC=98?= =?UTF-8?q?=E5=8C=96RTK=E7=8A=B6=E6=80=81=E8=8E=B7=E5=8F=96=E9=80=BB?= =?UTF-8?q?=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../status/flow/can/CanImpl.kt | 5 ++++- .../status/flow/rtk/RTKImpl.kt | 16 +++++++++++----- .../CallerAutoPilotStatusListenerManager.kt | 10 +++++----- 3 files changed, 20 insertions(+), 11 deletions(-) diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/can/CanImpl.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/can/CanImpl.kt index a9883ddcb3..25788e076c 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/can/CanImpl.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/can/CanImpl.kt @@ -31,7 +31,10 @@ internal class CanImpl(ctx: Context): IFlow(ctx), IMoGoAutopilotVehic timeOutCheck() } - private fun isCanEnabled() = CallerAutoPilotManager.isConnected() && CallerAutoPilotStatusListenerManager.getAutoPilotReportMessageCode() != "EHW_CAN" + private fun isCanEnabled(): Boolean { + val code = CallerAutoPilotStatusListenerManager.getAutoPilotReportMessageCode() + return CallerAutoPilotManager.isConnected() && code != "EHW_CAN" + } override fun onAutopilotBrakeLightData(brakeLight: Boolean) { diff --git a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/rtk/RTKImpl.kt b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/rtk/RTKImpl.kt index 1e99a5fcec..5dde572dbd 100644 --- a/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/rtk/RTKImpl.kt +++ b/core/function-impl/mogo-core-function-devatools/src/main/java/com/zhjt/mogo_core_function_devatools/status/flow/rtk/RTKImpl.kt @@ -24,8 +24,16 @@ internal class RTKImpl(ctx: Context): IFlow(ctx), IMoGoAutopilotCarSt CallerAutoPilotStatusListenerManager.addListener(TAG, this) } - private fun isRTKEnabled() = - CallerAutoPilotManager.isConnected() && (CallerAutoPilotStatusListenerManager.getAutoPilotReportMessageCode() != "EHW_RTK" && CallerAutoPilotStatusListenerManager.getAutoPilotReportMessageCode() != "EHW_GNSS") && CallerAutopilotCarStatusListenerManager.getCurrentGnssInfo() != null + private fun isRTKEnabled(): Boolean { + val code = CallerAutoPilotStatusListenerManager.getAutoPilotReportMessageCode() + val gnssInfo = CallerAutopilotCarStatusListenerManager.getCurrentGnssInfo() + return CallerAutoPilotManager.isConnected() && ( + code != "EHW_RTK" && + code != "EHW_GNSS" && + code != "ESYS_RTK_STATUS_FAULT" && + code != "ELCT_RTK_STATUS_FAULT" && + code != "ELCT_RTK_STATUS_UNKNOWN") && gnssInfo != null + } override fun onAutopilotCarStateData(gnssInfo: GnssInfo?) { send(RTKStatus(isRTKEnabled())) @@ -34,9 +42,7 @@ internal class RTKImpl(ctx: Context): IFlow(ctx), IMoGoAutopilotCarSt override fun onAutopilotIpcConnectStatusChanged(status: Int, reason: String?) { super.onAutopilotIpcConnectStatusChanged(status, reason) - if (!CallerAutoPilotManager.isConnected()) { - send(RTKStatus(false)) - } + send(RTKStatus(isRTKEnabled())) } private fun timeOutCheck() { diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt index 34f7ad0caa..090160f922 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotStatusListenerManager.kt @@ -167,11 +167,11 @@ object CallerAutoPilotStatusListenerManager : CallerBase() { */ @Synchronized fun invokeAutopilotGuardian(guardianInfo: MogoReportMsg.MogoReportMessage?) { -// M_AUTOPILOT_STATUS_LISTENERS.forEach { -// val listener = it.value -// autoPilotMessageCode = guardianInfo?.code ?: "" -// listener.onAutopilotGuardian(guardianInfo) -// } + M_AUTOPILOT_STATUS_LISTENERS.forEach { + val listener = it.value + autoPilotMessageCode = guardianInfo?.code ?: "" + listener.onAutopilotGuardian(guardianInfo) + } } /**