[Taxi无人化] fix: V620 选择的演练任务拉取时间间隔 没保存状态问题 ;refactor: 增加演练任务拉取时间间隔 增加变化后日志打印;

This commit is contained in:
aibingbing
2023-11-21 13:59:33 +08:00
parent b9aef4fa96
commit 021402316e
6 changed files with 45 additions and 29 deletions

View File

@@ -490,22 +490,6 @@ internal class SOPSettingView @JvmOverloads constructor(
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
rgPullTime.setOnCheckedChangeListener { _, checkedId ->
when (checkedId) {
R.id.rbFortyFive -> {
CallerUnmannedListenerManager.dispatchPullTime(45)
}
R.id.rbThirty -> {
CallerUnmannedListenerManager.dispatchPullTime(30)
}
R.id.rbFifteen -> {
CallerUnmannedListenerManager.dispatchPullTime(15)
}
R.id.rbFive -> {
CallerUnmannedListenerManager.dispatchPullTime(5)
}
}
}
}
private var overTakeEditText: String = ""
@@ -652,6 +636,28 @@ internal class SOPSettingView @JvmOverloads constructor(
btnSpeedOverTakeSet.visibility = View.GONE
}
val virtualTaskPullTaskInterval = CallerUnmannedListenerManager.getVirtualTaskPullTaskInterval()
rbFive.isChecked = virtualTaskPullTaskInterval == 5
rbFifteen.isChecked = virtualTaskPullTaskInterval == 15
rbThirty.isChecked = virtualTaskPullTaskInterval == 30
rbFortyFive.isChecked = virtualTaskPullTaskInterval == 45
rgPullTime.setOnCheckedChangeListener { _, checkedId ->
when (checkedId) {
R.id.rbFortyFive -> {
CallerUnmannedListenerManager.dispatchVirtualTaskPullTaskInterval(45)
}
R.id.rbThirty -> {
CallerUnmannedListenerManager.dispatchVirtualTaskPullTaskInterval(30)
}
R.id.rbFifteen -> {
CallerUnmannedListenerManager.dispatchVirtualTaskPullTaskInterval(15)
}
R.id.rbFive -> {
CallerUnmannedListenerManager.dispatchVirtualTaskPullTaskInterval(5)
}
}
}
/**
* 魔方sop运营相关配置
*/

View File

@@ -576,7 +576,6 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_margin="10dp"
android:checked="true"
android:text="45s"
android:textSize="32dp" />

View File

@@ -4,5 +4,5 @@ interface IUnmannedListener {
/**
* 单位: 秒(s)
*/
fun onPullTimeUpdate(time: Int)
fun onVirtualTaskPullTaskIntervalUpdate(time: Int)
}

View File

@@ -7,22 +7,22 @@ import com.mogo.eagle.core.function.call.base.CallerBase
/**
* 无人化功能状态监听、回调管理者
*/
object CallerUnmannedListenerManager:CallerBase<IUnmannedListener>() {
object CallerUnmannedListenerManager : CallerBase<IUnmannedListener>() {
private const val TAG = "CallerUnmannedListenerManager"
private var time: Int = 45
private var virtualTaskPullTaskInterval: Int = 45 //单位:秒
override fun doSomeAfterAddListener(tag: String, listener: IUnmannedListener) {
super.doSomeAfterAddListener(tag, listener)
listener.onPullTimeUpdate(time)
listener.onVirtualTaskPullTaskIntervalUpdate(virtualTaskPullTaskInterval)
}
fun dispatchPullTime(time: Int) {
this.time = time
fun dispatchVirtualTaskPullTaskInterval(interval: Int) {
this.virtualTaskPullTaskInterval = interval
M_LISTENERS.forEach {
val listener = it.value
try {
listener.onPullTimeUpdate(time)
listener.onVirtualTaskPullTaskIntervalUpdate(interval)
} catch (e: Exception) {
Log.e(TAG, "转发消息出现异常:${e.message}")
}
@@ -30,9 +30,9 @@ object CallerUnmannedListenerManager:CallerBase<IUnmannedListener>() {
}
/**
* 获取无人化演练拉取的时间间隔(单位ms)
* 获取无人化演练拉取的时间间隔(单位: 秒)
*/
fun getPullTime(): Int {
return time * 1000
fun getVirtualTaskPullTaskInterval(): Int {
return virtualTaskPullTaskInterval
}
}