[change]add planning障碍物

This commit is contained in:
xinfengkun
2022-06-07 18:25:19 +08:00
parent c2de7226a6
commit 6c941101cd
11 changed files with 121 additions and 153 deletions

View File

@@ -96,6 +96,14 @@ public interface OnAdasListener {
*/
void onPointCloud(MessagePad.Header header, MogoPointCloudOuterClass.MogoPointCloud pointCloud);
/**
* planning障碍物
*
* @param header 头
* @param planningObjects 数据
*/
void onPlanningObjects(MessagePad.Header header, MessagePad.PlanningObjects planningObjects);
/**
* 自动驾驶设备基础信息请求
*

View File

@@ -21,6 +21,7 @@ public enum MessageType {
TYPE_RECEIVE_PERCEPTION_TRAFFIC_LIGHT(MessagePad.MessageType.MsgTypePerceptionTrafficLight, "感知红绿灯"),
TYPE_RECEIVE_PREDICTION_OBSTACLE_TRAJECTORY(MessagePad.MessageType.MsgTypePredictionObstacleTrajectory, "他车轨迹预测"),
TYPE_RECEIVE_POINT_CLOUD(MessagePad.MessageType.MsgTypePointCloud, "点云透传"),
TYPE_RECEIVE_PLANNING_OBJECTS(MessagePad.MessageType.MsgTypePlanningObjects, "planning障碍物"),
TYPE_RECEIVE_BASIC_INFO_REQ(MessagePad.MessageType.MsgTypeBasicInfoReq, "自动驾驶设备基础信息请求"),
TYPE_SEND_BASIC_INFO_RESP(MessagePad.MessageType.MsgTypeBasicInfoResp, "自动驾驶设备基础信息应答"),

View File

@@ -20,6 +20,7 @@ public class MyMessageFactory implements IMyMessageFactory {
private IMsg perceptionTrafficLightMessage;//感知红绿灯
private IMsg predictionObstacleTrajectoryMessage;//他车轨迹预测
private IMsg pointCloudMessage;//透传点云数据
private IMsg planningObjectsMessage;//planning障碍物
private IMsg basicInfoReqMessage;//自动驾驶设备基础信息请求
private IMsg carConfigRespMessage;//车机基础信息应答
@@ -80,11 +81,17 @@ public class MyMessageFactory implements IMyMessageFactory {
}
return predictionObstacleTrajectoryMessage;
} else if (messageType == MessageType.TYPE_RECEIVE_POINT_CLOUD.typeCode) {
//他车轨迹预测
//点云透传
if (pointCloudMessage == null) {
pointCloudMessage = new PointCloudMessage();
}
return pointCloudMessage;
} else if (messageType == MessageType.TYPE_RECEIVE_PLANNING_OBJECTS.typeCode) {
//planning障碍物
if (planningObjectsMessage == null) {
planningObjectsMessage = new PlanningObjectsMessage();
}
return planningObjectsMessage;
} else if (messageType == MessageType.TYPE_RECEIVE_BASIC_INFO_REQ.typeCode) {
//自动驾驶设备基础信息请求
if (basicInfoReqMessage == null) {

View File

@@ -0,0 +1,22 @@
package com.zhidao.support.adas.high.msg;
import com.google.protobuf.InvalidProtocolBufferException;
import com.zhidao.support.adas.high.OnAdasListener;
import com.zhidao.support.adas.high.protocol.RawData;
import mogo.telematics.pad.MessagePad;
/**
* planning障碍物
*/
public class PlanningObjectsMessage extends MyAbstractMessageHandler {
@Override
public void handlerMsg(RawData raw, OnAdasListener adasListener) throws InvalidProtocolBufferException {
MessagePad.PlanningObjects planningObjects = MessagePad.PlanningObjects.parser().parseFrom(raw.originalData.toByteArray(), raw.getOffsetValue(), raw.getPackageLengthValue() - raw.getOffsetValue());
if (adasListener != null) {
adasListener.onPlanningObjects(raw.getHeader(), planningObjects);
}
}
}