diff --git a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/video/ConsultVideoPlayer.kt b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/video/ConsultVideoPlayer.kt index f5360314cb..d24717d35e 100644 --- a/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/video/ConsultVideoPlayer.kt +++ b/OCH/charter/passenger/src/main/java/com/mogo/och/bus/passenger/ui/video/ConsultVideoPlayer.kt @@ -148,9 +148,11 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { override fun onWindowFocusChanged(hasWindowFocus: Boolean) { super.onWindowFocusChanged(hasWindowFocus) if(isIfCurrentIsFullscreen&&smalllPlayer!=null){ - if(hasWindowFocus){//获取焦点 - onVideoResume() - }else{ + if (hasWindowFocus) {//获取焦点 + if (isInPlayingState && smalllPlayer!!.mCurrentState != CURRENT_STATE_PAUSE) { + onVideoResume() + } + } else { onVideoPause() } } @@ -392,6 +394,8 @@ class ConsultVideoPlayer : StandardGSYVideoPlayer { } } } + // 点击视频不展示状态栏 + gsyVideoPlayer.isHideKey = false gsyVideoPlayer.smalllPlayer = this frameLayout.setBackgroundColor(Color.BLACK) val lp = LayoutParams(width, height) diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiModel.kt b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiModel.kt index de3a42fdd8..a9b7c16918 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiModel.kt +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/model/TaxiModel.kt @@ -495,7 +495,8 @@ object TaxiModel { parameters.endLatLon = AutopilotControlParameters.AutoPilotLonLat(endWgsLat, endWgsLon) if (parameters.autoPilotLine == null) { parameters.autoPilotLine = AutopilotControlParameters.AutoPilotLine( - mCurrentTaskAndOrder!!.lineId, + mCurTaskContrail!!.lineId, + mCurTaskContrail!!.lineName, mCurTaskContrail!!.csvFileUrl, mCurTaskContrail!!.csvFileMd5, mCurTaskContrail!!.txtFileUrl, diff --git a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java index 459d89751d..d010e94bb0 100644 --- a/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java +++ b/OCH/taxi/mogo-och-taxi-unmanned/src/main/java/com/mogo/och/taxi/utils/TaxiTrajectoryManager.java @@ -45,7 +45,7 @@ public class TaxiTrajectoryManager { private String mPrevTaskLineId = ""; public TaxiTrajectoryManager() { - mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(-1, + mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(-1, "", "", "", "", "", 0, "", "", "", "", "", 0); } @@ -136,13 +136,14 @@ public class TaxiTrajectoryManager { } if (mAutoPilotLine == null) { - mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(taskAndOrder.getLineId(), + mAutoPilotLine = new AutopilotControlParameters.AutoPilotLine(curTaskContrail.getLineId(), curTaskContrail.getLineName(), curTaskContrail.getCsvFileUrl(), curTaskContrail.getCsvFileMd5(), curTaskContrail.getTxtFileUrl(), curTaskContrail.getTxtFileMd5(), curTaskContrail.getContrailSaveTime(), "",//todo curTaskContrail.getCarModel() curTaskContrail.getCsvFileUrlDPQP(), curTaskContrail.getCsvFileMd5DPQP(), curTaskContrail.getTxtFileUrlDPQP(), curTaskContrail.getTxtFileMd5DPQP(), curTaskContrail.getContrailSaveTimeDPQP()); } else { mAutoPilotLine.setLineId(taskAndOrder.getLineId()); + mAutoPilotLine.setLineName(curTaskContrail.getLineName()); mAutoPilotLine.setTrajUrl(curTaskContrail.getCsvFileUrl()); mAutoPilotLine.setTrajMd5(curTaskContrail.getCsvFileMd5()); mAutoPilotLine.setStopUrl(curTaskContrail.getTxtFileUrl()); @@ -161,6 +162,7 @@ public class TaxiTrajectoryManager { private void clearAutoPilotLine() { if (mAutoPilotLine == null) return; mAutoPilotLine.setLineId(-1); + mAutoPilotLine.setLineName(""); mAutoPilotLine.setTrajUrl(""); mAutoPilotLine.setTrajMd5(""); mAutoPilotLine.setStopUrl(""); @@ -211,25 +213,6 @@ public class TaxiTrajectoryManager { return; } - // TODO: 2022/6/24 - // test1 -// mAutoPilotLine.setLineId(148); -// mAutoPilotLine.setTrajUrl("http://file-qa.zhidaozhixing.com/fileServer/upload/downloadFileStream?key=fileServer/online_car_hailing/e27c20c2da32481021d934c3ef084536/traj_148.csv"); -// mAutoPilotLine.setTrajMd5("e27c20c2da32481021d934c3ef084536"); -// mAutoPilotLine.setStopUrl("http://file-qa.zhidaozhixing.com/fileServer/upload/downloadFileStream?key=fileServer/online_car_hailing/6224c9dd2c0e2bd990c6482c0464de45/stop_148.txt"); -// mAutoPilotLine.setStopMd5("6224c9dd2c0e2bd990c6482c0464de45"); -// mAutoPilotLine.setTimestamp(1654596000000L); //20220607 18:00 -// mAutoPilotLine.setVehicleModel("红旗H9"); - - // test2 -// mAutoPilotLine.setLineId(148); -// mAutoPilotLine.setTrajUrl("http://file-qa.zhidaozhixing.com/fileServer/upload/downloadFileStream?key=fileServer/online_car_hailing/8654497cf918be461a59c7ad8e22920d/traj_148.csv"); -// mAutoPilotLine.setTrajMd5("8654497cf918be461a59c7ad8e22920d"); -// mAutoPilotLine.setStopUrl("http://file-qa.zhidaozhixing.com/fileServer/upload/downloadFileStream?key=fileServer/online_car_hailing/1bb098b244922649bf3e7bada0d3950f/stop_148.txt"); -// mAutoPilotLine.setStopMd5("1bb098b244922649bf3e7bada0d3950f"); -// mAutoPilotLine.setTimestamp(1654761600000L); //20220609 16:00 -// mAutoPilotLine.setVehicleModel("红旗H9"); - CallerAutoPilotControlManager.INSTANCE.sendTrajectoryDownloadReq(mAutoPilotLine); CallerLogger.INSTANCE.d(M_TAXI + TAG, "sendTrajectoryReq(): " + GsonUtils.toJson(mAutoPilotLine)); diff --git a/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/bean/TaxiPassengerGetTrajectoryByLineIdRespBean.java b/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/bean/TaxiPassengerGetTrajectoryByLineIdRespBean.java index 018333a351..cb37b3d52f 100644 --- a/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/bean/TaxiPassengerGetTrajectoryByLineIdRespBean.java +++ b/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/bean/TaxiPassengerGetTrajectoryByLineIdRespBean.java @@ -9,6 +9,7 @@ public class TaxiPassengerGetTrajectoryByLineIdRespBean extends BaseData { public static class TrajectoryInfo { public long lineId; // line id + public String lineName; // line name public String csvFileUrl = ""; //轨迹文件下载的cos url,默认“” public String csvFileMd5 = ""; //轨迹文件md5,默认“” public String txtFileUrl = ""; //打点文件下载的cos url,默认“” diff --git a/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt b/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt index a795ab6c15..541df1a3d7 100644 --- a/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt +++ b/OCH/taxi/taxi-unmanned-passenger/src/main/java/com/mogo/och/taxi/passenger/model/AutopilotManager.kt @@ -118,6 +118,7 @@ object AutopilotManager : IMoGoAutopilotStatusListener { ) { parameters.autoPilotLine = AutopilotControlParameters.AutoPilotLine( TaxiPassengerModel.currentLineId!!, + TaxiPassengerModel.currentTrajectoryInfo!!.lineName, TaxiPassengerModel.currentTrajectoryInfo!!.csvFileUrl, TaxiPassengerModel.currentTrajectoryInfo!!.csvFileMd5, TaxiPassengerModel.currentTrajectoryInfo!!.txtFileUrl, diff --git a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt index e8bc3ae8eb..17a74f02dc 100644 --- a/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt +++ b/core/function-impl/mogo-core-function-datacenter/src/main/java/com/mogo/eagle/core/function/datacenter/autopilot/MoGoAutopilotControlProvider.kt @@ -615,6 +615,20 @@ class MoGoAutopilotControlProvider : } } + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + override fun sendFusionMode(cmd: Int): Boolean { + return AdasManager.getInstance().sendFusionMode(cmd) + } + + override fun sendSetParamReq(param: Map): Boolean { + return AdasManager.getInstance().sendSetParamReq(param) + } + /** * 获取全部参数 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq, AdasParam)} @@ -632,8 +646,8 @@ class MoGoAutopilotControlProvider : * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ - override fun sendGetParamReq(paramType: AdasConstants.MapSystemParamType): Boolean { - return AdasManager.getInstance().sendGetParamReq(paramType) + override fun sendGetParamReq(vararg paramType: AdasConstants.MapSystemParamType): Boolean { + return AdasManager.getInstance().sendGetParamReq(*paramType) } /** @@ -769,6 +783,15 @@ class MoGoAutopilotControlProvider : AdasManager.getInstance().sendV2nToPncCmd(switchCmd) } + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + override fun sendBlindAreaCmd(switchCmd: Boolean) { + AdasManager.getInstance().sendBlindAreaCmd(switchCmd) + } /** * 向左变道 */ diff --git a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt index 29ef4d612e..e8bbcb09ce 100644 --- a/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt +++ b/core/mogo-core-function-api/src/main/java/com/mogo/eagle/core/function/api/autopilot/IMoGoAutopilotControlProvider.kt @@ -214,6 +214,33 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider { */ fun sendBreakdownSlowDown(isEnable: Boolean): Boolean + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + fun sendFusionMode(cmd: Int): Boolean + + /** + * 批量设置参数命令 + * + * @param param {@link AdasConstants.MapSystemParamType#DETOURING Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#DETOURING_SPEED Value类型:double或double类型String} + * {@link AdasConstants.MapSystemParamType#AEB Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#LANE_CHANGE_RESTRAIN_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#STOP_YIELD_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#HADMAP_SPEED_LIMIT_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#RAMP_THETA_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#WEAK_NET_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BREAKDOWN_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BLIND_AREA Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2N_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2I_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#FUSION_MODE Value类型:int或int类型String} + * @return boolean + */ + fun sendSetParamReq(param: Map): Boolean /** * 获取全部参数 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq)} @@ -226,10 +253,10 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider { * 参数获取请求 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq)} * - * @param paramType 参数类型{@link com.zhidao.support.adas.high.common.Constants.PARAM_TYPE} + * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ - fun sendGetParamReq(paramType: AdasConstants.MapSystemParamType): Boolean + fun sendGetParamReq(vararg paramType: AdasConstants.MapSystemParamType): Boolean /** * 获取数据采集录制模式配置列表 @@ -262,6 +289,14 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider { */ fun sendV2nToPncCmd(switchCmd: Boolean) + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + fun sendBlindAreaCmd(switchCmd: Boolean) + /** * 发送工控机所有节点重启命令 */ diff --git a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt index db83797db7..445a3ad2d3 100644 --- a/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt +++ b/core/mogo-core-function-call/src/main/java/com/mogo/eagle/core/function/call/autopilot/CallerAutoPilotControlManager.kt @@ -300,6 +300,38 @@ object CallerAutoPilotControlManager { return providerApi?.sendBreakdownSlowDown(isEnable) } + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + fun sendFusionMode(cmd: Int): Boolean? { + return providerApi?.sendFusionMode(cmd) + } + + /** + * 批量设置参数命令 + * + * @param param {@link AdasConstants.MapSystemParamType#DETOURING Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#DETOURING_SPEED Value类型:double或double类型String} + * {@link AdasConstants.MapSystemParamType#AEB Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#LANE_CHANGE_RESTRAIN_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#STOP_YIELD_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#HADMAP_SPEED_LIMIT_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#RAMP_THETA_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#WEAK_NET_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BREAKDOWN_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BLIND_AREA Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2N_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2I_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#FUSION_MODE Value类型:int或int类型String} + * @return boolean + */ + fun sendSetParamReq(param: Map): Boolean? { + return providerApi?.sendSetParamReq(param) + } + /** * 获取全部参数 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq, AdasParam)} @@ -317,8 +349,8 @@ object CallerAutoPilotControlManager { * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ - fun sendGetParamReq(paramType: AdasConstants.MapSystemParamType): Boolean? { - return providerApi?.sendGetParamReq(paramType) + fun sendGetParamReq(vararg paramType: AdasConstants.MapSystemParamType): Boolean? { + return providerApi?.sendGetParamReq(*paramType) } /** * 获取数据采集录制模式配置列表 @@ -368,6 +400,15 @@ object CallerAutoPilotControlManager { providerApi?.sendV2nToPncCmd(switchCmd) } + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + fun sendBlindAreaCmd(switchCmd: Boolean){ + providerApi?.sendBlindAreaCmd(switchCmd) + } /** * 向左变道 */ diff --git a/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/AdasParam.java b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/AdasParam.java index 911741290d..0bda77e27d 100644 --- a/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/AdasParam.java +++ b/libraries/mogo-adas-data/src/main/java/com/zhjt/mogo/adas/data/bean/AdasParam.java @@ -70,6 +70,26 @@ public class AdasParam { * -1:未知 0:关闭故障减速停车策略 1(默认):使用故障减速停车策略 */ public final int breakdownSlowDown; + /** + * 盲区开关 + * 0: off 1:on + */ + public final int blindArea; + /** + * 融合v2n开关 + * 0:不发给PnC 1:发给Pnc + */ + public final int v2nToPnc; + /** + * 融合v2i开关 + * 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼,默认0 + */ + public final int v2iToPnc; + /** + * 融合模式 + * 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + */ + public final int fusionMode; public AdasParam(MessagePad.SetParamReq param) { int detouringCmd = -1; @@ -83,6 +103,11 @@ public class AdasParam { String m1StitchedVideoSelfVehicleParam = null; M1StitchedVideoSelfVehicleParam m1StitchedVideoSelfVehicleParamParse = null; int breakdownSlowDown = -1; + int blindArea = -1; + int v2nToPnc = -1; + int v2iToPnc = -1; + int fusionMode = -1; + if (param != null) { int size = param.getReqsCount(); if (size > 0) { @@ -137,6 +162,22 @@ public class AdasParam { if (!TextUtils.isEmpty(value)) { breakdownSlowDown = Integer.parseInt(value); } + } else if (type == AdasConstants.MapSystemParamType.BLIND_AREA_VALUE) { + if (!TextUtils.isEmpty(value)) { + blindArea = Integer.parseInt(value); + } + } else if (type == AdasConstants.MapSystemParamType.V2N_TO_PNC_VALUE) { + if (!TextUtils.isEmpty(value)) { + v2nToPnc = Integer.parseInt(value); + } + } else if (type == AdasConstants.MapSystemParamType.V2I_TO_PNC_VALUE) { + if (!TextUtils.isEmpty(value)) { + v2iToPnc = Integer.parseInt(value); + } + } else if (type == AdasConstants.MapSystemParamType.FUSION_MODE_VALUE) { + if (!TextUtils.isEmpty(value)) { + fusionMode = Integer.parseInt(value); + } } } } @@ -152,6 +193,10 @@ public class AdasParam { this.m1StitchedVideoSelfVehicleParam = m1StitchedVideoSelfVehicleParam; this.m1StitchedVideoSelfVehicleParamParse = m1StitchedVideoSelfVehicleParamParse; this.breakdownSlowDown = breakdownSlowDown; + this.blindArea = blindArea; + this.v2nToPnc = v2nToPnc; + this.v2iToPnc = v2iToPnc; + this.fusionMode = fusionMode; } @Override @@ -165,7 +210,12 @@ public class AdasParam { "\n环岛模式开关=" + (rampThetaValid == -1 ? "未知" : rampThetaValid == 0 ? "普通模式" : "环岛模式") + "\n弱网减速停车策略开关=" + (weakNetSlowDown == -1 ? "未知" : weakNetSlowDown == 0 ? "关闭弱网减速停车策略" : "使用弱网减速停车策略") + "\nm1拼接视频自车位置参数=" + (m1StitchedVideoSelfVehicleParam == null ? "未知" : m1StitchedVideoSelfVehicleParam) + - "\n故障减速停车策路开关=" + (breakdownSlowDown == -1 ? "未知" : breakdownSlowDown == 0 ? "关闭故障减速停车策略" : "使用故障减速停车策略"); + "\n故障减速停车策路开关=" + (breakdownSlowDown == -1 ? "未知" : breakdownSlowDown == 0 ? "关闭故障减速停车策略" : "使用故障减速停车策略") + + "\n盲区开关=" + (blindArea == -1 ? "未知" : blindArea == 0 ? "关" : "开") + + "\n融合V2N开关=" + (v2nToPnc == -1 ? "未知" : v2nToPnc == 0 ? "不发给PnC" : "发给PnC") + + "\n融合V2I开关=" + (v2iToPnc == -1 ? "未知" : v2iToPnc == 0 ? "不发给PnC和鹰眼" : "发给Pnc和鹰眼") + + "\n融合模式=" + (fusionMode == -1 ? "未知" : fusionMode == 5 ? "纯路侧模式" : fusionMode == 4 ? "透传模式" : fusionMode == 3 ? "超视距模式" : fusionMode == 2 ? "盲区模式" : "全融合模式") + ; } public static class M1StitchedVideoSelfVehicleParam { diff --git a/libraries/mogo-adas-data/src/main/proto/message_pad.proto b/libraries/mogo-adas-data/src/main/proto/message_pad.proto index c6308b47fd..886e78458a 100644 --- a/libraries/mogo-adas-data/src/main/proto/message_pad.proto +++ b/libraries/mogo-adas-data/src/main/proto/message_pad.proto @@ -30,7 +30,7 @@ enum MessageType MsgTypeOBU = 0x1000a; //OBU MsgTypeChassisStates = 0x1000b; //重构后的底盘状态, 透传 MsgTypeFunctionStates = 0x1000c; //重构后的功能状态, 透传 - MsgTypeBackCameraVideo = 0x1000d; //清扫车后部摄像头视频 10hz + MsgTypeBackCameraVideo = 0x1000d; //后部摄像头视频 10hz MsgTypeM1StitchedVideo = 0x1000e; //m1拼接视频 10hz MsgTypeBasicInfoReq = 0x10100; //自动驾驶设备基础信息请求 @@ -609,7 +609,11 @@ message SetOneParam // 7:环岛模式开关(bool) 0:普通模式 1:环岛模式 默认0 // 8:弱网减速停车策略开关(bool) 0:关闭弱网减速停车策略 1:使用弱网减速停车策略 默认1 // 9:m1拼接视频自车位置参数(string), 格式:x,y,width,height - // 10:故障减速停车策路开关(bool) 0:关闭故障减速停车策略 1:使用故障减速停车策略 默认1 + // 10:故障减速停车策略开关(bool) 0:关闭故障减速停车策略 1:使用故障减速停车策略 默认1 + // 11: 盲区开关(bool) 0: off 1:on /telematics/sensor/blindarea_flag + // 12: 融合v2n开关(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_flag + // 13: 融合v2i开关(bool) 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼,默认0 /telematics/fusion/v2i_flag + // 14: 融合模式(int) 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 /telematics/fusion/fusion_mode string value = 2; // 转成字符串的值 } diff --git a/libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto b/libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto index 4600eb9f22..84d6766797 100644 --- a/libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto +++ b/libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto @@ -15,5 +15,9 @@ enum MapSystemParamType{ WEAK_NET_SLOW_DOWN = 8;//弱网减速停车策略开关 M1_STITCHED_VIDEO_SELF_VEHICLE_PARAM = 9;//m1拼接视频自车位置参数(string), 格式:x,y,width,height BREAKDOWN_SLOW_DOWN = 10;//故障减速停车策路开关 + BLIND_AREA = 11;//盲区开关(bool) 0: off 1:on /telematics/sensor/blindarea_flag + V2N_TO_PNC = 12;//融合v2n开关(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_flag + V2I_TO_PNC = 13;//融合v2i开关(bool) 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼,默认0 /telematics/fusion/v2i_flag + FUSION_MODE = 14;//融合模式(int) 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 /telematics/fusion/fusion_mode } diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java index b9ffab7773..fa921f88f6 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasChannel.java @@ -1535,14 +1535,11 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec /** * 设置参数命令 * - * @param type 0:default 1:绕障类功能开关(bool) 2:变道绕障的目标障碍物速度阈值(double, m/s) - * 3:AEB开关(bool) 4:限制绕障开关(bool) - * 5:停车让行线前避让等待开关(bool) 6:地图限速功能开关(bool) + * @param type 类型{@link AdasConstants.MapSystemParamType} * @param value 转成字符串的值 * @return boolean */ - @Override - public boolean sendSetParamReq(int type, String value) { + private boolean sendSetParamReq(int type, String value) { MessagePad.SetOneParam oneParam = MessagePad.SetOneParam .newBuilder().setType(type).setValue(value).build(); MessagePad.SetParamReq req = MessagePad.SetParamReq @@ -1552,6 +1549,71 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ.typeCode, req.toByteArray()); } + /** + * 设置参数命令V2 + */ + + private boolean sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType paramSetType, T value) { + ParamSetCmdOuterClass.ParamSetCmd.Builder builder = ParamSetCmdOuterClass.ParamSetCmd.newBuilder() + .setSrc(1) + .setType(paramSetType); + if (paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeBlindArea + || paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2N + || paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2I) { + builder.setBoolValue((Boolean) value); + } + ParamSetCmdOuterClass.ParamSetCmd req = builder.build(); + return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ_V2.typeCode, req.toByteArray()); + } + + /** + * 批量设置参数命令 + * + * @param param {@link AdasConstants.MapSystemParamType#DETOURING Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#DETOURING_SPEED Value类型:double或double类型String} + * {@link AdasConstants.MapSystemParamType#AEB Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#LANE_CHANGE_RESTRAIN_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#STOP_YIELD_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#HADMAP_SPEED_LIMIT_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#RAMP_THETA_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#WEAK_NET_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BREAKDOWN_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BLIND_AREA Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2N_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2I_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#FUSION_MODE Value类型:int或int类型String} + * @return boolean + */ + @Override + public boolean sendSetParamReq(@NonNull Map param) { + boolean isV1 = true; + boolean isV2BlindArea = true; + boolean isV2V2N = true; + boolean isV2V2NI = true; + MessagePad.SetParamReq.Builder builder = MessagePad.SetParamReq.newBuilder(); + for (Map.Entry entry : param.entrySet()) { + AdasConstants.MapSystemParamType key = entry.getKey(); + if (key != AdasConstants.MapSystemParamType.DEFAULT_TYPE && key != AdasConstants.MapSystemParamType.M1_STITCHED_VIDEO_SELF_VEHICLE_PARAM) { + Object value = entry.getValue(); + if (key == AdasConstants.MapSystemParamType.BLIND_AREA) { + isV2BlindArea = sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeBlindArea, (Boolean) value); + } else if (key == AdasConstants.MapSystemParamType.V2N_TO_PNC) { + isV2V2N = sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2N, (Boolean) value); + } else if (key == AdasConstants.MapSystemParamType.V2I_TO_PNC) { + isV2V2NI = sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2I, (Boolean) value); + } else { + builder.addReqs(MessagePad.SetOneParam.newBuilder().setType(key.getNumber()).setValue(String.valueOf(value))); + } + } + + } + if (builder.getReqsCount() > 0) { + MessagePad.SetParamReq req = builder.build(); + isV1 = sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ.typeCode, req.toByteArray()); + } + return isV1 && isV2BlindArea && isV2V2N && isV2V2NI; + } + /** * 绕障类功能开关 * @@ -1657,6 +1719,51 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec return sendSetParamReq(AdasConstants.MapSystemParamType.BREAKDOWN_SLOW_DOWN_VALUE, String.valueOf(enable)); } + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + @Override + public boolean sendFusionMode(int cmd) { + return sendSetParamReq(AdasConstants.MapSystemParamType.FUSION_MODE_VALUE, String.valueOf(cmd)); + } + + + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + @Override + public boolean sendBlindAreaCmd(boolean switchCmd) { + return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeBlindArea, switchCmd); + } + + /** + * 控制V2N进PnC + * + * @param switchCmd true:发给PnC,false:不发给PnC + * @return boolean + */ + @Override + public boolean sendV2nToPncCmd(boolean switchCmd) { + return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2N, switchCmd); + } + + /** + * 控制V2I进PnC + * + * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 + * @return boolean + */ + @Override + public boolean sendV2iToPncCmd(boolean switchCmd) { + return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2I, switchCmd); + } + /** * 获取全部参数 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq, AdasParam)} @@ -1665,7 +1772,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec */ @Override public boolean sendGetAllParamReq() { - return sendGetParamReq(null); + return sendGetParamReq((AdasConstants.MapSystemParamType[]) null); } /** @@ -1676,9 +1783,9 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec * @return boolean */ @Override - public boolean sendGetParamReq(AdasConstants.MapSystemParamType paramType) { + public boolean sendGetParamReq(AdasConstants.MapSystemParamType... paramType) { MessagePad.SetParamReq req; - if (paramType == null || paramType == AdasConstants.MapSystemParamType.DEFAULT_TYPE) { + if (paramType == null || paramType[0] == null || (paramType.length == 1 && paramType[0] == AdasConstants.MapSystemParamType.DEFAULT_TYPE)) { req = MessagePad.SetParamReq .newBuilder() .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.DETOURING_VALUE)) @@ -1691,12 +1798,19 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.WEAK_NET_SLOW_DOWN_VALUE)) .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.M1_STITCHED_VIDEO_SELF_VEHICLE_PARAM_VALUE)) .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.BREAKDOWN_SLOW_DOWN_VALUE)) + .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.BLIND_AREA_VALUE)) + .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.V2N_TO_PNC_VALUE)) + .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.V2I_TO_PNC_VALUE)) + .addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.FUSION_MODE_VALUE)) .build(); } else { - req = MessagePad.SetParamReq - .newBuilder() - .addReqs(MessagePad.SetOneParam.newBuilder().setType(paramType.getNumber())) - .build(); + MessagePad.SetParamReq.Builder builder = MessagePad.SetParamReq.newBuilder(); + for (AdasConstants.MapSystemParamType type : paramType) { + if (type != AdasConstants.MapSystemParamType.DEFAULT_TYPE) { + builder.addReqs(MessagePad.SetOneParam.newBuilder().setType(type.getNumber())); + } + } + req = builder.build(); } return sendPBMessage(MessageType.TYPE_SEND_GET_PARAM_REQ.typeCode, req.toByteArray()); } @@ -1761,56 +1875,6 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec return sendPBMessage(MessageType.TYPE_SEND_FSM_STATUS_REASON_QUERY_REQ.typeCode, query.toByteArray()); } - /** - * 控制V2I进PnC - * - * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 - * @return boolean - */ - @Override - public boolean sendV2iToPncCmd(boolean switchCmd) { - return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2I, switchCmd); - } - - /** - * 控制V2N进PnC - * - * @param switchCmd true:发给PnC,false:不发给PnC - * @return boolean - */ - @Override - public boolean sendV2nToPncCmd(boolean switchCmd) { - return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2N, switchCmd); - } - - /** - * 盲区数据开关 - * - * @param switchCmd 数据开关 - * @return boolean - */ - @Override - public boolean sendBlindAreaCmd(boolean switchCmd) { - return sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType.ParamSetTypeBlindArea, switchCmd); - } - - /** - * 设置参数命令V2 - */ - - private boolean sendSetParamReqV2(ParamSetCmdOuterClass.ParamSetType paramSetType, T value) { - ParamSetCmdOuterClass.ParamSetCmd.Builder builder = ParamSetCmdOuterClass.ParamSetCmd.newBuilder() - .setSrc(1) - .setType(paramSetType); - if (paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeBlindArea - || paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2N - || paramSetType == ParamSetCmdOuterClass.ParamSetType.ParamSetTypeV2I) { - builder.setBoolValue((Boolean) value); - } - ParamSetCmdOuterClass.ParamSetCmd req = builder.build(); - return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ_V2.typeCode, req.toByteArray()); - } - /** * 发送清扫车指令到云控 * diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java index 034f3ff268..c156d93f18 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/AdasManager.java @@ -23,6 +23,7 @@ import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; import java.util.HashSet; import java.util.List; import java.util.Locale; +import java.util.Map; import java.util.Set; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -862,18 +863,6 @@ public class AdasManager implements IAdasNetCommApi { return mChannel != null && mChannel.sendOperatorCmdStopHonking(); } - /** - * 设置参数命令 - * - * @param type 0:default 1:绕障类功能开关(bool) 2:变道绕障的目标障碍物速度阈值(double, m/s) - * @param value 转成字符串的值 - * @return boolean - */ - @Override - public boolean sendSetParamReq(int type, String value) { - return mChannel != null && mChannel.sendSetParamReq(type, value); - } - /** * 绕障类功能开关 * @@ -978,6 +967,73 @@ public class AdasManager implements IAdasNetCommApi { return mChannel != null && mChannel.sendBreakdownSlowDown(enable); } + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + @Override + public boolean sendFusionMode(int cmd) { + return mChannel != null && mChannel.sendFusionMode(cmd); + } + + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + @Override + public boolean sendBlindAreaCmd(boolean switchCmd) { + return mChannel != null && mChannel.sendBlindAreaCmd(switchCmd); + } + + /** + * 控制V2N进PnC + * + * @param switchCmd true:发给PnC,false:不发给PnC + * @return boolean + */ + @Override + public boolean sendV2nToPncCmd(boolean switchCmd) { + return mChannel != null && mChannel.sendV2nToPncCmd(switchCmd); + } + + /** + * 控制V2I进PnC + * + * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 + * @return boolean + */ + @Override + public boolean sendV2iToPncCmd(boolean switchCmd) { + return mChannel != null && mChannel.sendV2iToPncCmd(switchCmd); + } + + /** + * 批量设置参数命令 + * + * @param param {@link AdasConstants.MapSystemParamType#DETOURING Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#DETOURING_SPEED Value类型:double或double类型String} + * {@link AdasConstants.MapSystemParamType#AEB Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#LANE_CHANGE_RESTRAIN_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#STOP_YIELD_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#HADMAP_SPEED_LIMIT_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#RAMP_THETA_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#WEAK_NET_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BREAKDOWN_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BLIND_AREA Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2N_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2I_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#FUSION_MODE Value类型:int或int类型String} + * @return boolean + */ + @Override + public boolean sendSetParamReq(@NonNull Map param) { + return mChannel != null && mChannel.sendSetParamReq(param); + } + /** * 获取全部参数 * 结果回调{@link OnAdasListener#onGetParamResp(MessagePad.Header, MessagePad.SetParamReq, AdasParam)} @@ -997,7 +1053,7 @@ public class AdasManager implements IAdasNetCommApi { * @return boolean */ @Override - public boolean sendGetParamReq(AdasConstants.MapSystemParamType paramType) { + public boolean sendGetParamReq(AdasConstants.MapSystemParamType... paramType) { return mChannel != null && mChannel.sendGetParamReq(paramType); } @@ -1043,39 +1099,6 @@ public class AdasManager implements IAdasNetCommApi { return mChannel != null && mChannel.sendFSMStatusReasonQuery(type); } - /** - * 控制V2I进PnC - * - * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 - * @return boolean - */ - @Override - public boolean sendV2iToPncCmd(boolean switchCmd) { - return mChannel != null && mChannel.sendV2iToPncCmd(switchCmd); - } - - /** - * 控制V2N进PnC - * - * @param switchCmd true:发给PnC,false:不发给PnC - * @return boolean - */ - @Override - public boolean sendV2nToPncCmd(boolean switchCmd) { - return mChannel != null && mChannel.sendV2nToPncCmd(switchCmd); - } - - /** - * 盲区数据开关 - * - * @param switchCmd 数据开关 - * @return boolean - */ - @Override - public boolean sendBlindAreaCmd(boolean switchCmd) { - return mChannel != null && mChannel.sendBlindAreaCmd(switchCmd); - } - /** * 开始大任务响应 * 1、云端下发大任务信息(type: 100001)-> sweeper_task.proto/StartTaskResp 响应信息 diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java index ecd019dcd4..625d02081a 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/IAdasNetCommApi.java @@ -14,6 +14,7 @@ import com.zhjt.mogo.adas.data.sweeper.task.confirm.SweeperTaskConfirm; import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop; import java.util.List; +import java.util.Map; import java.util.Set; import bag_manager.BagManagerOuterClass; @@ -486,14 +487,7 @@ public interface IAdasNetCommApi { */ boolean sendOperatorCmdStopHonking(); - /** - * 设置参数命令 - * - * @param type 0:default 1:绕障类功能开关(bool) 2:变道绕障的目标障碍物速度阈值(double, m/s) - * @param value 转成字符串的值 - * @return boolean - */ - boolean sendSetParamReq(int type, String value); + /*******************************设置参数命令 包括V1************************************/ /** * 绕障类功能开关 @@ -574,6 +568,64 @@ public interface IAdasNetCommApi { */ boolean sendBreakdownSlowDown(int enable); + /** + * 融合模式 + * + * @param cmd 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式,默认1 + * @return boolean + */ + boolean sendFusionMode(int cmd); + + /*******************************设置参数命令 V2************************************/ + /** + * 盲区数据开关 + * + * @param switchCmd 数据开关 + * @return boolean + */ + boolean sendBlindAreaCmd(boolean switchCmd); + + + /** + * 控制V2N进PnC + * + * @param switchCmd true:发给PnC,false:不发给PnC + * @return boolean + */ + boolean sendV2nToPncCmd(boolean switchCmd); + + /** + * 控制V2I进PnC + * + * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 默认false + * @return boolean + */ + boolean sendV2iToPncCmd(boolean switchCmd); + + /*******************************设置参数命令 批量设置************************************/ + + /** + * 批量设置参数命令 + * + * @param param {@link AdasConstants.MapSystemParamType#DETOURING Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#DETOURING_SPEED Value类型:double或double类型String} + * {@link AdasConstants.MapSystemParamType#AEB Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#LANE_CHANGE_RESTRAIN_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#STOP_YIELD_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#HADMAP_SPEED_LIMIT_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#RAMP_THETA_VALID Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#WEAK_NET_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BREAKDOWN_SLOW_DOWN Value类型:int或int类型String} + * {@link AdasConstants.MapSystemParamType#BLIND_AREA Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2N_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#V2I_TO_PNC Value类型:boolean或boolean类型String} + * {@link AdasConstants.MapSystemParamType#FUSION_MODE Value类型:int或int类型String} + * @return boolean + */ + boolean sendSetParamReq(@NonNull Map param); + + /*******************************设置参数命令 获取参数************************************/ + /** * 获取全部参数 * @@ -587,9 +639,9 @@ public interface IAdasNetCommApi { * @param paramType 参数类型:libraries/mogo-adas-data/src/main/proto/personal/adas_constants.proto * @return boolean */ - boolean sendGetParamReq(AdasConstants.MapSystemParamType paramType); - + boolean sendGetParamReq(AdasConstants.MapSystemParamType... paramType); + /*******************************设置参数命令************************************/ /** * 发生行程相关 * type=1或2的时 需要参数 lineName @@ -623,30 +675,6 @@ public interface IAdasNetCommApi { */ boolean sendFSMStatusReasonQuery(int type); - /** - * 控制V2I进PnC - * - * @param switchCmd true:发给Pnc和鹰眼,false:不发给PnC和鹰眼 默认false - * @return boolean - */ - boolean sendV2iToPncCmd(boolean switchCmd); - - /** - * 控制V2N进PnC - * - * @param switchCmd true:发给PnC,false:不发给PnC - * @return boolean - */ - boolean sendV2nToPncCmd(boolean switchCmd); - - /** - * 盲区数据开关 - * - * @param switchCmd 数据开关 - * @return boolean - */ - boolean sendBlindAreaCmd(boolean switchCmd); - /** * 开始大任务响应 * 1、云端下发大任务信息(type: 100001)-> sweeper_task.proto/StartTaskResp 响应信息 diff --git a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java index 944f9c8772..bbdcaeb515 100644 --- a/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java +++ b/libraries/mogo-adas/src/main/java/com/zhidao/support/adas/high/OnAdasListener.java @@ -398,7 +398,7 @@ public interface OnAdasListener { /** * 参数获取应答 *

- * 调用{@link AdasManager#sendGetAllParamReq()}或{@link AdasManager#sendGetParamReq(AdasConstants.MapSystemParamType)} + * 调用{@link AdasManager#sendGetAllParamReq()}或{@link AdasManager#sendGetParamReq(AdasConstants.MapSystemParamType...)} * 如果对应的value是空串,说明没有这个param或者get失败了。重启后值还是在redis里 * * @param header 头