SCNetUtil.mesa
Copyright © 1986 by Xerox Corporation. All rights reserved.
last changed by Preas June 17, 1986 2:06:41 pm PDT
Jean-Marc Frailong October 11, 1987 5:23:18 pm PDT
Global data structure maintenance
DefineNet:
PROC [handle:
SC.Handle, flatWire: CoreFlat.FlatWire]
RETURNS [net: SCPrivate.Net];
Create a net corresponding to a canonical flat wire & scream if already defined
FindNet:
PROC [handle:
SC.Handle, flatWire: CoreFlat.FlatWire]
RETURNS [net: SCPrivate.Net];
Locate a net by its canonical flat wire name & scream if not found
FindPublicNet:
PROC [handle:
SC.Handle, wire: Core.Wire]
RETURNS [net: SCPrivate.Net];
Locate a public net by its public wire & scream if not found
EachNetProc: TYPE = PROC [net: SCPrivate.Net] RETURNS [quit: BOOL ← FALSE];
EnumerateNets:
PROC [handle:
SC.Handle, eachNet: EachNetProc]
RETURNS [quit:
BOOL];
Enumerate all nets that have pins on them
Nets and instances
NetsOnInst:
PROC[insts: SCPrivate.InstanceList]
RETURNS [nets: SCPrivate.NetList];
Find nets attached to component
InstsOnNets:
PROC[nets: SCPrivate.NetList]
RETURNS [insts: SCPrivate.InstanceList];
Determine Instances on net
EachInstProc: TYPE = PROC [instance: SCPrivate.Instance] RETURNS [quit: BOOL ← FALSE];
EnumerateInstsOnNets: PROC [nets: SCPrivate.NetList, eachInst: EachInstProc] RETURNS [quit: BOOL];
Nets and pins
EachPinProc: TYPE = PROC [netPin: SCPrivate.NetPin] RETURNS [quit: BOOL ← FALSE];
EnumeratePinsOnNet: PROC [net: SCPrivate.Net, eachPin: EachPinProc] RETURNS [quit: BOOL];
Connections
AddConnection:
PROC [handle:
SC.Handle, net: SCPrivate.Net, instance: SCPrivate.Instance, pin: SCPrivate.ObjectPin, pinIndex:
NAT, pinClass: SCPrivate.PinType];
RemoveConnections: PROC [handle: SC.Handle, instance: SCPrivate.Instance];