25using ::apollo::drivers::canbus::Byte;
34 static const uint32_t PERIOD = 20 * 1000;
40 chassis->mutable_park_command_104()->set_park_target(
41 park_target(bytes, length));
42 chassis->mutable_park_command_104()->set_park_en_ctrl(
43 park_en_ctrl(bytes, length));
44 chassis->mutable_park_command_104()->set_checksum_104(
45 checksum_104(bytes, length));
49 set_p_park_target(data, park_target_);
50 set_p_park_en_ctrl(data, park_en_ctrl_);
52 data[0] ^ data[1] ^ data[2] ^ data[3] ^ data[4] ^ data[5] ^ data[6];
53 set_p_checksum_104(data, checksum_104_);
64 checksum_104_ = checksum_104;
71void Parkcommand104::set_p_checksum_104(uint8_t* data,
int checksum_104) {
72 checksum_104 = ProtocolData::BoundedValue(0, 255, checksum_104);
75 Byte to_set(data + 7);
76 to_set.set_value(x, 0, 8);
81 park_target_ = park_target;
89void Parkcommand104::set_p_park_target(
93 Byte to_set(data + 1);
94 to_set.set_value(x, 0, 1);
99 park_en_ctrl_ = park_en_ctrl;
107void Parkcommand104::set_p_park_en_ctrl(
109 int x = park_en_ctrl;
111 Byte to_set(data + 0);
112 to_set.set_value(x, 0, 1);
116 const std::uint8_t* bytes, int32_t length)
const {
118 int32_t x = t0.get_byte(0, 3);
126 const std::uint8_t* bytes, int32_t length)
const {
128 int32_t x = t0.get_byte(0, 1);
135int Parkcommand104::checksum_104(
const std::uint8_t* bytes,
136 int32_t length)
const {
138 int32_t x = t0.get_byte(0, 8);
Parkcommand104 * set_park_en_ctrl(Park_command_104::Park_en_ctrlType park_en_ctrl)
void UpdateData(uint8_t *data) override
Parkcommand104 * set_checksum_104(int checksum_104)
void Parse(const std::uint8_t *bytes, int32_t length, Devkit *chassis) const override
Parkcommand104 * set_park_target(Park_command_104::Park_targetType park_target)
uint32_t GetPeriod() const override