GKD.RoboCtrl
载入中...
搜索中...
未找到
roboctrl::io::tcp类 参考

TCP 客户端套接字。 更多...

详细描述

TCP 客户端套接字。

在文件 tcp.h27 行定义.

#include <tcp.h>

类 roboctrl::io::tcp 继承关系图:
roboctrl::io::bare_io_base roboctrl::utils::immovable_base roboctrl::utils::not_copyable_base

struct  info_type
 TCP 连接参数。 更多...
 

Public 成员函数

 tcp (info_type info)
 通过连接信息构造客户端。
 
 tcp (asio::ip::tcp::socket socket, std::string key)
 由已有 asio::ip::tcp::socket 包装。
 
awaitable< voidsend (byte_span data)
 发送字节数据。
 
awaitable< voidtask ()
 接收循环任务。
 
std::string desc () const
 
- Public 成员函数 继承自 roboctrl::io::bare_io_base
void on_data (callback_fn< byte_span > auto fn)
 注册字节级别的回调。
 
template<typename Fn >
requires (!std::same_as<utils::function_arg_t<Fn>,byte_span>)
void on_data (Fn &&fn)
 
template<roboctrl::utils::package T>
requires (!std::same_as<T, byte_span>)
awaitable< voidsend (const T &data)
 发送平凡类型数据。
 
- Public 成员函数 继承自 roboctrl::utils::immovable_base
 immovable_base (immovable_base &&)=delete
 
immovable_baseoperator= (immovable_base &&)=delete
 
- Public 成员函数 继承自 roboctrl::utils::not_copyable_base
 not_copyable_base (const not_copyable_base &)=delete
 
not_copyable_baseoperator= (const not_copyable_base &)=delete
 

额外继承的成员函数

- Protected 成员函数 继承自 roboctrl::io::bare_io_base
void dispatch (byte_span bytes)
 分发收到的字节流。
 

构造及析构函数说明

◆ tcp() [1/2]

tcp::tcp ( info_type  info)
explicit

通过连接信息构造客户端。

在文件 tcp.cpp10 行定义.

引用了 roboctrl::io::tcp::info_type::address, roboctrl::async::executor(), roboctrl::io::tcp::info_type::port, roboctrl::async::spawn() , 以及 task().

◆ tcp() [2/2]

tcp::tcp ( asio::ip::tcp::socket  socket,
std::string  key 
)

由已有 asio::ip::tcp::socket 包装。

在文件 tcp.cpp24 行定义.

引用了 roboctrl::io::tcp::info_type::address , 以及 roboctrl::io::tcp::info_type::port.

成员函数说明

◆ desc()

std::string roboctrl::io::tcp::desc ( ) const
inline

在文件 tcp.h64 行定义.

◆ send()

roboctrl::awaitable< void > tcp::send ( byte_span  data)

发送字节数据。

在文件 tcp.cpp34 行定义.

◆ task()

roboctrl::awaitable< void > tcp::task ( )

接收循环任务。

在文件 tcp.cpp39 行定义.

引用了 roboctrl::io::bare_io_base::dispatch().

被这些函数引用 tcp().


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