public class EDIFHierCellInst
extends Object
EDIFCellInst
with its hierarchy, described by all the EDIFCellInst
s that sit above it within
the netlist.
Instances of this class do not necessarily describe a complete hierarchy from the top level cell to a leaf instance.
They may also be used to describe a partial hierarchy starting at an arbitrary point in the design.
Instances of this class are immutable: Once created, it cannot be changed.
Created on: Oct 30, 2017Modifier and Type | Method and Description |
---|---|
void |
addChildren(Collection<EDIFHierCellInst> collection)
Add this instance's children to some collection
|
static EDIFHierCellInst |
create(EDIFCellInst... cellInsts)
Create an absolute EDIFHierCellInst.
|
static EDIFHierCellInst |
createRelative(EDIFCellInst... cellInsts)
Create an EDIFHierCellInst.
|
static EDIFHierCellInst |
createTopInst(EDIFCellInst topCell) |
boolean |
enterHierarchicalName(StringBuilder sb) |
boolean |
equals(Object o) |
String |
getCellName() |
EDIFCell |
getCellType() |
EDIFHierCellInst |
getChild(EDIFCellInst relativeChild) |
EDIFHierCellInst |
getChild(String relativeChildName)
Get a direct child
|
EDIFHierCellInst |
getCommonAncestor(EDIFHierCellInst o)
Given this instance and the provided instance o, it determines the closest common ancestor
between the two instances.
|
int |
getDepth() |
String |
getFullHierarchicalInstName() |
List<EDIFCellInst> |
getFullHierarchy() |
List<EDIFHierPortInst> |
getHierPortInsts()
Gets the hierarchical port insts on this cell instance
|
EDIFCellInst |
getInst() |
EDIFHierNet |
getNet(String netName) |
EDIFHierCellInst |
getParent() |
EDIFHierPortInst |
getPortInst(String portName)
Get a hierarchical port inst, viewed from external to this cell inst.
|
EDIFHierCellInst |
getReferenceCopy()
Creates a reference copy of this cell instance--a deep copy of the instance
without this new instance being referenced in the design or netlist object.
|
EDIFHierCellInst |
getSibling(EDIFCellInst relativeSibling) |
int |
hashCode() |
boolean |
isAbsolute() |
boolean |
isDescendantOf(EDIFHierCellInst potentialAncestor)
Checks if the provided instance is an ancestor (hierarchical parent) of this instance.
|
boolean |
isTopLevelInst()
Checks if this instance is the top level instance of the netlist.
|
boolean |
isUniquified()
True if all cells on this path are the only instantiations of its cell.
|
String |
toString() |
public static EDIFHierCellInst create(EDIFCellInst... cellInsts)
EDIFNetlist.getTopCellInst()
cellInsts
- the hierarchy of cell instspublic static EDIFHierCellInst createTopInst(EDIFCellInst topCell)
public static EDIFHierCellInst createRelative(EDIFCellInst... cellInsts)
cellInsts
- the hierarchy of cell instspublic EDIFCellInst getInst()
public boolean equals(Object o)
equals
in class Object
public int hashCode()
hashCode
in class Object
public EDIFHierCellInst getParent()
public EDIFHierCellInst getChild(EDIFCellInst relativeChild)
public EDIFHierCellInst getSibling(EDIFCellInst relativeSibling)
public boolean isDescendantOf(EDIFHierCellInst potentialAncestor)
potentialAncestor
- The hierarchical instance in question to check if it ispublic EDIFHierCellInst getCommonAncestor(EDIFHierCellInst o)
o
- The other instance to check for a common ancestor.public boolean isAbsolute()
public List<EDIFCellInst> getFullHierarchy()
public int getDepth()
public boolean enterHierarchicalName(StringBuilder sb)
public String getFullHierarchicalInstName()
public boolean isTopLevelInst()
public EDIFCell getCellType()
public String getCellName()
public EDIFHierCellInst getChild(String relativeChildName)
relativeChildName
- the name of the direct childpublic EDIFHierNet getNet(String netName)
public EDIFHierPortInst getPortInst(String portName)
portName
- name of the port to get.IllegalStateException
- if the port does not existpublic List<EDIFHierPortInst> getHierPortInsts()
public void addChildren(Collection<EDIFHierCellInst> collection)
collection
- the collection to add topublic String toString()
toString
in class Object
public EDIFHierCellInst getReferenceCopy()
public boolean isUniquified()