<> <> <> <<>> DIRECTORY RealEvent USING[StreamHandle], RealVec USING[Handle], Rope USING[ROPE], ViewerClasses USING[Viewer]; Plotter: DEFINITIONS = { Object: TYPE; Handle: TYPE = REF Object; <> <> <> <> PointShape: TYPE = {none, filledBox, emptyBox, filledDiamond, emptyDiamond, dot, circle}; Connectivity: TYPE = {solid, dotted, dashed, dotDash, vertical}; Create: PROC [label: Rope.ROPE, eventSource: RealEvent.StreamHandle, nEvents: NAT, <> plotValueDifferences: BOOLEAN _ FALSE, plotValuePerSecond: BOOLEAN _ FALSE, autoRepaint: BOOLEAN _ FALSE, < repaint whenever a new event occurs>> iconic: BOOLEAN _ TRUE, connectivity: Connectivity _ solid, <> <> pointShape: PointShape _ none <> ] RETURNS[Handle]; Paint: PROC[self: Handle]; Destroy: PROC[self: Handle]; CreatePlotViewer: PROC [label: Rope.ROPE, verticalAxis: RealVec.Handle, horizontalAxis: RealVec.Handle _ NIL, <> iconic: BOOLEAN _ TRUE, connectivity: Connectivity _ solid, pointShape: PointShape _ none ] RETURNS[ViewerClasses.Viewer]; <> <> <> <> <> <> <> <<(via ViewerOps.PaintViewer). For the purpose of connecting>> <> <> <> }.