DIRECTORY BasicTime; CodeTimerConcrete: CEDAR DEFINITIONS = BEGIN Table: TYPE = REF TableObj; TableObj: TYPE = RECORD [ name: ATOM, -- the name of table processes: LIST OF ProcessPair -- [a pseudo-interval which is the "current" interval when no real interval is being executed, the most recently entered interval that has not yet been exited] ]; ProcessPair: TYPE = REF ProcessPairObj; ProcessPairObj: TYPE = RECORD [ outer, current: IntervalInContext, process: PROCESS ]; IntervalInContext: TYPE = REF IntervalInContextObj; IntervalInContextObj: TYPE = RECORD [ name: ATOM, -- name of the interval to which this IntervalInContext belongs starts, stops, prematureStops: CARD _ 0, prematureStopName: ATOM _ NIL, startTime: BasicTime.Pulses _ 0, totalTime: BasicTime.Pulses _ 0, maxTime: BasicTime.Pulses _ 0, maxIndex: CARD _ 0, minTime: BasicTime.Pulses _ LAST[LONG CARDINAL], children: LIST OF IntervalInContext, -- intervals that were started when this interval was table.current parent: IntervalInContext _ NIL ]; END. ΐ CodeTimerConcrete.mesa Copyright c 1988 by Xerox Corporation. All rights reserved. Bier, February 3, 1992 2:47 pm PST Contents: The real definitions of the types Table and Interval. Κ‘•NewlineDelimiter ™Icodešœ™Kšœ Οmœ1™