Apollo 10.0
自动驾驶开放平台
udp_bridge_receiver_component.h 文件参考
#include <netinet/in.h>
#include <sys/socket.h>
#include <cstdlib>
#include <iostream>
#include <memory>
#include <string>
#include <vector>
#include "modules/bridge/proto/udp_bridge_remote_info.pb.h"
#include "modules/common_msgs/chassis_msgs/chassis.pb.h"
#include "cyber/class_loader/class_loader.h"
#include "cyber/component/component.h"
#include "cyber/cyber.h"
#include "cyber/init.h"
#include "cyber/scheduler/scheduler_factory.h"
#include "modules/bridge/common/bridge_gflags.h"
#include "modules/bridge/common/bridge_header.h"
#include "modules/bridge/common/bridge_proto_diserialized_buf.h"
#include "modules/bridge/common/udp_listener.h"
#include "modules/common/monitor_log/monitor_log_buffer.h"
udp_bridge_receiver_component.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

class  apollo::bridge::UDPBridgeReceiverComponent< T >
 

命名空间

namespace  apollo
 class register implement
 
namespace  apollo::bridge
 

宏定义

#define RECEIVER_BRIDGE_COMPONENT_REGISTER(pb_msg)    CYBER_REGISTER_COMPONENT(UDPBridgeReceiverComponent<pb_msg>)
 

宏定义说明

◆ RECEIVER_BRIDGE_COMPONENT_REGISTER

#define RECEIVER_BRIDGE_COMPONENT_REGISTER (   pb_msg)     CYBER_REGISTER_COMPONENT(UDPBridgeReceiverComponent<pb_msg>)

在文件 udp_bridge_receiver_component.h44 行定义.

47 : public cyber::Component<> {
48 public:
49 UDPBridgeReceiverComponent();
50 ~UDPBridgeReceiverComponent();
51
52 bool Init() override;
53
54 std::string Name() const { return FLAGS_bridge_module_name; }
55 bool MsgHandle(int fd);
56
57 private:
58 bool InitSession(uint16_t port);
59 void MsgDispatcher();
60 bool IsProtoExist(const BridgeHeader &header);
61 BridgeProtoDiserializedBuf<T> *CreateBridgeProtoBuf(
62 const BridgeHeader &header);
63 bool IsTimeout(double time_stamp);
64 bool RemoveInvalidBuf(uint32_t msg_id);
65
66 private:
67 common::monitor::MonitorLogBuffer monitor_logger_buffer_;
68 unsigned int bind_port_ = 0;
69 std::string proto_name_ = "";
70 std::string topic_name_ = "";
71 bool enable_timeout_ = true;
72 std::shared_ptr<cyber::Writer<T>> writer_;
73 std::mutex mutex_;
74
75 std::shared_ptr<UDPListener<UDPBridgeReceiverComponent<T>>> listener_ =
76 std::make_shared<UDPListener<UDPBridgeReceiverComponent<T>>>();
77
78 std::vector<BridgeProtoDiserializedBuf<T> *> proto_list_;
79};
80
82} // namespace bridge
83} // namespace apollo
bool Init(const char *binary_name, const std::string &dag_info)
Definition init.cc:98
#define RECEIVER_BRIDGE_COMPONENT_REGISTER(pb_msg)