Oberon || Library || Module Index || Search Engine || Definition || Module


Ulm's Oberon Library:
EventConditions


NAME

EventConditions - wait until a given event is raised

SYNOPSIS

PROCEDURE Create(VAR condition: Conditions.Condition;
                 eventType: Events.EventType);
PROCEDURE Drop(condition: Conditions.Condition);
PROCEDURE TestAndGet(condition: Conditions.Condition;
                     VAR event: Events.Event) : BOOLEAN;

DESCRIPTION

EventConditions creates conditions which allow to wait until events of a given type are passed to Events.Raise.

Create creates a condition which evaluates to TRUE if one or more events of eventType have been passed to Events.Raise. Create defines a handler for eventType. Additional handlers may be defined by other modules but the reaction of eventType must not be changed to Events.default or Events.ignore. The handler queues all incoming events of eventType.

Multiple conditions may be defined for the same event type. In this case all incoming events are put into each of the queues.

Drop removes the associated queue of condition. This is useful if condition is no longer needed because it reduces the number of queues for the associated event type and assures that the queue can be subject to the garbage collector.

TestAndGet returns TRUE and the next event if there are any events in the event queue of condition.

SEE ALSO

BlockingEvents
similar to EventConditions but blocks the event raiser until all interested parties have seen the event
Conditions
interface for conditions
Events
event handling

Edited by: borchert, last change: 1995/12/13, revision: 1.3, converted to HTML: 1997/04/28

Oberon || Library || Module Index || Search Engine || Definition || Module