Table of Contents

Class GateInterval

Namespace
Bonsai.Reactive
Assembly
Bonsai.Core.dll

Represents an operator that allows a single element from the first sequence to pass through every time the specified time interval elapses.

Marble diagram

The gate starts in the open state, and a single element is allowed to pass through from the source sequence. After this first element is emitted, the gate closes and all subsequent elements are dropped from the result sequence. The gate reopens when the specified Interval elapses.

It is possible to specify how long the gate stays open by using the DueTime property. If no value is specified, the gate stays open indefinitely until an element arrives. If a maximum due time is specified, then no elements from the source sequence arriving after the due time elapses will be allowed through until the gate reopens.

Example

Use GateInterval to extract the first element from a source sequence that is emitted within the time interval.

GateInterval Example

Alternative

Use SampleInterval to extract the latest element from a source sequence that is emitted within the time interval.

Use Slice to extract elements based on element count instead of time.

Use Gate to gate elements based on the notifications from another sequence.

public class GateInterval : Combinator
Inheritance
GateInterval
Inherited Members

Properties

DueTime

Gets or sets a value specifying the maximum time the gate stays open.

Interval

Gets or sets the period after which a new element from the sequence is allowed to pass through the gate.

Methods

Process<TSource>(IObservable<TSource>)

Allows a single element from an observable sequence to pass through every time the specified time interval elapses.