Apollo 10.0
自动驾驶开放平台
radar_config_200.h
浏览该文件的文档.
1/******************************************************************************
2 * Copyright 2018 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/common_msgs/sensor_msgs/racobit_radar.pb.h"
21#include "modules/drivers/radar/racobit_radar/proto/racobit_radar_conf.pb.h"
22
23namespace apollo {
24namespace drivers {
25namespace racobit_radar {
26
29
31 : public apollo::drivers::canbus::ProtocolData<RacobitRadar> {
32 public:
33 static const uint32_t ID;
40 uint32_t GetPeriod() const override;
41
46 void UpdateData(uint8_t* data) override;
47
51 void Reset() override;
52
63
64 RadarConfig200* set_max_distance(uint16_t data);
65 RadarConfig200* set_sensor_id(uint8_t data);
67 RadarConfig200* set_radar_power(uint8_t data);
68 RadarConfig200* set_ctrl_relay(uint8_t data);
69 RadarConfig200* set_send_ext_info(uint8_t data);
70 RadarConfig200* set_send_quality(uint8_t data);
71 RadarConfig200* set_sort_index(uint8_t data);
72 RadarConfig200* set_store_in_nvm(uint8_t data);
77
78 void set_max_distance_valid_p(uint8_t* data, bool valid);
79 void set_sensor_id_valid_p(uint8_t* data, bool valid);
80 void set_radar_power_valid_p(uint8_t* data, bool valid);
81 void set_output_type_valid_p(uint8_t* data, bool valid);
82 void set_send_quality_valid_p(uint8_t* data, bool valid);
83 void set_send_ext_info_valid_p(uint8_t* data, bool valid);
84 void set_sort_index_valid_p(uint8_t* data, bool valid);
85 void set_store_in_nvm_valid_p(uint8_t* data, bool valid);
86 void set_ctrl_relay_valid_p(uint8_t* data, bool valid);
87 void set_rcs_threshold_valid_p(uint8_t* data, bool valid);
88
89 void set_max_distance_p(uint8_t* data, uint16_t value);
90 void set_sensor_id_p(uint8_t* data, uint8_t value);
92 uint8_t* data, RacobitRadarState_201::OutputType type);
93 void set_radar_power_p(uint8_t* data, uint8_t value);
94 void set_ctrl_relay_p(uint8_t* data, uint8_t value);
95 void set_send_ext_info_p(uint8_t* data, uint8_t value);
96 void set_send_quality_p(uint8_t* data, uint8_t value);
97 void set_sort_index_p(uint8_t* data, uint8_t value);
98 void set_store_in_nvm_p(uint8_t* data, uint8_t value);
100 uint8_t* data, RacobitRadarState_201::RcsThreshold rcs_theshold);
101
102 private:
103 RadarConf radar_conf_;
104};
105
106} // namespace racobit_radar
107} // namespace drivers
108} // namespace apollo
This is the base class of protocol data.
RadarConfig200 * set_max_distance(uint16_t data)
void set_max_distance_valid_p(uint8_t *data, bool valid)
RadarConfig200 * set_store_in_nvm(uint8_t data)
void set_sensor_id_p(uint8_t *data, uint8_t value)
void set_sort_index_p(uint8_t *data, uint8_t value)
void set_send_quality_p(uint8_t *data, uint8_t value)
void set_send_quality_valid_p(uint8_t *data, bool valid)
RadarConfig200 * set_max_distance_valid(bool valid)
void set_send_ext_info_valid_p(uint8_t *data, bool valid)
uint32_t GetPeriod() const override
get the data period
void set_store_in_nvm_valid_p(uint8_t *data, bool valid)
RadarConfig200 * set_send_quality_valid(bool valid)
void Reset() override
reset the private variables
void set_sensor_id_valid_p(uint8_t *data, bool valid)
void set_sort_index_valid_p(uint8_t *data, bool valid)
void UpdateData(uint8_t *data) override
update the data
RadarConfig200 * set_rcs_threshold_valid(bool valid)
void set_store_in_nvm_p(uint8_t *data, uint8_t value)
RadarConfig200 * set_rcs_threshold(RacobitRadarState_201::RcsThreshold rcs_theshold)
void set_radar_power_valid_p(uint8_t *data, bool valid)
void set_radar_power_p(uint8_t *data, uint8_t value)
RadarConfig200 * set_store_in_nvm_valid(bool valid)
RadarConfig200 * set_radar_conf(RadarConf radar_conf)
void set_ctrl_relay_valid_p(uint8_t *data, bool valid)
RadarConfig200 * set_send_ext_info(uint8_t data)
void set_ctrl_relay_p(uint8_t *data, uint8_t value)
void set_max_distance_p(uint8_t *data, uint16_t value)
void set_send_ext_info_p(uint8_t *data, uint8_t value)
RadarConfig200 * set_send_quality(uint8_t data)
RadarConfig200 * set_send_ext_info_valid(bool valid)
void set_output_type_valid_p(uint8_t *data, bool valid)
void set_rcs_threshold_valid_p(uint8_t *data, bool valid)
RadarConfig200 * set_output_type(RacobitRadarState_201::OutputType type)
void set_output_type_p(uint8_t *data, RacobitRadarState_201::OutputType type)
void set_rcs_threshold_p(uint8_t *data, RacobitRadarState_201::RcsThreshold rcs_theshold)
class register implement
Definition arena_queue.h:37
The class of ProtocolData