CoreRouteFlatProcs.mesa
Copyright Ó 1987 by Xerox Corporation. All rights reserved.
Bryan preas, April 10, 1988 3:59:36 pm PDT
Instance Manipulation
EnumerateInstances:
PROC [structure: CoreRouteFlat.Structure, action: EachInstanceAction]
RETURNS [quit:
BOOLEAN];
enumerates instances in flat structure in unspecified order
instances inserted/deleted during enumeration may or may not be seen
applies action to each object until action returns TRUE or no more instances
returns TRUE if some action returns TRUE
EachInstanceAction: TYPE = PROC [instance: CoreRouteFlat.Instance] RETURNS [quit: BOOLEAN ← FALSE];
EnumerateNetONodes:
PROC [instance: CoreRouteFlat.Instance, action: EachNetONodeAction]
RETURNS [quit:
BOOLEAN];
enumerates bound wires on instance in unspecified order
applies action to each bound wires until action returns TRUE or no more bound wires
returns TRUE if some action returns TRUE
EachNetONodeAction: TYPE = PROC [instance: CoreRouteFlat.Instance, netONode: CoreRouteFlat.NetONode] RETURNS [quit: BOOLEAN ← FALSE];
EnumeratePins:
PROC [oNode: CoreRouteFlat.ONode, action: EachPinAction]
RETURNS [quit:
BOOLEAN];
enumerates physical pins on ObjectPin in unspecified order
pins inserted/deleted during enumeration may or may not be seen
applies action to each segment until action returns TRUE or no more object pins
returns TRUE if some action returns TRUE
EachPinAction: TYPE = PROC [oNode: CoreRouteFlat.ONode, pin:CoreRouteFlat.Pin] RETURNS [quit: BOOLEAN ← FALSE];
PosOfONode:
PROC [instance: CoreRouteFlat.Instance, pin: CoreRouteFlat.Pin]
RETURNS [position:
CD.Position];
returns position of pin with respect to instance
Net Manipulation
EnumerateNets:
PROC [structure: CoreRouteFlat.Structure, action: EachNetAction]
RETURNS [quit:
BOOLEAN];
enumerates nets currently in symbol table in unspecified order
nets inserted/deleted during enumeration may or may not be seen
applies action to each net until action returns TRUE or no more nets
returns TRUE if some action returns TRUE
EachNetAction:
TYPE =
PROC [net: CoreRouteFlat.Net]
RETURNS [quit:
BOOLEAN ←
FALSE];
EnumerateNetPins:
PROC [net: CoreRouteFlat.Net, action: EachNetPinAction]
RETURNS [quit:
BOOLEAN];
enumerates pins on net in unspecified order
pins inserted/deleted during enumeration may or may not be seen
applies action to each pin until action returns TRUE or no more pins
returns TRUE if some action returns TRUE
EachNetPinAction: TYPE = PROC [net: CoreRouteFlat.Net, instONode: CoreRouteFlat.InstONode] RETURNS [quit: BOOLEAN ← FALSE];