PSO Event Functions

The PSO Event module receives all events generated by other modules and combines them into a single output event that can be used to trigger the generation of a waveform. You can use the PSO Event module to manually generate an output event, or a stream of continuous output events. The module allows you to specify a mask of conditions to selectively allow the output event to occur, such as requiring the PSO Window module output to be active.

Configuring the Event Mask

By default, the PSO Event module accepts all events from other modules and combines them into a single output event. You can use the PsoEventConfigureMask() function to specify additional conditions on when the output event can occur. You can specify multiple condition options simultaneously. To do this, set the $eventMask argument to the bitwise OR of all desired condition options, as defined in the PsoEventMask enumeration. All condition options that you specify must be simultaneously active in order for the output event to be active.

function PsoEventConfigureMask($axis as axis, $eventMask as integer)

Configures additional conditions to prevent PSO events from occurring.

Arguments

$axis  The axis on which to configure the event mask conditions.

$eventMask  A bitmask of event mask conditions. Use the values from the PsoEventMask enum.

Generating Manual Events

In addition to combining the normal events received from other modules, the PSO Event module can generate its own events. You can use the PsoEventGenerateSingle() function to command the module to immediately generate an output event.

function PsoEventGenerateSingle($axis as axis)

Immediately causes a single PSO event to occur.

Arguments

$axis  The axis on which to cause the event.

You can also use the PsoEventContinuousOn() function to command the PSO Event module to generate continuous events. In this mode, the waveform (if configured) will be triggered as fast as possible.

function PsoEventContinuousOn($axis as axis)

Immediately causes continuous PSO events to occur.

Arguments

$axis  The axis on which to cause the events.

After continuous events are enabled, you can use the PsoEventContinuousOff() function to disable this behavior.

function PsoEventContinuousOff($axis as axis)

Immediately halts active continuous PSO events.

Arguments

$axis  The axis on which to halt the events.