transformer-Klasse
Ein transformer-Meldungsblock ist ein geordneter propagator_block mit einem einzelnen Ziel und mehreren Quellen, der Meldungen eines Typs akzeptieren und eine unbegrenzte Anzahl von Meldungen eines anderen Typs speichern kann.
template<
class _Input,
class _Output
>
class transformer : public propagator_block<single_link_registry<ITarget<_Output>>, multi_link_registry<ISource<_Input>>>;
Parameter
_Input
Der Nutzlasttyp von vom Puffer akzeptierten Meldungen._Output
Der Nutzlasttyp der Meldungen, die vom Puffer gespeichert und weitergegeben wurden.
Mitglieder
Öffentliche Konstruktoren
Name |
Beschreibung |
---|---|
Überladen.Erstellt einen transformer-Meldungsblock. |
|
Zerstört den transformer-Meldungsblock. |
Geschützte Methoden
Name |
Beschreibung |
---|---|
Akzeptiert eine Meldung, die von diesem transformer-Meldungsblock angeboten wurde, und überträgt den Besitz an den Aufrufer. |
|
Nimmt eine Meldung an, die zuvor von transformer angeboten und vom Ziel reserviert wurde, und überträgt den Besitz an den Aufrufer. |
|
Ein Rückruf, der meldet, dass ein neues Ziel mit diesem transformer-Meldungsblock verknüpft wurde. |
|
Übergibt eine Meldung asynchron von einem ISource-Block an diesen transformer-Meldungsblock.Wird bei Aufruf durch einen Quellblock von der propagate-Methode aufgerufen. |
|
Führt die Transformator auf dem Feature für Eingabemeldungen aus. |
|
Gibt die Reservierung einer vorherigen Meldung frei.(Überschreibt source_block::release_message.) |
|
Reserviert eine Meldung, die zuvor von diesem transformer-Meldungsblock angeboten wurde.(Überschreibt source_block::reserve_message.) |
|
Setzt die Weitergabe fort, nachdem eine Reservierung freigegeben wurde.(Überschreibt source_block::resume_propagation.) |
|
Übergibt eine Meldung synchron von einem ISource-Block an diesen transformer-Meldungsblock.Wird bei Aufruf durch einen Quellblock von der send-Methode aufgerufen. |
|
Überschreibt die supports_anonymous_source-Methode, um anzugeben, dass diese Blockade die Meldungen akzeptiert, die von dieser Quelle bereitgestellt werden, die nicht verknüpft ist.ITarget::supports_anonymous_source Überschreibungen (.) |
Hinweise
Weitere Informationen finden Sie unter Asynchrone Nachrichtenblöcke.
Vererbungshierarchie
transformer
Anforderungen
Header: agents.h
Namespace: Parallelität