Sdílet prostřednictvím


transformer – třída

Blok zpráv transformer je setříděný blok propagator_block s jedním cílem a více zdroji, který může akceptovat zprávy jednoho typu a je schopen uložení neomezeného počtu zpráv různého typu.

template<
   class _Input,
   class _Output
>
class transformer : public propagator_block<single_link_registry<ITarget<_Output>>, multi_link_registry<ISource<_Input>>>;

Parametry

  • _Input
    Typ datové části zprávy přijaté vyrovnávací paměti.

  • _Output
    Typ datové části zprávy uloženy a šířeny mimo ve vyrovnávací paměti.

Členy

Veřejné konstruktory

Název

Description

transformer::transformer – konstruktor

Přetíženo.Konstrukce transformer blok pro zasílání zpráv.

transformer::~transformer – destruktor

Ničí transformer blok pro zasílání zpráv.

Chráněné metody

Název

Description

transformer::accept_message – metoda

Přijímá zprávy, který nabídl to transformer blok pro zasílání zpráv, převod vlastnictví k volajícímu.

transformer::consume_message – metoda

Zpracovává zprávy dříve nabízených transformer a vyhrazený pro cíl, převod vlastnictví k volajícímu.

transformer::link_target_notification – metoda

Zpětné volání, které upozorní, že nový cíl spojován s tím transformer blok pro zasílání zpráv.

transformer::propagate_message – metoda

Asynchronně předává zprávy z ISource blok na tento transformer blok pro zasílání zpráv.Je vyvolán propagate metoda volána zdrojového bloku.

transformer::propagate_to_any_targets – metoda

Spustí funkce transformátoru na vstupní zprávy.

transformer::release_message – metoda

Vydává předchozí zprávy rezervace. (Přepisuje source_block::release_message.)

transformer::reserve_message – metoda

Rezervy zprávu dříve nabízené to transformer blok pro zasílání zpráv. (Přepisuje source_block::reserve_message.)

transformer::resume_propagation – metoda

Pokračuje v šíření po rezervaci vydala. (Přepisuje source_block::resume_propagation.)

transformer::send_message – metoda

Synchronně předává zprávy z ISource blok na tento transformer blok pro zasílání zpráv.Je vyvolán send metoda volána zdrojového bloku.

transformer::supports_anonymous_source – metoda

Přepíše supports_anonymous_source method k oznámení toho, že tento blok mohou přijímat zprávy, které jsou nabízeny ze zdroje, který není propojen. (Přepisuje ITarget::supports_anonymous_source.)

Poznámky

Další informace naleznete v tématu Asynchronní bloky zpráv.

Hierarchie dědičnosti

ISource

ITarget

source_block

propagator_block

transformer

Požadavky

Záhlaví: agents.h

Obor názvů: souběžnost

Viz také

Referenční dokumentace

concurrency – obor názvů

call – třída