[8.2.4][adas][data-center] 增加驾驶模式和否启用AIP选项功能 命令下发和查询接口

This commit is contained in:
xinfengkun
2025-09-15 15:34:45 +08:00
parent d83d08f574
commit 02d94c9886
11 changed files with 250 additions and 41 deletions

View File

@@ -389,6 +389,21 @@ object FunctionBuildConfig {
@JvmField
var isFaultSlowDown = true
/**
* AIP功能开关
* 目前只有bus 司机端
*/
@Volatile
@JvmField
var isActivateAip = false
/**
* 驾驶模式style 0-正常模式 1-安全模式 2-专业模式
* 目前只有bus 司机端
*/
@Volatile
@JvmField
var drivingStyle = 0
/**
* 考试功能面板是否打开
*/

View File

@@ -798,6 +798,20 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider {
*/
fun sendV2iDownPerceptionToPnc(enable: Int): Boolean
/**
* 驾驶模式
*
* @param style 0-正常模式 1-安全模式 2-专业模式
*/
fun sendDrivingStyle(style: Int): Boolean
/**
* 是否启用AIP选项功能
*
* @param enable false: off true:on 默认false
*/
fun sendActivateAip(enable: Boolean): Boolean
/**
* 云端配置控制
* @param type 0:蘑菇云 1:NDE云 2:基础平台云

View File

@@ -1,7 +1,7 @@
package com.mogo.eagle.core.function.api.autopilot
import com.zhjt.mogo.adas.data.bean.*
import mogo.telematics.pad.*
import com.zhjt.mogo.adas.data.bean.AdasParam
import mogo.telematics.pad.MessagePad
interface IMoGoGetParamResponseListener {
@@ -16,5 +16,10 @@ interface IMoGoGetParamResponseListener {
* @param getParamResp 配置参数
* @param adasParam 解析后的配置参数
*/
fun onGetParamResp(header: MessagePad.Header, getParamResp: MessagePad.SetParamReq, adasParam: AdasParam)
fun onGetParamResp(getParamResp: MessagePad.SetParamReq, adasParam: AdasParam){}
/**
* AIP功能开关状态变更 只有变动才回调
*/
fun onChangeAipState(isActivateAip :Boolean){}
}

View File

@@ -1179,6 +1179,24 @@ object CallerAutoPilotControlManager {
return providerApi?.sendNdeDownEventToPnc(enable)?:false
}
/**
* 驾驶模式
*
* @param style 0-正常模式 1-安全模式 2-专业模式
*/
fun sendDrivingStyle(style: Int): Boolean{
return providerApi?.sendDrivingStyle(style)?:false
}
/**
* 是否启用AIP选项功能
*
* @param enable false: off true:on 默认false
*/
fun sendActivateAip(enable: Boolean): Boolean{
return providerApi?.sendActivateAip(enable)?:false
}
/**
* V2I下行感知进PNC开关
* @param enable 0: 不发给PnC 1:发给Pnc

View File

@@ -1,17 +1,34 @@
package com.mogo.eagle.core.function.call.autopilot
import com.mogo.eagle.core.function.api.autopilot.*
import com.mogo.eagle.core.function.call.base.*
import com.zhjt.mogo.adas.data.bean.*
import mogo.telematics.pad.*
import com.mogo.eagle.core.data.config.FunctionBuildConfig
import com.mogo.eagle.core.function.api.autopilot.IMoGoGetParamResponseListener
import com.mogo.eagle.core.function.call.base.CallerBase
import com.zhjt.mogo.adas.data.bean.AdasParam
import mogo.telematics.pad.MessagePad
import kotlin.properties.Delegates
object CallerAutopilotGetParamResponseDispatcher: CallerBase<IMoGoGetParamResponseListener>() {
private var _isActivateAip: Boolean by Delegates.observable(FunctionBuildConfig.isActivateAip) { _, oldValue, newValue ->
if (oldValue != newValue) {
M_LISTENERS.forEach {
val listener = it.value
listener.onChangeAipState(newValue)
}
}
}
fun dispatchResponse(header: MessagePad.Header, getParamResp: MessagePad.SetParamReq, adasParam: AdasParam) {
fun dispatchResponse(getParamResp: MessagePad.SetParamReq, adasParam: AdasParam) {
if (adasParam.activateAip != -1) {
FunctionBuildConfig.isActivateAip = adasParam.activateAip > 0
_isActivateAip = FunctionBuildConfig.isActivateAip
}
if (adasParam.drivingStyle != -1) {
FunctionBuildConfig.drivingStyle = adasParam.drivingStyle
}
M_LISTENERS.forEach {
val listener = it.value
listener.onGetParamResp(header, getParamResp, adasParam)
listener.onGetParamResp(getParamResp, adasParam)
}
}
}

View File

@@ -14,120 +14,135 @@ import mogo.telematics.pad.MessagePad;
public class AdasParam {
/**
* 绕障类功能开关
* -1 0关闭 1开启
* -1查询/域控不存在此数据/解析失败 0关闭 1开启
*/
public final int detouringCmd;
/**
* 变道绕障的目标障碍物速度阈值
* -1:未知
* -1.0:未查询/域控不存在此数据/解析失败
*/
public final double detouringSpeed;
/**
* AEB开关
* -1 0关闭自动紧急制动功能 1启用自动紧急制动功能
* -1查询/域控不存在此数据/解析失败 0关闭自动紧急制动功能 1启用自动紧急制动功能
*/
public final int aebCmd;
/**
* 限制绕障开关
* -1 0默认正常绕障 1限制绕障
* -1查询/域控不存在此数据/解析失败 0默认正常绕障 1限制绕障
*/
public final int laneChangeRestrainValid;
/**
* 停车让行线前避让等待开关
* -1 0默认停车让行线前无需等待 1停车让行线前需要等待
* -1查询/域控不存在此数据/解析失败 0默认停车让行线前无需等待 1停车让行线前需要等待
*/
public final int stopYieldValid;
/**
* 地图限速功能开关
* -1 0默认不使用地图限速功能 1使用地图限速功能
* -1查询/域控不存在此数据/解析失败 0默认不使用地图限速功能 1使用地图限速功能
*/
public final int hadmapSpeedLimitValid;
/**
* 环岛模式开关
* -1 0默认普通模式 1环岛模式
* -1查询/域控不存在此数据/解析失败 0默认普通模式 1环岛模式
*/
public final int rampThetaValid;
/**
* 弱网减速停车策略开关
* -1 0关闭弱网减速停车策略 1默认使用弱网减速停车策略
* -1查询/域控不存在此数据/解析失败 0关闭弱网减速停车策略 1默认使用弱网减速停车策略
*/
public final int weakNetSlowDown;
/**
* m1拼接视频自车位置参数(string),格式:x,y,width,height
* MAP发出的原始数据
* null未查询/域控不存在此数据/解析失败
*/
public final String m1StitchedVideoSelfVehicleParam;
/**
* m1拼接视频自车位置参数
* 解析后的数据
* 为空的原因:未查询此数据、工控机不存在此数据解析失败
* null未查询/域控不存在此数据/解析失败
*/
public final M1StitchedVideoSelfVehicleParam m1StitchedVideoSelfVehicleParamParse;
/**
* 故障减速停车策路开关
* -1 0关闭故障减速停车策略 1默认使用故障减速停车策略
* -1查询/域控不存在此数据/解析失败 0关闭故障减速停车策略 1默认使用故障减速停车策略
*/
public final int breakdownSlowDown;
/**
* 盲区开关
* 0: off 1:on
* -1未查询/域控不存在此数据/解析失败 0: off 1:on
*/
public final int blindArea;
/**
* 融合v2n开关 NDE下行事件数据进pnc
* 0:不发给PnC 1:发给Pnc
* -1未查询/域控不存在此数据/解析失败 0:不发给PnC 1:发给Pnc
*/
public final int v2nToPnc;
/**
* 融合v2i开关 V2I下行感知数据进pnc
* 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼默认0
* -1未查询/域控不存在此数据/解析失败 0:不发给PnC和鹰眼 1:发给Pnc和鹰眼默认0
*/
public final int v2iToPnc;
/**
* 融合模式
* 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式默认1
* -1未查询/域控不存在此数据/解析失败 1:全融合模式 2:盲区模式 3:超视距模式 4:透传模式 5:纯路侧模式默认1
*/
public final int fusionMode;
/**
* 座椅状态(座椅压力)
* 0:表示仅主驾位有人,1:表示仅副驾位有人,2:表示主驾和副驾同时有人,3:表示仅后排有人,4:表示主驾有人+后排有人,5:表示副驾有人+后排有人,6:表示主驾和副驾同时有人+后排有人,7: 所有座位都无人, 255:缺省
* -1未查询/域控不存在此数据/解析失败 0:表示仅主驾位有人,1:表示仅副驾位有人,2:表示主驾和副驾同时有人,3:表示仅后排有人,4:表示主驾有人+后排有人,5:表示副驾有人+后排有人,6:表示主驾和副驾同时有人+后排有人,7: 所有座位都无人, 255:缺省
*/
public final int seatState;
/**
* 座椅状态(座椅压力)
* 解析后的数据
* 为空的原因:未查询此数据、工控机不存在此数据解析失败
* null未查询/域控不存在此数据/解析失败
*/
public final SeatState seatStateParse;
/**
* 超车的最大速度阈值
* m/s, 范围[3, 12.5]
* -1.0:未查询/域控不存在此数据/解析失败
*/
public final double overtakeMaxSpeed;
/**
* 故障模拟指令
* 0:无模拟 1:线控失效
* -1未查询/域控不存在此数据/解析失败 0:无模拟 1:线控失效
*
*/
public final int faultSimulationCmd;
/**
* 会车开关
* 0:关 1:开
* -1未查询/域控不存在此数据/解析失败 0:关 1:开
*/
public final int parkVehCross;
/**
* 超车开关
* 0:关 1:开
* -1未查询/域控不存在此数据/解析失败 0:关 1:开
*/
public final int parkVehOvertake;
/**
* NDE下行感知数据进pnc
* 0:不发给PnC 1:发给Pnc
* -1未查询/域控不存在此数据/解析失败 0:不发给PnC 1:发给Pnc
*/
public final int perceptionToPnc;
/**
* 驾驶模式
* -1未查询/域控不存在此数据/解析失败 0-正常模式 1-安全模式 2-专业模式
*/
public final int drivingStyle;
/**
* 是否启用AIP选项功能
* -1未查询/域控不存在此数据/解析失败 0:关 1:开
*/
public final int activateAip;
public AdasParam(MessagePad.SetParamReq param) {
int detouringCmd = -1;
@@ -152,6 +167,8 @@ public class AdasParam {
int parkVehCross = -1;
int parkVehOvertake = -1;
int perceptionToPnc = -1;
int drivingStyle = -1;
int activateAip = -1;
if (param != null) {
int size = param.getReqsCount();
if (size > 0) {
@@ -272,6 +289,14 @@ public class AdasParam {
if (!TextUtils.isEmpty(value)) {
perceptionToPnc = Integer.parseInt(value);
}
} else if (type == AdasConstants.MapSystemParamType.DRIVING_STYLE_VALUE) {
if (!TextUtils.isEmpty(value)) {
drivingStyle = Integer.parseInt(value);
}
} else if (type == AdasConstants.MapSystemParamType.ACTIVATE_AIP_VALUE) {
if (!TextUtils.isEmpty(value)) {
activateAip = Integer.parseInt(value);
}
}
}
}
@@ -298,6 +323,8 @@ public class AdasParam {
this.parkVehCross = parkVehCross;
this.parkVehOvertake = parkVehOvertake;
this.perceptionToPnc = perceptionToPnc;
this.drivingStyle = drivingStyle;
this.activateAip = activateAip;
}
@Override
@@ -364,6 +391,12 @@ public class AdasParam {
if (perceptionToPnc != -1) {
msg += "NDE下行感知数据进PNC=" + (perceptionToPnc == 0 ? "不发给PnC" : "发给PnC");
}
if (drivingStyle != -1) {
msg += "驾驶模式=" + (drivingStyle == 0 ? "正常模式" : drivingStyle == 1 ? "安全模式" : drivingStyle == 2 ? "专业模式" : "其他模式,值:" + drivingStyle) + '\n';
}
if (activateAip != -1) {
msg += "AIP功能=" + (activateAip == 0 ? "" : "") + '\n';
}
return msg;
// return "绕障类功能开关=" + (detouringCmd == -1 ? "未知" : detouringCmd == 0 ? "关" : "开") +

View File

@@ -885,12 +885,15 @@ message SetOneParam
// 19: 会车开关(bool) 0: off 1:on 默认0
// 20: 超车开关(bool) 0: off 1:on 默认0
// 21: NDE下行感知数据进pnc(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_perception_flag
// 22: /autopilot/driving_style(int) 驾驶模式( 0-正常模式 1-安全模式 2-专业模式)
// 23: /autopilot/is_activate_AIP(bool) 是否启用AIP选项功能
string value = 2; // 转成字符串的值
}
message SetParamReq
{
repeated SetOneParam reqs = 1;
bool need_ack = 2; //是否需要回传rosparam值给pad仅用于22、23
}
//message definition for MsgTypeTripInfoEvent

View File

@@ -26,6 +26,9 @@ enum MapSystemParamType{
PARK_VEH_CROSS = 19;//19: 会车开关(bool) 0: off 1:on 默认0
PARK_VEH_OVERTAKE = 20;//20: 超车开关(bool) 0: off 1:on 默认0
PERCEPTION_TO_PNC = 21;//21: NDE下行感知数据进pnc(bool) 0:不发给PnC 1:发给Pnc /telematics/fusion/v2n_perception_flag
DRIVING_STYLE = 22;//22: /autopilot/driving_style(int) 驾驶模式( 0-正常模式 1-安全模式 2-专业模式)
ACTIVATE_AIP = 23;//23: /autopilot/is_activate_AIP(bool) 是否启用AIP选项功能
}
/**

View File

@@ -63,7 +63,6 @@ import com.zhjt.mogo.adas.data.sweeper.task.stop.SweeperTaskStop;
import com.zhjt.mogo.adas.utils.ByteUtil;
import com.zhjt.service.chain.ChainLog;
import java.util.HashMap;
import java.util.HashSet;
import java.util.List;
import java.util.Map;
@@ -2260,14 +2259,22 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
private long sendSetParamReq(int type, String value) {
MessagePad.SetOneParam oneParam = MessagePad.SetOneParam
.newBuilder().setType(type).setValue(value).build();
MessagePad.SetParamReq req = MessagePad.SetParamReq
private long sendSetParamReq(int type, @Nullable String value) {
MessagePad.SetOneParam.Builder builder = MessagePad.SetOneParam
.newBuilder().setType(type);
if (!TextUtils.isEmpty(value)) {
builder.setValue(value);
}
MessagePad.SetOneParam oneParam = builder.build();
MessagePad.SetParamReq.Builder reqBuilder = MessagePad.SetParamReq
.newBuilder()
.addReqs(oneParam)
.build();
return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ, req.toByteArray());
.addReqs(oneParam);
if (AdasConstants.MapSystemParamType.DRIVING_STYLE_VALUE == type || AdasConstants.MapSystemParamType.ACTIVATE_AIP_VALUE == type) {
reqBuilder.setNeedAck(true);
}
return sendPBMessage(MessageType.TYPE_SEND_SET_PARAM_REQ, reqBuilder.build().toByteArray());
}
/**
@@ -2315,7 +2322,9 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#PARK_VEH_CROSS Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PARK_VEH_OVERTAKE Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#DRIVING_STYLE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#ACTIVATE_AIP Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
@@ -2345,6 +2354,9 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
oneParamBuilder.setValue(String.valueOf(value));
}
builder.addReqs(oneParamBuilder);
if (AdasConstants.MapSystemParamType.DRIVING_STYLE == key || AdasConstants.MapSystemParamType.ACTIVATE_AIP == key) {
builder.setNeedAck(true);
}
}
}
}
@@ -2651,6 +2663,36 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
return sendSetParamReq(AdasConstants.MapSystemParamType.V2I_TO_PNC_VALUE, String.valueOf(enable));
}
/**
* 驾驶模式
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param style 0-正常模式 1-安全模式 2-专业模式
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
@Override
public long sendDrivingStyle(int style) {
return sendSetParamReq(AdasConstants.MapSystemParamType.DRIVING_STYLE_VALUE, String.valueOf(style));
}
/**
* 是否启用AIP选项功能
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param enable 0: off 1:on 默认0
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
@Override
public long sendActivateAip(int enable) {
return sendSetParamReq(AdasConstants.MapSystemParamType.ACTIVATE_AIP_VALUE, String.valueOf(enable));
}
/**
* 盲区数据开关
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
@@ -2745,6 +2787,8 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
.addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.SEAT_STATE_VALUE))
.addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.OVERTAKE_MAX_SPEED_VALUE))
.addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.PERCEPTION_TO_PNC_VALUE))
.addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.DRIVING_STYLE_VALUE))
.addReqs(MessagePad.SetOneParam.newBuilder().setType(AdasConstants.MapSystemParamType.ACTIVATE_AIP_VALUE))
.build();
} else {
MessagePad.SetParamReq.Builder builder = MessagePad.SetParamReq.newBuilder();
@@ -3109,7 +3153,7 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
public long sendOtaPadMsgQuery(@Nullable String queryStr) {
SsmInfo.PureStr.Builder builder = SsmInfo.PureStr.newBuilder();
builder.setData(TextUtils.isEmpty(queryStr) ? "" : queryStr);
return sendSsmFuncMsg(false,system_master.SsmInfo.MessageType.OTA_PAD_MSG,builder.build().toByteString());
return sendSsmFuncMsg(false, system_master.SsmInfo.MessageType.OTA_PAD_MSG, builder.build().toByteString());
}
/**

View File

@@ -1485,6 +1485,36 @@ public class AdasManager implements IAdasNetCommApi {
return mChannel == null ? -1L : mChannel.sendV2iDownPerceptionToPnc(enable);
}
/**
* 驾驶模式
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param style 0-正常模式 1-安全模式 2-专业模式
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
@Override
public long sendDrivingStyle(int style) {
return mChannel == null ? -1L : mChannel.sendDrivingStyle(style);
}
/**
* 是否启用AIP选项功能
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param enable 0: off 1:on 默认0
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
@Override
public long sendActivateAip(int enable) {
return mChannel == null ? -1L : mChannel.sendActivateAip(enable);
}
/**
* 盲区数据开关
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
@@ -1552,7 +1582,9 @@ public class AdasManager implements IAdasNetCommApi {
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#PARK_VEH_CROSS Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PARK_VEH_OVERTAKE Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#DRIVING_STYLE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#ACTIVATE_AIP Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列

View File

@@ -1038,6 +1038,29 @@ public interface IAdasNetCommApi {
*/
long sendV2iDownPerceptionToPnc(int enable);
/**
* 驾驶模式
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param style 0-正常模式 1-安全模式 2-专业模式
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
long sendDrivingStyle(int style);
/**
* 是否启用AIP选项功能
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
*
* @param enable 0: off 1:on 默认0
* @return 消息是否添加到WS消息发送队列返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
* * =0表示乘客屏模式添加到WS发送消息队列
* * -1L添加到WS发送消息队列失败
*/
long sendActivateAip(int enable);
/*******************************设置参数命令 V2************************************/
/**
* 盲区数据开关
@@ -1099,7 +1122,9 @@ public interface IAdasNetCommApi {
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#PARK_VEH_CROSS Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PARK_VEH_OVERTAKE Value类型int或int类型String} TODO 域控暂时未实现查询
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#PERCEPTION_TO_PNC Value类型boolean或boolean类型String}
* {@link AdasConstants.MapSystemParamType#DRIVING_STYLE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#ACTIVATE_AIP Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列