Sdílet prostřednictvím


propagator_block – třída

Třída propagator_block je abstraktní základní třídou pro bloky zpráv, které jsou zdrojem i cílem.Kombinuje funkce třídy source_block a target_block.

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>;

Parametry

  • _TargetLinkRegistry
    Propojení registru pro hospodářství cílové odkazy.

  • _SourceLinkRegistry
    Propojení registru pro hospodářství zdroj odkazů.

  • _MessageProcessorType
    Typ procesoru pro zpracování zprávy.

Členy

Veřejné definice Typedef

Název

Description

source_iterator

Typ iterátor pro source_link_manager to propagator_block.

Veřejné konstruktory

Název

Description

propagator_block::propagator_block – konstruktor

Sestavte objekt propagator_block.

propagator_block::~propagator_block – destruktor

Ničí propagator_block objektu.

Veřejné metody

Název

Description

propagator_block::propagate – metoda

Asynchronně předává zprávy ze zdrojového bloku tento blok cíl.

propagator_block::send – metoda

Inicializuje synchronně zpráva do tohoto bloku.Volat ISource blok.Po dokončení této funkce zprávy již jsou šířeny do bloku.

Chráněné metody

Název

Description

propagator_block::decline_incoming_messages – metoda

Do bloku označuje, že nové zprávy byla odmítnuta.

propagator_block::initialize_source_and_target – metoda

Inicializuje základní objekt.Konkrétně message_processor objekt musí být inicializována.

propagator_block::link_source – metoda

Odkazy na tento blok zadaný zdroj propagator_block objektu.

propagator_block::process_input_messages – metoda

Postup pro zadávání zpráv.To je užitečné pouze pro Šiřitel bloků, které jsou odvozeny z source_block (přepíše source_block::process_input_messages.)

propagator_block::propagate_message – metoda

Při přepsání v odvozené třídě tato metoda asynchronně předává zprávy z ISource blok na tento propagator_block objektu.Je vyvolán propagate metoda volána zdrojového bloku.

propagator_block::register_filter – metoda

Zaregistruje filtr metodu, která bude vyvolána u všech přijatých zpráv.

propagator_block::remove_network_links – metoda

Odebere všechny zdrojové a cílové sítě odkazy z této propagator_block objektu.

propagator_block::send_message – metoda

Při přepsání v odvozené třídě tato metoda synchronně předává zprávy z ISource blok na tento propagator_block objektu.Je vyvolán send metoda volána zdrojového bloku.

propagator_block::unlink_source – metoda

Zruší propojení zadané zdrojové blok z toho propagator_block objektu.

propagator_block::unlink_sources – metoda

Zruší propojení všech bloků zdroje z tohoto propagator_block objektu. (Přepisuje ITarget::unlink_sources.)

Poznámky

Aby se zabránilo vícenásobné dědění propagator_block třída dědí z source_block třída a ITarget abstraktní třídy.Většina funkcí v target_block třídy je replikována zde.

Hierarchie dědičnosti

ISource

ITarget

source_block

propagator_block

Požadavky

Záhlaví: agents.h

Obor názvů: souběžnost

Viz také

Referenční dokumentace

concurrency – obor názvů

source_block – třída

ITarget – třída