<> <> <> DIRECTORY BasicTime USING [GetClockPulses, Pulses, PulsesToMicroseconds]; IntervalTimer: CEDAR DEFINITIONS IMPORTS BasicTime = { <> <> <> <<>> <> <<>> Microseconds: TYPE = LONG CARDINAL; Now: PROCEDURE RETURNS[time: Microseconds] = INLINE { RETURN [BasicTime.PulsesToMicroseconds[BasicTime.GetClockPulses[]]]; }; WaitForExpirationTime: PROCEDURE[time: Microseconds]; <> WaitForExpirationInterval: PROCEDURE[microseconds: INT]; <> <> Pulses: TYPE = BasicTime.Pulses; <> NowInPulses: PROCEDURE RETURNS[time: Pulses] = INLINE { RETURN [BasicTime.GetClockPulses[]]; }; WaitForExpirationTimeInPulses: PROCEDURE[time: Pulses]; <> WaitForExpirationIntervalInPulses: PROCEDURE[pulses: INT]; <> TooManyWaiters: ERROR; }. December 27, 1983 2:20 pm, Stewart, Cedar 5