<> <> DIRECTORY Atom, IO, LarkControl, Log, Nice, -- PrettyPrinTV, PrinTV, -- Rope, RPCPkt, PrincOpsUtils, VBag, ViewRec, ViewerClasses; NiceImpl: CEDAR PROGRAM IMPORTS Atom, LarkControl, Log, PrincOpsUtils, -- PrinTV, PrettyPrinTV,-- VBag, ViewRec SHARES VBag = { BeNiceDo: PROC[r: REF, d: INT, how: ATOM_$System, howD: REF_NIL] = TRUSTED { Log.Report["Sorry, PrettyPrintTV stuff not available", how, howD]; <> <> <> <> <> }; ViewDo: PROC[r: REF, name: Rope.ROPE] = TRUSTED { IF ~PrincOpsUtils.IsBound[VBag.Start] THEN RETURN; IF recTable=NIL THEN recTable_VBag.Create["Program Management Variables"]; []_VBag.Start[recTable, r, name]; }; LarkConLogStreamDo: PROC[machine: RPCPkt.Machine] RETURNS [log: IO.STREAM] = TRUSTED { RETURN[IF PrincOpsUtils.IsBound[LarkControl.GetLogStream] THEN LarkControl.GetLogStream[machine] ELSE NIL]; }; recTable: ViewerClasses.Viewer_NIL; Atom.PutProp[$IRNice, $BeNice, NEW[Nice.BeNiceProc_BeNiceDo]]; Atom.PutProp[$IRNice, $LarkConLogStream, NEW[Nice.LarkConLogStreamProc_LarkConLogStreamDo]]; Atom.PutProp[$IRNice, $View, NEW[Nice.ViewProc_ViewDo]]; TRUSTED { IF PrincOpsUtils.IsBound[ViewRec.SetBehavior] THEN ViewRec.SetBehavior[newBehavior: [delayParms: [min: 1000]]]; -- Reduce sampling load }; }.