opt mogo obu
This commit is contained in:
@@ -119,9 +119,8 @@ public class V2XObuManager implements IObuCallback, Handler.Callback {
|
||||
MogoObuManager.getInstance().registerListener(mogoObuListener);
|
||||
|
||||
//TODO 测试
|
||||
// MogoObuManager.getInstance().test(icw_data);
|
||||
|
||||
// UiThreadHandler.postDelayed( () -> {
|
||||
// MogoObuManager.getInstance().test(icw_data);
|
||||
// MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedForListenerWithDirection(3, MogoReceiver.ACTION_V2X_FRONT_WARNING);
|
||||
// handleSdkObu(1);
|
||||
//
|
||||
@@ -201,26 +200,61 @@ public class V2XObuManager implements IObuCallback, Handler.Callback {
|
||||
Logger.e("liyz", "onCvxV2vThreatIndInfo ------> " + info.toString());
|
||||
//预警类型 threat_level 3
|
||||
if (info != null) {
|
||||
if (info.getThreat_info() != null && info.getControl() != null &&
|
||||
if (info.getThreat_info() != null /*&& info.getControl() != null*/ &&
|
||||
info.getThreat_info().getThreat_level() == 3) { //看看2的情况
|
||||
//预警方位
|
||||
int direction = V2XUtils.getDirection((float) info.getExt_info().getAzimuth());
|
||||
Log.d("liyz", "direction = " + direction + "---azimuth = " + (float) info.getExt_info().getAzimuth());
|
||||
MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedForListenerWithDirection(direction, MogoReceiver.ACTION_V2X_FRONT_WARNING);
|
||||
int direction = info.getExt_info().getTarget_classification();
|
||||
Logger.d("liyz", "direction = " + direction + "----" + getMessage(direction));
|
||||
MarkerServiceHandler.getApis().getV2XListenerManager().warningChangedForListenerWithDirection(getMessage(direction), MogoReceiver.ACTION_V2X_FRONT_WARNING);
|
||||
|
||||
//处理预警类型
|
||||
int appId = info.getThreat_info().getApp_id();
|
||||
handleSdkObu(getEventType(appId));
|
||||
}
|
||||
|
||||
//预警数据的组装,车辆实时移动和变色 TODO 这里需要obu提供他车列表
|
||||
AdasRecognizedResultDrawer.getInstance().renderAdasRecognizedResult(getResultList(info));
|
||||
//预警数据的组装,车辆实时移动和变色 TODO 这里需要obu提供他车列表 暂时不做
|
||||
// AdasRecognizedResultDrawer.getInstance().renderAdasRecognizedResult(getResultList(info));
|
||||
} else {
|
||||
Log.e("liyz", "info == null ");
|
||||
Logger.e("liyz", "info == null ");
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
private int getMessage(int targetClassification) {
|
||||
switch (targetClassification) {
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_IN_LANE:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_RIGHT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_FAR_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_AHEAD_FAR_RIGHT:
|
||||
return 1;
|
||||
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_BEHIND_IN_LANE:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_BEHIND_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_BEHIND_RIGHT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_BEHIND_FAR_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_BEHIND_FAR_RIGHT:
|
||||
return 2;
|
||||
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_IN_LANE:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_INTERSECTION_LEFT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_FAR_LEFT:
|
||||
return 3;
|
||||
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_RIGHT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_ONCOMING_FAR_RIGHT:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_INTERSECTION_RIGHT:
|
||||
return 4;
|
||||
default:
|
||||
case ObuConstants.TARGET_CLASSIFICATION.TC_UNCLASSIFIED:
|
||||
return 1;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private int getEventType(int appid) {
|
||||
if (appid == ObuConstants.USE_CASE_ID.EBW) {
|
||||
return ObuConstant.TYPE_URGENCY_COLLISION_WARNING;
|
||||
|
||||
Reference in New Issue
Block a user