-- IntervalTimerFace.mesa -- Last Edited by: Taft, February 24, 1983 10:21 am IntervalTimerFace: DEFINITIONS = BEGIN ClockPulses: TYPE = LONG CARDINAL; -- This is what is returned by ProcessorFace.GetClockPulses and by the RCLK instruction. -- Its resolution is defined by ProcessorFace.microsecondsPerHundredPulses. SetExpirationTime: PROCEDURE [time: ClockPulses]; -- Sets the timer to expire at the specified time. It is OK to call this -- while a Wait is already in progress. Wait: PROCEDURE; -- Waits until the time specified in the most recent SetExpirationTime has been reached. -- Returns immediately if that time has already been reached. Only one call to Wait -- should be in progress at a time. exists: BOOLEAN; -- TRUE if an interval timer actually exists. SetExpirationTime and Wait are no-ops -- if exists=FALSE. END.