CDRepetitions.mesa (part of ChipNDale)
Copyright © 1983, 1985 by Xerox Corporation. All rights reserved.
by Christian Jacobi, October 27, 1983 3:36 pm
last edited by Christian Jacobi, April 16, 1985 2:26:42 pm PST
DIRECTORY
CD USING [DesignPosition, ObPtr, Orientation, Design, DrawRef, DesignRect];
CDRepetitions: CEDAR DEFINITIONS =
BEGIN
IsRepetition:
PROC [ob:
CD.ObPtr]
RETURNS [
BOOL] =
INLINE {
RETURN [ ISTYPE[ob.specificRef, RepPtr] ]
};
RepPtr: TYPE = REF RepRec;
RepRec:
TYPE =
RECORD [
ob: CD.ObPtr,
offsetOfFirst: CD.DesignPosition,
ir: CD.DesignRect,
orientation: CD.Orientation,
offset: CD.DesignPosition,
count: NAT
];
CreateRepetition:
PROC [design: CD.Design, ob:
CD.ObPtr, count:
NAT, offset:
CD.DesignPosition, orientation: CD.Orientation𡤀]
RETURNS [
CD.ObPtr];
--count <= 256
Index: PROC[environment: CD.DrawRef, skipInnerMost: NAT𡤀, ifNotFound: INT𡤀] RETURNS [INT];
END.