Apollo 10.0
自动驾驶开放平台
apollo::drivers::conti_radar::ContiRadarCanbusComponent类 参考

#include <conti_radar_canbus_component.h>

类 apollo::drivers::conti_radar::ContiRadarCanbusComponent 继承关系图:
apollo::drivers::conti_radar::ContiRadarCanbusComponent 的协作图:

Public 成员函数

 ContiRadarCanbusComponent ()
 
 ~ContiRadarCanbusComponent ()
 
bool Init () override
 
- Public 成员函数 继承自 apollo::cyber::Component< M0, M1, M2, M3 >
 Component ()
 
 ~Component () override
 
bool Initialize (const ComponentConfig &config) override
 init the component by protobuf object.
 
bool Process (const std::shared_ptr< M0 > &msg0, const std::shared_ptr< M1 > &msg1, const std::shared_ptr< M2 > &msg2, const std::shared_ptr< M3 > &msg3)
 
- Public 成员函数 继承自 apollo::cyber::ComponentBase
virtual ~ComponentBase ()
 
virtual bool Initialize (const TimerComponentConfig &config)
 
virtual void Shutdown ()
 
template<typename T >
bool GetProtoConfig (T *config) const
 

额外继承的成员函数

- Public 类型 继承自 apollo::cyber::ComponentBase
template<typename M >
using Reader = cyber::Reader< M >
 
- Protected 成员函数 继承自 apollo::cyber::ComponentBase
virtual void Clear ()
 
const std::string & ConfigFilePath () const
 
void LoadConfigFiles (const ComponentConfig &config)
 
void LoadConfigFiles (const TimerComponentConfig &config)
 
- Protected 属性 继承自 apollo::cyber::ComponentBase
std::atomic< bool > is_shutdown_ = {false}
 
std::shared_ptr< Nodenode_ = nullptr
 
std::string config_file_path_ = ""
 
std::vector< std::shared_ptr< ReaderBase > > readers_
 

详细描述

在文件 conti_radar_canbus_component.h57 行定义.

构造及析构函数说明

◆ ContiRadarCanbusComponent()

apollo::drivers::conti_radar::ContiRadarCanbusComponent::ContiRadarCanbusComponent ( )

◆ ~ContiRadarCanbusComponent()

apollo::drivers::conti_radar::ContiRadarCanbusComponent::~ContiRadarCanbusComponent ( )

在文件 conti_radar_canbus_component.cc48 行定义.

48{ Stop(); }

成员函数说明

◆ Init()

bool apollo::drivers::conti_radar::ContiRadarCanbusComponent::Init ( )
overridevirtual

实现了 apollo::cyber::ComponentBase.

在文件 conti_radar_canbus_component.cc50 行定义.

50 {
51 if (!GetProtoConfig(&conti_radar_conf_)) {
52 return OnError("Unable to load canbus conf file: " + ConfigFilePath());
53 }
54
55 AINFO << "The canbus conf file is loaded: " << ConfigFilePath();
56 ADEBUG << "Canbus_conf:" << conti_radar_conf_.ShortDebugString();
57
58 // Init can client
59 auto can_factory = CanClientFactory::Instance();
60 can_factory->RegisterCanClients();
61 can_client_ = can_factory->CreateCANClient(
62 conti_radar_conf_.can_conf().can_card_parameter());
63 if (!can_client_) {
64 return OnError("Failed to create can client.");
65 }
66 AINFO << "Can client is successfully created.";
67 conti_radar_writer_ =
68 node_->CreateWriter<ContiRadar>(conti_radar_conf_.radar_channel());
69 pose_reader_ = node_->CreateReader<LocalizationEstimate>(
70 FLAGS_localization_topic,
71 [&](const std::shared_ptr<LocalizationEstimate>& pose) {
72 PoseCallback(pose);
73 });
74
75 sensor_message_manager_ = std::unique_ptr<ContiRadarMessageManager>(
76 new ContiRadarMessageManager(conti_radar_writer_));
77 if (sensor_message_manager_ == nullptr) {
78 return OnError("Failed to create message manager.");
79 }
80 sensor_message_manager_->set_radar_conf(conti_radar_conf_.radar_conf());
81 sensor_message_manager_->set_can_client(can_client_);
82 AINFO << "Sensor message manager is successfully created.";
83
84 if (can_receiver_.Init(can_client_.get(), sensor_message_manager_.get(),
85 conti_radar_conf_.can_conf().enable_receiver_log()) !=
86 ErrorCode::OK) {
87 return OnError("Failed to init can receiver.");
88 }
89 AINFO << "The can receiver is successfully initialized.";
90
91 start_success_ = Start();
92 return start_success_;
93}
bool GetProtoConfig(T *config) const
const std::string & ConfigFilePath() const
std::shared_ptr< Node > node_
#define ADEBUG
Definition log.h:41
#define AINFO
Definition log.h:42
optional apollo::drivers::canbus::CANCardParameter can_card_parameter

该类的文档由以下文件生成: