Search Results for

    Show / Hide Table of Contents

    Class Subpipeline

    Represents a graph of components and controls scheduling and message passing.

    Inheritance
    System.Object
    Pipeline
    Subpipeline
    AzureKinectSensor
    ParallelFixedLength<TIn, TOut>
    ParallelSparseDo<TIn, TBranchKey, TBranchIn>
    ParallelSparseSelect<TIn, TBranchKey, TBranchIn, TBranchOut, TOut>
    ParallelVariableLength<TIn, TOut>
    Exporter
    Importer
    JsonExporter
    Implements
    ISourceComponent
    Inherited Members
    Pipeline.PipelineRun
    Pipeline.PipelineCompleted
    Pipeline.ComponentCompleted
    Pipeline.PipelineExceptionNotHandled
    Pipeline.Id
    Pipeline.Name
    Pipeline.ReplayDescriptor
    Pipeline.Diagnostics
    Pipeline.StartTime
    Pipeline.ProgressReportInterval
    Pipeline.LatestFiniteSourceCompletionTime
    Pipeline.NoRemainingCompletableComponents
    Pipeline.Create(String, DeliveryPolicy, Int32, Boolean, Boolean, DiagnosticsConfiguration)
    Pipeline.GetDefaultDeliveryPolicy<T>()
    Pipeline.GetDefaultMessageValidator<T>()
    Pipeline.CreateReceiver<T>(Object, Action<T, Envelope>, String)
    Pipeline.CreateReceiver<T>(Object, Action<T>, String)
    Pipeline.CreateReceiver<T>(Object, Action<Message<T>>, String)
    Pipeline.CreateAsyncReceiver<T>(Object, Func<T, Envelope, Task>, String)
    Pipeline.CreateAsyncReceiver<T>(Object, Func<T, Task>, String)
    Pipeline.CreateAsyncReceiver<T>(Object, Func<Message<T>, Task>, String)
    Pipeline.CreateEmitter<T>(Object, String, Emitter.ValidateMessageHandler<>)
    Pipeline.WaitAll(Int32)
    Pipeline.WaitAll(TimeSpan)
    Pipeline.Dispose()
    Pipeline.Run(ReplayDescriptor, IProgress<Double>)
    Pipeline.Run(TimeInterval, Boolean, IProgress<Double>)
    Pipeline.Run(DateTime, DateTime, Boolean, IProgress<Double>)
    Pipeline.Run(DateTime, Boolean, IProgress<Double>)
    Pipeline.RunAsync(ReplayDescriptor, IProgress<Double>)
    Pipeline.RunAsync(TimeInterval, Boolean, IProgress<Double>)
    Pipeline.RunAsync(DateTime, DateTime, Boolean, IProgress<Double>)
    Pipeline.RunAsync(DateTime, Boolean, IProgress<Double>)
    Pipeline.GetCurrentTime()
    Pipeline.GetCurrentTimeFromElapsedTicks(Int64)
    Pipeline.ConvertToRealTime(TimeSpan)
    Pipeline.ConvertToRealTime(DateTime)
    Pipeline.ConvertFromRealTime(TimeSpan)
    Pipeline.ConvertFromRealTime(DateTime)
    Namespace: Microsoft.Psi
    Assembly: Microsoft.Psi.dll
    Syntax
    public class Subpipeline : Pipeline, ISourceComponent
    Remarks

    This is essentially a pipeline as a component within other pipelines.

    Constructors

    View Source

    Subpipeline(Pipeline, String, DeliveryPolicy)

    Initializes a new instance of the Subpipeline class.

    Declaration
    public Subpipeline(Pipeline parent, string name = null, DeliveryPolicy defaultDeliveryPolicy = null)
    Parameters
    Type Name Description
    Pipeline parent

    Parent pipeline.

    System.String name

    Subpipeline name (inherits "Sub" name if unspecified).

    DeliveryPolicy defaultDeliveryPolicy

    Pipeline-level default delivery policy (defaults to Unlimited if unspecified).

    Properties

    View Source

    ParentPipeline

    Gets the parent pipeline.

    Declaration
    protected Pipeline ParentPipeline { get; }
    Property Value
    Type Description
    Pipeline

    Methods

    View Source

    Create(Pipeline, String, DeliveryPolicy)

    Create subpipeline.

    Declaration
    public static Subpipeline Create(Pipeline parent, string name = null, DeliveryPolicy defaultDeliveryPolicy = null)
    Parameters
    Type Name Description
    Pipeline parent

    Parent pipeline.

    System.String name

    Subpipeline name.

    DeliveryPolicy defaultDeliveryPolicy

    Pipeline-level default delivery policy (defaults to Unlimited if unspecified).

    Returns
    Type Description
    Subpipeline

    Created subpipeline.

    View Source

    CreateInputConnectorFrom<T>(Pipeline, String)

    Creates an input connector for a subpipeline.

    Declaration
    public Connector<T> CreateInputConnectorFrom<T>(Pipeline fromPipeline, string name)
    Parameters
    Type Name Description
    Pipeline fromPipeline

    The pipeline from which the input connector receives data.

    System.String name

    The name of the input connector.

    Returns
    Type Description
    Connector<T>

    The newly created input connector.

    Type Parameters
    Name Description
    T

    The type of messages for the input connector.

    View Source

    CreateOutputConnectorTo<T>(Pipeline, String)

    Creates an output connector for a subpipeline.

    Declaration
    public Connector<T> CreateOutputConnectorTo<T>(Pipeline toPipeline, string name)
    Parameters
    Type Name Description
    Pipeline toPipeline

    The pipeline to which the output connector sends data.

    System.String name

    The name of the output connector.

    Returns
    Type Description
    Connector<T>

    The newly created output connector.

    Type Parameters
    Name Description
    T

    The type of messages for the output connector.

    View Source

    ProposeReplayTime(TimeInterval)

    Propose replay time.

    Declaration
    public override void ProposeReplayTime(TimeInterval originatingTimeInterval)
    Parameters
    Type Name Description
    TimeInterval originatingTimeInterval

    Originating time interval.

    Overrides
    Pipeline.ProposeReplayTime(TimeInterval)
    View Source

    RunAsync(ReplayDescriptor, Clock, IProgress<Double>)

    Run pipeline (asynchronously).

    Declaration
    protected override IDisposable RunAsync(ReplayDescriptor descriptor, Clock clock, IProgress<double> progress)
    Parameters
    Type Name Description
    ReplayDescriptor descriptor

    Replay descriptor.

    Clock clock

    Clock to use (in the case of a shared scheduler - e.g. subpipeline).

    IProgress<System.Double> progress

    Progress reporter.

    Returns
    Type Description
    IDisposable

    Disposable used to terminate pipeline.

    Overrides
    Pipeline.RunAsync(ReplayDescriptor, Clock, IProgress<Double>)
    View Source

    Start(Action<DateTime>)

    Initialize subpipeline as a finite source component.

    Declaration
    public void Start(Action<DateTime> notifyCompletionTime)
    Parameters
    Type Name Description
    Action<DateTime> notifyCompletionTime

    Delegate to call to notify of completion time.

    Remarks

    This is called by the parent subpipeline, if any.

    View Source

    Stop(DateTime, Action)

    Called by the pipeline when shutting down. The component should stop generating new messages once this method completes. However, the component might still receive new messages (if it is subscribed to other components) after this call and is expected to handle them.

    Declaration
    public void Stop(DateTime finalOriginatingTime, Action notifyCompleted)
    Parameters
    Type Name Description
    DateTime finalOriginatingTime

    The last originating time of any message which may be posted, after which the component should stop posting non-reactive source messages.

    Action notifyCompleted

    Delegate to call to notify the pipeline that the component has completed posting non-reactive source messages. This delegate should be called once the component has posted its last non-reactive source message, but only up to (and possibly including) finalOriginatingTime.

    View Source

    ToString()

    Declaration
    public override string ToString()
    Returns
    Type Description
    System.String
    Remarks

    Return subpipeline name as component name.

    Implements

    ISourceComponent

    Extension Methods

    DebugExtensions.DumpStructure(Pipeline, String)
    Operators.CreateConnector<T>(Pipeline, String)
    Serializer.DeepClone<T>(T, ref T)
    Serializer.DeepClone<T>(T, IRecyclingPool<T>)
    Serializer.DeepClone<T>(T)
    • View Source
    In This Article
    • Constructors
      • Subpipeline(Pipeline, String, DeliveryPolicy)
    • Properties
      • ParentPipeline
    • Methods
      • Create(Pipeline, String, DeliveryPolicy)
      • CreateInputConnectorFrom<T>(Pipeline, String)
      • CreateOutputConnectorTo<T>(Pipeline, String)
      • ProposeReplayTime(TimeInterval)
      • RunAsync(ReplayDescriptor, Clock, IProgress<Double>)
      • Start(Action<DateTime>)
      • Stop(DateTime, Action)
      • ToString()
    • Implements
    • Extension Methods
    Back to top Privacy & Cookies | Terms Of Use | Trademarks | © Microsoft
    Generated by DocFX