Apollo 10.0
自动驾驶开放平台
apollo::cyber::MessageConverter类 参考

#include <message_converter.h>

apollo::cyber::ApolloRosMessageConverter< InputTypes< InputMsg0Ptr >, OutputTypes< OutputMsg0Ptr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr, RosOdometryMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosImuMsgPtr >, OutputTypes< ImuMsgPtr, CorrectedImuMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< LocalizationMsgPtr, TransformMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr >, OutputTypes< BestPoseMsgPtr, InsStatMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosOdometryMsgPtr >, OutputTypes< OdometryOutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosWrapMsgPtr >, OutputTypes< OutputWrapMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr, RosOdometryMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosImuMsgPtr >, OutputTypes< ImuMsgPtr, CorrectedImuMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< LocalizationMsgPtr, TransformMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr >, OutputTypes< BestPoseMsgPtr, InsStatMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosOdometryMsgPtr >, OutputTypes< OdometryOutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosWrapMsgPtr >, OutputTypes< OutputWrapMsgPtr > >, apollo::cyber::ApolloRosMessageConverter< InputTypes, OutputTypes >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< R0, R1, R2, R3, M0, M1, M2, M3 >, apollo::cyber::RosApolloMessageConverter< R0, R1, R2, R3, M0, M1, M2, M3 >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > > , 以及 apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > > 继承.

apollo::cyber::MessageConverter 的协作图:

Public 成员函数

 MessageConverter ()
 
virtual ~MessageConverter ()
 
virtual bool Init ()
 
bool IsInit () const
 

Protected 成员函数

bool LoadConfig (ConverterConf *config)
 

Protected 属性

std::atomic< bool > init_
 
std::unique_ptr< apollo::cyber::Nodecyber_node_
 
std::vector< std::shared_ptr< apollo::cyber::proto::RoleAttributes > > apollo_attrs_
 
std::vector< std::shared_ptr< apollo::cyber::ReaderBase > > apollo_readers_
 
std::vector< std::shared_ptr< apollo::cyber::WriterBase > > apollo_writers_
 
const std::string node_name_ = "converter_base"
 
ConverterConf converter_conf_
 

详细描述

在文件 message_converter.h48 行定义.

构造及析构函数说明

◆ MessageConverter()

apollo::cyber::MessageConverter::MessageConverter ( )
inline

在文件 message_converter.h50 行定义.

50: init_(false) {}

◆ ~MessageConverter()

virtual apollo::cyber::MessageConverter::~MessageConverter ( )
inlinevirtual

在文件 message_converter.h52 行定义.

52{}

成员函数说明

◆ Init()

virtual bool apollo::cyber::MessageConverter::Init ( )
inlinevirtual

apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< R0, R1, R2, R3, M0, M1, M2, M3 >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< LocalizationMsgPtr, TransformMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosImuMsgPtr >, OutputTypes< ImuMsgPtr, CorrectedImuMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr >, OutputTypes< BestPoseMsgPtr, InsStatMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr, RosOdometryMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosOdometryMsgPtr >, OutputTypes< OdometryOutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosWrapMsgPtr >, OutputTypes< OutputWrapMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 >, std::shared_ptr< InType3 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 > > >, apollo::cyber::RosApolloMessageConverter< InputTypes< std::shared_ptr< InType0 >, std::shared_ptr< InType1 >, std::shared_ptr< InType2 > >, OutputTypes< std::shared_ptr< OutType0 >, std::shared_ptr< OutType1 >, std::shared_ptr< OutType2 >, std::shared_ptr< OutType3 > > >, apollo::cyber::ApolloRosMessageConverter< InputTypes, OutputTypes >, apollo::cyber::ApolloRosMessageConverter< InputTypes< InputMsg0Ptr >, OutputTypes< OutputMsg0Ptr > >, apollo::cyber::RosApolloMessageConverter< R0, R1, R2, R3, M0, M1, M2, M3 >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< LocalizationMsgPtr, TransformMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< InputMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosImuMsgPtr >, OutputTypes< ImuMsgPtr, CorrectedImuMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr >, OutputTypes< BestPoseMsgPtr, InsStatMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosNavMsgPtr, RosOdometryMsgPtr >, OutputTypes< OutputMsgPtr > >, apollo::cyber::RosApolloMessageConverter< InputTypes< RosOdometryMsgPtr >, OutputTypes< OdometryOutputMsgPtr > > , 以及 apollo::cyber::RosApolloMessageConverter< InputTypes< RosWrapMsgPtr >, OutputTypes< OutputWrapMsgPtr > > 重载.

