<> <> <> <> DIRECTORY IIPath USING [PathProc], IISample USING [EdgeAction], IITransformation USING [Transformation], SF USING [Box, BoxAction, BoxGenerator, maxBox]; IIScanConverter: CEDAR DEFINITIONS ~ BEGIN PathProc: TYPE ~ IIPath.PathProc; Transformation: TYPE ~ IITransformation.Transformation; Box: TYPE ~ SF.Box; maxBox: Box ~ SF.maxBox; BoxAction: TYPE ~ SF.BoxAction; DevicePath: TYPE ~ REF DevicePathRep; DevicePathRep: TYPE; Create: PROC RETURNS [DevicePath]; SetPath: PROC [devicePath: DevicePath, path: PathProc, transformation: Transformation _ NIL, clipBox: Box _ maxBox]; CreatePath: PROC [path: PathProc, transformation: Transformation _ NIL, clipBox: Box _ maxBox, scratch: DevicePath _ NIL -- for re-use of storage ] RETURNS [DevicePath]; BoundingBox: PROC [devicePath: DevicePath, clipBox: Box _ maxBox] RETURNS [Box]; <> <<>> NumberOfBoxes: PROC [devicePath: DevicePath] RETURNS [INT]; <> <<>> Monotone: PROC [devicePath: DevicePath] RETURNS [BOOL]; <> GenerateEdges: PROC [devicePath: DevicePath, edgeAction: IISample.EdgeAction]; <> ConvertToBoxes: PROC [devicePath: DevicePath, oddWrap: BOOL _ FALSE, clipBox: Box _ maxBox, boxAction: BoxAction]; ConvertToManhattanPolygon: PROC [devicePath: DevicePath, oddWrap: BOOL _ FALSE, clipBox: Box _ maxBox] RETURNS [LIST OF Box]; <> ObjectsFromPath: PROC [path: PathProc, clipBox: Box, objectProc: PROC [Box, SF.BoxGenerator], devicePath: DevicePath]; <> END.