--TSSDFont.mesa
--sd font manager
--Michael Plass, May 27, 1982 8:56 am

DIRECTORY
	Rope USING[ROPE];

TSSDFont: DEFINITIONS =

BEGIN
ROPE: TYPE = Rope.ROPE;

FontSplines: TYPE = REF FontSplinesRec;
FontSplinesRec: TYPE = RECORD [
	bc: CARDINAL,
	data: SEQUENCE range: CARDINAL OF CharSplines
	];

CharSplines: TYPE = REF CharSplinesRec;
CharSplinesRec: TYPE = RECORD [
	unit: REAL, -- the dimensions are in terms of this
	data: SEQUENCE length: NAT OF INTEGER
	];
moveToCode: INTEGER = -LAST[INTEGER]-1;
-- A curveto is represented by six numbers, the coordinates of the last three Bezier points.
-- A moveto is represented by a moveToCode followed by the coordinates.
-- A lineto is repesented as a degenerate curveto.

Load: PROCEDURE [sdName: ROPE]
	RETURNS [fontSplines: FontSplines ← NIL];

END.