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

#include <intra_transmitter.h>

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

Public 类型

using MessagePtr = std::shared_ptr< M >
 
- Public 类型 继承自 apollo::cyber::transport::Transmitter< M >
using MessagePtr = std::shared_ptr< M >
 

Public 成员函数

 IntraTransmitter (const RoleAttributes &attr)
 
virtual ~IntraTransmitter ()
 
void Enable () override
 
void Disable () override
 
void Enable (const RoleAttributes &opposite_attr) override
 
void Disable (const RoleAttributes &opposite_attr) override
 
bool Transmit (const MessagePtr &msg, const MessageInfo &msg_info) override
 
bool AcquireMessage (std::shared_ptr< M > &msg)
 
- Public 成员函数 继承自 apollo::cyber::transport::Transmitter< M >
 Transmitter (const RoleAttributes &attr)
 
virtual ~Transmitter ()
 
virtual bool Transmit (const MessagePtr &msg)
 
uint64_t NextSeqNum ()
 
uint64_t seq_num () const
 
- Public 成员函数 继承自 apollo::cyber::transport::Endpoint
 Endpoint (const RoleAttributes &attr)
 
virtual ~Endpoint ()
 
const Identityid () const
 
const RoleAttributesattributes () const
 

额外继承的成员函数

- Protected 属性 继承自 apollo::cyber::transport::Transmitter< M >
MessageInfo msg_info_
 
std::shared_ptr<::bvar::Adder< int > > seq_num_
 
- Protected 属性 继承自 apollo::cyber::transport::Endpoint
bool enabled_
 
Identity id_
 
RoleAttributes attr_
 

详细描述

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

在文件 intra_transmitter.h32 行定义.

成员类型定义说明

◆ MessagePtr

template<typename M >
using apollo::cyber::transport::IntraTransmitter< M >::MessagePtr = std::shared_ptr<M>

在文件 intra_transmitter.h34 行定义.

构造及析构函数说明

◆ IntraTransmitter()

template<typename M >
apollo::cyber::transport::IntraTransmitter< M >::IntraTransmitter ( const RoleAttributes attr)
explicit

在文件 intra_transmitter.h60 行定义.

61 : Transmitter<M>(attr),
62 channel_id_(attr.channel_id()),
63 dispatcher_(nullptr) {}

◆ ~IntraTransmitter()

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

在文件 intra_transmitter.h66 行定义.

成员函数说明

◆ AcquireMessage()

template<typename M >
bool apollo::cyber::transport::IntraTransmitter< M >::AcquireMessage ( std::shared_ptr< M > &  msg)
virtual

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

在文件 intra_transmitter.h55 行定义.

55 {
56 return false;
57}

◆ Disable() [1/2]

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

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

在文件 intra_transmitter.h91 行定义.

91 {
92 if (this->enabled_) {
93 dispatcher_ = nullptr;
94 this->enabled_ = false;
95 }
96}

◆ Disable() [2/2]

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

重载 apollo::cyber::transport::Transmitter< M > .

在文件 intra_transmitter.h77 行定义.

77 {
78 (void)opposite_attr;
79 this->Disable();
80}

◆ Enable() [1/2]

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

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

在文件 intra_transmitter.h83 行定义.

83 {
84 if (!this->enabled_) {
85 dispatcher_ = IntraDispatcher::Instance();
86 this->enabled_ = true;
87 }
88}

◆ Enable() [2/2]

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

重载 apollo::cyber::transport::Transmitter< M > .

在文件 intra_transmitter.h71 行定义.

71 {
72 (void)opposite_attr;
73 this->Enable();
74}

◆ Transmit()

template<typename M >
bool apollo::cyber::transport::IntraTransmitter< M >::Transmit ( const MessagePtr msg,
const MessageInfo msg_info 
)
overridevirtual

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

在文件 intra_transmitter.h99 行定义.

100 {
101 if (!this->enabled_) {
102 ADEBUG << "not enable.";
103 return false;
104 }
105
106 dispatcher_->OnMessage(channel_id_, msg, msg_info);
107 return true;
108}
void OnMessage(uint64_t channel_id, const std::shared_ptr< MessageT > &message, const MessageInfo &message_info)
#define ADEBUG
Definition log.h:41

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