Apollo 10.0
自动驾驶开放平台
brake_status__511.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2019 The Apollo Authors. All Rights Reserved.
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 *****************************************************************************/
16
17#pragma once
18
19#include "modules/canbus_vehicle/ch/proto/ch.pb.h"
21
22namespace apollo {
23namespace canbus {
24namespace ch {
25
27 ::apollo::canbus::Ch> {
28 public:
29 static const int32_t ID;
31 void Parse(const std::uint8_t* bytes, int32_t length,
32 Ch* chassis) const override;
33
34 private:
35 // config detail: {'bit': 48, 'enum': {0: 'OVERSPD_ENV_NOENV', 1:
36 // 'OVERSPD_ENV_OVERSPEED_ENV'}, 'is_signed_var': False, 'len': 8, 'name':
37 // 'OVERSPD_ENV', 'offset': 0.0, 'order': 'intel', 'physical_range': '[0|1]',
38 // 'physical_unit': '', 'precision': 1.0, 'type': 'enum'}
39 Brake_status__511::Overspd_envType overspd_env(const std::uint8_t* bytes,
40 const int32_t length) const;
41
42 // config detail: {'bit': 0, 'description': 'brake pedal enable bit(Status)',
43 // 'enum': {0: 'BRAKE_PEDAL_EN_STS_DISABLE', 1: 'BRAKE_PEDAL_EN_STS_ENABLE',
44 // 2: 'BRAKE_PEDAL_EN_STS_TAKEOVER'}, 'is_signed_var': False, 'len': 8,
45 // 'name': 'BRAKE_PEDAL_EN_STS', 'offset': 0.0, 'order': 'intel',
46 // 'physical_range': '[0|2]', 'physical_unit': '', 'precision': 1.0, 'type':
47 // 'enum'}
49 const std::uint8_t* bytes, const int32_t length) const;
50
51 // config detail: {'bit': 8, 'description': 'Percentage of brake
52 // pedal(Status)', 'is_signed_var': False, 'len': 8, 'name':
53 // 'BRAKE_PEDAL_STS', 'offset': 0.0, 'order': 'intel', 'physical_range':
54 // '[0|100]', 'physical_unit': '%', 'precision': 1.0, 'type': 'int'}
55 int brake_pedal_sts(const std::uint8_t* bytes, const int32_t length) const;
56
57 // config detail: {'bit': 16, 'enum': {0: 'BRAKE_ERR_NOERR', 1:
58 // 'BRAKE_ERR_BRAKE_SYSTEM_ERR'}, 'is_signed_var': False, 'len': 8, 'name':
59 // 'BRAKE_ERR', 'offset': 0.0, 'order': 'intel', 'physical_range': '[0|1]',
60 // 'physical_unit': '', 'precision': 1.0, 'type': 'enum'}
61 Brake_status__511::Brake_errType brake_err(const std::uint8_t* bytes,
62 const int32_t length) const;
63
64 // config detail: {'bit': 24, 'enum': {0: 'EMERGENCY_BTN_ENV_NOENV', 1:
65 // 'EMERGENCY_BTN_ENV_EMERGENCY_BUTTON_ENV'}, 'is_signed_var': False, 'len':
66 // 8, 'name': 'EMERGENCY_BTN_ENV', 'offset': 0.0, 'order': 'intel',
67 // 'physical_range': '[0|1]', 'physical_unit': '', 'precision': 1.0, 'type':
68 // 'enum'}
70 const std::uint8_t* bytes, const int32_t length) const;
71
72 // config detail: {'bit': 32, 'enum': {0: 'FRONT_BUMP_ENV_NOENV', 1:
73 // 'FRONT_BUMP_ENV_FRONT_BUMPER_ENV'}, 'is_signed_var': False, 'len': 8,
74 // 'name': 'FRONT_BUMP_ENV', 'offset': 0.0, 'order': 'intel',
75 // 'physical_range': '[0|1]', 'physical_unit': '', 'precision': 1.0, 'type':
76 // 'enum'}
78 const std::uint8_t* bytes, const int32_t length) const;
79
80 // config detail: {'bit': 40, 'enum': {0: 'BACK_BUMP_ENV_NOENV', 1:
81 // 'BACK_BUMP_ENV_BACK_BUMPER_ENV'}, 'is_signed_var': False, 'len': 8, 'name':
82 // 'BACK_BUMP_ENV', 'offset': 0.0, 'order': 'intel', 'physical_range':
83 // '[0|1]', 'physical_unit': '', 'precision': 1.0, 'type': 'enum'}
85 const std::uint8_t* bytes, const int32_t length) const;
86
87 // config detail: {'bit': 56, 'enum': {0: 'BRAKE_LIGHT_ACTUAL_BRAKELIGHT_OFF',
88 // 1: 'BRAKE_LIGHT_ACTUAL_BRAKELIGHT_ON'}, 'is_signed_var': False, 'len': 1,
89 // 'name': 'Brake_Light_Actual', 'offset': 0.0, 'order': 'intel',
90 // 'physical_range': '[0|1]', 'physical_unit': '', 'precision': 1.0, 'type':
91 // 'enum'}
93 const std::uint8_t* bytes, const int32_t length) const;
94};
95
96} // namespace ch
97} // namespace canbus
98} // namespace apollo
void Parse(const std::uint8_t *bytes, int32_t length, Ch *chassis) const override
This is the base class of protocol data.
class register implement
Definition arena_queue.h:37
The class of ProtocolData