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
    缓冲区存储的和传播的消息的负载类型。

成员

Dd492812.collapse_all(zh-cn,VS.110).gif公共构造函数

名称

说明

transformer::transformer 构造函数

已重载。 构造 transformer 消息块。

transformer::~transformer 析构函数

销毁 transformer 消息块。

Dd492812.collapse_all(zh-cn,VS.110).gif受保护的方法

名称

说明

transformer::accept_message 方法

接受由此 transformer 消息块提供的消息,将所有权转移给调用方。

transformer::consume_message 方法

使用先前由 transformer 提供并由目标保留的消息,将所有权转移给调用方。

transformer::link_target_notification 方法

通知新的目标已链接至此 transformer 消息块的回调。

transformer::propagate_message 方法

ISource 块中的消息异步传递到此 transformer 消息块中。 在由源块调用时,其由 propagate 方法调用。

transformer::propagate_to_any_targets 方法

对输入消息的转换器功能。

transformer::release_message 方法

释放以前的消息保留。 (覆盖 source_block::release_message。)

transformer::reserve_message 方法

保留此 transformer 消息块之前提供的消息。 (覆盖 source_block::reserve_message。)

transformer::resume_propagation 方法

释放保留后继续传播。 (覆盖 source_block::resume_propagation。)

transformer::send_message 方法

将消息从 ISource 块同步传递到此 transformer 消息块中。 在由源块调用时,其由 send 方法调用。

transformer::supports_anonymous_source 方法

重写 supports_anonymous_source 方法来指示该块可以接受提供的消息由未链接的源。 (重写 ITarget::supports_anonymous_source。)

备注

有关更多信息,请参见 异步消息块

继承层次结构

ISource

ITarget

source_block

propagator_block

transformer

要求

**标头:**agents.h

命名空间: 并发

请参见

参考

concurrency 命名空间

call 类