Merge branch 'dev_robo_240612_6.5.0_tmp' of gitlab.zhidaoauto.com:SCA/L4HA/AndroidApp/MoGoEagleEye into dev_robo_240612_6.5.0_tmp

# 请输入一个提交信息以解释此合并的必要性,尤其是将一个更新后的上游分支
# 合并到主题分支。
#
# 以 '#' 开始的行将被忽略,而空的提交说明将终止提交。
This commit is contained in:
aibingbing
2024-06-14 19:56:52 +08:00
21 changed files with 525 additions and 26 deletions

View File

@@ -74,7 +74,9 @@ import com.zhjt.mogo.adas.data.sweeper.task.status.SweeperTaskStatus
import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop
import com.zhjt.service.chain.ChainLog
import fault_management.FmInfo
import fsm.Fsm2024
import function_state_management.FunctionStates
import localization.LocState
import mogo.telematics.pad.MessagePad
import mogo.telematics.pad.MessagePad.TrackedObject
import mogo.v2x.MogoV2X
@@ -491,6 +493,29 @@ class MoGoAdasListenerImpl : OnAdasListener {
CallerFaultManagementStateListenerManager.invokeFaultManagementState(fmInfo)
}
/**
* FSM状态
* 目前在启动自驾前置条件检测440版本中使用
* @param header 头
* @param fsmState 数据
*/
override fun onFSM2024State(header: MessagePad.Header, fsmState: Fsm2024.FSMStateMsg) {
CallerFsm2024ListenerManager.invokeFSM2024State(fsmState)
}
/**
* 定位状态
* 定位呈现状态透传 用于pad图标显示 1hz 所有车型MAP440开始支持
* 详细解释http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=131757484
*
* @param header 头
* @param locState 数据
*/
override fun onLocalizationState(header: MessagePad.Header?, locState: LocState.loc_state) {
CallerLocalizationStateListenerManager.invokeLocalizationState(locState)
}
/**
* 数据采集配置应答
*/
@@ -984,10 +1009,26 @@ class MoGoAdasListenerImpl : OnAdasListener {
CallerV2nNioEventListenerManager.invokeV2nNioCongestionEvent(congestion)
}
/**
* 域控SSM接口接收超时
* 状态变动时才会回调默认SSM状态正常
*
* @param isTimeout trueSSM接口接收超时 falseSSM接口恢复正常
*/
override fun onSsmReceiveTimeout(isTimeout: Boolean) {
CallerAutoPilotStatusListenerManager.invokeSsmReceiveTimeout(isTimeout)
}
/**
* 域控FSM接口接收超时
* 状态变动时才会回调默认FSM状态正常 前提是存在FSM接口
*
* @param isTimeout trueFSM接口接收超时 falseFSM接口恢复正常
*/
override fun onFsm2024ReceiveTimeout(isTimeout: Boolean) {
CallerAutoPilotStatusListenerManager.invokeFsmReceiveTimeout(isTimeout)
}
/**
* 是否可以启动自动驾驶
* 使用方法查看app_ipc_monitoring/uiMainActivity/onAutopilotAbility

View File

@@ -56,6 +56,14 @@ interface IMoGoAutopilotStatusListener {
*/
fun onSsmReceiveTimeout(isTimeout: Boolean) {}
/**
* 域控FSM接口接收超时
* 状态变动时才会回调默认FSM状态正常 前提是存在FSM接口
*
* @param isTimeout trueFSM接口接收超时 falseFSM接口恢复正常
*/
fun onFsmReceiveTimeout(isTimeout: Boolean) {}
/**
* 工控机主动查询 AdasManager#sendStatusQueryReq(),后会收到如下回调
*/

View File

@@ -0,0 +1,18 @@
package com.mogo.eagle.core.function.api.autopilot
import fsm.Fsm2024
/**
* 新版FSM状态
*/
interface IMoGoFsm2024Listener {
/**
* FSM状态
* 目前在启动自驾前置条件检测440版本中使用
* @param header 头
* @param fsmState 数据
*/
fun onFSM2024State(fsmState: Fsm2024.FSMStateMsg)
}

View File

@@ -0,0 +1,19 @@
package com.mogo.eagle.core.function.api.autopilot
import localization.LocState
/**
*定位状态新接口
* 定位呈现状态透传 用于pad图标显示 1hz 所有车型MAP440开始支持
* 详细解释http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=131757484
*/
interface IMoGoLocalizationStateListener {
/**
* 定位状态
* @param locState 数据
*/
fun onLocalizationState(locState: LocState.loc_state)
}

View File

@@ -236,6 +236,19 @@ object CallerAutoPilotStatusListenerManager : CallerBase<IMoGoAutopilotStatusLis
}
}
/**
* 域控FSM接口接收超时
* 状态变动时才会回调默认FSM状态正常 前提是存在FSM接口
*
* @param isTimeout trueFSM接口接收超时 falseFSM接口恢复正常
*/
fun invokeFsmReceiveTimeout(isTimeout: Boolean) {
M_LISTENERS.forEach {
val listener = it.value
listener.onFsmReceiveTimeout(isTimeout)
}
}
/**
* 主动调查询接口AdasManager#sendStatusQueryReq(), 会收到以下回调
*/

View File

@@ -0,0 +1,25 @@
package com.mogo.eagle.core.function.call.autopilot
import com.mogo.eagle.core.function.api.autopilot.IMoGoFsm2024Listener
import com.mogo.eagle.core.function.api.autopilot.IMoGoV2nNioEventListener
import com.mogo.eagle.core.function.call.base.CallerBase
import fsm.Fsm2024
import mogo.telematics.pad.MessagePad
/**
* 新版FSM状态
*/
object CallerFsm2024ListenerManager : CallerBase<IMoGoFsm2024Listener>() {
/**
* 绿波通行(单路口)事件推送, 透传
*/
fun invokeFSM2024State(fsmState: Fsm2024.FSMStateMsg) {
M_LISTENERS.forEach {
val listener = it.value
listener.onFSM2024State(fsmState)
}
}
}

View File

@@ -0,0 +1,23 @@
package com.mogo.eagle.core.function.call.autopilot
import com.mogo.eagle.core.function.api.autopilot.IMoGoLocalizationStateListener
import com.mogo.eagle.core.function.call.base.CallerBase
import localization.LocState
/**
*定位状态新接口
* 定位呈现状态透传 用于pad图标显示 1hz 所有车型MAP440开始支持
* 详细解释http://wiki.zhidaohulian.com/pages/viewpage.action?pageId=131757484
*/
object CallerLocalizationStateListenerManager : CallerBase<IMoGoLocalizationStateListener>() {
fun invokeLocalizationState(locState: LocState.loc_state) {
M_LISTENERS.forEach {
val listener = it.value
listener.onLocalizationState(locState)
}
}
}