[650][adas] 新增FSM2024接口;新增FSM2024超时接口,FSM数据接入新增检测能否启动自驾440兼容版本;
This commit is contained in:
@@ -74,6 +74,7 @@ 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 mogo.telematics.pad.MessagePad
|
||||
import mogo.telematics.pad.MessagePad.TrackedObject
|
||||
@@ -491,6 +492,16 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
CallerFaultManagementStateListenerManager.invokeFaultManagementState(fmInfo)
|
||||
}
|
||||
|
||||
/**
|
||||
* FSM状态
|
||||
* 目前在启动自驾前置条件检测440版本中使用
|
||||
* @param header 头
|
||||
* @param fsmState 数据
|
||||
*/
|
||||
override fun onFSM2024State(header: MessagePad.Header, fsmState: Fsm2024.FSMStateMsg) {
|
||||
CallerFsm2024ListenerManager.invokeFSM2024State(fsmState)
|
||||
}
|
||||
|
||||
/**
|
||||
* 数据采集配置应答
|
||||
*/
|
||||
@@ -938,10 +949,26 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
CallerRoboBusJinlvM1StitchedVideoListenerManager.invokeRoboBusJinlvM1StitchedVideo(data)
|
||||
}
|
||||
|
||||
/**
|
||||
* 域控SSM接口接收超时
|
||||
* 状态变动时才会回调,默认SSM状态正常
|
||||
*
|
||||
* @param isTimeout true:SSM接口接收超时 false:SSM接口恢复正常
|
||||
*/
|
||||
override fun onSsmReceiveTimeout(isTimeout: Boolean) {
|
||||
CallerAutoPilotStatusListenerManager.invokeSsmReceiveTimeout(isTimeout)
|
||||
}
|
||||
|
||||
/**
|
||||
* 域控FSM接口接收超时
|
||||
* 状态变动时才会回调,默认FSM状态正常 前提是存在FSM接口
|
||||
*
|
||||
* @param isTimeout true:FSM接口接收超时 false:FSM接口恢复正常
|
||||
*/
|
||||
override fun onFsm2024ReceiveTimeout(isTimeout: Boolean) {
|
||||
CallerAutoPilotStatusListenerManager.invokeFsmReceiveTimeout(isTimeout)
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否可以启动自动驾驶
|
||||
* 使用方法查看:app_ipc_monitoring/uiMainActivity/onAutopilotAbility
|
||||
|
||||
@@ -56,6 +56,14 @@ interface IMoGoAutopilotStatusListener {
|
||||
*/
|
||||
fun onSsmReceiveTimeout(isTimeout: Boolean) {}
|
||||
|
||||
/**
|
||||
* 域控FSM接口接收超时
|
||||
* 状态变动时才会回调,默认FSM状态正常 前提是存在FSM接口
|
||||
*
|
||||
* @param isTimeout true:FSM接口接收超时 false:FSM接口恢复正常
|
||||
*/
|
||||
fun onFsmReceiveTimeout(isTimeout: Boolean) {}
|
||||
|
||||
/**
|
||||
* 工控机主动查询 AdasManager#sendStatusQueryReq(),后会收到如下回调
|
||||
*/
|
||||
|
||||
@@ -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)
|
||||
|
||||
}
|
||||
@@ -236,6 +236,19 @@ object CallerAutoPilotStatusListenerManager : CallerBase<IMoGoAutopilotStatusLis
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 域控FSM接口接收超时
|
||||
* 状态变动时才会回调,默认FSM状态正常 前提是存在FSM接口
|
||||
*
|
||||
* @param isTimeout true:FSM接口接收超时 false:FSM接口恢复正常
|
||||
*/
|
||||
fun invokeFsmReceiveTimeout(isTimeout: Boolean) {
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onFsmReceiveTimeout(isTimeout)
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 主动调查询接口:AdasManager#sendStatusQueryReq(), 会收到以下回调
|
||||
*/
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.mogo.eagle.core.function.call.autopilot
|
||||
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoFsm2024Listener
|
||||
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)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user