From 8a87127bdf3282b7a4e00f9cfbbb6f41ade592a6 Mon Sep 17 00:00:00 2001 From: xuxinchao <13522809046@163.com> Date: Thu, 23 Jun 2022 16:07:40 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BA=A2=E7=BB=BF=E7=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 红绿灯Bus司机端增加信号来源显示 --- .../ui/BusPassengerTrafficLightView.java | 5 +- .../mogo/och/bus/ui/BusTrafficLightView.java | 5 +- .../ui/TaxiPassengerTrafficLightView.java | 5 +- .../och/taxi/ui/TaxiTrafficLightView.java | 5 +- .../V2XTrafficLightBroadcastReceiver.kt | 2 +- .../core/function/hmi/ui/MoGoHmiFragment.kt | 7 +- .../hmi/ui/widget/SingleTrafficLightView.kt | 79 +++++++++++++++---- .../hmi/ui/widget/TrafficLightView.kt | 3 +- .../res/layout/hmi_view_traffic_light.xml | 36 ++++++++- .../res/values-xhdpi-2560x1440/dimens.xml | 6 +- .../src/main/res/values/dimens.xml | 6 +- .../obu/mogo/MogoPrivateObuManager.kt | 8 +- .../trafficlight/TrafficLightHMIManager.kt | 8 +- .../core/TrafficLightDispatcher.kt | 6 +- .../api/hmi/view/IViewTrafficLight.kt | 3 +- .../api/hmi/warning/IMoGoWaringProvider.kt | 3 +- .../function/call/hmi/CallerHmiManager.kt | 5 +- 17 files changed, 143 insertions(+), 49 deletions(-) diff --git a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java index 4c75d3d6b3..e021a8675b 100644 --- a/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java +++ b/OCH/mogo-och-bus-passenger/src/main/java/com/mogo/och/bus/passenger/ui/BusPassengerTrafficLightView.java @@ -49,10 +49,11 @@ public class BusPassengerTrafficLightView extends IViewTrafficLight { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ @Override - public void showWarningTrafficLight(int checkLightId) { - super.showWarningTrafficLight(checkLightId); + public void showWarningTrafficLight(int checkLightId,int lightSource) { + super.showWarningTrafficLight(checkLightId,lightSource); mCurrentLightId = checkLightId; updateTrafficLightIcon(checkLightId); } diff --git a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusTrafficLightView.java b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusTrafficLightView.java index c8cee1dff0..4b25021821 100644 --- a/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusTrafficLightView.java +++ b/OCH/mogo-och-bus/src/main/java/com/mogo/och/bus/ui/BusTrafficLightView.java @@ -46,10 +46,11 @@ public class BusTrafficLightView extends IViewTrafficLight { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ @Override - public void showWarningTrafficLight(int checkLightId) { - super.showWarningTrafficLight(checkLightId); + public void showWarningTrafficLight(int checkLightId,int lightSource) { + super.showWarningTrafficLight(checkLightId,lightSource); mCurrentLightId = checkLightId; updateTrafficLightIcon(checkLightId); } diff --git a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerTrafficLightView.java b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerTrafficLightView.java index fb66ed8c3e..b963ae8829 100644 --- a/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerTrafficLightView.java +++ b/OCH/mogo-och-taxi-passenger/src/main/java/com/mogo/och/taxi/passenger/ui/TaxiPassengerTrafficLightView.java @@ -49,10 +49,11 @@ public class TaxiPassengerTrafficLightView extends IViewTrafficLight { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ @Override - public void showWarningTrafficLight(int checkLightId) { - super.showWarningTrafficLight(checkLightId); + public void showWarningTrafficLight(int checkLightId,int lightSource) { + super.showWarningTrafficLight(checkLightId,lightSource); mCurrentLightId = checkLightId; updateTrafficLightIcon(checkLightId); } diff --git a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiTrafficLightView.java b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiTrafficLightView.java index cc5b0a3ffb..41db23e822 100644 --- a/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiTrafficLightView.java +++ b/OCH/mogo-och-taxi/src/main/java/com/mogo/och/taxi/ui/TaxiTrafficLightView.java @@ -46,10 +46,11 @@ public class TaxiTrafficLightView extends IViewTrafficLight { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ @Override - public void showWarningTrafficLight(int checkLightId) { - super.showWarningTrafficLight(checkLightId); + public void showWarningTrafficLight(int checkLightId,int lightSource) { + super.showWarningTrafficLight(checkLightId,lightSource); mCurrentLightId = checkLightId; updateTrafficLightIcon(checkLightId); } diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XTrafficLightBroadcastReceiver.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XTrafficLightBroadcastReceiver.kt index 52ee8a21df..b6599e45b2 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XTrafficLightBroadcastReceiver.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/receiver/V2XTrafficLightBroadcastReceiver.kt @@ -57,7 +57,7 @@ class V2XTrafficLightBroadcastReceiver : BroadcastReceiver() { * @param trafficLightCountDown 对应交通灯倒计时,如果倒计时为0,则disable */ private fun dispatchShowWaring(trafficLightCheckType: Int, trafficLightCountDown: Int) { - CallerHmiManager.showWarningTrafficLight(trafficLightCheckType) + CallerHmiManager.showWarningTrafficLight(trafficLightCheckType,1) when(trafficLightCheckType){ 1 -> CallerHmiManager.changeCountdownRed(trafficLightCountDown) 2 -> CallerHmiManager.changeCountdownYellow(trafficLightCountDown) diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt index 2eb1df4849..0c6d2a09b0 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/MoGoHmiFragment.kt @@ -78,7 +78,7 @@ import kotlin.collections.ArrayList * 预警图层 */ @Route(path = MoGoFragmentPaths.PATH_FRAGMENT_HMI) -class MoGoHmiFragment : MvpFragment(), + class MoGoHmiFragment : MvpFragment(), IMoGoWaringProvider, IMoGoHmiViewProxy, MoGoHmiContract.View, @@ -618,9 +618,10 @@ class MoGoHmiFragment : MvpFragment(), * 展示红绿灯预警 * * @param checkLightId 0-都是默认不亮起,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - override fun showWarningTrafficLight(checkLightId: Int) { - mViewTrafficLight?.showWarningTrafficLight(checkLightId) + override fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) { + mViewTrafficLight?.showWarningTrafficLight(checkLightId,lightSource) } override fun isWarningTrafficLightShow(): Boolean { 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 399a8a98ea..b856ecf35e 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 @@ -5,9 +5,11 @@ import android.util.AttributeSet import android.view.LayoutInflater import android.view.View import android.widget.ImageView -import androidx.core.view.marginLeft +import android.widget.TextView +import com.mogo.eagle.core.data.config.FunctionBuildConfig import com.mogo.eagle.core.function.api.hmi.view.IViewTrafficLight import com.mogo.eagle.core.function.hmi.R +import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils import com.mogo.eagle.core.utilcode.util.UiThreadHandler /** @@ -21,6 +23,8 @@ class SingleTrafficLightView @JvmOverloads constructor( private var mLightIconIV: ImageView? = null private var mLightIconBG: ImageView? = null private var mLightTimeTV: GradientTextView? = null + private var mLightSourceTV: TextView? = null + private var mLightSourceDivider: View? = null private var mCurrentLightId = 0 init { @@ -32,17 +36,20 @@ class SingleTrafficLightView @JvmOverloads constructor( mLightIconIV = findViewById(R.id.hmi_traffic_light_iv) mLightIconBG = findViewById(R.id.hmi_traffic_light_bg) mLightTimeTV = findViewById(R.id.hmi_traffic_light_time_tv) + mLightSourceTV = findViewById(R.id.hmi_traffic_light_source) + mLightSourceDivider = findViewById(R.id.hmi_traffic_light_divider) } /** * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - override fun showWarningTrafficLight(checkLightId: Int) { - super.showWarningTrafficLight(checkLightId) + override fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) { + super.showWarningTrafficLight(checkLightId,lightSource) mCurrentLightId = checkLightId - updateTrafficLightIcon(checkLightId) + updateTrafficLightIcon(checkLightId,lightSource) } /** @@ -59,11 +66,26 @@ class SingleTrafficLightView @JvmOverloads constructor( override fun disableCountdown() { super.disableCountdown() UiThreadHandler.post { - val lp = this.layoutParams as MarginLayoutParams - lp.width = context.resources.getDimension(R.dimen.hmi_traffic_light_icon_size).toInt() - this.layoutParams = lp - mLightTimeTV!!.visibility = GONE - mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.dp_124).toInt() + // 小巴车的司机端需要展示红绿灯信号来源 + if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode) + && AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)){ + val lp = this.layoutParams as MarginLayoutParams + lp.width = context.resources.getDimension(R.dimen.dp_325).toInt() + this.layoutParams = lp + mLightSourceTV!!.visibility = VISIBLE + mLightSourceDivider!!.visibility = VISIBLE + mLightTimeTV!!.visibility = GONE + mLightSourceTV!!.setPadding(0,0,75,0) + mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.dp_310).toInt() + }else{ + val lp = this.layoutParams as MarginLayoutParams + lp.width = context.resources.getDimension(R.dimen.hmi_traffic_light_icon_size).toInt() + this.layoutParams = lp + mLightTimeTV!!.visibility = GONE + mLightSourceDivider!!.visibility = View.GONE + mLightSourceTV!!.visibility = View.GONE + mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.dp_124).toInt() + } } } @@ -149,8 +171,9 @@ class SingleTrafficLightView @JvmOverloads constructor( * 更新红绿灯icon * * @param lightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - private fun updateTrafficLightIcon(lightId: Int) { + private fun updateTrafficLightIcon(lightId: Int,lightSource: Int) { UiThreadHandler.post { when (lightId) { 1 -> { @@ -167,15 +190,41 @@ class SingleTrafficLightView @JvmOverloads constructor( } else -> this@SingleTrafficLightView.visibility = GONE } + when(lightSource){ + 1 -> { + mLightSourceTV!!.text = "云端下发" + } + 2 -> { + mLightSourceTV!!.text = "自车感知" + } + else -> { + mLightSourceTV!!.visibility = GONE + } + } } } private fun resetView(){ - val lp = this.layoutParams as MarginLayoutParams - lp.width = context.resources.getDimension(R.dimen.hmi_traffic_light_layout_width).toInt() - this.layoutParams = lp - mLightTimeTV!!.visibility = View.VISIBLE - mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.hmi_traffic_light_bg_width).toInt() + // 小巴车的司机端需要展示红绿灯信号来源 + if(AppIdentityModeUtils.isDriver(FunctionBuildConfig.appIdentityMode) + && AppIdentityModeUtils.isBus(FunctionBuildConfig.appIdentityMode)){ + val lp = this.layoutParams as MarginLayoutParams + lp.width = context.resources.getDimension(R.dimen.hmi_traffic_light_bus_layout_width).toInt() + this.layoutParams = lp + mLightTimeTV!!.visibility = View.VISIBLE + mLightSourceDivider!!.visibility = View.VISIBLE + mLightSourceTV!!.visibility = View.VISIBLE + mLightSourceTV!!.setPadding(0,0,0,0) + mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.hmi_traffic_light_bus_bg_width).toInt() + }else{ + val lp = this.layoutParams as MarginLayoutParams + lp.width = context.resources.getDimension(R.dimen.hmi_traffic_light_layout_width).toInt() + this.layoutParams = lp + mLightTimeTV!!.visibility = View.VISIBLE + mLightSourceDivider!!.visibility = View.GONE + mLightSourceTV!!.visibility = View.GONE + mLightIconBG!!.layoutParams.width = context.resources.getDimension(R.dimen.hmi_traffic_light_bg_width).toInt() + } } } \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/TrafficLightView.kt b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/TrafficLightView.kt index 2c0c4d797a..c8406f16bd 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/TrafficLightView.kt +++ b/core/function-impl/mogo-core-function-hmi/src/main/java/com/mogo/eagle/core/function/hmi/ui/widget/TrafficLightView.kt @@ -30,8 +30,9 @@ class TrafficLightView @JvmOverloads constructor( * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - override fun showWarningTrafficLight(checkLightId: Int) { + override fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) { UiThreadHandler.post { visibility = View.VISIBLE when (checkLightId) { diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/hmi_view_traffic_light.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/hmi_view_traffic_light.xml index de6e81a0df..611771006c 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/layout/hmi_view_traffic_light.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/layout/hmi_view_traffic_light.xml @@ -1,19 +1,21 @@ + app:layout_constraintTop_toTopOf="parent" + /> + + + android:layout_marginEnd="@dimen/dp_30" + /> + + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values-xhdpi-2560x1440/dimens.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values-xhdpi-2560x1440/dimens.xml index 6aed16e240..f41ddbbc1e 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values-xhdpi-2560x1440/dimens.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values-xhdpi-2560x1440/dimens.xml @@ -39,15 +39,19 @@ 1066px 225px + 400px 154px 60px 40px 28px 210px + 385px 120px 15px 17px 154px - 130px + 71px 60px + 32px + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml b/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml index 00e9e6bef4..cdcf2f99ff 100644 --- a/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml +++ b/core/function-impl/mogo-core-function-hmi/src/main/res/values/dimens.xml @@ -45,15 +45,19 @@ 120px 225px + 400px 154px 60px 40px 28px 210px + 385px 120px 15px 17px 154px - 130px + 71px 60px + 32px + \ No newline at end of file diff --git a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt index eb73dc2276..4261480252 100644 --- a/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt +++ b/core/function-impl/mogo-core-function-obu-mogo/src/main/java/com/mogo/eagle/core/function/obu/mogo/MogoPrivateObuManager.kt @@ -664,7 +664,7 @@ class MogoPrivateObuManager private constructor() { when (currentLight.phase) { // 灯光不可用 0x0 -> { - CallerHmiManager.showWarningTrafficLight(0) + CallerHmiManager.showWarningTrafficLight(0,2) } // 红灯 0x1 -> { @@ -673,7 +673,7 @@ class MogoPrivateObuManager private constructor() { isRedLight = true } isGreenLight = false - CallerHmiManager.showWarningTrafficLight(1) + CallerHmiManager.showWarningTrafficLight(1,2) val red = currentLight.count_down.toInt() CallerHmiManager.changeCountdownRed(red) @@ -688,7 +688,7 @@ class MogoPrivateObuManager private constructor() { isGreenLight = true } isRedLight = false - CallerHmiManager.showWarningTrafficLight(3) + CallerHmiManager.showWarningTrafficLight(3,2) val green = currentLight.count_down.toInt() CallerHmiManager.changeCountdownGreen(green) //防止数据出现问题的容错 @@ -733,7 +733,7 @@ class MogoPrivateObuManager private constructor() { // 黄灯 0x3 -> { CallerHmiManager.disableWarningV2X(appId.toString()) - CallerHmiManager.showWarningTrafficLight(2) + CallerHmiManager.showWarningTrafficLight(2,2) val yellow = currentLight.count_down.toInt() CallerHmiManager.changeCountdownYellow(yellow) CallerHmiManager.changeCountdownGreen(0) diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/TrafficLightHMIManager.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/TrafficLightHMIManager.kt index 66ce2bb505..247cea2317 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/TrafficLightHMIManager.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/TrafficLightHMIManager.kt @@ -24,7 +24,7 @@ class TrafficLightHMIManager { currentTrafficLight?.let { if (!initView) { initView = true - CallerHmiManager.showWarningTrafficLight(0) + CallerHmiManager.showWarningTrafficLight(0,1) } callerHMIToChangeLight(it) } @@ -38,19 +38,19 @@ class TrafficLightHMIManager { } when { trafficLightStatus.isGreen() || trafficLightStatus.isFlashGreen() -> { - CallerHmiManager.showWarningTrafficLight(3) + CallerHmiManager.showWarningTrafficLight(3,1) CallerHmiManager.changeCountdownGreen(remain) // CallerHmiManager.changeCountdownRed(-1) // CallerHmiManager.changeCountdownYellow(-1) } trafficLightStatus.isYellow() -> { - CallerHmiManager.showWarningTrafficLight(2) + CallerHmiManager.showWarningTrafficLight(2,1) CallerHmiManager.changeCountdownYellow(remain) // CallerHmiManager.changeCountdownGreen(-1) // CallerHmiManager.changeCountdownRed(-1) } trafficLightStatus.isRed() -> { - CallerHmiManager.showWarningTrafficLight(1) + CallerHmiManager.showWarningTrafficLight(1,1) CallerHmiManager.changeCountdownRed(remain) // CallerHmiManager.changeCountdownGreen(-1) // CallerHmiManager.changeCountdownYellow(-1) diff --git a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/core/TrafficLightDispatcher.kt b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/core/TrafficLightDispatcher.kt index c9ae0ed908..49e2be29a1 100644 --- a/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/core/TrafficLightDispatcher.kt +++ b/core/function-impl/mogo-core-function-v2x/src/main/java/com/mogo/eagle/core/function/v2x/trafficlight/core/TrafficLightDispatcher.kt @@ -67,17 +67,17 @@ class TrafficLightDispatcher : IMoGoAutopilotIdentifyListener , IMoGoTrafficLigh when (light.state) { TrafficLightOuterClass.LightState.STATE_RED -> { //红灯 - CallerHmiManager.showWarningTrafficLight(1) + CallerHmiManager.showWarningTrafficLight(1,2) CallerHmiManager.changeCountdownGreen(0) } TrafficLightOuterClass.LightState.STATE_YELLOW -> { //黄灯 - CallerHmiManager.showWarningTrafficLight(2) + CallerHmiManager.showWarningTrafficLight(2,2) CallerHmiManager.changeCountdownGreen(0) } TrafficLightOuterClass.LightState.STATE_GREEN -> { //绿灯 - CallerHmiManager.showWarningTrafficLight(3) + CallerHmiManager.showWarningTrafficLight(3,2) CallerHmiManager.changeCountdownGreen(0) } else -> {} diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/view/IViewTrafficLight.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/view/IViewTrafficLight.kt index 3c38f4a32f..42bebf7c4c 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/view/IViewTrafficLight.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/view/IViewTrafficLight.kt @@ -14,8 +14,9 @@ abstract class IViewTrafficLight(context: Context?, attrs: AttributeSet?, defSty * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - open fun showWarningTrafficLight(checkLightId: Int) {} + open fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) {} /** * 关闭红绿灯预警展示,并重制灯态 diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt index 84495fb04b..5488945771 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/hmi/warning/IMoGoWaringProvider.kt @@ -86,8 +86,9 @@ interface IMoGoWaringProvider : IMoGoHmiViewProxy { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - fun showWarningTrafficLight(checkLightId: Int) + fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) /** * 红绿灯是否展示 diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt index 294d7cee0a..5335ce979e 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/hmi/CallerHmiManager.kt @@ -114,9 +114,10 @@ object CallerHmiManager : CallerBase() { * 展示红绿灯预警 * * @param checkLightId 0-都是默认,1-红,2-黄,3-绿 + * @param lightSource 1:云端下发;2:自车感知 */ - fun showWarningTrafficLight(checkLightId: Int) { - waringProviderApi?.showWarningTrafficLight(checkLightId) + fun showWarningTrafficLight(checkLightId: Int,lightSource: Int) { + waringProviderApi?.showWarningTrafficLight(checkLightId,lightSource) } /**