oaBlock Class Reference

Inheritance diagram for oaBlock:

oaBlockObject oaDesignObject oaObject


Public Methods

void destroy ()
oaModulegetModule () const
oaUInt4 getDBUPerUU () const
oaUserUnitsType getUserUnits () const
void getBBox (oaBox &bBox) const
void getEEQMaster (oaString &master) const
void getSitePattern (oaSitePattern &pattern) const
oaSymmetry getSymmetry () const
void getTermsByPosition (oaTermArray &array) const
oaBoolean hasConnectivity () const
oaBoolean hasMultiBitNet () const
oaBoolean hasMultiBitTerm () const
oaBoolean hasMultiTermNet () const
oaBoolean hasGlobalNet () const
oaBoolean isVisibleToModule () const
void setSymmetry (oaSymmetry val)
void setEEQMaster (const oaString &master)
void setSitePattern (const oaSitePattern &pattern)
void setVisibleToModule ()
oaBoolean hasDefaultConstraintGroup () const
oaConstraintGroupgetDefaultConstraintGroup () const
void initForRegionQuery ()
oaCollection< oaAssignment, oaBlock > getAssignments () const
oaCollection< oaBlockage, oaBlock > getBlockages () const
oaCollection< oaAreaBoundary, oaBlock > getBoundaries () const
oaCollection< oaBusNetDef, oaBlock > getBusNetDefs () const
oaCollection< oaBusTermDef, oaBlock > getBusTermDefs () const
oaCollection< oaConnectDef, oaBlock > getConnectDefs () const
oaCollection< oaCluster, oaBlock > getClusters () const
oaCollection< oaFigGroup, oaBlock > getFigGroups () const
oaCollection< oaGCellPattern, oaBlock > getGCellPatterns () const
oaCollection< oaGuide, oaBlock > getGuides () const
oaCollection< oaInstHeader, oaBlock > getInstHeaders () const
oaCollection< oaInst, oaBlock > getInsts (oaUInt4 filterFlags=oacInstIterNotImplicit) const
oaCollection< oaInstTerm, oaBlock > getInstTerms (oaUInt4 filterFlags=oacInstTermIterNotImplicit) const
oaCollection< oaLPPHeader, oaBlock > getLPPHeaders () const
oaCollection< oaLayerHeader, oaBlock > getLayerHeaders () const
oaCollection< oaMarker, oaBlock > getMarkers () const
oaCollection< oaPin, oaBlock > getPins () const
oaCollection< oaNet, oaBlock > getNets (oaUInt4 filterFlags=oacNetIterAll|oacNetIterNotImplicit) const
oaCollection< oaRoute, oaBlock > getRoutes () const
oaCollection< oaRowHeader, oaBlock > getRowHeaders () const
oaCollection< oaRow, oaBlock > getRows () const
oaCollection< oaScanChain, oaBlock > getScanChains () const
oaCollection< oaShape, oaBlock > getShapes () const
oaCollection< oaSteiner, oaBlock > getSteiners () const
oaCollection< oaTerm, oaBlock > getTerms (oaUInt4 filterFlags=oacTermIterAllNotHidden|oacTermIterNotImplicit) const
oaCollection< oaTrackPattern, oaBlock > getTrackPatterns () const
oaCollection< oaVectorInstDef, oaBlock > getVectorInstDefs () const
oaCollection< oaVia, oaBlock > getVias () const
oaCollection< oaViaHeader, oaBlock > getViaHeaders () const

Static Public Methods

oaBlock * create (const oaDesign *design, oaBoolean visibleToModule=true)

Public Types

enum  { dtIndex = oacBlockDataType }

Detailed Description

The oaBlock class is a container for the physical implementation of a design. There is at most one oaBlock object per design which contains all the figures for its design. An oaBlock also contains the physical netlist in the form of oaInst and oaNet objects.

The oaBlock class can be observed by deriving from oaObserver<oaBlock>.


Member Function Documentation

oaBlock * oaBlock::create const oaDesign *    design,
oaBoolean    visibleToModule = true
[static]
 

This function creates the top block in the specified design. The visibleToModule argument specifies whether the block data in the design is to be visible to the module domain or not. Note! It is possible to specify when a creating a connectivity object whether or not that object is visible to the module domain. If the block is visible to the module domain, a top module will be created if it does not, or the existing top module will be set to be visible to block. Exceptions are thrown if the top block already exists, or if is tries to create a block which is not visible to module domain in a design with module, or if there's a conflict on the names with the existing modules.

Parameters:
design The design in which to create the block.
visibleToModule If true, the block data in this design is visible to the module domain.
Exceptions:
oacTopBlockAlreadyExists 
oacCannotCreateBlockOnlyInModuleDesign 
oacModuleExists 

oaBlock * oaBlock::destroy  
 

This function destroys this block. All objects that belong to this block also will be destroyed.

oaCollection oaBlock::getAssignments   const
 

This function returns a collection of assignments in this block.

void oaBlock::getBBox oaBox &    bBox const
 

This function returns the bounding box of this oaDesign object. If the bounding box is out of date, it is updated.

Parameters:
bBox The bounding box to return

oaCollection oaBlock::getBlockages   const
 

This function returns a collection of blockages in this block.

oaCollection oaBlock::getBoundaries   const
 

This function returns a collection of area boundaries in this block.

oaCollection oaBlock::getBusNetDefs   const
 

This function returns a collection of busNetDefs in this block.

oaCollection oaBlock::getBusTermDefs   const
 

This function returns a collection of busTermDefs in this block.

oaCollection oaBlock::getClusters   const
 

This function returns a collection of clusters in this block.

oaCollection oaBlock::getConnectDefs   const
 

This function returns a collection of connectDefs in this block.

oaUInt4 oaBlock::getDBUPerUU   const
 

This function returns the database-units-per-user-units scale factor for this block.

oaConstraintGroup * oaBlock::getDefaultConstraintGroup   const
 

This function returns the constraint group for this block. Constraints in this constraint group apply to all of the objects within the block. A new group is created if no constraints exist on the block.

void oaBlock::getEEQMaster oaString &    master const
 

This function gets the electrically equivalent master (EEQMaster) of this block. If an EEQMaster does not exist, an empty string is returned.

oaCollection< oaFigGroup, oaBlock > oaBlock::getFigGroups   const
 

This function returns a collection of the figGroups in this block.

oaCollection oaBlock::getGCellPatterns   const
 

This function returns the gCell patterns of this block.

oaCollection oaBlock::getGuides   const
 

This function returns a collection of guides in this block.

oaCollection oaBlock::getInstHeaders   const
 

This function returns a collection of instHeaders in this block.

oaCollection oaBlock::getInsts oaUInt4    filterFlags = oacInstIterNotImplicit const
 

This function returns a collection of instances in this block. The filter flag bits are defined below and may be logically OR'd together to refine the contents of the collection.

Parameters:
filterFlags Specifies what the collection contains. The bit flags are defined as follows:
  • oacInstIterSingleBit: the collection contains single-bit instances
  • oacInstIterNotImplicit: the collection will not contain any implicitly created instances

oaCollection oaBlock::getInstTerms oaUInt4    filterFlags = oacInstTermIterNotImplicit const
 

This function returns a collection of instTerms in this block.

Parameters:
filterFlags Specifies what the collection contains. The bits flags are defined as follows:
  • oacInstTermIterNotImplicit: the collection will only contain instTerms that were explicitly created
  • oacInstTermIterSingleBit: the collection will only contain instTerms that make a single-bit connection

oaCollection< oaLayerHeader, oaBlock > oaBlock::getLayerHeaders   const
 

This function returns a collection of layerHeaders in this block.

oaCollection oaBlock::getLPPHeaders   const
 

This function returns a collection of layer/purpose pair headers in this block.

oaCollection oaBlock::getMarkers   const
 

This function returns a collection of markers in this block.

oaModule * oaBlock::getModule   const
 

This function returns the top module that corresponds to this block. The top block in a design may have a corresponding top module. The correspondence of a top module and a top block is established by the visibleToBlock parameter passed to oaDesign::setTopModule and the visibleToModule parameter passed to oaBlock::create.

This function returns NULL if this block does not have a corresponding top module, meaning this block is not visible in the module domain.

oaCollection oaBlock::getNets oaUInt4    filterFlags = oacNetIterAll | oacNetIterNotImplicit const
 

This function returns a collection of nets in this block. The filter flag bits are defined below:

Parameters:
filterFlags This specifies what the collection contains. The bit flags are defined as follows:
  • oacNetIterAll: the collection contains all nets
  • oacNetIterSingleBit: the collection contains single-bit nets
  • oacNetIterBundle: the collection contains all the bundleNets in the block
  • oacNetIterPreferred: the collection only contains the preferred nets; equivalent nets are omitted
  • oacNetIterNotImplicit: the collection contains explicitly created nets
