The target_block class is an abstract base class that provides basic link management functionality and error checking for target only blocks.
template< class _SourceLinkRegistry, class _MessageProcessorType = ordered_message_processor<typename _SourceLinkRegistry::type::source_type> > class target_block : public ITarget<typename _SourceLinkRegistry::type::source_type>;
The type of the iterator for the source_link_manager for this target_block object.
Asynchronously sends a message for processing.
Indicates to the block that new messages should be declined.
Initializes the base object. Specifically, the message_processor object needs to be initialized.
Links a specified source block to this target_block object.
When overriden in a derived class, processes a message that was accepted by this target_block object.
When overridden in a derived class, this method asynchronously passes a message from an ISource block to this target_block object. It is invoked by the propagate method, when called by a source block.
Registers a filter method that will be invoked on every message received.
Unlinks all sources after waiting for outstanding asynchronous send operations to complete.
When overridden in a derived class, this method synchronously passes a message from an ISource block to this target_block object. It is invoked by the send method, when called by a source block.
Synchronously send a message for processing.
Unlinks a specified source block from this target_block object.
Unlinks all source blocks from this target_block object. (Overrides ITarget::unlink_sources.)
Waits for all asynchronous propagations to complete.