Commit 1ff29918 authored by p x's avatar p x
Browse files

解析路径规划

parent 3b1612be
package com.cusc.adas.v2x.clouddecision.vo; package com.cusc.adas.v2x.clouddecision.vo;
import com.cusc.adas.v2x.utils.FieldDef; import com.cusc.adas.v2x.utils.FieldDef;
import com.cusc.adas.v2x.utils.NumFlag;
import com.cusc.adas.v2x.utils.Order; import com.cusc.adas.v2x.utils.Order;
import com.cusc.adas.v2x.utils.RefNumFlag; import com.cusc.adas.v2x.utils.RefNumFlag;
import com.cusc.adas.v2x.vo.Position2D; import com.cusc.adas.v2x.vo.Position2D;
import java.util.List;
/**** /****
* 局部路径点 * 局部路径点
* **/ * **/
public class PathPath { public class PathPath {
// 分段编号长度 // // 分段编号长度
@Order(1) // @Order(1)
private short pathIdLen; // private byte pathIdLen; // 服务器给2 我接的1
//分段编号 // //分段编号
@Order(2) // @Order(2)
@RefNumFlag(value="pathIdLen") // @RefNumFlag(value="pathIdLen")
@FieldDef(type="BYTE",isAutoLength=true) // @FieldDef(type="BYTE",isAutoLength=true)
private String pathId; // private String pathId; // 这里出问题 “11”
//关联 GNSS 点 数量 //关联 GNSS 点 数量
@Order(3) @Order(1)
private short pointsNum; private short pointsNum; // 服务器给的4 我1
//关联 GNSS 点 位置 //关联 GNSS 点 位置
@Order(4) @Order(2)
private Position2D pointsPos; @RefNumFlag(value="pointsNum")
private List<Position2D> pointsPos;
//分段长度 //分段长度
@Order(5) // @Order(5)
private long pathLen; // private long pathLen; // 服务器给的
//分段名称长度 // //分段名称长度
@Order(6) // @Order(6)
private short pathNameLen; // private short pathNameLen; // 服务器给的1
//分段名称 // //分段名称
@Order(7) // @Order(7)
@RefNumFlag(value="pathNameLen") // @RefNumFlag(value="pathNameLen") // 服务器给的1
@FieldDef(type="BYTE",isAutoLength=true) // @FieldDef(type="BYTE",isAutoLength=true)
private String pathName; // private String pathName;
//分段类型 1:路口内连接路段,0xFF 表示缺省 2=红色 3=绿色 4=感知车(画感知车) //分段类型 1:路口内连接路段,0xFF 表示缺省 2=红色 3=绿色 4=感知车(画感知车)
@Order(7) @Order(3) // 服务器给的
private short pathType; private short pathType;
} }
...@@ -3,6 +3,7 @@ package com.cusc.adas.v2x.clouddecision.vo; ...@@ -3,6 +3,7 @@ package com.cusc.adas.v2x.clouddecision.vo;
import com.cusc.adas.v2x.utils.DependencyDef; import com.cusc.adas.v2x.utils.DependencyDef;
import com.cusc.adas.v2x.utils.DynamicsClassDef; import com.cusc.adas.v2x.utils.DynamicsClassDef;
import com.cusc.adas.v2x.utils.FieldDef; import com.cusc.adas.v2x.utils.FieldDef;
import com.cusc.adas.v2x.utils.NumFlag;
import com.cusc.adas.v2x.utils.OffsetDef; import com.cusc.adas.v2x.utils.OffsetDef;
import com.cusc.adas.v2x.utils.Order; import com.cusc.adas.v2x.utils.Order;
import com.cusc.adas.v2x.utils.RefNumFlag; import com.cusc.adas.v2x.utils.RefNumFlag;
...@@ -44,6 +45,7 @@ public class RoutePlan { ...@@ -44,6 +45,7 @@ public class RoutePlan {
//路线规划数据 长度 //路线规划数据 长度
@Order(8) @Order(8)
@NumFlag
private int dataLen; private int dataLen;
//长度为 N 个字节,其中 N 为路线规划数据长度,路线规划数据结构内 //长度为 N 个字节,其中 N 为路线规划数据长度,路线规划数据结构内
@Order(9) @Order(9)
......
...@@ -381,6 +381,7 @@ public class Parse { ...@@ -381,6 +381,7 @@ public class Parse {
field.set(t, str); field.set(t, str);
} else if (type == short.class) { } else if (type == short.class) {
field.set(t, data.readUnsignedByte()); field.set(t, data.readUnsignedByte());
int a=0;
} else if (type == int.class) { } else if (type == int.class) {
field.set(t, data.readUnsignedShort()); field.set(t, data.readUnsignedShort());
} else if (type == long.class && fieldDef == null) { } else if (type == long.class && fieldDef == null) {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment