Klasa propagator_block
propagator_block Klasa jest abstrakcyjna klasa podstawowa dla bloków komunikatów, które źródłowego i docelowego.Łączy funkcje obu source_block i target_block klasy.
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
Rejestr łącze stosowaną dla gospodarstwa docelowego łącza._SourceLinkRegistry
Rejestr łącze stosowaną dla powiązania źródła gospodarstwa._MessageProcessorType
Typ procesora dla przetwarzania wiadomości.
Członkowie
Definicje typów publicznych
Nazwa |
Opis |
---|---|
source_iterator |
Typ iteratora dla source_link_manager to propagator_block. |
Publiczne konstruktory
Nazwa |
Opis |
---|---|
Konstrukcje propagator_block obiektu. |
|
Niszczy propagator_block obiektu. |
Metody publiczne
Nazwa |
Opis |
---|---|
Asynchronicznie przekazuje wiadomość z bloku źródłowego do tego bloku docelowego. |
|
Inicjuje synchronicznie wiadomości do tego bloku.Wywołana ISource bloku.Po zakończeniu tej funkcji wiadomości już zostały propagowane w bloku. |
Metody chronione
Nazwa |
Opis |
---|---|
Wskazuje bloku, nowe wiadomości powinna zostać odrzucona. |
|
Inicjuje obiekt podstawowy.W szczególności message_processor obiektu musi być zainicjowany. |
|
Łączy bloku określonego źródła to propagator_block obiektu. |
|
Przetwarzanie komunikatów wejściowych.Ta opcja jest przydatna dla propagator bloków, które wynikają z source_block (zastępuje source_block::process_input_messages.) |
|
Gdy zastąpiony w klasie pochodnej, ta metoda asynchronicznie przekazuje wiadomość z ISource bloku do tego propagator_block obiektu.Jest on wywoływany przez propagate metodę, gdy bloku źródłowego. |
|
Rejestruje metodę filtr, który zostanie wywołany na każdego odebranego komunikatu. |
|
Usuwa wszystkie źródłowe i docelowe łącza sieciowe to propagator_block obiektu. |
|
Gdy zastąpiony w klasie pochodnej, ta metoda synchronicznie przekazuje wiadomość z ISource bloku do tego propagator_block obiektu.Jest on wywoływany przez send metodę, gdy bloku źródłowego. |
|
Wstrzymuje bloku określonego źródła z tego propagator_block obiektu. |
|
Wstrzymuje wszystkie bloki źródła z tego propagator_block obiektu.(Zastępuje ITarget::unlink_sources.) |
Uwagi
Aby uniknąć wielokrotne dziedziczenie, propagator_block klasa dziedziczy z source_block klasy i ITarget klasy abstrakcyjne.Większość funkcjonalności w target_block klasy jest replikowana w tym miejscu.
Hierarchii dziedziczenia
propagator_block
Wymagania
Nagłówek: agents.h
Obszar nazw: współbieżności