transformer 类
transformer 消息块是一个单目标、多源、有序的 propagator_block,可以接受同一类型的消息,并能够存储大量不同类型的消息。
template<
class _Input,
class _Output
>
class transformer : public propagator_block<single_link_registry<ITarget<_Output>>, multi_link_registry<ISource<_Input>>>;
参数
_Input
缓冲区接受的消息负载类型。_Output
缓冲区存储的和传播的消息的负载类型。
成员
公共构造函数
名称 |
说明 |
---|---|
已重载。 构造 transformer 消息块。 |
|
销毁 transformer 消息块。 |
受保护的方法
名称 |
说明 |
---|---|
接受由此 transformer 消息块提供的消息,将所有权转移给调用方。 |
|
使用先前由 transformer 提供并由目标保留的消息,将所有权转移给调用方。 |
|
通知新的目标已链接至此 transformer 消息块的回调。 |
|
将 ISource 块中的消息异步传递到此 transformer 消息块中。 在由源块调用时,其由 propagate 方法调用。 |
|
对输入消息的转换器功能。 |
|
释放以前的消息保留。 (覆盖 source_block::release_message。) |
|
保留此 transformer 消息块之前提供的消息。 (覆盖 source_block::reserve_message。) |
|
释放保留后继续传播。 (覆盖 source_block::resume_propagation。) |
|
将消息从 ISource 块同步传递到此 transformer 消息块中。 在由源块调用时,其由 send 方法调用。 |
|
重写 supports_anonymous_source 方法来指示该块可以接受提供的消息由未链接的源。 (重写 ITarget::supports_anonymous_source。) |
备注
有关更多信息,请参见 异步消息块。
继承层次结构
transformer
要求
**标头:**agents.h
命名空间: 并发