oaAreaBlockage Class Reference

Inheritance diagram for oaAreaBlockage:

oaBlockage oaFig oaBlockObject oaDesignObject oaObject


Public Methods

oaBoolean isSoft () const
void setPoints (const oaPointArray &points)
void setSoft (oaBoolean soft)
void transform (oaDouble scale, oaDouble angle)

Static Public Methods

oaAreaBlockage * create (oaBlock *block, const oaPointArray &points, oaBlockObject *owner=NULL)

Detailed Description

An area blockage is a type of blockage representing an area. The shape of a blockage is described using an oaPointArray. Coincident and collinear points are illegal in the point array for an area blockage. For more information on coincident and collinear points, see oaPointArray::compress()

The area blockage is most commonly used to prevent standard cells from being placed within a certain area.


Member Function Documentation

oaAreaBlockage * oaAreaBlockage::create oaBlock *    block,
const oaPointArray &    points,
oaBlockObject *    owner = NULL
[static]
 

This is the constructor for an area blockage.

Parameters:
block The block in which to create the area blockage
points The pointArray describing the shape of the blockage
owner The optional owner of the blockage
Exceptions:
oacBlockageHasExtraPoints 
oacBlockageTooFewPoints 
oacInvalidBlockageOwner 

oaBoolean oaAreaBlockage::isSoft   const
 

This function gets the boolean value for the soft attribute on this derived blockage.

void oaAreaBlockage::setPoints const oaPointArray &    points
 

This function updates the shape of the blockages to the shape specified by the pointArray

Parameters:
points The pointArray describing the new shape of the blockage
Exceptions:
oacBlockageHasExtraPoints 
oacBlockageTooFewPoints 

void oaAreaBlockage::setSoft oaBoolean    soft
 

This function sets the boolean value for the soft attribute on this derived blockage. If an oaAreaBlockage has the soft attribute set (true), standard cells are not placed within the blockage area during initial placement, though later optimization phases can use the blockage area.

Parameters:
soft A boolean that sets the soft attribute to true or false

void oaAreaBlockage::transform oaDouble    scale,
oaDouble    angle
 

This function transforms this blockage by the specified scale factor and rotation angle. If this blockage is a leader in a group, every object in the group is moved with the specified transform.

Parameters:
scale The scale for the transformation
angle The angle of the transformation


The documentation for this class was generated from the following files:

Return to top of page