CDExtras.mesa (part of ChipNDale)
Copyright © 1983, 1984 by Xerox Corporation. All rights reserved.
by Ch. Jacobi, October 24, 1983 11:48 am
last edited by Ch. Jacobi, March 14, 1986 7:08:37 pm PST
DIRECTORY
CD, CDDirectory, Rope;
CDExtras: CEDAR DEFINITIONS =
BEGIN
This module contains procedures which I think could be of general use but are not used by my own code. Therefore: Each use of these procedure should be reported to me, so I can see their value. Sometimes the procedures are not too good tested.
This module contains further procedures which are not yet put into the right module; The procedures might change their module without further notifications.
CreateDummyObject: PROC[design: CD.Design] RETURNS [CD.Object];
--create a dummy cell object which contains the whole design.
--On future changes of the design, the dummy object may or may not
--get obsolete.
--the cell object is NOT put into any cell library
EnumerateChildrenObjects: PROC [me: CD.Object, p: CDDirectory.EnumerateObjectsProc, x: REF];
--enumerate me and its children objects
EnumerateDesignObjects: PROC [design: CD.Design, p: CDDirectory.EnumerateObjectsProc, x: REF];
--enumerate all objects in directory of design
PopToTopLevel: PROC [design: CD.Design];
--if "design" is pushed in, it will be popped out, either by flushing,
--replacing cells or creating new cells
Cellize: PROC [design: CD.Design, name: Rope.ROPENIL] RETURNS [cell: CD.Object←NIL, pos: CD.Position];
--makes a single "cell" of of the "design", removes all instances;
--pos: if "cell" is included at position "pos" in an empty design we would get "design" again
--if "design" is pushed in, it will be popped out, either by flushing,
--replacing cells or creating new cells
GetTechnology: PROC [name: Rope.ROPE] RETURNS [CD.Technology];
--far more friendly version of CD.GetTechnology
--NIL if not found
END.