Table of Contents

Class SendCustomWaveform

Namespace
Bonsai.PulsePal
Assembly
Bonsai.PulsePal.dll

Represents an operator that uploads each array of voltages in a sequence to the Pulse Pal device, where each array specifies a custom train of continuous monophasic pulses, with periodic onset times.

public class SendCustomWaveform : Sink<Mat>
Inheritance
SendCustomWaveform
Inherited Members

Properties

CustomTrainIdentity

Gets or sets the identity of the custom pulse train to program.

public CustomTrainId CustomTrainIdentity { get; set; }

Property Value

CustomTrainId

DeviceName

Gets or sets the name of the Pulse Pal device.

[TypeConverter(typeof(DeviceNameConverter))]
public string DeviceName { get; set; }

Property Value

string

SamplingPeriod

Gets or sets the sample rate, in Hz, used to playback the custom pulse train.

[Range(0.0001, 3600)]
[Precision(4, 0.0001)]
public double SamplingPeriod { get; set; }

Property Value

double

Methods

Process(IObservable<Mat>)

Uploads each vector of voltages in an observable sequence to the Pulse Pal device, where each vector specifies a custom train of continuous monophasic pulses, with periodic onset times.

public override IObservable<Mat> Process(IObservable<Mat> source)

Parameters

source IObservable<Mat>

A sequence of custom pulse trains, where each pulse train is specified by a row or column vector of pulse voltages. The vector of pulse onset times is automatically computed from the specified sample rate.

Returns

IObservable<Mat>

An observable sequence that is identical to the source sequence but where there is an additional side effect of uploading each custom pulse train in the sequence to the Pulse Pal device.

Process(IObservable<double[]>)

Uploads each array of voltages in an observable sequence to the Pulse Pal device, where each array specifies a custom train of continuous monophasic pulses, with periodic onset times.

public IObservable<double[]> Process(IObservable<double[]> source)

Parameters

source IObservable<double[]>

A sequence of custom pulse trains, where each pulse train is specified by an array of pulse voltages. The vector of pulse onset times is automatically computed from the specified sample rate.

Returns

IObservable<double[]>

An observable sequence that is identical to the source sequence but where there is an additional side effect of uploading each custom pulse train in the sequence to the Pulse Pal device.