20#include "glog/logging.h"
27namespace racobit_radar {
36 int obj_id = object_id(bytes, length);
38 for (
int i = 0; i < racobit_radar->contiobs_size(); ++i) {
40 auto obs = racobit_radar->mutable_contiobs(i);
41 obs->set_longitude_dist_rms(
42 LINEAR_RMS[longitude_dist_rms(bytes, length)]);
43 obs->set_lateral_dist_rms(
LINEAR_RMS[lateral_dist_rms(bytes, length)]);
44 obs->set_longitude_vel_rms(
LINEAR_RMS[longitude_vel_rms(bytes, length)]);
45 obs->set_lateral_vel_rms(
LINEAR_RMS[lateral_vel_rms(bytes, length)]);
46 obs->set_longitude_accel_rms(
47 LINEAR_RMS[longitude_accel_rms(bytes, length)]);
48 obs->set_lateral_accel_rms(
LINEAR_RMS[lateral_accel_rms(bytes, length)]);
49 obs->set_oritation_angle_rms(
50 ANGLE_RMS[oritation_angle_rms(bytes, length)]);
51 obs->set_probexist(
PROBOFEXIST[probexist(bytes, length)]);
52 obs->set_meas_state(meas_state(bytes, length));
58int ObjectQualityInfo60C::object_id(
const std::uint8_t* bytes,
59 int32_t length)
const {
61 int32_t x = t0.get_byte(0, 8);
67int ObjectQualityInfo60C::longitude_dist_rms(
const std::uint8_t* bytes,
68 int32_t length)
const {
70 int32_t x = t0.get_byte(3, 5);
76int ObjectQualityInfo60C::lateral_dist_rms(
const std::uint8_t* bytes,
77 int32_t length)
const {
79 int32_t x = t0.get_byte(0, 3);
82 int32_t t = t1.get_byte(6, 2);
91int ObjectQualityInfo60C::longitude_vel_rms(
const std::uint8_t* bytes,
92 int32_t length)
const {
94 int32_t x = t0.get_byte(1, 5);
100int ObjectQualityInfo60C::lateral_vel_rms(
const std::uint8_t* bytes,
101 int32_t length)
const {
103 int32_t x = t0.get_byte(0, 1);
106 int32_t t = t1.get_byte(4, 4);
115int ObjectQualityInfo60C::longitude_accel_rms(
const std::uint8_t* bytes,
116 int32_t length)
const {
118 int32_t x = t0.get_byte(0, 4);
121 int32_t t = t1.get_byte(7, 1);
130int ObjectQualityInfo60C::lateral_accel_rms(
const std::uint8_t* bytes,
131 int32_t length)
const {
133 int32_t x = t0.get_byte(2, 5);
139int ObjectQualityInfo60C::oritation_angle_rms(
const std::uint8_t* bytes,
140 int32_t length)
const {
142 int32_t x = t0.get_byte(0, 2);
145 int32_t t = t1.get_byte(5, 3);
154int ObjectQualityInfo60C::probexist(
const std::uint8_t* bytes,
155 int32_t length)
const {
157 int32_t x = t0.get_byte(5, 3);
163int ObjectQualityInfo60C::meas_state(
const std::uint8_t* bytes,
164 int32_t length)
const {
166 int32_t x = t0.get_byte(2, 3);
The class of one byte, which is 8 bits.
void Parse(const std::uint8_t *bytes, int32_t length, RacobitRadar *racobit_radar) const override
const double LINEAR_RMS[32]
const double PROBOFEXIST[8]
const double ANGLE_RMS[32]
optional int32 obstacle_id
repeated RacobitRadarObs contiobs