propagator_block classe
O propagator_block classe é uma classe base abstrata para blocos de mensagens que são de uma origem e destino. Ele combina a funcionalidade de ambos os source_block e target_block classes.
template<
class _TargetLinkRegistry,
class _SourceLinkRegistry,
class _MessageProcessorType = ordered_message_processor<typename _TargetLinkRegistry::type::type>
>
class propagator_block : public source_block<_TargetLinkRegistry, _MessageProcessorType>, public ITarget<typename _SourceLinkRegistry::type::source_type>;
Parâmetros
_TargetLinkRegistry
O registro de link a ser usado para manter os links de destino._SourceLinkRegistry
O registro de link a ser usado para manter os links de origem._MessageProcessorType
O tipo de processador para o processamento de mensagem.
Membros
Definições de tipo públicas
Nome |
Descrição |
---|---|
source_iterator |
O tipo do iterador para o source_link_manager para este propagator_block. |
Construtores públicos
Nome |
Descrição |
---|---|
Constrói uma propagator_block objeto. |
|
Destrói um propagator_block objeto. |
Métodos públicos
Nome |
Descrição |
---|---|
Assincronamente passa uma mensagem de um bloco de origem para este bloco de destino. |
|
Modo síncrono, inicia uma mensagem para este bloco. Chamado por um ISource bloco. Quando essa função é concluída, a mensagem já ter propagadas no bloco. |
Métodos protegidos
Nome |
Descrição |
---|---|
Indica o bloco que novas mensagens devem ser recusadas. |
|
Inicializa o objeto base. Especificamente, o message_processor objeto precisa ser inicializado. |
|
Vincula um bloco de origem especificado a este propagator_block objeto. |
|
Quando substituído em uma classe derivada, esse método assincronamente transmite uma mensagem de um ISource a este bloco de propagator_block objeto. Ele é chamado pela propagate método, quando chamado por um bloco de código-fonte. |
|
Registra um método de filtro que será chamado em cada mensagem recebida. |
|
Remove todos os de origem e destino links de rede isso propagator_block objeto. |
|
Quando substituído em uma classe derivada, esse método sincronicamente transmite uma mensagem de um ISource a este bloco de propagator_block objeto. Ele é chamado pela send método, quando chamado por um bloco de código-fonte. |
|
Desvincula um bloco de origem especificado a partir dessa propagator_block objeto. |
|
Desvincula todos os blocos de origem a partir dessa propagator_block objeto. (Substitui ITarget::unlink_sources.) |
Comentários
Para evitar a herança múltipla, o propagator_block classe herda de source_block classe e ITarget classe de abstrata. A maioria da funcionalidade no target_block classe é replicado aqui.
Hierarquia de herança
Requisitos
Cabeçalho: Agents.h
Namespace: Simultaneidade