A transformer messaging block is a single-target, multi-source, ordered propagator_block which can accept messages of one type and is capable of storing an unbounded number of messages of a different type.
The payload type of the messages accepted by the buffer.
The payload type of the messages stored and propagated out by the buffer.
Accepts a message that was offered by this transformer messaging block, transferring ownership to the caller.
Consumes a message previously offered by the transformer and reserved by the target, transferring ownership to the caller.
A callback that notifies that a new target has been linked to this transformer messaging block.
Asynchronously passes a message from an ISource block to this transformer messaging block. It is invoked by the propagate method, when called by a source block.
Executes the transformer function on the input messages.
Releases a previous message reservation. (Overrides source_block::release_message.)
Reserves a message previously offered by this transformer messaging block. (Overrides source_block::reserve_message.)
Resumes propagation after a reservation has been released. (Overrides source_block::resume_propagation.)
Synchronously passes a message from an ISource block to this transformer messaging block. It is invoked by the send method, when called by a source block.
Overrides the supports_anonymous_source method to indicate that this block can accept messages offered to it by a source that is not linked. (Overrides ITarget::supports_anonymous_source.)