RMVL  2.4.0-dev
Robotic Manipulation and Vision Library
载入中...
搜索中...
未找到
rm::PipeServer类 参考

命名管道服务端 更多...

#include <rmvl/io/ipc.hpp>

类 rm::PipeServer 继承关系图:
rm::PipeServer 的协作图:

Public 成员函数

 PipeServer (const PipeServer &)=delete
 PipeServer (PipeServer &&)=default
PipeServeroperator= (const PipeServer &)=delete
PipeServeroperator= (PipeServer &&)=default
 ~PipeServer ()
 PipeServer (std::string_view name)
 在文件系统中创建新的命名管道并打开,销毁时自动移除该管道
std::string read () noexcept
 从管道读取数据
PipeServeroperator>> (std::string &data) noexcept
 从管道读取数据
bool write (std::string_view data) noexcept
 向管道写入数据
PipeServeroperator<< (std::string_view data) noexcept
 向管道写入数据

Protected 成员函数

 PipeServer (std::string_view name, bool ov)

Protected 属性

std::string _name
 命名管道名称
FileDescriptor _fd {}
 文件句柄

详细描述

命名管道服务端

构造及析构函数说明

◆ PipeServer() [1/4]

rm::PipeServer::PipeServer ( const PipeServer & )
delete
Python:
rm.PipeServer(name) -> <PipeServer object>
函数调用图:

◆ PipeServer() [2/4]

rm::PipeServer::PipeServer ( PipeServer && )
default
Python:
rm.PipeServer(name) -> <PipeServer object>
函数调用图:

◆ ~PipeServer()

rm::PipeServer::~PipeServer ( )

◆ PipeServer() [3/4]

rm::PipeServer::PipeServer ( std::string_view name)
inline
Python:
rm.PipeServer(name) -> <PipeServer object>

在文件系统中创建新的命名管道并打开,销毁时自动移除该管道

注解
  • Windows 命名管道在构造时会等待客户端连接并阻塞,除非已有客户端连接
参数
[in]name命名管道名称,Windows 下的命名管道名称为 \\.\pipe\\endiskip +name, Linux 下的命名管道名称为 /tmp/ + name,长度不超过 256 个字符
函数调用图:

◆ PipeServer() [4/4]

rm::PipeServer::PipeServer ( std::string_view name,
bool ov )
protected
Python:
rm.PipeServer(name) -> <PipeServer object>

成员函数说明

◆ operator<<()

PipeServer & rm::PipeServer::operator<< ( std::string_view data)
inlinenoexcept

向管道写入数据

参数
[in]data待写入的数据
函数调用图:

◆ operator=() [1/2]

PipeServer & rm::PipeServer::operator= ( const PipeServer & )
delete
函数调用图:

◆ operator=() [2/2]

PipeServer & rm::PipeServer::operator= ( PipeServer && )
default
函数调用图:

◆ operator>>()

PipeServer & rm::PipeServer::operator>> ( std::string & data)
inlinenoexcept

从管道读取数据

参数
[out]data读取到的数据
函数调用图:

◆ read()

std::string rm::PipeServer::read ( )
noexcept
Python:
rm.PipeServer.read() -> res, data

从管道读取数据

返回
读取到的数据,成功时返回非空字符串,失败时返回空字符串

◆ write()

bool rm::PipeServer::write ( std::string_view data)
noexcept
Python:
rm.PipeServer.write(data) -> res

向管道写入数据

参数
[in]data待写入的数据
返回
是否写入成功

类成员变量说明

◆ _fd

FileDescriptor rm::PipeServer::_fd {}
protected

文件句柄

◆ _name

std::string rm::PipeServer::_name
protected

命名管道名称


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