Merge remote-tracking branch 'origin/dev_robotaxi-d-app-module_270_220510_2.7.0' into dev_robotaxi-d-app-module_270_220510_2.7.0
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
android:layout_width="@dimen/dp_630"
|
||||
android:layout_height="@dimen/dp_630"
|
||||
android:layout_marginLeft="-59px"
|
||||
android:layout_marginTop="@dimen/dp_20"
|
||||
android:layout_marginTop="-40px"
|
||||
app:layout_constraintLeft_toLeftOf="parent"
|
||||
app:layout_constraintTop_toTopOf="parent" />
|
||||
|
||||
|
||||
@@ -22,6 +22,7 @@ import com.mogo.commons.debug.DebugConfig;
|
||||
import com.mogo.commons.voice.AIAssist;
|
||||
import com.mogo.eagle.core.data.map.CenterLine;
|
||||
import com.mogo.eagle.core.function.call.map.CallerHDMapManager;
|
||||
import com.mogo.eagle.core.function.call.map.CallerSmpManager;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.eagle.core.utilcode.mogo.toast.TipToast;
|
||||
import com.mogo.eagle.core.utilcode.util.DateTimeUtils;
|
||||
@@ -447,6 +448,7 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement
|
||||
showOrHideNavi(false);
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,order.startSitePoint,R.raw.star_marker);
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,order.endSitePoint,R.raw.end_marker);
|
||||
clearSmallMapRouteLine();
|
||||
break;
|
||||
case ArriveAtStart:
|
||||
case UserArriveAtStart:
|
||||
@@ -546,6 +548,7 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_START_MAP_MAKER,mCurrentOrder.startSitePoint,R.raw.star_marker);
|
||||
setOrRemoveMapMaker(false, TaxiConst.TAXI_END_MAP_MAKER,mCurrentOrder.endSitePoint,R.raw.end_marker);
|
||||
}
|
||||
clearSmallMapRouteLine();
|
||||
//提交取消订单后的回调
|
||||
TipToast.tip("订单取消成功");
|
||||
//更新界面
|
||||
@@ -553,6 +556,10 @@ public class TaxiBeingServerdOrdersFragment extends BaseTaxiUIFragment implement
|
||||
showOrHideNavi(false);
|
||||
}
|
||||
|
||||
private void clearSmallMapRouteLine() {
|
||||
CallerSmpManager.clearPolyline();
|
||||
}
|
||||
|
||||
/**
|
||||
* 订单流转debug START
|
||||
*/
|
||||
|
||||
@@ -3,7 +3,6 @@ package com.mogo.eagle.core.function.autopilot.adapter
|
||||
import chassis.VehicleStateOuterClass
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.config.HdMapBuildConfig
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_ARRIVE
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_GUARDIAN
|
||||
import com.mogo.eagle.core.data.deva.chain.ChainConstant.Companion.CHAIN_ALIAS_CODE_ADAS_MESSAGE_AUTOPILOT_RECORD
|
||||
@@ -33,10 +32,11 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarConfigListe
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotCarStatusListenerManager.invokeAutopilotCarStateData
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager.invokeAutopilotIdentifyDataUpdate
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager.invokeAutopilotRecordResult
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotIdentifyListenerManager.invokeAutopilotWarnMessage
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager.invokeAutopilotRotting
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPlanningListenerManager.invokeAutopilotTrajectory
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPointCloudListenerManager
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotRecordListenerManager.invokeAutopilotRecordResult
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotVehicleStateListenerManager
|
||||
import com.mogo.eagle.core.function.call.map.CallerMapUIServiceManager
|
||||
import com.zhidao.support.adas.high.AdasManager
|
||||
@@ -241,6 +241,8 @@ class MoGoAdasListenerImpl : OnAdasListener {
|
||||
|
||||
override fun onPointCloud(header: MessagePad.Header?, pointCloud: PointCloud.LidarPointCloud?) {
|
||||
//点云数据透传
|
||||
//Logger.d("pointCloud","pointCloud"+pointCloud);
|
||||
CallerAutopilotPointCloudListenerManager.invokeAutopilotPointCloudDataUpdate(header,pointCloud)
|
||||
}
|
||||
|
||||
override fun onBasicInfoReq(
|
||||
|
||||
@@ -12,6 +12,7 @@ import com.mogo.eagle.core.network.MoGoRetrofitFactory;
|
||||
import com.mogo.eagle.core.network.utils.GsonUtil;
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger;
|
||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr;
|
||||
import com.mogo.eagle.core.utilcode.mogo.toast.TipToast;
|
||||
import com.mogo.eagle.core.utilcode.util.GsonUtils;
|
||||
import com.mogo.module.common.constants.HostConst;
|
||||
|
||||
@@ -60,7 +61,7 @@ public class BindingcarNetWorkManager {
|
||||
// String macAddress = "48:b0:2d:3a:bc:78";
|
||||
// String sn = "X20202203105S688HZ";
|
||||
|
||||
Log.d("liyz", "getBindingcarInfo -- widevineIDWithMd5 = " + widevineIDWithMd5 + "--macAddress = " +macAddress + "--screenType = " + screenType);
|
||||
Log.d("liyz", "getBindingcarInfo -- widevineIDWithMd5 = " + widevineIDWithMd5 + "--macAddress = " + macAddress + "--screenType = " + screenType);
|
||||
BindingcarRequest request = new BindingcarRequest(macAddress, widevineIDWithMd5, screenType);
|
||||
RequestBody requestBody = RequestBody.create(MediaType.get("application/json;charset=UTF-8"), GsonUtil.jsonFromObject(request));
|
||||
mBindingcarApiService.getBindingcarInfo(token, requestBody)
|
||||
@@ -80,6 +81,8 @@ public class BindingcarNetWorkManager {
|
||||
CallerHmiManager.INSTANCE.showBindingcarDialog();
|
||||
} else if (info.getData().getCompare().equals("3")) {
|
||||
CallerHmiManager.INSTANCE.showModifyBindingcarDialog();
|
||||
} else if (info.getData().getCompare().equals("null")) {
|
||||
TipToast.shortTip("当前工控机没有入库");
|
||||
}
|
||||
|
||||
SharedPrefsMgr.getInstance(context).putString(SharedPrefsConstants.CAR_INFO, GsonUtils.toJson(info.getData()));
|
||||
|
||||
@@ -18,6 +18,7 @@ import com.mogo.eagle.core.data.bindingcar.IPCUpgradeStateInfo
|
||||
import com.mogo.eagle.core.data.camera.CameraEntity
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.data.config.HmiBuildConfig
|
||||
import com.mogo.eagle.core.data.constants.MoGoConfig
|
||||
import com.mogo.eagle.core.data.constants.MoGoFragmentPaths
|
||||
import com.mogo.eagle.core.data.enums.SidePattern
|
||||
import com.mogo.eagle.core.data.enums.WarningDirectionEnum
|
||||
@@ -57,6 +58,7 @@ import com.mogo.eagle.core.function.hmi.ui.widget.V2XNotificationView
|
||||
import com.mogo.eagle.core.utilcode.mogo.AppIdentityModeUtils
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.TimeUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
@@ -979,6 +981,7 @@ class MoGoHmiFragment : MvpFragment<MoGoHmiContract.View?, HmiPresenter?>(),
|
||||
override fun confirm() {
|
||||
//确认升级
|
||||
CallerBindingcarManager.getBindingcarProvider().upgradeConfirm(images, padSn, releaseId)
|
||||
SharedPrefsMgr.getInstance(requireContext()).putBoolean(MoGoConfig.CONFIRM_UPGRADE,true)
|
||||
adUpgradeDialog?.dismiss()
|
||||
adUpgradeDialog = null
|
||||
}
|
||||
|
||||
@@ -550,6 +550,12 @@ class DebugSettingView @JvmOverloads constructor(
|
||||
FunctionBuildConfig.isIgnoreConditionsDrawAutopilotTrajectoryData = isChecked
|
||||
}
|
||||
|
||||
//TODO
|
||||
tbIsDrawPath.setOnCheckedChangeListener { _, isChecked ->
|
||||
|
||||
}
|
||||
|
||||
|
||||
// 初始化 GSP数据源 数据
|
||||
rgGpsProvider.check(
|
||||
when (FunctionBuildConfig.gpsProvider) {
|
||||
@@ -603,6 +609,13 @@ class DebugSettingView @JvmOverloads constructor(
|
||||
|
||||
}
|
||||
|
||||
//初始化点云数据渲染情况
|
||||
tbDrawPointCloudData.isChecked = FunctionBuildConfig.isDrawPointCloudData
|
||||
//是否渲染点云数据
|
||||
tbDrawPointCloudData.setOnCheckedChangeListener { _, isChecked ->
|
||||
FunctionBuildConfig.isDrawPointCloudData = isChecked
|
||||
}
|
||||
|
||||
// 模拟自动驾驶中
|
||||
tbChangeAutoPilotStatus.setOnCheckedChangeListener { _, isChecked ->
|
||||
CallerAutoPilotManager.setControlAutopilotCarAuto(isChecked)
|
||||
|
||||
@@ -77,13 +77,13 @@ public class SteeringWheelView extends ConstraintLayout {
|
||||
steeringCircularV = findViewById(R.id.steering_circular);
|
||||
steeringCircularV.setBackWidth(8);
|
||||
steeringCircularV.setBackColor(R.color.hmi_light_back_bg);
|
||||
steeringCircularV.setProgColor(R.color.hmi_light_blue, R.color.hmi_dark_blue);
|
||||
steeringCircularV.setProgColor(R.color.hmi_dark_blue, R.color.hmi_light_blue);
|
||||
steeringCircularV.setProgress((int) (180 * 100) / 360, 1000);
|
||||
if (AppIdentityModeUtils.isTaxi(FunctionBuildConfig.appIdentityMode)) {
|
||||
steeringCircularVAlpha = findViewById(R.id.steering_circular_alpha);
|
||||
steeringCircularVAlpha.setBackWidth(8);
|
||||
steeringCircularVAlpha.setBackColor(R.color.hmi_clear_00);
|
||||
steeringCircularVAlpha.setProgColor(R.color.hmi_light_blue_alpha_00, R.color.hmi_light_blue_alpha_ff);
|
||||
steeringCircularVAlpha.setProgColor(R.color.hmi_light_blue_alpha_ff, R.color.hmi_light_blue_alpha_00);
|
||||
steeringCircularVAlpha.setBlurMaskFilter(BlurMaskFilter.Blur.NORMAL, 12);
|
||||
steeringCircularVAlpha.setProgress((int) (180 * 100) / 360, 1000);
|
||||
}
|
||||
|
||||
@@ -9,6 +9,7 @@ import com.mogo.cloud.passport.MoGoAiCloudClient
|
||||
import com.mogo.eagle.core.data.autopilot.AutopilotStatusInfo
|
||||
import com.mogo.eagle.core.data.bindingcar.AdUpgradeStateHelper
|
||||
import com.mogo.eagle.core.data.bindingcar.IPCUpgradeStateInfo
|
||||
import com.mogo.eagle.core.data.constants.MoGoConfig
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.scene.SceneConstant.Companion.M_HMI
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotStatusListener
|
||||
import com.mogo.eagle.core.function.api.bindingcar.IMoGoBindingCarListener
|
||||
@@ -18,6 +19,7 @@ import com.mogo.eagle.core.function.call.bindingcar.CallerBindingcarManager
|
||||
import com.mogo.eagle.core.function.call.hmi.CallerHmiManager
|
||||
import com.mogo.eagle.core.utilcode.mogo.logger.CallerLogger
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.mogo.storage.SharedPrefsMgr
|
||||
import com.mogo.eagle.core.utilcode.util.AppUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ThreadUtils
|
||||
import com.mogo.eagle.core.utilcode.util.ToastUtils
|
||||
@@ -65,20 +67,20 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
//工控机版本视图点击事件
|
||||
ivAdVersion.setOnClickListener {
|
||||
CallerLogger.i("$M_HMI$$TAG", "ad version view clicked")
|
||||
if(AdUpgradeStateHelper.isUpgradeableStatus()){
|
||||
if(autopilotStatus == 2){
|
||||
//当前处于自动驾驶状态,不可进行升级,Toast提示
|
||||
ToastUtils.showShort("升级前请先退出自动驾驶模式")
|
||||
}else{
|
||||
dockerList?.let {
|
||||
//弹窗提示,确认是否进行工控机升级
|
||||
CallerHmiManager.showAdUpgradeDialog(it,
|
||||
MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn,
|
||||
""
|
||||
)
|
||||
}
|
||||
}
|
||||
}
|
||||
// if(AdUpgradeStateHelper.isUpgradeableStatus()){
|
||||
// if(autopilotStatus == 2){
|
||||
// //当前处于自动驾驶状态,不可进行升级,Toast提示
|
||||
// ToastUtils.showShort("升级前请先退出自动驾驶模式")
|
||||
// }else{
|
||||
// dockerList?.let {
|
||||
// //弹窗提示,确认是否进行工控机升级
|
||||
// CallerHmiManager.showAdUpgradeDialog(it,
|
||||
// MoGoAiCloudClient.getInstance().aiCloudClientConfig.sn,
|
||||
// ""
|
||||
// )
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
ipcUpgradeStateInfo?.let {
|
||||
when {
|
||||
AdUpgradeStateHelper.isDownloading(it.status) -> {
|
||||
@@ -124,6 +126,14 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
|
||||
}
|
||||
|
||||
if(SharedPrefsMgr.getInstance(context).getBoolean(MoGoConfig.CONFIRM_UPGRADE,false)){
|
||||
//将角标改为“下载中”
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_downloading)
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
//设置状态为不可升级
|
||||
AdUpgradeStateHelper.setUpgradeableStatus(false)
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -177,43 +187,42 @@ class SystemVersionView @JvmOverloads constructor(
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
AdUpgradeStateHelper.isDownloadFinish(status) ->{
|
||||
//升级中,将状态设为“升级中”角标,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgrading(status) ->{
|
||||
//升级中,将状态设为“升级中”角标,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
}
|
||||
|
||||
AdUpgradeStateHelper.isUpgrading(status) ->{
|
||||
//升级中,将状态设为“升级中”角标,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_upgrading)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgradeSuccess(status) -> {
|
||||
//升级成功,将状态设为“最新版”角标,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
AdUpgradeStateHelper.isUpgradeFailed(status) -> {
|
||||
//升级失败,将状态设为“升级失败”角标,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_upgrade_failed)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
else -> {
|
||||
//其他状态,均显示“最新版”,并隐藏进度条
|
||||
ivAdStatus?.setImageResource(R.drawable.icon_latest_version)
|
||||
adCircularProgressView?.visibility = View.GONE
|
||||
ivAdVersion?.setBackgroundResource(R.drawable.version_latest_background)
|
||||
SharedPrefsMgr.getInstance(context).putBoolean(MoGoConfig.CONFIRM_UPGRADE,false)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1480,6 +1480,21 @@
|
||||
app:layout_constraintLeft_toLeftOf="@id/tbIsDrawAutopilotTrajectoryData"
|
||||
app:layout_constraintRight_toRightOf="@id/tbIsDrawAutopilotTrajectoryData"/>
|
||||
|
||||
<ToggleButton
|
||||
android:id="@+id/tbDrawPointCloudData"
|
||||
android:layout_width="0dp"
|
||||
android:layout_height="wrap_content"
|
||||
android:layout_margin="2dp"
|
||||
android:padding="@dimen/dp_10"
|
||||
android:textColor="#000"
|
||||
android:textOff="开启渲染点云数据"
|
||||
android:textOn="关闭渲染点云数据"
|
||||
android:textSize="@dimen/dp_24"
|
||||
app:layout_constraintTop_toBottomOf="@id/tbIsDrawAutopilotTrajectoryData"
|
||||
app:layout_constraintLeft_toRightOf="@id/tbChangeAutoPilotStatus"
|
||||
app:layout_constraintRight_toRightOf="parent"
|
||||
/>
|
||||
|
||||
<RadioGroup
|
||||
android:id="@+id/rgGpsProvider"
|
||||
android:layout_width="match_parent"
|
||||
|
||||
@@ -172,6 +172,7 @@ public class MapFragment extends MvpFragment<MapView, MapPresenter>
|
||||
|
||||
// TODO 临时初始化地图监听工控机、OBU等数据监听器,用于感知元素绘制
|
||||
MapIdentifySubscriber.Companion.getInstance();
|
||||
MapPointCloudSubscriber.Companion.getInstance();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
package com.mogo.eagle.core.function.map
|
||||
|
||||
import com.mogo.eagle.core.data.config.FunctionBuildConfig
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPointCloudListener
|
||||
import com.mogo.eagle.core.function.api.base.IMoGoSubscriber
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerAutopilotPointCloudListenerManager
|
||||
import com.zhidao.support.adas.high.common.PointCloudDecoder
|
||||
import com.zhidaoauto.map.sdk.open.business.PointCloudHelper
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import rule_segement.PointCloud
|
||||
|
||||
/**
|
||||
* 订阅点云数据
|
||||
* 数据来源:工控机、OBU、云端下发
|
||||
*
|
||||
* @author donghongyu
|
||||
*/
|
||||
class MapPointCloudSubscriber private constructor() : IMoGoSubscriber, IMoGoAutopilotPointCloudListener {
|
||||
|
||||
private val TAG = "MapPointCloudSubscriber"
|
||||
|
||||
init {
|
||||
onCrate()
|
||||
}
|
||||
|
||||
companion object {
|
||||
val instance: MapPointCloudSubscriber by lazy(mode = LazyThreadSafetyMode.SYNCHRONIZED) {
|
||||
MapPointCloudSubscriber()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onCrate() {
|
||||
CallerAutopilotPointCloudListenerManager.addListener(TAG, this)
|
||||
|
||||
}
|
||||
|
||||
override fun onDestroy() {
|
||||
CallerAutopilotPointCloudListenerManager.removeListener(TAG)
|
||||
}
|
||||
|
||||
override fun onAutopilotPointCloudDataUpdate(header: MessagePad.Header?, pointCloud: PointCloud.LidarPointCloud?) {
|
||||
// 根据配置动态控制点云是否绘制
|
||||
if (FunctionBuildConfig.isDrawPointCloudData) {
|
||||
val data = PointCloudDecoder.decode(header, pointCloud)
|
||||
val result = PointCloudHelper.updatePointCloudData(data, false, true, true)
|
||||
//Logger.d(TAG, "result=$result")
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -57,7 +57,7 @@ object FunctionBuildConfig {
|
||||
*/
|
||||
@Volatile
|
||||
@JvmField
|
||||
var isDrawIdentifyData = true
|
||||
var isDrawIdentifyData = false
|
||||
|
||||
/**
|
||||
* 地图是否绘制Adas识别回调的「未知类型」Marker
|
||||
@@ -77,6 +77,15 @@ object FunctionBuildConfig {
|
||||
@JvmField
|
||||
var isDrawObuIdentifyData = true
|
||||
|
||||
/**
|
||||
* 地图是否绘制 点云数据
|
||||
* true - 绘制
|
||||
* false - 不绘制
|
||||
*/
|
||||
@Volatile
|
||||
@JvmField
|
||||
var isDrawPointCloudData = true
|
||||
|
||||
/**
|
||||
* 地图是否忽略判断条件直接绘制工控机引导线数据&全局路径规划
|
||||
* 用于调试
|
||||
|
||||
@@ -23,4 +23,6 @@ object MoGoConfig {
|
||||
//根据加速度判断是否刹车阈值
|
||||
const val BRAKE_ACCELERATION_THRESHOLD = "BRAKE_ACCELERATION_THRESHOLD"
|
||||
|
||||
const val CONFIRM_UPGRADE = "CONFIRM_UPGRADE"
|
||||
|
||||
}
|
||||
@@ -0,0 +1,20 @@
|
||||
package com.mogo.eagle.core.function.api.autopilot
|
||||
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import rule_segement.PointCloud
|
||||
|
||||
/**
|
||||
* @author xiaoyuzhou
|
||||
* @date 2021/11/1 5:57 下午
|
||||
* 感知识别回调
|
||||
*/
|
||||
interface IMoGoAutopilotPointCloudListener {
|
||||
|
||||
/**
|
||||
* 点云数据
|
||||
*
|
||||
* @param pointCloud 点云数据
|
||||
*/
|
||||
fun onAutopilotPointCloudDataUpdate(header: MessagePad.Header?, pointCloud: PointCloud.LidarPointCloud?)
|
||||
|
||||
}
|
||||
@@ -0,0 +1,73 @@
|
||||
package com.mogo.eagle.core.function.call.autopilot
|
||||
|
||||
import androidx.annotation.Nullable
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotIdentifyListener
|
||||
import com.mogo.eagle.core.function.api.autopilot.IMoGoAutopilotPointCloudListener
|
||||
import com.mogo.eagle.core.function.call.base.CallerBase
|
||||
import mogo.telematics.pad.MessagePad
|
||||
import perception.TrafficLightOuterClass
|
||||
import rule_segement.PointCloud
|
||||
import java.util.concurrent.ConcurrentHashMap
|
||||
|
||||
/**
|
||||
* @author xiaoyuzhou
|
||||
* @date 2021/9/30 5:48 下午
|
||||
* 点云数据管理
|
||||
*/
|
||||
object CallerAutopilotPointCloudListenerManager : CallerBase() {
|
||||
|
||||
// 存储所有注册了监听的对象,invokeXXXX进行遍历回调,将信息同步
|
||||
private val M_AUTOPILOT_IDENTIFY_LISTENERS: ConcurrentHashMap<String, IMoGoAutopilotPointCloudListener> =
|
||||
ConcurrentHashMap()
|
||||
|
||||
/**
|
||||
* 添加 域控制器感知数据 监听
|
||||
* @param tag 标记,用来注销监听使用
|
||||
* @param listener 监听回调
|
||||
*/
|
||||
fun addListener(
|
||||
@Nullable tag: String,
|
||||
@Nullable listener: IMoGoAutopilotPointCloudListener
|
||||
) {
|
||||
if (M_AUTOPILOT_IDENTIFY_LISTENERS.containsKey(tag)) {
|
||||
return
|
||||
}
|
||||
M_AUTOPILOT_IDENTIFY_LISTENERS[tag] = listener
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除监听
|
||||
* @param tag 标记,用来注销监听使用
|
||||
*/
|
||||
fun removeListener(@Nullable tag: String) {
|
||||
if (!M_AUTOPILOT_IDENTIFY_LISTENERS.containsKey(tag)) {
|
||||
return
|
||||
}
|
||||
M_AUTOPILOT_IDENTIFY_LISTENERS.remove(tag)
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除自动驾驶按钮选中监听
|
||||
* @param listener 要删除的监听对象
|
||||
*/
|
||||
fun removeListener(@Nullable listener: IMoGoAutopilotPointCloudListener) {
|
||||
M_AUTOPILOT_IDENTIFY_LISTENERS.forEach {
|
||||
if (it.value == listener) {
|
||||
M_AUTOPILOT_IDENTIFY_LISTENERS.remove(it.key)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 识别交通元素数据发生更新 回调
|
||||
*/
|
||||
@Synchronized
|
||||
fun invokeAutopilotPointCloudDataUpdate(header: MessagePad.Header?, pointCloud: PointCloud.LidarPointCloud?) {
|
||||
M_AUTOPILOT_IDENTIFY_LISTENERS.forEach {
|
||||
val tag = it.key
|
||||
val listener = it.value
|
||||
listener.onAutopilotPointCloudDataUpdate(header,pointCloud)
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
@@ -82,7 +82,7 @@ MOGO_LOCATION_VERSION=1.3.59
|
||||
MOGO_TELEMATIC_VERSION=1.3.59
|
||||
######## MogoAiCloudSDK Version ########
|
||||
# 自研地图
|
||||
MAP_SDK_VERSION=2.1.1.2
|
||||
MAP_SDK_VERSION=2.2.0.1
|
||||
MAP_SDK_OPERATION_VERSION=1.0.13
|
||||
# websocket
|
||||
WEBSOCKET_VERSION=1.1.7
|
||||
|
||||
Reference in New Issue
Block a user