[6.5.1]Bus考试合并到主分支
This commit is contained in:
@@ -1244,7 +1244,34 @@ class MoGoAutopilotControlProvider :
|
||||
return AdasManager.getInstance().sendRoboBusJinlvM1TaskCmd(roboBusJinlvM1Cmd) > -1
|
||||
}
|
||||
|
||||
@ChainLog(
|
||||
linkChainLog = AdasChain.CHAIN_TYPE_SOCKET_AUTOPILOT,
|
||||
linkCode = AdasChain.CHAIN_SOURCE_ADAS,
|
||||
nodeAliasCode = AdasChain.CHAIN_CODE_ADAS_SEND_PLANNING_CMD,
|
||||
paramIndexes = [0]
|
||||
)
|
||||
override fun sendPlanningCmd(cmd: Int): Boolean {
|
||||
return AdasManager.getInstance().sendPlanningCmd(cmd) > -1
|
||||
}
|
||||
|
||||
@ChainLog(
|
||||
linkChainLog = AdasChain.CHAIN_TYPE_SOCKET_AUTOPILOT,
|
||||
linkCode = AdasChain.CHAIN_SOURCE_ADAS,
|
||||
nodeAliasCode = AdasChain.CHAIN_CODE_ADAS_SEND_PLANNING_CMD,
|
||||
paramIndexes = [0]
|
||||
)
|
||||
override fun sendPlanningLineChangeCmd(cmd: Int): Boolean {
|
||||
return AdasManager.getInstance().sendPlanningLaneChangeCmd(cmd) > -1
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置座椅压力接口
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
*/
|
||||
override fun sendSeatPressure(driver: Boolean, copilot: Boolean, backRow: Boolean): Boolean {
|
||||
return AdasManager.getInstance().sendSeatPressure(driver, copilot, backRow) > -1
|
||||
}
|
||||
|
||||
}
|
||||
@@ -17,7 +17,6 @@ class StartUpTraceNetWorkModel {
|
||||
.create(TraceStartUpApiService::class.java)
|
||||
}
|
||||
|
||||
private var retryTime = 0
|
||||
private var success: ((String) -> Unit)? = null
|
||||
private var error: ((String) -> Unit)? = null
|
||||
@Volatile
|
||||
@@ -29,7 +28,8 @@ class StartUpTraceNetWorkModel {
|
||||
onError: ((String) -> Unit)? = null
|
||||
) {
|
||||
request<BaseResponse<String>> {
|
||||
var map: MutableMap<String, Any> = mutableMapOf()
|
||||
var retryTime = 0
|
||||
var map: MutableMap<String, Any>
|
||||
start {
|
||||
if (success == null) {
|
||||
success = onSuccess
|
||||
@@ -54,11 +54,13 @@ class StartUpTraceNetWorkModel {
|
||||
onSuccess {
|
||||
if (it.result != null) {
|
||||
onSuccess?.invoke(it.result)
|
||||
traceId = ""
|
||||
} else {
|
||||
if (retryTime < 3) {
|
||||
retryTime += 1
|
||||
report()
|
||||
report(id)
|
||||
} else {
|
||||
traceId = ""
|
||||
error?.invoke("startUp report error msg is null")
|
||||
}
|
||||
}
|
||||
@@ -66,13 +68,13 @@ class StartUpTraceNetWorkModel {
|
||||
onError {
|
||||
if (retryTime < 3) {
|
||||
retryTime += 1
|
||||
report()
|
||||
report(id)
|
||||
} else if (it.message != null) {
|
||||
traceId = ""
|
||||
error?.invoke(it.message ?: "startUp report error msg is null")
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.mogo.eagle.core.function.hmi.ui.vehicle
|
||||
|
||||
import android.content.Context
|
||||
import android.os.CountDownTimer
|
||||
import android.util.AttributeSet
|
||||
import android.util.TypedValue.COMPLEX_UNIT_PX
|
||||
import android.view.LayoutInflater
|
||||
@@ -21,6 +22,7 @@ import com.mogo.eagle.core.function.call.autopilot.CallerAutoPilotStatusListener
|
||||
import com.mogo.eagle.core.function.call.autopilot.CallerPlanningActionsListenerManager
|
||||
import com.mogo.eagle.core.function.call.v2x.CallerTrafficLightListenerManager
|
||||
import com.mogo.eagle.core.function.hmi.R
|
||||
import com.mogo.eagle.core.utilcode.util.SoundPoolUtils
|
||||
import com.mogo.eagle.core.utilcode.util.UiThreadHandler
|
||||
import com.zhjt.service_biz.BizConfig
|
||||
import kotlinx.android.synthetic.main.view_pnc_actions.view.*
|
||||
@@ -122,6 +124,24 @@ class PncActionsView @JvmOverloads constructor(
|
||||
AppCompatResources.getDrawable(context, bgResources)
|
||||
tvHmiPncActions.text = actions
|
||||
}
|
||||
//voice tip
|
||||
if(actions == "已超出ODD"){
|
||||
val countDownTimer = object : CountDownTimer(3000, 1000){
|
||||
override fun onTick(p0: Long) {
|
||||
try {
|
||||
SoundPoolUtils.getSoundPool().playSoundWithRedId(context,R.raw.weak_net_tips)
|
||||
}catch (e: Exception){
|
||||
e.printStackTrace()
|
||||
}
|
||||
}
|
||||
|
||||
override fun onFinish() {
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
countDownTimer.start()
|
||||
}
|
||||
} else {
|
||||
tvHmiPncActions.background = null
|
||||
tvHmiPncActions.text = ""
|
||||
|
||||
@@ -94,6 +94,10 @@ class PncActionsHelper {
|
||||
YIELD_TO_VEHICLE_COMING_FROM_BEHIND_VALUE -> {
|
||||
if (driveAction == 1) "正在避让后方来车" else ""
|
||||
}
|
||||
// 考试项
|
||||
OUT_OF_ODD_VALUE -> {
|
||||
if (driveAction == 1 || driveAction == 2 || driveAction == 3) "已超出ODD" else ""
|
||||
}
|
||||
else -> ""
|
||||
}
|
||||
}
|
||||
|
||||
@@ -536,4 +536,14 @@ interface IMoGoAutopilotControlProvider : IMoGoFunctionServerProvider {
|
||||
fun sendRoboBusJinlvM1TaskCmd(roboBusJinlvM1Cmd: SpecialVehicleTaskCmdOuterClass.RoboBusJinlvM1Cmd): Boolean
|
||||
|
||||
fun sendPlanningCmd(cmd: Int): Boolean
|
||||
|
||||
fun sendPlanningLineChangeCmd(cmd: Int): Boolean
|
||||
|
||||
/**
|
||||
* 设置座椅压力接口
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
*/
|
||||
fun sendSeatPressure(driver: Boolean,copilot: Boolean,backRow: Boolean): Boolean
|
||||
}
|
||||
@@ -841,4 +841,18 @@ object CallerAutoPilotControlManager {
|
||||
fun sendPlanningCmd(cmd: Int): Boolean {
|
||||
return providerApi?.sendPlanningCmd(cmd) ?: false
|
||||
}
|
||||
|
||||
fun sendPlanningLineChangeCmd(cmd: Int): Boolean {
|
||||
return providerApi?.sendPlanningLineChangeCmd(cmd) ?: false
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置座椅压力接口
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
*/
|
||||
fun sendSeatPressure(driver: Boolean,copilot: Boolean,backRow: Boolean): Boolean?{
|
||||
return providerApi?.sendSeatPressure(driver, copilot, backRow)
|
||||
}
|
||||
}
|
||||
@@ -14,6 +14,7 @@ import static com.zhidao.support.adas.high.chain.AdasChain.CHAIN_TYPE_SOCKET_AUT
|
||||
import android.content.Context;
|
||||
import android.os.SystemClock;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.annotation.Nullable;
|
||||
@@ -2408,6 +2409,40 @@ public class AdasChannel implements IAdasNetCommApi, FpgaSocket.IWebSocketConnec
|
||||
return sendSetParamReq(AdasConstants.MapSystemParamType.RAMP_THETA_VALID_VALUE, String.valueOf(enable));
|
||||
}
|
||||
|
||||
/**
|
||||
* 座椅压力
|
||||
* TODO 目前仅襄阳牌照考试支持
|
||||
*
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public long sendSeatPressure(boolean driver, boolean copilot, boolean backRow) {
|
||||
Log.i(TAG, "主驾是否有人=" + driver + " 副驾是否有人=" + copilot + " 后排是否有人=" + backRow);
|
||||
int value = 255;
|
||||
if (driver && !copilot && !backRow) {
|
||||
value = 0;
|
||||
} else if (!driver && copilot && !backRow) {
|
||||
value = 1;
|
||||
} else if (driver && copilot && !backRow) {
|
||||
value = 2;
|
||||
} else if (!driver && !copilot && backRow) {
|
||||
value = 3;
|
||||
} else if (driver && !copilot && backRow) {
|
||||
value = 4;
|
||||
} else if (!driver && copilot && backRow) {
|
||||
value = 5;
|
||||
} else if (driver && copilot && backRow) {
|
||||
value = 6;
|
||||
} else if (!driver && !copilot && !backRow) {
|
||||
value = 7;
|
||||
}
|
||||
Log.i(TAG, "\n0:表示仅主驾位有人\n1:表示仅副驾位有人\n2:表示主驾和副驾同时有人\n3:表示仅后排有人\n4:表示主驾有人+后排有人\n5:表示副驾有人+后排有人\n6:表示主驾和副驾同时有人+后排有人\n7: 所有座位都无人\n255:缺省\n下发数据=" + value);
|
||||
return sendSetParamReq(15, String.valueOf(value));
|
||||
}
|
||||
|
||||
/**
|
||||
* 弱网减速停车策略开关
|
||||
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL},详情参见CheckSystemView中的onReceiveReceivedAck
|
||||
|
||||
@@ -935,6 +935,20 @@ public class AdasManager implements IAdasNetCommApi {
|
||||
return mChannel == null ? -1L : mChannel.sendPlanningLaneChangeCmd(laneChangeCmd);
|
||||
}
|
||||
|
||||
/**
|
||||
* 座椅压力
|
||||
* TODO 目前仅襄阳牌照考试支持
|
||||
*
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
* @return boolean
|
||||
*/
|
||||
@Override
|
||||
public long sendSeatPressure(boolean driver, boolean copilot, boolean backRow) {
|
||||
return mChannel == null ? -1L : mChannel.sendSeatPressure(driver, copilot, backRow);
|
||||
}
|
||||
|
||||
/**
|
||||
* 给Planning发送指令
|
||||
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL},详情参见CheckSystemView中的onReceiveReceivedAck
|
||||
|
||||
@@ -899,6 +899,17 @@ public interface IAdasNetCommApi {
|
||||
*/
|
||||
long sendRampThetaValid(int enable);
|
||||
|
||||
/**
|
||||
* 座椅压力
|
||||
* TODO 目前仅襄阳牌照考试支持
|
||||
*
|
||||
* @param driver 主驾是否有人
|
||||
* @param copilot 副驾是否有人
|
||||
* @param backRow 后排是否有人
|
||||
* @return boolean
|
||||
*/
|
||||
long sendSeatPressure(boolean driver, boolean copilot, boolean backRow);
|
||||
|
||||
/**
|
||||
* 弱网减速停车策略开关
|
||||
* 此方法存在域控回执,监听{@link OnAdasListener#onReceiveReceivedAck(ReceivedAck)}回调.使用方法:将此方法的返回值与{@link ReceivedAck#getMsgId()}进行比较,如果相同判断{@link ReceivedAck#getStatus()}是否等于{@link ReceivedAck.Status#NORMAL},详情参见CheckSystemView中的onReceiveReceivedAck
|
||||
|
||||
@@ -16,6 +16,7 @@ public class AdasChain {
|
||||
|
||||
//operation by user
|
||||
public static final String CHAIN_CODE_ADAS_START_AUTOPILOT = "CHAIN_CODE_ADAS_START_AUTOPILOT";
|
||||
public static final String CHAIN_CODE_ADAS_SEND_PLANNING_CMD = "CHAIN_CODE_ADAS_SEND_PLANNING_CMD";
|
||||
public static final String CHAIN_CODE_ADAS_SEND_GLOBAL_PATH = "CHAIN_CODE_ADAS_SEND_GLOBAL_PATH";
|
||||
public static final String CHAIN_CODE_ADAS_SEND_SYSTEM_CMD = "CHAIN_CODE_ADAS_SEND_SYSTEM_CMD";
|
||||
public static final String CHAIN_CODE_ADAS_SEND_TRAJECTORY_DOWNLOAD = "CHAIN_CODE_ADAS_SEND_TRAJECTORY_DOWNLOAD";
|
||||
|
||||
Reference in New Issue
Block a user