Table of Contents

Class Window

Namespace
Bonsai.Reactive
Assembly
Bonsai.Core.dll

Represents an expression builder that projects the input sequence into zero or more windows with boundaries defined by the encapsulated workflow.

Marble diagram

The Window operator groups the notifications of the source sequence into new observable sequences. The opening of each window is triggered by notifications emitted by the second sequence passed to the Window node. The nested workflow operation is launched for every new emitted window, and closes that window when a value is emitted.

If a new window is created before the previous window is closed, then window will overlap, and any elements emitted during this period will be included in both windows. If at any moment there is no open window, elements emitted from the source sequence will be dropped.

Note

You can manipulate and schedule each of the windows downstream using other higher-order operators such as Merge, Concat or Switch.

public class Window : WorkflowExpressionBuilder, IWorkflowExpressionBuilder, INamedElement, IPropertyMappingBuilder, IExpressionBuilder
Inheritance
Window
Implements
Inherited Members
Extension Methods

Constructors

Window()

Initializes a new instance of the Window class.

public Window()

Window(ExpressionBuilderGraph)

Initializes a new instance of the Window class with the specified expression builder workflow.

public Window(ExpressionBuilderGraph workflow)

Parameters

workflow ExpressionBuilderGraph

The expression builder workflow instance that will be used by this builder to generate the output expression tree.

Properties

ArgumentRange

Gets the range of input arguments that this expression builder accepts.

public override Range<int> ArgumentRange { get; }

Property Value

Range<int>

Methods

Build(IEnumerable<Expression>)

Generates an Expression node from a collection of input arguments. The result can be chained with other builders in a workflow.

public override Expression Build(IEnumerable<Expression> arguments)

Parameters

arguments IEnumerable<Expression>

A collection of Expression nodes that represents the input arguments.

Returns

Expression

An Expression tree node.