在文件 message_converter.h54 行定义.

54 {
55 if (init_.exchange(true)) {
56 return true;
57 }
59 cyber_node_ = std::move(
60 CreateNode(node_name_ + "_" + converter_conf_.name() + "_apollo"));
61#ifdef RCLCPP__RCLCPP_HPP_
62 ros_node_ = std::make_shared<::rclcpp::Node>(
63 node_name_ + "_" + converter_conf_.name() + "_ros");
64 ros_node_exec_ =
65 std::make_shared<::rclcpp::executors::SingleThreadedExecutor>();
66#endif
67 return true;
68 }
std::unique_ptr< apollo::cyber::Node > cyber_node_
bool LoadConfig(ConverterConf *config)
std::unique_ptr< Node > CreateNode(const std::string &node_name, const std::string &name_space)
Definition cyber.cc:33

◆ IsInit()

bool apollo::cyber::MessageConverter::IsInit ( ) const
inline

在文件 message_converter.h77 行定义.

77{ return init_.load(); }

◆ LoadConfig()

bool apollo::cyber::MessageConverter::LoadConfig ( ConverterConf config)
inlineprotected

在文件 message_converter.h80 行定义.

80 {
81 int status;
82 std::string class_name =
83 abi::__cxa_demangle(typeid(*this).name(), 0, 0, &status);
84 std::string delimiter = "::";
85 std::string sub_class_name;
86 std::string conf_file_prefix;
87
88 auto pos = class_name.rfind(delimiter);
89 if (pos == std::string::npos) {
90 sub_class_name = class_name;
91 } else {
92 sub_class_name = class_name.substr(pos + delimiter.length());
93 }
94
95 for (int i = 0; i < sub_class_name.length(); i++) {
96 if (std::isupper(sub_class_name[i]) && i > 0) {
97 conf_file_prefix.push_back('_');
98 }
99 conf_file_prefix.push_back(std::tolower(sub_class_name[i]));
100 }
101
102 std::string config_path =
105 class_name, "conf/" + conf_file_prefix + ".pb.txt");
106 if (!apollo::cyber::common::PathExists(config_path)) {
109 class_name, std::string("conf/default.pb.txt"));
110 }
111
112 if (!apollo::cyber::common::GetProtoFromFile(config_path, config)) {
113 AERROR << "Load config of " << class_name << " failed!";
114 return false;
115 }
116 AINFO << "Load the [" << class_name
117 << "] config file successfully, file path: " << config_path;
118 return true;
119 }
std::string GetPluginConfPath(const std::string &class_name, const std::string &conf_name)
get plugin configuration file location
static PluginManager * Instance()
get singleton instance of PluginManager
#define AERROR
Definition log.h:44
#define AINFO
Definition log.h:42
bool PathExists(const std::string &path)
Check if the path exists.
Definition file.cc:195
bool GetProtoFromFile(const std::string &file_name, google::protobuf::Message *message)
Parses the content of the file specified by the file_name as a representation of protobufs,...
Definition file.cc:132

类成员变量说明

◆ apollo_attrs_

std::vector<std::shared_ptr<apollo::cyber::proto::RoleAttributes> > apollo::cyber::MessageConverter::apollo_attrs_
protected

在文件 message_converter.h125 行定义.

◆ apollo_readers_

std::vector<std::shared_ptr<apollo::cyber::ReaderBase> > apollo::cyber::MessageConverter::apollo_readers_
protected

在文件 message_converter.h126 行定义.

◆ apollo_writers_

std::vector<std::shared_ptr<apollo::cyber::WriterBase> > apollo::cyber::MessageConverter::apollo_writers_
protected

在文件 message_converter.h127 行定义.

◆ converter_conf_

ConverterConf apollo::cyber::MessageConverter::converter_conf_
protected

在文件 message_converter.h143 行定义.

◆ cyber_node_

std::unique_ptr<apollo::cyber::Node> apollo::cyber::MessageConverter::cyber_node_
protected

在文件 message_converter.h123 行定义.

◆ init_

std::atomic<bool> apollo::cyber::MessageConverter::init_
protected

在文件 message_converter.h122 行定义.

◆ node_name_

const std::string apollo::cyber::MessageConverter::node_name_ = "converter_base"
protected

在文件 message_converter.h142 行定义.


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