-- XeroxCompress.mesa -- Copyright (C) Xerox Corporation 1985. All rights reserved. -- last edited by castillo 18-Jun-85 17:59:47 XeroxCompress: DEFINITIONS = BEGIN -- -- This module defines the interface to the Xerox compression -- routines. -- -- Intialize must be called first with the heap to be used to store -- internal data. -- -- CompressPlate is called to perform the compression. The -- parameter, "scanLineProc" is used by the compressor to get -- the scan lines. "putBitsProc" is used to output the compressed -- pixels to the output. -- ===== -- TYPES -- ===== PutBitsProc: TYPE = PROCEDURE [val: CARDINAL, bits: INTEGER]; ScanLineProc: TYPE = PROCEDURE RETURNS [ current: LONG POINTER ¬ NIL, previous: LONG POINTER ¬ NIL]; -- ========= -- PROCEDURE -- ========= CompressPlate: PROCEDURE [ scanLen: CARDINAL, scanLineProc: ScanLineProc, putBitsProc: PutBitsProc] RETURNS [xPixels: CARDINAL, byteSize: LONG CARDINAL]; Initialize: PROCEDURE [heap: UNCOUNTED ZONE]; END... LOG 13Sep84 - Okamoto - Created. 18Jun85 - castillo - copyright notice.