public static class HierarchyEnumerator.CellInfo
extends java.lang.Object
The HierarchyEnumerator creates a new CellInfo for a Cell instance just before it begins enumerating the contents of that Cell instance. The HierarchyEnumerator abandons the CellInfo once it is done enumerating the contents of that Cell instance. Once the CellInfo is abandoned the garbage collector may reclaim the CellInfo's storage.
Each CellInfo has a reference to the CellInfo of the parent of the current Cell instance. Thus the Visitor is able to get information about all the ancestors of the current Cell instance.
In most cases, the user will need to store additional information in the CellInfo. In those cases the user should extend the CellInfo class and override the Visitor.newCellInfo() method to return an instance of the derived class.
Constructor and Description |
---|
CellInfo() |
Modifier and Type | Method and Description |
---|---|
Cell |
getCell()
The Cell currently being visited.
|
VarContext |
getContext()
The VarContext to use for evaluating all variables in the
current Cell.
|
int[] |
getExportNetIDs(Export e)
Get netIDs for the Export: e.
|
int |
getNetID(Network net)
Map any net inside the current cell to a net
number.
|
Netlist |
getNetlist()
The Netlist of the current Cell.
|
Network |
getNetworkInParent(Network network)
Get the Network in the parent that connects to the specified
Network in this cell.
|
HierarchyEnumerator.CellInfo |
getParentInfo()
Get the CellInfo for the current Cell's parent.
|
Nodable |
getParentInst()
Get the NodeInst that instantiates the Current
instance.
|
int[] |
getPortNetIDs(Nodable no,
PortProto pp)
Get the set of netIDs that are connected to the specified port of
the specified Nodable.
|
HierarchyEnumerator.CellInfo |
getRootInfo()
Get the CellInfo for the root Cell
|
java.awt.geom.AffineTransform |
getTransformToRoot()
Method to get the transformation from the current location to the root.
|
java.lang.String |
getUniqueNetName(int netID,
java.lang.String sep)
Get a unique, flat net name for the network.
|
java.lang.String |
getUniqueNetName(Network net,
java.lang.String sep)
Get a unique, flat net name for the network.
|
HierarchyEnumerator.NetNameProxy |
getUniqueNetNameProxy(int netID,
java.lang.String sep)
Same as getUniqueNetName except it returns a NameProxy instead of a
String name
|
HierarchyEnumerator.NetNameProxy |
getUniqueNetNameProxy(Network net,
java.lang.String sep)
Same as getUniqueNetName except it returns a NameProxy instead of a
String name
|
java.lang.String |
getUniqueNodableName(Nodable no,
java.lang.String sep)
Get a unique, flat instance name for the Nodable.
|
HierarchyEnumerator.NodableNameProxy |
getUniqueNodableNameProxy(Nodable no,
java.lang.String sep)
Same as getUniqueNodableName except that it returns a NameProxy
instead of a String name.
|
boolean |
isRootCell()
The Cell that is the root of the traversal
|
HierarchyEnumerator.NetDescription |
netIdToNetDescription(int netID)
Get the Network that is closest to the root in the design
hierarchy that corresponds to netID.
|
public final Cell getCell()
public final boolean isRootCell()
public final VarContext getContext()
public final Netlist getNetlist()
public final HierarchyEnumerator.CellInfo getParentInfo()
public final Nodable getParentInst()
public final HierarchyEnumerator.CellInfo getRootInfo()
public final int[] getExportNetIDs(Export e)
public final int getNetID(Network net)
If you want to generate a unique name for the net use getUniqueNetName().
public final int[] getPortNetIDs(Nodable no, PortProto pp)
public final java.lang.String getUniqueNetName(Network net, java.lang.String sep)
sep
- the context separator to use if needed.public final HierarchyEnumerator.NetNameProxy getUniqueNetNameProxy(Network net, java.lang.String sep)
public final java.lang.String getUniqueNetName(int netID, java.lang.String sep)
sep
- the hierarchy separator to use if needed.public final HierarchyEnumerator.NetNameProxy getUniqueNetNameProxy(int netID, java.lang.String sep)
public final java.lang.String getUniqueNodableName(Nodable no, java.lang.String sep)
no
- sep
- the hierarchy separator to use if neededpublic final HierarchyEnumerator.NodableNameProxy getUniqueNodableNameProxy(Nodable no, java.lang.String sep)
public final HierarchyEnumerator.NetDescription netIdToNetDescription(int netID)
public Network getNetworkInParent(Network network)
network
- the network in this cellpublic java.awt.geom.AffineTransform getTransformToRoot()