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

裸IO组件。 更多...

详细描述

裸IO组件。

裸数据 IO 基类,仅根据字节流处理事件。

在文件 base.hpp62 行定义.

#include <base.hpp>

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

Public 成员函数

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 成员函数

void dispatch (byte_span bytes)
 分发收到的字节流。
 

构造及析构函数说明

◆ bare_io_base()

roboctrl::io::bare_io_base::bare_io_base ( )
inline

在文件 base.hpp67 行定义.

成员函数说明

◆ dispatch()

void roboctrl::io::bare_io_base::dispatch ( byte_span  bytes)
inlineprotected

分发收到的字节流。

参数
bytes接收到的缓冲

在文件 base.hpp103 行定义.

引用了 roboctrl::io::make_shared_from().

被这些函数引用 roboctrl::io::tcp::task() , 以及 roboctrl::io::udp::task().

◆ on_data() [1/2]

void roboctrl::io::bare_io_base::on_data ( callback_fn< byte_span > auto  fn)
inline

注册字节级别的回调。

在文件 base.hpp72 行定义.

引用了 roboctrl::callback< Args >::add().

◆ on_data() [2/2]

template<typename Fn >
requires (!std::same_as<utils::function_arg_t<Fn>,byte_span>)
void roboctrl::io::bare_io_base::on_data ( Fn &&  fn)
inline

在文件 base.hpp80 行定义.

◆ send()

template<roboctrl::utils::package T>
requires (!std::same_as<T, byte_span>)
awaitable< void > roboctrl::io::bare_io_base::send ( const T &  data)
inline

发送平凡类型数据。

在文件 base.hpp95 行定义.

引用了 send() , 以及 roboctrl::utils::to_bytes().

被这些函数引用 send().


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