Flag Usage: The oacNetIterAll, oacNetIterSingleBit, and oacNetIterBundle flags are mutually exclusive, and only one of these three flags may be specified. The selected flag may be logically OR'd with oacNetIterPreferred and oacNetIterNotImplicit.

Exceptions:
oacInvalidBlockNetIterFlags 

oaCollection oaBlock::getPins   const
 

This function returns a collection of pins in this block.

oaCollection oaBlock::getRoutes   const
 

This function returns a collection of routes in this block.

oaCollection oaBlock::getRowHeaders   const
 

This function returns a collection of rowHeaders in this block.

oaCollection oaBlock::getRows   const
 

This function returns a collection of rows in this block.

oaCollection oaBlock::getScanChains   const
 

This function returns a collection of scan chains in this block.

oaCollection oaBlock::getShapes   const
 

This function returns a collection of shapes in this block.

void oaBlock::getSitePattern oaSitePattern &    pattern const
 

This function returns the site pattern of this design.

oaCollection oaBlock::getSteiners   const
 

This function returns a collection of Steiners in this block.

asymmetry oaBlock::getSymmetry   const
 

This function returns the symmetry associated with this block.

oaCollection oaBlock::getTerms oaUInt4    filterFlags = oacTermIterAllNotHidden | oacTermIterNotImplicit const
 

This function returns a collection of terms in this block. The filter flag bits are defined below:

Parameters:
filterFlags Specifies what the collection contains. The bit flags are defined as follows:
  • oacTermIterAllNotHidden: the collection contains all terminals that are not hidden
  • oacTermIterAll: the collection contains all terminals
  • oacTermIterSingleBit: the collection contains single-bit terminals
  • oacTermIterBundle: the collection contains all the bundleTerms in the block
  • oacTermIterNotImplicit: the collection contains explicitly created terminals
Flag Usage: The oacTermIterAllNotHidden, oacTermIterAll, oacTermIterSingleBit, and oacTermIterBundle flags are mutually exclusive, and only one of these four flags may be specified. The selected flag may be logically OR'd with oacTermIterNotImplicit.

Exceptions:
oacInvalidBlockTermIterFlags 

void oaBlock::getTermsByPosition oaTermArray &    array const
 

This function retrieves the terminals in this block that have been assigned a position and returns them in the specified oaTermArray. A position in the array may be NULL to reflect that there is no terminal assigned to that position. The position of a terminal in the array reflects the position assigned to the terminal.

oaCollection oaBlock::getTrackPatterns   const
 

This function returns a collection of trackPatterns in this block.

oaUserUnitsType oaBlock::getUserUnits   const
 

This function returns the requested user-unit information for the block.

oaCollection oaBlock::getVectorInstDefs   const
 

This function returns a collection of vectorInstDefs in this block.

oaCollection oaBlock::getViaHeaders   const
 

This function returns a collection of viaHeaders in this block.

oaCollection< oaVia, oaBlock > oaBlock::getVias   const
 

This function returns a collection of vias in this block.

oaBoolean oaBlock::hasConnectivity   const
 

This function returns true if this block contains any connectivity.

oaBoolean oaBlock::hasDefaultConstraintGroup   const
 

This function returns a boolean indicating whether there are constraints associated with this block.

oaBoolean oaBlock::hasGlobalNet   const
 

This function returns true if this block contains any global nets.

oaBoolean oaBlock::hasMultiBitNet   const
 

This function returns true if this block contains any multiple bit nets.

oaBoolean oaBlock::hasMultiBitTerm   const
 

This function returns true if this block contains any multiple bit terminals.

oaBoolean oaBlock::hasMultiTermNet   const
 

This function returns true if this block contains any nets that have more than one terminal associated with it.

void oaBlock::initForRegionQuery  
 

This function initializes the regionQuery structures used by this block and all blocks bound into its hierarchy. This can be used to do all the prep work at once rather than doing it on demand.

oaBoolean oaBlock::isVisibleToModule   const
 

This function returns a boolean indicating whether this block is visible to the module domain.

void oaBlock::setEEQMaster const oaString &    master
 

This function sets the electrically equivalent master of this design.

void oaBlock::setSitePattern const oaSitePattern &    pattern
 

This function sets the site pattern of this design.

void oaBlock::setSymmetry oaSymmetry    val
 

This function sets the symmetry of this block.

void oaBlock::setVisibleToModule  
 

This function sets this block to be visible to the module domain. If this block is already visible to module, this function does nothing. Otherwise, this function creates a top module which inherits all the existing occ/block objects in the top occurrence (top block), then sets the top block to be visible to module.


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page