-- Copyright (C) 1984  by Xerox Corporation. All rights reserved. 
-- LogWatchDefs.mesa
-- Stored as [indigo]<Grapevine>MS>LogWatchDefs.mesa

-- Michael D. Schroeder, June 7, 1982  7:05 PM

LogWatchDefs: DEFINITIONS =
  BEGIN

  LogPosition: TYPE [2];

  PutLogChars: PROCEDURE [
    p: LogPosition, put: PROCEDURE [CHARACTER], gap: PROCEDURE,
    stop: PROCEDURE RETURNS [BOOLEAN]] RETURNS [LogPosition];

  -- Starts from the specified log position.
  -- Calls "put" for each new log character.
  -- Calls "gap" when a delay is expected before putting the next character.
  -- Calls "stop" at least once every two seconds.
  -- If  "stop" returns TRUE then "PutLogChars" returns with the next "put" position.


  GetLogPosition: PROCEDURE RETURNS [LogPosition];

  -- Returns the current position of the server log.
  -- The next entry written into the log will start at this position.


  END. -- LogWatchDefs.mesa --