<> <> <> <> <> <<>> DIRECTORY GGCoreTypes, Imager, ImagerTransformation, IO, Rope, TextNode; GGParseOut: CEDAR DEFINITIONS = BEGIN BoundBox: TYPE = GGCoreTypes.BoundBox; Color: TYPE = Imager.Color; Point: TYPE = Imager.VEC; SequenceOfReal: TYPE = GGCoreTypes.SequenceOfReal; StrokeEnd: TYPE = Imager.StrokeEnd; StrokeJoint: TYPE = Imager.StrokeJoint; <> WriteStrokeEnd: PROC [f: IO.STREAM, strokeEnd: StrokeEnd]; WriteStrokeJoint: PROC [f: IO.STREAM, strokeJoint: StrokeJoint]; WriteColor: PROC [f: IO.STREAM, color: Color]; WritePixelArray: PROC [f: IO.STREAM, pa: Imager.PixelArray]; WriteText: PROC [f: IO.STREAM, text: TextNode.Ref, screenStyle: BOOL]; WritePoint: PROC [f: IO.STREAM, point: Point]; WriteTransformation: PROC [f: IO.STREAM, transform: ImagerTransformation.Transformation]; WriteFactoredTransformation: PROC [f: IO.STREAM, transform: ImagerTransformation.Transformation]; WriteFactoredTransformationVEC: PROC [f: IO.STREAM, transform: ImagerTransformation.Transformation]; <> WriteProps: PROC [f: IO.STREAM, props: LIST OF REF ANY]; WriteArrayOfReal: PROC [f: IO.STREAM, reals: SequenceOfReal]; WriteBool: PROC [f: IO.STREAM, bool: BOOL]; WriteListOfRope: PROC [f: IO.STREAM, ropes: LIST OF Rope.ROPE]; WriteScalarButtonValues: PROC [f: IO.STREAM, names: LIST OF Rope.ROPE, values: LIST OF REAL, on: LIST OF BOOL]; <> <<[F 4.0 4] [F 2.0 2] [F 1.0 1] [F 0.75 3/4] ...>> <> WriteBox: PROC [f: IO.STREAM, box: BoundBox]; END.