Interpress.mesa
Copyright © 1985, 1986 by Xerox Corporation. All rights reserved.
Michael Plass, June 7, 1985 3:31:24 pm PDT
Doug Wyatt, May 30, 1986 3:03:19 pm PDT
Allan Wax: January 20, 1987 12:37:38 pm PST
Interpress:
CEDAR
DEFINITIONS
~ BEGIN
ROPE: TYPE ~ Rope.ROPE;
STREAM: TYPE ~ IO.STREAM;
LogProc: TYPE ~ PROC [class: INT, code: ATOM, explanation: ROPE];
InstructionsRecord: TYPE;
Instructions: TYPE = REF InstructionsRecord;
CredentialsRecord: TYPE;
Credentials: TYPE ~ REF CredentialsRecord;
classMasterError: INT ~ 0;
classMasterWarning: INT ~ 10;
classAppearanceError: INT ~ 50;
classAppearanceWarning: INT ~ 60;
classComment: INT ~ 100;
Master: TYPE ~ REF MasterRep;
MasterRep:
TYPE ~
RECORD [
pages: INT, -- number of pages in the master
impl: REF MasterImplRep, -- implementation details
copies: INT ← 1 -- max. copies referenced
];
MasterImplRep: TYPE;
Open:
PROCEDURE [fileName:
ROPE, log: LogProc, credentials: Credentials ←
NIL, instructionsHandle: Instructions ←
NIL]
RETURNS [Master];
Opens the named Interpress master and executes the preamble.
FromStream:
PROCEDURE [stream:
STREAM, log: LogProc, credentials: Credentials ←
NIL, instructionsHandle: Instructions ←
NIL]
RETURNS [Master];
Same as Open but takes stream as input
DoPage:
PROCEDURE [master: Master, page:
INT, context: Imager.Context, log: LogProc, copy:
INT ← 1];
Executes a page of the master; page IN[1..master.pages].
Close:
PROCEDURE [master: Master];
Destroys the master and any Inserted Files associated with it.