|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--jimmc.treepar.Row
Row represents a single row of the layout. There are two types of Row: a box row, and a channel row. A box row contains a set of Box objects; a channel row contains a set of Track objects.
Field Summary | |
protected Box[] |
boxes
The boxes in the row, after setup. |
protected java.util.Vector |
boxesVector
The boxes in this row, during setup. |
protected Layout |
layout
Our layout. |
protected int |
length
Our length. |
protected Net[] |
nets
The nets in this row, after setup. |
protected java.util.Vector |
netsVector
The nets in this row, during setup. |
protected int |
position
Our position (S coordinate). |
protected int |
rowNumber
Our row number. |
protected int |
rowOrderMax
Maximum ordering position of an item in this row. |
protected int |
rowOrderMin
Minimum ordering position of an item in this row. |
protected int |
thickness
Our thickness. |
protected java.util.Vector |
tracksVector
The tracks in this row, when it is a channel row. |
Constructor Summary | |
Row(Layout layout,
int rowNumber)
Create a new empty row. |
Method Summary | |
protected void |
addBox(Box box)
Add a box to this row. |
protected void |
addNet(Net net)
Add a net to this row. |
protected void |
balance(int side)
Move the row as a whole in the R dimension to minimize the force on the specified connectors. |
protected void |
balanceAndSpread(int side)
Spread out the boxes in a row to minimize line lengths. |
protected int |
calculateThickness()
Calculate the thickness of the row when it is a box row. |
protected void |
clearRowOrder()
Clear the row ordering info. |
protected boolean |
contains(int x,
int y)
True if this row contains the specified point. |
static void |
dump(java.io.PrintWriter f,
Row[] rows,
java.lang.String prefix,
boolean details)
Dump an array of rows. |
void |
dump(java.io.PrintWriter f,
java.lang.String prefix,
boolean details)
Dump a row for debugging. |
protected Track |
findTrack(int minR,
int maxR,
int angle)
Find a track into which the specified span will fit. |
protected Track |
findTrackGreedy(int minR,
int maxR,
int angle)
Find a track into which the specified span will fit, using a greedy algorithm. |
protected Track |
findTrackLast(int minR,
int maxR,
int angle)
Find a track into which the specified span will fit, using a generous algorithm. |
protected int |
getBalanceDistance(int side)
Get the distance needed to move the row to the optimal balanced position. |
protected LayoutHitText |
getHitText(int x,
int y)
Find the text at the specified point. |
protected int |
getLength()
Get the length of the row. |
protected int |
getS()
Get our S coordinate. |
protected int |
getThickness()
Get the previously calculated thickness. |
protected boolean |
isBoxRow()
Return true if this row contains boxes. |
protected void |
normalize()
Set the R position of the boxes within this row, assuming minimal spacing between boxes. |
protected void |
route()
Do the channel route for this row. |
protected void |
setChannelSize()
Set the channel size for the row. |
protected void |
setS(int pos)
Set our position (S coordinate). |
protected void |
setupDone()
Call this when done adding boxes and nets. |
protected void |
spread(int side)
Spread out the boxes within the row to minimize the force on the specified connectors of each box. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected Layout layout
protected int rowNumber
protected int position
protected int thickness
protected int length
protected java.util.Vector boxesVector
protected Box[] boxes
protected java.util.Vector netsVector
protected Net[] nets
protected int rowOrderMin
protected int rowOrderMax
protected java.util.Vector tracksVector
Constructor Detail |
public Row(Layout layout, int rowNumber)
Method Detail |
protected void addBox(Box box)
protected void addNet(Net net)
protected void setupDone()
protected void setS(int pos)
protected int getS()
protected boolean isBoxRow()
protected int calculateThickness()
protected int getThickness()
protected int getLength()
protected void clearRowOrder()
protected void normalize()
protected void balanceAndSpread(int side)
protected void balance(int side)
protected int getBalanceDistance(int side)
protected void spread(int side)
protected void setChannelSize()
protected Track findTrack(int minR, int maxR, int angle)
protected Track findTrackGreedy(int minR, int maxR, int angle)
protected Track findTrackLast(int minR, int maxR, int angle)
protected void route()
protected boolean contains(int x, int y)
protected LayoutHitText getHitText(int x, int y)
public void dump(java.io.PrintWriter f, java.lang.String prefix, boolean details)
public static void dump(java.io.PrintWriter f, Row[] rows, java.lang.String prefix, boolean details)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |