[644 pnc][adas] 增加 PNC 会车超车接口

This commit is contained in:
xinfengkun
2024-07-15 19:38:21 +08:00
parent f0f92af3df
commit 59b2c7d900
5 changed files with 100 additions and 0 deletions

View File

@@ -643,6 +643,9 @@ message SetOneParam
// 15座椅状态(int) 0:表示仅主驾位有人,1:表示仅副驾位有人,2:表示主驾和副驾同时有人,3:表示仅后排有人,4:表示主驾有人+后排有人,5:表示副驾有人+后排有人,6:表示主驾和副驾同时有人+后排有人,7: 所有座位都无人, 255:缺省
// 16: 超车的最大速度阈值(double, m/s) T1/T2: 范围[3, 12.5], 默认值10
// 17: 故障模拟指令(int) default:0, 1:线控失效
// 18: 碰撞上报(null)
// 19: 会车开关(bool) 0: off 1:on 默认0
// 20: 超车开关(bool) 0: off 1:on 默认0
string value = 2; // 转成字符串的值
}

View File

@@ -22,6 +22,9 @@ enum MapSystemParamType{
SEAT_STATE = 15;//15: 座椅状态(int) 0:表示仅主驾位有人,1:表示仅副驾位有人,2:表示主驾和副驾同时有人,3:表示仅后排有人,4:表示主驾有人+后排有人,5:表示副驾有人+后排有人,6:表示主驾和副驾同时有人+后排有人,7: 所有座位都无人, 255:缺省
OVERTAKE_MAX_SPEED = 16;//16: 超车的最大速度阈值(double, m/s, 范围[3, 12.5])
FAULT_SIMULATION_CMD = 17;//17: 故障模拟指令(int) default:0(do nothing), 1:线控失效
COLLISION_REPORTING = 18;//18: 碰撞上报(null)
PASS_EACH_OTHER = 19;//19: 会车开关(bool) 0: off 1:on 默认0
OVERTAKE = 20;//20: 超车开关(bool) 0: off 1:on 默认0
}
/**

View File

@@ -2248,6 +2248,9 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
* {@link AdasConstants.MapSystemParamType#SEAT_STATE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE_MAX_SPEED Value类型double或double类型String}
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#COLLISION_REPORTING Value类型null}
* {@link AdasConstants.MapSystemParamType#PASS_EACH_OTHER Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列
@@ -2455,6 +2458,36 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
return sendSetParamReq(AdasConstants.MapSystemParamType.OVERTAKE_MAX_SPEED_VALUE, String.valueOf(maxSpeed));
}
/**
* 会车开关
* 此方法存在域控回执,监听{@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 sendPassEachOther(int enable) {
return sendSetParamReq(AdasConstants.MapSystemParamType.PASS_EACH_OTHER_VALUE, String.valueOf(enable));
}
/**
* 超车开关
* 此方法存在域控回执,监听{@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 sendOvertake(int enable) {
return sendSetParamReq(AdasConstants.MapSystemParamType.OVERTAKE_VALUE, String.valueOf(enable));
}
/**
* 盲区数据开关
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck

View File

@@ -1371,6 +1371,36 @@ public class AdasManager implements IAdasNetCommApi {
return mChannel == null ? -1L : mChannel.sendOvertakeMaxSpeed(maxSpeed);
}
/**
* 会车开关
* 此方法存在域控回执,监听{@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 sendPassEachOther(int enable) {
return mChannel == null ? -1L : mChannel.sendPassEachOther(enable);
}
/**
* 超车开关
* 此方法存在域控回执,监听{@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 sendOvertake(int enable) {
return mChannel == null ? -1L : mChannel.sendOvertake(enable);
}
/**
* 盲区数据开关
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL}详情参见CheckSystemView中的onReceiveReceivedAck
@@ -1436,6 +1466,9 @@ public class AdasManager implements IAdasNetCommApi {
* {@link AdasConstants.MapSystemParamType#SEAT_STATE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE_MAX_SPEED Value类型double或double类型String}
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#COLLISION_REPORTING Value类型null}
* {@link AdasConstants.MapSystemParamType#PASS_EACH_OTHER Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列

View File

@@ -946,6 +946,31 @@ public interface IAdasNetCommApi {
*/
long sendOvertakeMaxSpeed(double maxSpeed);
/**
* 会车开关
* 此方法存在域控回执,监听{@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 sendPassEachOther(int enable);
/**
* 超车开关
* 此方法存在域控回执,监听{@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 sendOvertake(int enable);
/*******************************设置参数命令 V2************************************/
/**
* 盲区数据开关
@@ -1005,6 +1030,9 @@ public interface IAdasNetCommApi {
* {@link AdasConstants.MapSystemParamType#SEAT_STATE Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE_MAX_SPEED Value类型double或double类型String}
* {@link AdasConstants.MapSystemParamType#FAULT_SIMULATION_CMD Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#COLLISION_REPORTING Value类型null}
* {@link AdasConstants.MapSystemParamType#PASS_EACH_OTHER Value类型int或int类型String}
* {@link AdasConstants.MapSystemParamType#OVERTAKE Value类型int或int类型String}
* @return 消息是否添加到WS消息发送队列。由于批量设置参数调用的域控接口存在不同实际调用域控最多2个接口调用次数最多4次所以最多返回4条ID数据
* * 返回值为非0的正整数时表示下发消息的消息ID
* * >=0表示添加到WS发送消息队列