Index

Package: Manager

Description

package Events.Manager is

Subprograms & Entries

Queue_Event

procedure Queue_Event
( evt: in out A_Event );
Adds an event to the queue.

Register_Listener

procedure Register_Listener
( corral: not null A_Corral;
evtName: String );
Registers a corral as a listener for a specific type of event. Corrals only receive events for which they are registered.

Run

procedure Run;
Dispatches queued events, waiting for more if the queue is empty. The calling thread will not return from this procedure until Stop is invoked.

Stop

procedure Stop;
Shuts down the event manager and causes the thread in Run to return, if the event manager is currently running. Any further calls to Queue_Event or Trigger event will consume the event objects but do nothing.

Trigger_Event

procedure Trigger_Event
( evt: in out A_Event );
Synchronously dispatches an event to its listeners until one of the listeners consumes the event. The listener's response is ignored.

Trigger_Event

procedure Trigger_Event
( evt: in out A_Event;
response: out Response_Type );
Synchronously dispatches an event to its listeners until one of the listeners consumes the event.

Unregister_Listener

procedure Unregister_Listener
( corral: not null A_Corral;
evtName: String );
Unregisters a corral as a listener for a specific type of event. If the corral was not previously registered, this has no effect.