Freigeben über


propagator_block-Klasse

Die propagator_block-Klasse ist eine abstrakte Basisklasse für Meldungsblöcke, die sowohl Quelle als auch Ziel sind.Kombiniert die Funktion der source_block-Klasse mit der Funktion der target_block-Klasse.

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

Parameter

  • _TargetLinkRegistry
    Die Linkregistrierung, die zum Speichern der Ziellinks verwendet werden soll.

  • _SourceLinkRegistry
    Die Linkregistrierung, die zum Speichern der Quelllinks verwendet werden soll.

  • _MessageProcessorType
    Der Prozessortyp für die Meldungsverarbeitung.

Mitglieder

Dd504864.collapse_all(de-de,VS.110).gifÖffentliche Typedefs

Name

Beschreibung

source_iterator

Der Typ des Iterators für den source_link_manager für dieses propagator_block-Objekt.

Dd504864.collapse_all(de-de,VS.110).gifÖffentliche Konstruktoren

Name

Beschreibung

propagator_block::propagator_block-Konstruktor

Erstellt ein propagator_block-Objekt.

propagator_block::~propagator_block-Destruktor

Zerstört ein propagator_block-Objekt.

Dd504864.collapse_all(de-de,VS.110).gifÖffentliche Methoden

Name

Beschreibung

propagator_block::propagate-Methode

Übergibt eine Meldung asynchron von einem Quellblock an diesen Zielblock.

propagator_block::send-Methode

Initiiert synchron eine Meldung an diesen Block.Wird von einem ISource-Block aufgerufen.Wenn diese Funktion abgeschlossen wird, wurde die Meldung bereits an den Block weitergegeben.

Dd504864.collapse_all(de-de,VS.110).gifGeschützte Methoden

Name

Beschreibung

propagator_block::decline_incoming_messages-Methode

Gibt für den Block an, dass diese neuen Meldungen abgelehnt werden sollen.

propagator_block::initialize_source_and_target-Methode

Initialisiert das Basisobjekt.Insbesondere muss das message_processor-Objekt initialisiert werden.

propagator_block::link_source-Methode

Verknüpft einen angegebenen Quellblock mit diesem propagator_block-Objekt.

propagator_block::process_input_messages-Methode

Eingabe verarbeitet Meldungen.Dies ist für die Weitergabe Blockierung nur nützlich, die vom Ableiten source_block (Überschreibungen source_block::process_input_messages).

propagator_block::propagate_message-Methode

Diese Methode übergibt beim Überschreiben in einer abgeleiteten Klasse asynchron eine Meldung von einem ISource-Block an dieses propagator_block-Objekt.Wird bei Aufruf durch einen Quellblock von der propagate-Methode aufgerufen.

propagator_block::register_filter-Methode

Registriert eine Filtermethode, die für jede Meldung aufgerufen wird, die empfangen wurde.

propagator_block::remove_network_links-Methode

Entfernt alle Quell- und Zielnetzwerklinks von diesem propagator_block-Objekt.

propagator_block::send_message-Methode

Diese Methode übergibt beim Überschreiben in einer abgeleiteten Klasse synchron eine Meldung von einem ISource-Block an dieses propagator_block-Objekt.Wird bei Aufruf durch einen Quellblock von der send-Methode aufgerufen.

propagator_block::unlink_source-Methode

Hebt die Verknüpfung eines angegebenen Quellblocks mit diesem propagator_block-Objekt auf.

propagator_block::unlink_sources-Methode

Hebt die Verknüpfung aller Quellblöcke mit diesem propagator_block-Objekt auf.(Überschreibt ITarget::unlink_sources.)

Hinweise

Um mehrfache Vererbung zu vermeiden, erbt die propagator_block-Klasse von der source_block-Klasse und der abstrakten ITarget-Namespace.Die meisten Funktionen der target_block-Klasse werden hier repliziert.

Vererbungshierarchie

ISource

ITarget

source_block

propagator_block

Anforderungen

Header: agents.h

Namespace: Parallelität

Siehe auch

Referenz

concurrency-Namespace

source_block-Klasse

ITarget-Klasse