<> <> DIRECTORY IO, List, OrderedSymbolTableRef, PrincOps, Rope, RoseEvents, RoseTypes; RoseRun: CEDAR DEFINITIONS = BEGIN OPEN RoseTypes; Run: PROC [sim: Simulation]; Next: PROC [sim: Simulation] RETURNS [stepType: StepType]; StepSim: PROC [sim: Simulation] RETURNS [stepType: StepType]; StepType: TYPE = {noStep, switchStep, otherStep}; stop: BOOLEAN; <> SlotRef: TYPE = REF Slot; <> PerturbNode: PROC [node: Node, agitator: Slot, evenIfInput: BOOL _ FALSE]; <> UpdateCurrent: PROC [node: Node, bbTable: PrincOps.BitBltTablePtr, agitator: Slot]; <> ValueChanged: PROC [node: Node]; <> Delayed: PROC [n: Node] RETURNS [delayed: BOOL]; ScheduleCell: PROC [Cell]; PreSimple: PROC [cell: Cell, reallyCopy: BOOL _ TRUE]; <> <> <> AllowToModify: PROC [cell: Cell, modifier: CellProc, blindly, mayRescheduleSelf: BOOLEAN _ FALSE]; <> <> Test: PROC [sim: Simulation, parms: TestParms, testData: REF ANY _ NIL]; <> TestParms: TYPE = REF TestParmsRep; TestParmsRep: TYPE = RECORD [ stopBefore, stopAfter: BOOLEAN _ FALSE]; Eval: PROC [handle: CellTestHandle, returnAfter: ReturnAfter _ returnWhenSettled] RETURNS [happened: StepType]; ReturnAfter: TYPE = PACKED ARRAY MaskableStepType OF BOOLEAN; MaskableStepType: TYPE = StepType[switchStep .. otherStep]; returnWhenSettled: ReturnAfter = [FALSE, FALSE]; DisableableStop: PROC [proc: UNSAFE PROC ANY RETURNS ANY, msg: ROPE, data: REF ANY _ NIL]; <> DisableThisStop: PROC [fh: PrincOps.FrameHandle] RETURNS [ok: BOOL]; <> END.