SCNetUtil.mesa
Copyright © 1986 by Xerox Corporation. All rights reserved.
last changed by Preas June 17, 1986 2:06:41 pm PDT
net utility routines
DIRECTORY
Core,
Rope,
SC,
SCPrivate;
SCNetUtil: CEDAR DEFINITIONS =
BEGIN
find nets attached to component
NetsOnInst: PROCEDURE[insts: SCPrivate.InstanceList] RETURNS [nets: SCPrivate.NetList];
determine Instances on net
InstsOnNets: PROCEDURE[nets: SCPrivate.NetList] RETURNS [insts: SCPrivate.InstanceList];
EnumerateInstsOnNets: PROC [nets: SCPrivate.NetList, eachInst: EachInstProc] RETURNS [quit: BOOL];
EachInstProc: TYPE = PROC [instance: SCPrivate.Instance] RETURNS [quit: BOOLFALSE];
EnumerateNets: PROC [handle: SC.Handle, eachNet: EachNetProc] RETURNS [quit: BOOL];
EachNetProc: TYPE = PROC [netIndex: NAT, net: SCPrivate.Net] RETURNS [quit: BOOLFALSE];
EnumeratePinsOnNet: PROC [net: SCPrivate.Net, eachPin: EachPinProc] RETURNS [quit: BOOL];
EachPinProc: TYPE = PROC [netPin: SCPrivate.NetPin] RETURNS [quit: BOOLFALSE];
AddConnection: PROCEDURE [handle: SC.Handle, net: SCPrivate.Net, instance: SCPrivate.Instance, pin: SCPrivate.ObjectPin, pinIndex: NAT, pinClass: SCPrivate.PinType];
RemoveConnections: PROCEDURE [handle: SC.Handle, instance: SCPrivate.Instance];
DefineNet: PROCEDURE [handle: SC.Handle, wire: Core.Wire, name: Rope.ROPE] RETURNS [net: SCPrivate.Net ← NIL];
RemoveFtsOnNet: PROCEDURE[handle: SC.Handle, net: SCPrivate.Net];
remove the fts on a net list
ExitOnSide: PROC [handle: SC.Handle, net: SCPrivate.Net, side: SC.Side] RETURNS [onThisSide: BOOLEAN];
return TRUE if net has an exit on the indicated side
END.