DrainNodeTState Class

Terminal node for a graph. Needed because all output ports must be connected to at least one input port.

Definition

Namespace: Quine.Graph
Assembly: Quine.Graph (in Quine.Graph.dll) Version: 1.0.0+0ea0706914ee4edf2b0ed66bec3ab4d062a43b68
C#
public abstract class DrainNode<TState> : TransformNode<TState, GraphMessage>
where TState : TransformNodeState<GraphMessage>
Inheritance
Object    GraphSchemaHook    GraphSchemaHookNodeStateBase    NodeShell    NodeShellTState    TransformNodeTState, GraphMessage    DrainNodeTState

Type Parameters

TState

Constructors

DrainNodeTStateInitializes a new instance of the DrainNodeTState class

Properties

CancellationToken Used to signal that the graph is being canceled; shared by all nodes.
(Inherited from NodeShell)
ConcurrencyLimit Determines how many instances of this node type can run concurrently. Use int.MaxValue for unbounded number of instances.
(Inherited from NodeShell)
Id
(Inherited from GraphSchemaHook)
ItemProcessingEventData Information about the item currently being processed.
(Inherited from NodeShell)
Owner Parent/owner of this node, or null.
(Inherited from GraphSchemaHook)
PathId Provides IDs of all job nodes from the root (1st element) to this. The byte array is a sequence of integer ids with variable-length encoding (7-bit).
(Inherited from GraphSchemaHook)
State
(Inherited from NodeShellT)

Methods

CreateItemProcessingEventData Overriding this method allows to create derived instances of ItemProcessingEventData for reporting of extended progress events.
(Inherited from NodeShell)
LifecycleAsync This method defines the complete node lifecycle. Overriding this method allows the node to perform actions before MessageLoopAsync has been started and after it has exited. Notes to implementers: The derived implementation MUST call the base implementation. Most of the protected methods cannot be called before or after this method has executed.
(Inherited from NodeShell)
MessageLoopAsync Repeatedly dequeues a message from Input0 and invokes ProcessSingleMessageAsync(TInput) on it.
(Inherited from TransformNodeTState, TInput)
ProcessAsync
(Overrides TransformNodeTState, TInputProcessAsync(TInput))
ProcessSingleMessageAsync Wraps ProcessAsync(TInput) with raising begin/end events and exception handling.
(Inherited from TransformNodeTState, TInput)
QueryAsync Sends interactive query to the controlling front-end.
(Inherited from NodeShell)
RaiseProcessingBeginEvent Sets current message to m and singals start of processing. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseProcessingEndEvent Signals end of processing for the message set by RaiseProcessingBeginEvent(GraphMessage) and sets the current message to null. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseProgressEvent Raises progress event for the message set by RaiseProcessingBeginEvent(GraphMessage). At most one of the arguments can be set to a non-negative value. If overridden, the base implementation MUST be called.
(Inherited from NodeShell)
RaiseTraceEvent Raises a trace event. The event is always published to the shell, and then appended to either the item's trace (if ItemProcessingEventData is not null) or to the node's trace if the lifecycle allows it.
(Inherited from NodeShell)

Fields

See Also