Inheritance diagram for oaCMap:
Public Methods | |
oaBoolean | isSupplyDemandValid () const |
void | deleteSupplyDemand () |
void | getXYIndex (const oaPoint &point, oaUInt4 &xIndex, oaUInt4 &yIndex) |
void | getGCell (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 &horizontalSupply, oaUInt4 &verticalSupply, oaUInt4 &upSupply, oaUInt4 &horizontalDemand, oaUInt4 &verticalDemand, oaUInt4 &upDemand) const |
oaUInt4 | getHorizontalSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
oaUInt4 | getVerticalSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
oaUInt4 | getUpSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
oaUInt4 | getHorizontalDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
oaUInt4 | getVerticalDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
oaUInt4 | getUpDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum) const |
void | setGCell (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 horizontalSupply, oaUInt4 verticalSupply, oaUInt4 upSupply, oaUInt4 horizontalDemand, oaUInt4 verticalDemand, oaUInt4 upDemand) |
void | setHorizontalSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 horizontalSupply) |
void | setVerticalSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 verticalSupply) |
void | setUpSupply (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 upSupply) |
void | setHorizontalDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 horizontalDemand) |
void | setVerticalDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 verticalDemand) |
void | setUpDemand (oaUInt4 xIndex, oaUInt4 yIndex, oaLayerNum layerNum, oaUInt4 upDemand) |
oaUInt4 | getNumXGCell () const |
oaUInt4 | getNumYGCell () const |
oaTimeStamp | getTimeStamp () const |
Static Public Methods | |
oaCMap * | getCMap (oaBlock *block) |
Public Types | |
enum | { dtIndex = oacCMapDataType } |
Each GCell can hold supply and demand counts for routes that traverse the GCell horizontally, vertically, and up/down through vias. All of these GCell statistics are set and managed by applications. The database does not calculate them automatically.
For all of the functions below that get statistics for a specified GCell, the function will return values of oacNullIndex for any value that is not set. If the specified layer has not had any values set, it throws the exception oacCMapLayerNotExists.
The oaCMap class can be observed by deriving from oaObserver<oaCMap>.
|
This function sets the invalid flag of the congestion map. All the existing supply and demand values are deleted. The congestion map remains invalid until the next set of values for some GCell. |
|
This function gets the congestion map in the specified design. If the congestion map exists, it is returned. If the congestion map does not exist, it is created. There is only one congestion map per design. |
|
This function gets all of the GCell attributes for the specified GCell in a single call.
|
|
This function gets the horizontal demand value from the gCell at the specified X,Y index.
|
|
This function gets the horizontal supply value from the specified gCell.
|
|
This function gets the total number of gCells in the X direction. This number is determined by the oaGCellPattern objects with isHorizontal set. If there are no such oaGCellPatterns, oacNullIndex is returned. |
|
This function gets the total number of gCells in the Y direction. This number is determined by the oaGCellPattern objects with isHorizontal unset. If there are no such oaGCellPatterns, oacNullIndex is returned. |
|
This function gets the timeStamp of the congestion map. |
|
This function gets the upDemand value from the gCell at the specified X,Y index.
|
|
This function gets the upSupply value from the gCell at the specified X,Y index.
|
|
This function gets the verticalDemand value from the gCell at the specified X,Y index.
|
|
This function gets the verticalSupply value from the gCell at the specified X,Y index.
|
|
This function returns the GCell indexes for the GCell containg the specified point. If the point lies outside the coordinates of the GCell grid, the the values returned are oacNullIndex. |
|
This function gets the flag indicating whether this congestion map is valid. It is valid if any GCell statistics were set since the last change to a GCellPattern or since a call to oaCMap::deleteSupplyDemand. |
|
This function sets all of the GCell attributes for the specified GCell in a single call. |
|
This function sets the horizontalDemand value to the gCell at the specified X,Y index. |
|
This function sets the horizontalSupply value to the gCell at the specified X,Y index. |
|
This function sets the upDemand value to the gCell at the specified X,Y index. |
|
This function sets the upSupply value to the gCell at the specified X,Y index. |
|
This function sets the verticalDemand value to the gCell at the specified X,Y index. |
|
This function sets the verticalSupply value to the gCell at the specified X,Y index. |
|
|
Copyright © 2002 - 2010 Cadence Design Systems, Inc.
All Rights Reserved.