[3.4.0-map-sdk] merge 6.1.0
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
package com.mogo.eagle.core.function.datacenter.autopilot.adapter
|
||||
|
||||
import android.util.Log
|
||||
import bag_manager.BagManagerOuterClass
|
||||
import chassis.ChassisStatesOuterClass
|
||||
import chassis.VehicleStateOuterClass
|
||||
@@ -164,9 +163,6 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
vehicleState: VehicleStateOuterClass.VehicleState?
|
||||
) {
|
||||
if (vehicleState != null) {
|
||||
Log.i(
|
||||
"xfk",
|
||||
"底盘 onVehicleState 刹车=${vehicleState.brake}")
|
||||
//转向灯数据
|
||||
CallerChassisLamplightListenerManager.invokeAutopilotLightSwitchData(vehicleState.light)
|
||||
//刹车灯数据
|
||||
@@ -256,9 +252,6 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
CallerChassisThrottleStateListenerManager.invokeAutopilotThrottle(it.throttleResponsePosition)
|
||||
}
|
||||
chassisStates.brakeSystemStates?.let {
|
||||
Log.i(
|
||||
"xfk",
|
||||
"底盘 onVehicleState 刹车=${it.brakePedalResponsePosition}")
|
||||
//刹车
|
||||
CallerChassisBrakeStateListenerManager.invokeAutopilotBrake(it.brakePedalResponsePosition)
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.mogo.eagle.core.function.datacenter.obu
|
||||
|
||||
import android.content.Context
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.config.HmiBuildConfig
|
||||
import com.mogo.eagle.core.data.enums.CommunicationType
|
||||
import com.mogo.eagle.core.data.enums.DataSourceType
|
||||
@@ -62,25 +63,25 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
|
||||
}
|
||||
|
||||
override fun onMoGoObuRsiWarning(rsiWarningData: ObuScene.RsiWarningData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
onMogoObuDcRsiWarning(rsiWarningData)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onMoGoObuRsmWarning(rsmWarningData: ObuScene.RsmWarningData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
onMogoObuDcRsmWarning(rsmWarningData)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onMoGoObuSpatWarning(spatWarningData: ObuScene.SpatWarningData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
onMogoObuDcSpatWarning(spatWarningData)
|
||||
}
|
||||
}
|
||||
|
||||
override fun onMoGoObuMapMath(mapMatchData: ObuScene.MapMatchData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
onMogoObuMapMath(mapMatchData)
|
||||
}
|
||||
}
|
||||
@@ -561,7 +562,7 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
|
||||
|
||||
}
|
||||
1 -> { //闯红灯 V2I_RLVW_VIOLATION_TYPE_RUNNING_RED_LIGHT 一个红灯周期只显示一次
|
||||
if(HmiBuildConfig.isShowObuV2iView){
|
||||
if(FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView){
|
||||
if (HmiBuildConfig.isShowRunRedLightView) {
|
||||
if (!isShowRunRedLight) {
|
||||
isShowRunRedLight = true
|
||||
@@ -594,7 +595,7 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
|
||||
}
|
||||
|
||||
2 -> { //绿波通行引导 V2I_RLVW_VIOLATION_TYPE_NO_VIOLATION 一个绿灯周期只显示一次
|
||||
if (HmiBuildConfig.isShowGreenWaveView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && FunctionBuildConfig.v2nMainSwitch && HmiBuildConfig.isShowGreenWaveView) {
|
||||
if (!isShowGreenWave) {
|
||||
isShowGreenWave = true
|
||||
CallerLogger.d(
|
||||
@@ -602,14 +603,14 @@ class MogoObuDcCombineManager private constructor() : IMoGoObuWarningRsiListener
|
||||
"MogoObuDcCombineManager 绿波通行引导 --------> speed_min = ${currentLight.suggestMinSpeed} --speed_max = ${currentLight.suggestMaxSpeed}"
|
||||
)
|
||||
var minSpeedTemp = Math.round(currentLight.suggestMinSpeed * 3.6)
|
||||
var maxSpeedTemp = Math.round(currentLight.suggestMaxSpeed * 3.6)
|
||||
val maxSpeedTemp = Math.round(currentLight.suggestMaxSpeed * 3.6)
|
||||
if (minSpeedTemp == maxSpeedTemp) {
|
||||
minSpeedTemp -= 5
|
||||
}
|
||||
|
||||
val maxSpeed = currentLight.suggestMaxSpeed
|
||||
if (maxSpeed > 0) {
|
||||
var currentSpeed =
|
||||
val currentSpeed =
|
||||
CallerChassisLocationGCJ02ListenerManager.getChassisLocationGCJ02().gnssSpeed.toDouble()
|
||||
if (currentSpeed > 0) {
|
||||
ttsContentNew =
|
||||
|
||||
@@ -346,7 +346,7 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
|
||||
* 红绿灯预警信息 CvxIvpThreatIndInfo
|
||||
*/
|
||||
override fun onObuSpatWarning(data: ObuScene.SpatWarningData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
handlerTrafficLight(
|
||||
data.warningType,
|
||||
data.status,
|
||||
@@ -359,7 +359,7 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
|
||||
* RSI预警信息 onMogoObuRsiWarning(交通标志预警(前方限速、前方学校等等),交通事件预警(前方拥堵、前方积水等等))
|
||||
*/
|
||||
override fun onObuRsiWarning(data: ObuScene.RsiWarningData) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
if (data.warningMsgList != null && data.warningMsgList.size > 0) {
|
||||
var alertContent = ""
|
||||
var ttsContent = ""
|
||||
@@ -632,7 +632,7 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
|
||||
"$M_OBU${MogoObuConst.TAG_MOGO_NEW_OBU}",
|
||||
"onMogoObuRsmWarning ------> ${data?.toString()}"
|
||||
)
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
if (HmiBuildConfig.isShowObuWeaknessTrafficView) {
|
||||
// 交通参与者类型 0x0:未知 UNKNOWN | 1机动车 2:非机动车 NON_MOTOR | 3:行人 PEDESTRIAN 4:obu
|
||||
if (data != null && data.participant != null) {
|
||||
@@ -725,7 +725,7 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
|
||||
* 地图匹配 是OBU算法输出地图匹配结果,主车匹配道路哪条路或者哪条车道
|
||||
*/
|
||||
override fun onObuMapMath(data: ObuScene.MapMatchData?) {
|
||||
if (HmiBuildConfig.isShowObuV2iView) {
|
||||
if (FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView) {
|
||||
if (data != null) {
|
||||
CallerLogger.d(
|
||||
"$M_OBU${MogoObuConst.TAG_MOGO_NEW_OBU}",
|
||||
@@ -1042,7 +1042,7 @@ class MogoPrivateObuNewManager private constructor() : OnUpgradeListener {
|
||||
|
||||
}
|
||||
1 -> {//闯红灯 V2I_RLVW_VIOLATION_TYPE_RUNNING_RED_LIGHT 一个红灯周期只显示一次
|
||||
if(HmiBuildConfig.isShowObuV2iView){
|
||||
if(FunctionBuildConfig.v2xMainSwitch && HmiBuildConfig.isShowObuV2iView){
|
||||
if (HmiBuildConfig.isShowRunRedLightView) {
|
||||
if (!isShowRunRedLight) {
|
||||
isShowRunRedLight = true
|
||||
|
||||
@@ -96,10 +96,12 @@ class BagManagerListAdapter: RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
//已上报
|
||||
holder.tvBagReportStatus.text = "已上报"
|
||||
holder.tvBagReportStatus.setBackgroundResource(R.drawable.bag_reported_button_bg)
|
||||
holder.tvBagReportStatus.isClickable = false
|
||||
}else{
|
||||
//未上报
|
||||
holder.tvBagReportStatus.text = "上报"
|
||||
holder.tvBagReportStatus.setBackgroundResource(R.drawable.bag_report_button_bg)
|
||||
holder.tvBagReportStatus.isClickable = true
|
||||
holder.tvBagReportStatus.setOnClickListener {
|
||||
bagClickListener?.uploadBI(bagInfoEntity)
|
||||
}
|
||||
@@ -127,11 +129,15 @@ class BagManagerListAdapter: RecyclerView.Adapter<RecyclerView.ViewHolder>() {
|
||||
holder.tvBagSize.text = "${bagSize}G"
|
||||
|
||||
//时间
|
||||
bagInfoEntity.timestamp?.let { time->
|
||||
val hour = time.substring(8,10)
|
||||
val min = time.substring(10,12)
|
||||
val second = time.substring(12,14)
|
||||
holder.tvBagTime.text = "${hour}:${min}:${second}"
|
||||
bagInfoEntity.timestamp.let { time->
|
||||
try {
|
||||
val hour = time.substring(8,10)
|
||||
val min = time.substring(10,12)
|
||||
val second = time.substring(12,14)
|
||||
holder.tvBagTime.text = "${hour}:${min}:${second}"
|
||||
}catch (e: Exception){
|
||||
e.printStackTrace()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -856,7 +856,22 @@ internal class DebugSettingView @JvmOverloads constructor(
|
||||
|
||||
//TODO
|
||||
tbIsDrawPath.setOnCheckedChangeListener { _, isChecked ->
|
||||
ToastUtils.showShort("功能开发中")
|
||||
}
|
||||
|
||||
if(FunctionBuildConfig.isDrawPointCloudData){
|
||||
//如果点云效果是打开的,则自车光圈也跟随打开
|
||||
tbCarAperture.isChecked = true
|
||||
}else{
|
||||
tbCarAperture.isChecked = FunctionBuildConfig.isDisplayAnimEnable
|
||||
}
|
||||
tbCarAperture.setOnCheckedChangeListener { compoundButton, isChecked ->
|
||||
CallerMapUIServiceManager.getMapUIController()?.setDisplayAnimEnable(isChecked)
|
||||
CallerSopSettingManager.invokeCarApertureListener(isChecked)
|
||||
if(!compoundButton.isPressed){
|
||||
return@setOnCheckedChangeListener
|
||||
}
|
||||
FunctionBuildConfig.isDisplayAnimEnable = isChecked
|
||||
}
|
||||
|
||||
//初始化点云数据渲染情况
|
||||
@@ -866,6 +881,12 @@ internal class DebugSettingView @JvmOverloads constructor(
|
||||
if (!compoundButton.isPressed) {
|
||||
return@setOnCheckedChangeListener
|
||||
}
|
||||
//打开点云效果时,如果自车光圈是关闭状态,则自动打开自车光圈(点云是跟随光圈的 默认没有光圈就不显示点云的)
|
||||
if(isChecked && !FunctionBuildConfig.isDisplayAnimEnable){
|
||||
tbCarAperture.isChecked = true
|
||||
}else{
|
||||
tbCarAperture.isChecked = FunctionBuildConfig.isDisplayAnimEnable
|
||||
}
|
||||
CallerAutoPilotControlManager.setIsDrawPointCloud(isChecked)
|
||||
FunctionBuildConfig.isDrawPointCloudData = isChecked
|
||||
CallerMapUIServiceManager.getMapUIController()?.setIsDrawPointCloud(isChecked)
|
||||
@@ -2240,4 +2261,11 @@ internal class DebugSettingView @JvmOverloads constructor(
|
||||
tbDrawPointCloudData.isChecked = status
|
||||
}
|
||||
|
||||
/**
|
||||
* 自车光圈
|
||||
*/
|
||||
override fun onCarApertureClickEvent(status: Boolean) {
|
||||
tbCarAperture.isChecked = status
|
||||
}
|
||||
|
||||
}
|
||||
@@ -390,6 +390,7 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
}
|
||||
scCarAperture.setOnCheckedChangeListener { compoundButton, isChecked ->
|
||||
CallerMapUIServiceManager.getMapUIController()?.setDisplayAnimEnable(isChecked)
|
||||
CallerSopSettingManager.invokeCarApertureListener(isChecked)
|
||||
hmiAction("SOP 是否展示自车光圈,",isChecked)
|
||||
Log.i(TAG,"SOP 是否展示自车光圈,$isChecked")
|
||||
if(!compoundButton.isPressed){
|
||||
@@ -768,6 +769,10 @@ internal class SOPSettingView @JvmOverloads constructor(
|
||||
scDrawPointCloudData.isChecked = status
|
||||
}
|
||||
|
||||
override fun onCarApertureClickEvent(status: Boolean) {
|
||||
scCarAperture.isChecked = status
|
||||
}
|
||||
|
||||
/**
|
||||
* 工控机配置参数获取
|
||||
*/
|
||||
|
||||
@@ -1775,6 +1775,22 @@
|
||||
app:layout_constraintRight_toRightOf="@id/tbIsDrawAutopilotTrajectoryData"
|
||||
app:layout_constraintTop_toBottomOf="@id/tbIsDrawAutopilotTrajectoryData" />
|
||||
|
||||
<ToggleButton
|
||||
android:id="@+id/tbCarAperture"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="2dp"
|
||||
android:padding="@dimen/dp_20"
|
||||
android:textColor="#000"
|
||||
android:textOff="开启自车光圈"
|
||||
android:textOn="关闭自车光圈"
|
||||
android:textSize="@dimen/dp_24"
|
||||
app:layout_constraintLeft_toRightOf="@id/tbChangeAutoPilotStatus"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tbIsDrawAutopilotTrajectoryData"
|
||||
/>
|
||||
|
||||
|
||||
<ToggleButton
|
||||
android:id="@+id/tbDrawPointCloudData"
|
||||
android:layout_width="0dp"
|
||||
@@ -1785,9 +1801,10 @@
|
||||
android:textOff="开启渲染点云数据"
|
||||
android:textOn="关闭渲染点云数据"
|
||||
android:textSize="@dimen/dp_24"
|
||||
app:layout_constraintLeft_toRightOf="@id/tbChangeAutoPilotStatus"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
app:layout_constraintTop_toBottomOf="@id/tbIsDrawAutopilotTrajectoryData" />
|
||||
app:layout_constraintLeft_toLeftOf="@id/tbChangeAutoPilotStatus"
|
||||
app:layout_constraintRight_toRightOf="@id/tbChangeAutoPilotStatus"
|
||||
app:layout_constraintTop_toBottomOf="@id/tbChangeAutoPilotStatus"
|
||||
/>
|
||||
|
||||
<Button
|
||||
android:id="@+id/btnPointCloudSize"
|
||||
|
||||
@@ -20,4 +20,9 @@ interface ISopSettingListener {
|
||||
*/
|
||||
fun onPointCloudClickEvent(status: Boolean){}
|
||||
|
||||
/**
|
||||
* 自车光圈
|
||||
*/
|
||||
fun onCarApertureClickEvent(status: Boolean){}
|
||||
|
||||
}
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.mogo.eagle.core.function.call.autopilot
|
||||
|
||||
import android.util.Log
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotActionsListener
|
||||
import com.mogo.eagle.core.function.call.base.CallerBase
|
||||
import com.zhjt.mogo.adas.data.bean.UnableLaunchReason
|
||||
@@ -18,7 +17,6 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
|
||||
init {
|
||||
isAutopilotAbility = false
|
||||
unableAutopilotReasons = disconnectedReason()
|
||||
// printLog("初始化")
|
||||
}
|
||||
|
||||
private fun disconnectedReason(): ArrayList<UnableLaunchReason> {
|
||||
@@ -54,7 +52,6 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
|
||||
this.isAutopilotAbility = isConnected
|
||||
unableAutopilotReasons = if (isConnected) null else disconnectedReason()
|
||||
notification()
|
||||
// printLog("更新数据 连接状态变更")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -62,9 +59,6 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
|
||||
fun invokeAutopilotAbility(
|
||||
isAutopilotAbility: Boolean, unableAutopilotReasons: ArrayList<UnableLaunchReason>?
|
||||
) {
|
||||
Log.i(
|
||||
"xfk",
|
||||
"CallerAutopilotActionsListenerManager invokeAutopilotAbility=${CallerAutopilotActionsListenerManager.isAutopilotAbility} ${(if (CallerAutopilotActionsListenerManager.unableAutopilotReasons == null) null else CallerAutopilotActionsListenerManager.unableAutopilotReasons.toString())}")
|
||||
if (isConnected) {
|
||||
var isEquals: Boolean = true
|
||||
if (unableAutopilotReasons != null && this.unableAutopilotReasons != null) {
|
||||
@@ -73,41 +67,22 @@ object CallerAutopilotActionsListenerManager : CallerBase<IMoGoAutopilotActionsL
|
||||
this.unableAutopilotReasons?.let { old ->
|
||||
old.sortWith(compareBy(UnableLaunchReason::hashCode));
|
||||
isEquals = onw.toTypedArray() contentEquals old.toTypedArray()
|
||||
// Log.i(
|
||||
// "ddd",
|
||||
// "都不为null时=${isEquals}=${this.isAutopilotAbility} ${(if (this.unableAutopilotReasons == null) null else this.unableAutopilotReasons.toString())}"
|
||||
// )
|
||||
}
|
||||
}
|
||||
} else isEquals =
|
||||
!(unableAutopilotReasons != null || this.unableAutopilotReasons != null)
|
||||
// Log.i(
|
||||
// "ddd",
|
||||
// " 两个List是否相同=${isEquals} 新是否能启动自驾=${isAutopilotAbility} 老是否能启动自驾=${this.isAutopilotAbility} 新List是否为空=${unableAutopilotReasons == null} 老List是否为空=${this.unableAutopilotReasons == null}"
|
||||
// )
|
||||
if (this.isAutopilotAbility != isAutopilotAbility || !isEquals) {
|
||||
this.isAutopilotAbility = isAutopilotAbility
|
||||
this.unableAutopilotReasons = unableAutopilotReasons
|
||||
notification()
|
||||
// printLog("更新数据")
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun notification() {
|
||||
Log.i(
|
||||
"xfk",
|
||||
"CallerAutopilotActionsListenerManager 通知=${isAutopilotAbility} ${(if (unableAutopilotReasons == null) null else unableAutopilotReasons.toString())}")
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onAutopilotAbility(isAutopilotAbility, unableAutopilotReasons)
|
||||
}
|
||||
}
|
||||
|
||||
// fun printLog(tag: String) {
|
||||
// Log.i(
|
||||
// "xfk",
|
||||
// "${tag}=${isAutopilotAbility} ${(if (unableAutopilotReasons == null) null else unableAutopilotReasons.toString())}"
|
||||
// )
|
||||
// }
|
||||
}
|
||||
@@ -38,4 +38,14 @@ object CallerSopSettingManager: CallerBase<ISopSettingListener>() {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 触发自车光圈事件监听
|
||||
*/
|
||||
fun invokeCarApertureListener(status: Boolean){
|
||||
M_LISTENERS.forEach {
|
||||
val listener = it.value
|
||||
listener.onCarApertureClickEvent(status)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user