com.sun.electric.tool.generator.flag
Class SchematicVisitor

java.lang.Object
  extended by com.sun.electric.database.hierarchy.HierarchyEnumerator.Visitor
      extended by com.sun.electric.tool.generator.flag.SchematicVisitor

public class SchematicVisitor
extends HierarchyEnumerator.Visitor


Constructor Summary
SchematicVisitor(Cell layCell)
           
 
Method Summary
 boolean enterCell(HierarchyEnumerator.CellInfo info)
          The HierarchyEnumerator is about to begin enumerating the contents of a new Cell instance.
 void exitCell(HierarchyEnumerator.CellInfo info)
          The HierarchyEnumerator has finished enumerating the contents of the current Cell instance.
 java.util.List<NodeInst> getLayInsts()
           
 java.util.Map<NodeInst,SchematicPosition> getLayInstSchematicPositions()
           
 java.util.Map<NodeInst,java.lang.Double> getLayInstSpacing()
          when stacking layout instances, user may request extra space between a particular instance and its predecessor
 java.util.List<ToConnect> getLayoutToConnects()
           
 boolean visitNodeInst(Nodable no, HierarchyEnumerator.CellInfo info)
          The HierarchyEnumerator is visiting Nodable ni.
 
Methods inherited from class com.sun.electric.database.hierarchy.HierarchyEnumerator.Visitor
newCellInfo
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SchematicVisitor

public SchematicVisitor(Cell layCell)
Method Detail

visitNodeInst

public boolean visitNodeInst(Nodable no,
                             HierarchyEnumerator.CellInfo info)
Description copied from class: HierarchyEnumerator.Visitor
The HierarchyEnumerator is visiting Nodable ni.

Specified by:
visitNodeInst in class HierarchyEnumerator.Visitor
Parameters:
no - the Nodable that HierarchyEnumerator is visiting.
Returns:
a boolean indicating whether or not the HierarchyEnumerator should expand the Cell instantiated by ni. True means expand. If ni instantiates a PrimitiveNode then the return value is ignored by the HierarchyEnumerator.

enterCell

public boolean enterCell(HierarchyEnumerator.CellInfo info)
Description copied from class: HierarchyEnumerator.Visitor
The HierarchyEnumerator is about to begin enumerating the contents of a new Cell instance. That instance has just become the new "current" Cell instance.

Specified by:
enterCell in class HierarchyEnumerator.Visitor
Parameters:
info - information about the Cell instance being enumerated
Returns:
a boolean indicating if the HierarchyEnumerator should enumerate the contents of the current Cell. True means enumerate the current cell

exitCell

public void exitCell(HierarchyEnumerator.CellInfo info)
Description copied from class: HierarchyEnumerator.Visitor
The HierarchyEnumerator has finished enumerating the contents of the current Cell instance. It is about to leave it, never to return. The CellInfo associated with the current Cell instance is about to be abandoned.

Specified by:
exitCell in class HierarchyEnumerator.Visitor
Parameters:
info - information about the Cell instance being enumerated

getLayoutToConnects

public java.util.List<ToConnect> getLayoutToConnects()

getLayInsts

public java.util.List<NodeInst> getLayInsts()

getLayInstSchematicPositions

public java.util.Map<NodeInst,SchematicPosition> getLayInstSchematicPositions()

getLayInstSpacing

public java.util.Map<NodeInst,java.lang.Double> getLayInstSpacing()
when stacking layout instances, user may request extra space between a particular instance and its predecessor