Apollo 10.0
自动驾驶开放平台
apollo::cyber::transport::IntraReceiver< M > 模板类 参考

#include <intra_receiver.h>

类 apollo::cyber::transport::IntraReceiver< M > 继承关系图:
apollo::cyber::transport::IntraReceiver< M > 的协作图:

Public 成员函数

 IntraReceiver (const RoleAttributes &attr, const typename Receiver< M >::MessageListener &msg_listener)
 
virtual ~IntraReceiver ()
 
void Enable () override
 
void Disable () override
 
void Enable (const RoleAttributes &opposite_attr) override
 
void Disable (const RoleAttributes &opposite_attr) override
 
- Public 成员函数 继承自 apollo::cyber::transport::Receiver< M >
 Receiver (const RoleAttributes &attr, const MessageListener &msg_listener)
 
virtual ~Receiver ()
 
- Public 成员函数 继承自 apollo::cyber::transport::Endpoint
 Endpoint (const RoleAttributes &attr)
 
virtual ~Endpoint ()
 
const Identityid () const
 
const RoleAttributesattributes () const
 

额外继承的成员函数

- Public 类型 继承自 apollo::cyber::transport::Receiver< M >
using MessagePtr = std::shared_ptr< M >
 
using MessageListener = std::function< void(const MessagePtr &, const MessageInfo &, const RoleAttributes &)>
 
- Protected 成员函数 继承自 apollo::cyber::transport::Receiver< M >
void OnNewMessage (const MessagePtr &msg, const MessageInfo &msg_info)
 
- Protected 属性 继承自 apollo::cyber::transport::Receiver< M >
MessageListener msg_listener_
 
- Protected 属性 继承自 apollo::cyber::transport::Endpoint
bool enabled_
 
Identity id_
 
RoleAttributes attr_
 

详细描述

template<typename M>
class apollo::cyber::transport::IntraReceiver< M >

在文件 intra_receiver.h29 行定义.

构造及析构函数说明

◆ IntraReceiver()

template<typename M >
apollo::cyber::transport::IntraReceiver< M >::IntraReceiver ( const RoleAttributes attr,
const typename Receiver< M >::MessageListener msg_listener 
)

在文件 intra_receiver.h46 行定义.

49 : Receiver<M>(attr, msg_listener) {
50 dispatcher_ = IntraDispatcher::Instance();
51}

◆ ~IntraReceiver()

template<typename M >
apollo::cyber::transport::IntraReceiver< M >::~IntraReceiver ( )
virtual

在文件 intra_receiver.h54 行定义.

54 {
55 Disable();
56}

成员函数说明

◆ Disable() [1/2]

template<typename M >
void apollo::cyber::transport::IntraReceiver< M >::Disable ( )
overridevirtual

实现了 apollo::cyber::transport::Receiver< M >.

在文件 intra_receiver.h71 行定义.

71 {
72 if (!this->enabled_) {
73 return;
74 }
75
76 dispatcher_->RemoveListener<M>(this->attr_);
77 this->enabled_ = false;
78}
void RemoveListener(const RoleAttributes &self_attr)

◆ Disable() [2/2]

template<typename M >
void apollo::cyber::transport::IntraReceiver< M >::Disable ( const RoleAttributes opposite_attr)
overridevirtual

实现了 apollo::cyber::transport::Receiver< M >.

在文件 intra_receiver.h89 行定义.

89 {
90 dispatcher_->RemoveListener<M>(this->attr_, opposite_attr);
91}

◆ Enable() [1/2]

template<typename M >
void apollo::cyber::transport::IntraReceiver< M >::Enable ( )
overridevirtual

实现了 apollo::cyber::transport::Receiver< M >.

在文件 intra_receiver.h59 行定义.

59 {
60 if (this->enabled_) {
61 return;
62 }
63
64 dispatcher_->AddListener<M>(
65 this->attr_, std::bind(&IntraReceiver<M>::OnNewMessage, this,
66 std::placeholders::_1, std::placeholders::_2));
67 this->enabled_ = true;
68}
void AddListener(const RoleAttributes &self_attr, const MessageListener< MessageT > &listener)
void OnNewMessage(const MessagePtr &msg, const MessageInfo &msg_info)
Definition receiver.h:61

◆ Enable() [2/2]

template<typename M >
void apollo::cyber::transport::IntraReceiver< M >::Enable ( const RoleAttributes opposite_attr)
overridevirtual

实现了 apollo::cyber::transport::Receiver< M >.

在文件 intra_receiver.h81 行定义.

81 {
82 dispatcher_->AddListener<M>(
83 this->attr_, opposite_attr,
84 std::bind(&IntraReceiver<M>::OnNewMessage, this, std::placeholders::_1,
85 std::placeholders::_2));
86}

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