Emx::MsgTopicSubscriberAsync类 参考

用于Topic的异步订阅

#include "MsgTopic.hpp"

类 Emx::MsgTopicSubscriberAsync 继承关系图:
Emx::MsgTopicSubscriberAsync 的协作图:

struct  Config
 启动异步订阅时携带的配置参数 更多...
 

Public 类型

using Callback = std::function< void()>
 连接状态回调 更多...
 
using RecvMsgCallback = std::function< void(uint32_t topic, const char *data, int32_t size)>
 接收到订阅消息的回调函数 更多...
 

Public 成员函数

 MsgTopicSubscriberAsync ()
 
ErrCodeE CreateMsgTopicSubscriberAsync (const Config &cfg)
 创建异步订阅 更多...
 
void DestroyMsgTopicSubscriberAsync ()
 销毁异步订阅 更多...
 
- Public 成员函数 继承自 Emx::EuvPipeClientBase
 EuvPipeClientBase ()
 
virtual ~EuvPipeClientBase ()
 
- Public 成员函数 继承自 Emx::EuvStmClientBase
 EuvStmClientBase (EuvStreamInf *stm)
 
virtual ~EuvStmClientBase ()
 
ErrCodeE Create (EuvLoop &loop, char *buffer, int32_t size, const char *serverIp, uint16_t serverPort, const char *localIp=nullptr, uint16_t localPort=0)
 创建客户端并连接服务端 更多...
 
void Destroy ()
 断开链接并销毁客户端 更多...
 
ErrCodeE Send (std::shared_ptr< std::string > &data)
 向服务端发送数据 更多...
 
void PauseRecv ()
 停止接收,调用后将不会收到数据 更多...
 
ErrCodeE ResumeRecv ()
 开始接收数据/重新开始接收数据 更多...
 
bool IsReceiving ()
 获取当前客户端是否正在监听接收 更多...
 
std::string GetSockName ()
 获取本地地址 更多...
 
std::string GetPeerName ()
 获取对方地址 更多...
 

Protected 成员函数

void OnConnect () override
 
void OnDisConnect () override
 
void OnRecv (const char *data, int32_t size) override
 
- Protected 成员函数 继承自 Emx::EuvStmClientBase
virtual void OnSendDone (ErrCodeE e, const char *buffer, int32_t size)
 当调用Send函数发送的数据成功发送至服务端,或出现错误时触发次回调 更多...
 

成员类型定义说明

◆ Callback

using Emx::MsgTopicSubscriberAsync::Callback = std::function<void()>

◆ RecvMsgCallback

using Emx::MsgTopicSubscriberAsync::RecvMsgCallback = std::function<void(uint32_t topic, const char *data, int32_t size)>
参数
topic[in] 消息的topic
data[in] topic携带的数据
size[in] topic携带数据的大小

构造及析构函数说明

◆ MsgTopicSubscriberAsync()

Emx::MsgTopicSubscriberAsync::MsgTopicSubscriberAsync ( )
inline

成员函数说明

◆ CreateMsgTopicSubscriberAsync()

ErrCodeE Emx::MsgTopicSubscriberAsync::CreateMsgTopicSubscriberAsync ( const Config cfg)
参数
cfg[in] 配置参数
返回
ErrCodeE

◆ DestroyMsgTopicSubscriberAsync()

void Emx::MsgTopicSubscriberAsync::DestroyMsgTopicSubscriberAsync ( )
inline

◆ OnConnect()

void Emx::MsgTopicSubscriberAsync::OnConnect ( )
overrideprotectedvirtual

◆ OnDisConnect()

void Emx::MsgTopicSubscriberAsync::OnDisConnect ( )
inlineoverrideprotectedvirtual

◆ OnRecv()

void Emx::MsgTopicSubscriberAsync::OnRecv ( const char *  data,
int32_t  size 
)
overrideprotectedvirtual