diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt
index e0c8f7057e..1d7e68fde1 100644
--- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt
+++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/v2x/TrafficLightDispatcher.kt
@@ -5,6 +5,7 @@ import android.os.CountDownTimer
import android.os.Handler
import com.mogo.eagle.core.data.biz.trafficlight.*
import com.mogo.eagle.core.data.config.FunctionBuildConfig
+import com.mogo.eagle.core.data.config.HmiBuildConfig
import com.mogo.eagle.core.data.deva.chain.ChainConstant
import com.mogo.eagle.core.data.enums.DataSourceType
import com.mogo.eagle.core.data.enums.TrafficLightEnum
@@ -118,7 +119,16 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
if(!hasAutopilotPerception){
hasAutopilotPerception = true
}
- onTrafficLightPlusSource(light.convert(), 0, DataSourceType.TELEMATIC)
+ if(HmiBuildConfig.isShowCarSourceTrafficLightView){
+ val source = when(trafficLights.source){
+ 1 -> DataSourceType.TELEMATIC_UNION_V2I
+ 2 -> DataSourceType.TELEMATIC_UNION_V2N
+ else -> DataSourceType.TELEMATIC
+ }
+ onTrafficLightPlusSource(light.convert(), light.duration.toInt(), source)
+ }else{
+ onTrafficLightPlusSource(light.convert(), 0, DataSourceType.TELEMATIC)
+ }
}
}
}
@@ -150,6 +160,9 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
*/
override fun onEnterCrossRoad(enter: Boolean) {
CallerLogger.d("${SceneConstant.M_D_C}${TAG}", "onEnterCrossRoad enter = $enter ")
+ if(HmiBuildConfig.isShowCarSourceTrafficLightView){
+ return
+ }
if (!enter) {
Handler().postDelayed({
hasAiLightStatus = false
@@ -177,6 +190,9 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
"${SceneConstant.M_D_C}${TAG}",
"onTrafficRequestError hasObuLightStatus = $hasObuLightStatus ------> "
)
+ if(HmiBuildConfig.isShowCarSourceTrafficLightView){
+ return
+ }
CallerTrafficLightListenerManager.resetTrafficLightStatus(hasAiLightStatus)
hasAiLightStatus = false
// if (!hasObuLightStatus) {
@@ -216,6 +232,9 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
)
private fun hide(msg: String, sourceType: DataSourceType) {
CallerLogger.d("${SceneConstant.M_D_C}${TAG}", "hide() :$msg type :$sourceType")
+ if(filterTelematicUnion(sourceType)){
+ return
+ }
CallerTrafficLightListenerManager.disableTrafficLight()
}
@@ -234,6 +253,9 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
lightSource: DataSourceType
) {
super.onTrafficLightPlusSource(light, remain, lightSource)
+ if(filterTelematicUnion(lightSource)){
+ return
+ }
if (lightSource == DataSourceType.OBU) {
hasObuLightStatus = true
hasAutopilotPerception = false
@@ -313,6 +335,9 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener, IMoGoTrafficLight
}
}
+ private fun filterTelematicUnion(source:DataSourceType):Boolean{
+ return HmiBuildConfig.isShowCarSourceTrafficLightView && source != DataSourceType.TELEMATIC_UNION_V2N && source != DataSourceType.TELEMATIC_UNION_V2I
+ }
fun destroy() {
//取消注册监听AI云.OBU,路侧获取红绿灯状态
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt
index 405afde054..785d0132e3 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/setting/SOPSettingView.kt
@@ -56,6 +56,7 @@ import kotlinx.android.synthetic.main.view_sop_setting.view.rbThirty
import kotlinx.android.synthetic.main.view_sop_setting.view.rgFusionMode
import kotlinx.android.synthetic.main.view_sop_setting.view.rgPullTime
import kotlinx.android.synthetic.main.view_sop_setting.view.scCarAperture
+import kotlinx.android.synthetic.main.view_sop_setting.view.scCarUnionTrafficLight
import kotlinx.android.synthetic.main.view_sop_setting.view.scDemoMode
import kotlinx.android.synthetic.main.view_sop_setting.view.scDrawPointCloudData
import kotlinx.android.synthetic.main.view_sop_setting.view.scFaultSlowDown
@@ -673,6 +674,13 @@ internal class SOPSettingView @JvmOverloads constructor(
}
}
+ //红绿灯车端来源标识开关
+ scCarUnionTrafficLight.isChecked = HmiBuildConfig.isShowCarSourceTrafficLightView
+ scCarUnionTrafficLight.setOnCheckedChangeListener { _, isChecked ->
+ hmiAction("SOP 红绿灯车端来源标识开关, ", isChecked)
+ HmiBuildConfig.isShowCarSourceTrafficLightView = isChecked
+ }
+
//限速标识
scSpeedLimit.isChecked = HmiBuildConfig.isShowLimitingVelocityView
scSpeedLimit.setOnCheckedChangeListener { _, isChecked ->
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt
index 8c229f8890..0380069b63 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt
+++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/SingleTrafficLightView.kt
@@ -312,6 +312,12 @@ class SingleTrafficLightView @JvmOverloads constructor(
DataSourceType.TELEMATIC -> {
mLightSourceTV!!.text = context.getString(R.string.light_source_perception)
}
+ DataSourceType.TELEMATIC_UNION_V2I -> {
+ mLightSourceTV!!.text = context.getString(R.string.light_source_perception_v2i)
+ }
+ DataSourceType.TELEMATIC_UNION_V2N -> {
+ mLightSourceTV!!.text = context.getString(R.string.light_source_perception_v2n)
+ }
DataSourceType.OBU -> {
mLightSourceTV!!.text = context.getString(R.string.light_source_obu)
}
diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml
index 90cecd13cb..527b115698 100644
--- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml
+++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/view_sop_setting.xml
@@ -693,6 +693,20 @@
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
app:layout_constraintTop_toBottomOf="@id/tvOtherTitle" />
+
+
+
+
+ app:layout_constraintTop_toBottomOf="@id/scCarUnionTrafficLight" />
@@ -735,9 +749,9 @@
android:id="@+id/scSweeperModeSwitch"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
- app:layout_constraintLeft_toRightOf="@id/otherGuideLine"
- app:layout_constraintRight_toRightOf="parent"
- app:layout_constraintTop_toBottomOf="@id/scNew360LookAround"
+ app:layout_constraintRight_toRightOf="@id/otherGuideLine"
+ app:layout_constraintLeft_toLeftOf="parent"
+ app:layout_constraintTop_toBottomOf="@id/scIPCReport"
android:text="清扫云控业务"
android:scaleY="1.2"
android:scaleX="1.2"
@@ -755,7 +769,7 @@
android:text="自主算路验证模式"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="@id/otherGuideLine"
- app:layout_constraintTop_toBottomOf="@id/scNew360LookAround" />
+ app:layout_constraintTop_toBottomOf="@id/scSweeperModeSwitch" />
云端下发
自车感知
+ 融合V2I
+ 融合V2N
\u2000OBU\u2000
远程代驾
请求中...
diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt
index c6cf55dac2..2979cfd2c3 100644
--- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt
+++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/config/HmiBuildConfig.kt
@@ -21,6 +21,12 @@ object HmiBuildConfig {
@JvmField
var isShowTrafficLightView = false
+ /**
+ * 是否显示 车端融合红绿等
+ */
+ @JvmField
+ var isShowCarSourceTrafficLightView = false
+
/**
* 是否展示 sn绑定的弹框
*/
diff --git a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/DataSourceType.kt b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/DataSourceType.kt
index fbff75f3d3..47debb8413 100644
--- a/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/DataSourceType.kt
+++ b/core/mogo-core-data/src/main/java/com/mogo/eagle/core/data/enums/DataSourceType.kt
@@ -7,6 +7,8 @@ enum class DataSourceType(name: String) {
OBU("OBU"),
MAP("HDMAP"),
TELEMATIC("TELEMATIC"),
+ TELEMATIC_UNION_V2N("TELEMATIC_UNION_V2N"),
+ TELEMATIC_UNION_V2I("TELEMATIC_UNION_V2I"),
AICLOUD("AI云"),
SUMMARY("汇总"),// V2X事件汇总
WORKORDER("工单建议");
diff --git a/gradle.properties b/gradle.properties
index ed16a7246b..1e62c463f5 100644
--- a/gradle.properties
+++ b/gradle.properties
@@ -90,8 +90,8 @@ WEBSOCKET_VERSION=1.1.7
applicationId=com.mogo.launcer
applicationName=IntelligentPilot
# RoboBus司机端:2.5.1;RoboTaxi司机端:2.5.1;RoboTaxi乘客端:1.0.0
-versionCode=6002004
-versionName=6.2.4
+versionCode=6002011
+versionName=6.2.11
################# 新架构模块Maven版本管理 #################
MOGO_CORE_FUNCTION_HMI_VERSION=0.0.58.10