RavenCounter.mesa
Copyright (C) Xerox Corporation 1982, 1983, 1984, 1985, 1986. All rights reserved.
Last edited by Strickberger 31-Jul-85 13:56:37
Tim Diebert: December 2, 1986 12:20:55 pm PST
DIRECTORY
BasicTime USING [GMT],
EngineLog USING [EngineType];
RavenCounter: CEDAR DEFINITIONS = BEGIN
TYPEs:
Handle: TYPE = REF Object;
Object: TYPE = RECORD [engineType: EngineLog.EngineType, resetTime: BasicTime.GMT, counter: ARRAY Item OF LONG CARDINAL];
log file record
Item: TYPE = MACHINE DEPENDENT{feedBottomAligned, feedBottomOffset, feedTopAligned, feedTopOffset, solicitStatus, solicitPaperSize, display, dozeOff, wakeUp, beep, warming, standBy, readyToFeed, feeding, pageSync, pageAtOutputTray, feederFaultBottom, feederFaultTop, registrationJam, fuserJam, noExit, outputTrayFull, fuserCold, tonerLow, interlockOpen, feedTraysNotEngaged, displayAcknowledge, aboutToDozeOff, paperSmallSmall, paperSmallLarge, paperLargeSmall, paperLargeLarge, key0to9, keyClear, keyTest, keyOnLine, onLine, keyOffLine, goingOffLine, offLine, parityError, illegalCharacter, illegalSequence, statusError, noStatus, statusOverRun, undefinedStatus, bandOverrun, pageSyncMiss, imageFault1, imageFault2, imageFault3, sequenceFault, communicationFault, null(63)};
Item enumerates all events recorded in the log
PROCEDUREs:
ForceOut: PROCEDURE;
reads the log file, adds previous and latest event totals (for events from Item) and writes a log file record with the new data
Get: PROCEDURE RETURNS [dataBase: Handle];
reads the log file, writes a new record, as in ForceOut, and returns a pointer to the RavenCounter.Object which supplied the contents for the write
Reset: PROCEDURE;
restores log to its original state, with all event totals equal to zero
END.
LOG
When / Who / What
31-Mar-82/Claude Pany/Created.
28-Sep-82 17:47:01 - Trowell - added documentation
31-Jul-85 13:56:37 / Strickberger / Added copyright. Changed Item for Euclid.