com.sun.electric.tool.ncc.strategy
Class StratSizes

java.lang.Object
  extended by com.sun.electric.tool.ncc.strategy.Strategy
      extended by com.sun.electric.tool.ncc.strategy.StratSizes

public class StratSizes
extends Strategy

If Hash code partitioning fails to match all equivalence classes then try to partition equivalence classes containing Transistors and Resistors based on widths and lengths. This must be done before random matching or else we'll get width and length mismatches.


Field Summary
 
Fields inherited from class com.sun.electric.tool.ncc.strategy.Strategy
CODE_ERROR, CODE_NO_CHANGE, depth, globals
 
Method Summary
 java.lang.Integer doFor(NetObject n)
          doFor(NetObject) tests the NetObject to decide its catagory.
static LeafList doYourJob(NccGlobals globals)
          Find the equivalence class with the largest deviation in Part sizes and partition that class based on sizes.
 
Methods inherited from class com.sun.electric.tool.ncc.strategy.Strategy
doFor, doFor, doFor, doFor, elapsedTime, error, getDepth, offspringStats, startTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

doFor

public java.lang.Integer doFor(NetObject n)
Description copied from class: Strategy
doFor(NetObject) tests the NetObject to decide its catagory. The default method generates no offspring.

Overrides:
doFor in class Strategy
Parameters:
n - the NetObject to catagorize
Returns:
an Integer for the choice.

doYourJob

public static LeafList doYourJob(NccGlobals globals)
Find the equivalence class with the largest deviation in Part sizes and partition that class based on sizes.

Returns:
the offspring resulting from the partition. Return an empty list if no partitioning was possible.