acl  3.5.3.0
acl::pipe_manager类 参考

#include <pipe_stream.hpp>

+ 类 acl::pipe_manager 继承关系图:
+ acl::pipe_manager 的协作图:

Public 成员函数

 pipe_manager ()
 
 ~pipe_manager ()
 
bool push_back (pipe_stream *stream)
 
bool push_front (pipe_stream *stream)
 
bool update (const char *src, size_t len, pipe_stream *out=NULL)
 
bool update_end (pipe_stream *out=NULL)
 
pipe_manageroperator<< (const string &)
 
pipe_manageroperator<< (const string *)
 
pipe_manageroperator<< (const char *)
 
pipe_manageroperator<< (long long int)
 
pipe_manageroperator<< (unsigned long long int)
 
pipe_manageroperator<< (long)
 
pipe_manageroperator<< (unsigned long)
 
pipe_manageroperator<< (int)
 
pipe_manageroperator<< (unsigned int)
 
pipe_manageroperator<< (short)
 
pipe_manageroperator<< (unsigned short)
 
pipe_manageroperator<< (char)
 
pipe_manageroperator<< (unsigned char)
 
char * c_str () const
 
size_t length () const
 
void clear ()
 

额外继承的成员函数

- Protected 成员函数 继承自 acl::acl::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

详细描述

管道流管理器,该类管理所有的管理流,将数据依次传递给所有管理流的 输入接口,同时从所有管道流的输出接口中获得数据然后再将数据传递给 下一个管道流的输入接口,以此类推,直到最后一个管道流

在文件 pipe_stream.hpp97 行定义.

构造及析构函数说明

◆ pipe_manager()

acl::pipe_manager::pipe_manager ( )

◆ ~pipe_manager()

acl::pipe_manager::~pipe_manager ( )

成员函数说明

◆ c_str()

char* acl::pipe_manager::c_str ( ) const

◆ clear()

void acl::pipe_manager::clear ( )

◆ length()

size_t acl::pipe_manager::length ( ) const

◆ operator<<() [1/13]

pipe_manager& acl::pipe_manager::operator<< ( const string )

◆ operator<<() [2/13]

pipe_manager& acl::pipe_manager::operator<< ( const string )

◆ operator<<() [3/13]

pipe_manager& acl::pipe_manager::operator<< ( const char *  )

◆ operator<<() [4/13]

pipe_manager& acl::pipe_manager::operator<< ( long long int  )

◆ operator<<() [5/13]

pipe_manager& acl::pipe_manager::operator<< ( unsigned long long int  )

◆ operator<<() [6/13]

pipe_manager& acl::pipe_manager::operator<< ( long  )

◆ operator<<() [7/13]

pipe_manager& acl::pipe_manager::operator<< ( unsigned long  )

◆ operator<<() [8/13]

pipe_manager& acl::pipe_manager::operator<< ( int  )

◆ operator<<() [9/13]

pipe_manager& acl::pipe_manager::operator<< ( unsigned int  )

◆ operator<<() [10/13]

pipe_manager& acl::pipe_manager::operator<< ( short  )

◆ operator<<() [11/13]

pipe_manager& acl::pipe_manager::operator<< ( unsigned short  )

◆ operator<<() [12/13]

pipe_manager& acl::pipe_manager::operator<< ( char  )

◆ operator<<() [13/13]

pipe_manager& acl::pipe_manager::operator<< ( unsigned char  )

◆ push_back()

bool acl::pipe_manager::push_back ( pipe_stream stream)

以尾部添加的方式注册新的管道流处理器

参数
stream{pipe_stream*} 管道流处理器对象
返回
{bool} 如果该管道流处理器对象已经存在则返回 false

◆ push_front()

bool acl::pipe_manager::push_front ( pipe_stream stream)

以头部添加的方式注册新的管道流处理器

参数
stream{pipe_stream*} 管道流处理器对象
返回
{bool} 如果该管道流处理器对象已经存在则返回 false

◆ update()

bool acl::pipe_manager::update ( const char *  src,
size_t  len,
pipe_stream out = NULL 
)

应用向管道流管理器添加新数据,由该管理器依次传递给所有已注册管道流 处理器,同时从已注册管道流处理器接收处理结果,依次传递给下一个

参数
src{const char*} 待处理的数据地址
len{size_t} src 数据长度
out{pipe_stream*} 如果非空,则该管道处理器将是最后一个只接收 输入而不进行输出的管道处理器
返回
{bool} 是否有错误发生

◆ update_end()

bool acl::pipe_manager::update_end ( pipe_stream out = NULL)

最后必须调用一次该函数,以使有些管道的缓冲区里的数据可以一次性地 刷新至最后的管道中

参数
out{pipe_stream*} 如果非空,则该管道处理器将是最后一个只接收 输入而不进行输出的管道处理器
返回
{bool} 是否有错误发生

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