<> <> <> <> DIRECTORY AtomButtonsTypes, Imager, IO, Rope, SV2d, SV3d, SVModelTypes, SVSceneTypes, ViewerClasses; TFI3d: CEDAR DEFINITIONS = BEGIN Slice: TYPE = SVSceneTypes.Slice; Color: TYPE = Imager.Color; CoordSystem: TYPE = SVModelTypes.CoordSystem; DrawStyle: TYPE = SVModelTypes.DrawStyle; FeedbackData: TYPE = AtomButtonsTypes.FeedbackData; FileCamera: TYPE = SVSceneTypes.FileCamera; FrameBox: TYPE = SVModelTypes.FrameBox; Material: TYPE = SVModelTypes.Material; Matrix3by3: TYPE = SV2d.Matrix3by3; Matrix4by4: TYPE = SV3d.Matrix4by4; OMap: TYPE = SVModelTypes.OMap; Plane: TYPE = SV3d.Plane; Point2d: TYPE = SV2d.Point2d; Point3d: TYPE = SV3d.Point3d; Scene: TYPE = SVSceneTypes.Scene; SMap: TYPE = SVModelTypes.SMap; Viewer: TYPE = ViewerClasses.Viewer; FileinMatrix: PROC [f: IO.STREAM] RETURNS [mat: Matrix4by4]; FileinMatrix3by3: PROC [f: IO.STREAM] RETURNS [mat: Matrix3by3]; ReadRope: PROC [f: IO.STREAM, rope: Rope.ROPE]; <> <> RopeNotOnTop: SIGNAL [position: NAT, wasThere: Rope.ROPE, notThere: Rope.ROPE]; ReadChar: PROC [f: IO.STREAM, c: CHAR]; <> ReadReturn: PROC [f: IO.STREAM]; <> ReadWord: PROC [f: IO.STREAM] RETURNS [word: Rope.ROPE]; <, , or are encountered. Used to read in a rope which is data. ie the name of a coordinate system from a 3d file.>> ReadKeyWord: PROC [f: IO.STREAM] RETURNS [keyWord: Rope.ROPE, good: BOOL]; < are encountered. If CR is encountered first, then good is FALSE since ":" is expected after a keyword.>> ReadLine: PROC [f: IO.STREAM] RETURNS [line: Rope.ROPE]; < is encountered. Used to read Solidviews version rope. The character is tossed out.>> ReadWhiteSpace: PROC [f: IO.STREAM]; <'s, 's, and 's until something else is encountered. Signals RopeNotOnTop if no white space characters are found.>> ReadBlank: PROC [f: IO.STREAM]; <'s, 's, and 's until something else is encountered. Doens't mind if no white space characters are found.>> ReadHorizontalBlank: PROC [f: IO.STREAM] RETURNS [good: BOOL]; <'s, and 's until something else is encountered. Returns good = FALSE if a CR is encountered before anything else>> ReadBlankAndRope: PUBLIC PROC [f: IO.STREAM, rope: Rope.ROPE]; <> ReadBlankAndReal: PROC [f: IO.STREAM] RETURNS [r: REAL]; <> ReadBlankAndWord: PROC [f: IO.STREAM] RETURNS [word: Rope.ROPE]; <> ReadBlankAndNAT: PROC [f: IO.STREAM] RETURNS [n: NAT]; <> ReadPoint3d: PROC [f: IO.STREAM] RETURNS [point3d: Point3d]; <,,]".>> ReadPoint2d: PROC [f: IO.STREAM] RETURNS [point2d: Point2d]; ReadPoint2dAsPoint3d: PROC [f: IO.STREAM] RETURNS [point3d: Point3d]; <,]". Fills in point3d[3] with zero.>> ReadReal: PROC [f: IO.STREAM] RETURNS [r: REAL]; <, . Leaves these terminators on the stream.>> ReadNAT: PROC [f: IO.STREAM] RETURNS [n: NAT]; <, . Leaves these terminators on the stream.>> ReadBool: PROC [f: IO.STREAM] RETURNS [truth: BOOL, good: BOOL]; <> ReadColor: PROC [f: IO.STREAM] RETURNS [color: Color]; ReadSurface: PROC [f: IO.STREAM] RETURNS [surface: REF ANY]; ReadMaterial: PROC [f: IO.STREAM] RETURNS [material: Material]; ReadSMap: PROC [f: IO.STREAM] RETURNS [sMap: SMap]; ReadOMap: PROC [f: IO.STREAM] RETURNS [oMap: OMap]; ReadCamera: PROC [f: IO.STREAM, worldCS: CoordSystem, scene: Scene, version: REAL] RETURNS [fileCamera: FileCamera]; ReadClippingPlanes: PROC [f: IO.STREAM] RETURNS [clippingPlanes: LIST OF Plane]; ReadPlane: PROC [f: IO.STREAM] RETURNS [plane: Plane]; ReadStyle: PROC [f: IO.STREAM] RETURNS [style: DrawStyle]; ReadFrame: PROC [f: IO.STREAM] RETURNS [frame: FrameBox]; ReadListOfRope: PROC [f: IO.STREAM] RETURNS [ropeList: LIST OF Rope.ROPE]; ReadVisibleAssemblies: PROC [f: IO.STREAM, scene: Scene, feedback: FeedbackData] RETURNS [assemblyList: LIST OF Slice]; END.