oaLayer Class Reference

Inheritance diagram for oaLayer:

oaTechObject oaObject oaDerivedLayer oaPhysicalLayer oaSizedLayer


Public Methods

void destroy ()
oaLayerNum getNumber () const
void getName (oaString &name) const
oaValuegetPeakACCurrentDensity () const
oaValuegetAvgACCurrentDensity () const
oaValuegetRmsACCurrentDensity () const
oaValuegetAvgDCCurrentDensity () const
void setNumber (oaLayerNum number)
void setName (const oaString &name)
void setPeakACCurrentDensity (oaValue *value)
void setAvgACCurrentDensity (oaValue *value)
void setRmsACCurrentDensity (oaValue *value)
void setAvgDCCurrentDensity (oaValue *value)

Static Public Methods

oaLayer * find (const oaTech *tech, const oaString &name)
oaLayer * find (const oaTech *tech, oaLayerNum number)
oaLayer * find (const oaTech *tech, const oaString &name, oaBoolean local)
oaLayer * find (const oaTech *tech, oaLayerNum number, oaBoolean local)

Public Types

enum  { dtIndex = oacLayerDataType }

Detailed Description

The oaLayer class defines a layer that is later referenced to create a layer that is ultimately referenced when creating physical design data.

An oaShape or an oaFig can be placed on a layer. Layers are used for multiple purposes and frequently correspond to the different manufacturing layers that exist on chips. A shape refers to a layer using a layer number -- it is not bound to a layer object.

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


Member Function Documentation

void oaLayer::destroy  
 

This function destroys this layer, removing it from the technology database. This function unbinds any layer and lpp headers in open designs that are bound to this layer. This function also destroys derived layers, viaDefs, viaSpecs that are dependent on this layer in the same oaTech,

oaLayer * oaLayer::find const oaTech *    tech,
oaLayerNum    number,
oaBoolean    local
[static]
 

This function searches the specified technology database for a layer with the specified number. The local argument specifies whether (if true) to look only in the specified technology database or (if false) to search the specified technology database and all of its referenced technology databases. If the layer is found, a pointer to the layer object is returned, otherwise NULL is returned.

Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases.

Parameters:
tech Technology database to search.
number Layer number to find.
local Specifies whether (if true) to look only in the specified technology database or (if false) to look in the specified technology database and all of its referenced databases.

Reimplemented in oaDerivedLayer, and oaPhysicalLayer.

oaLayer * oaLayer::find const oaTech *    tech,
const oaString &    name,
oaBoolean    local
[static]
 

This function searches the specified technology database looking for a layer with the specified name. The local argument specifies whether (if true) to look only in the specified technology database or (if false) to look in the specified technology database and all of its referenced databases. If the layer is found, a pointer to the layer object is returned, otherwise NULL is returned.

Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases.

Parameters:
tech Technology database to search.
name Layer name to find.
local Specifies whether (if true) to look only in the specified technology database or (if false) to look in the specified technology database and all of its referenced databases.

Reimplemented in oaDerivedLayer, and oaPhysicalLayer.

oaLayer * oaLayer::find const oaTech *    tech,
oaLayerNum    number
[static]
 

This function searches the specified technology database for a layer with the specified number. If the specified technology database references other technology databases, those are searched as well and the first matching layer is returned. To find a layer in the current technology database only, refer to the find function that accepts the local argument.

If the function finds the specified layer, the function returns a pointer to the oaLayer object. Otherwise, the function returns NULL.

Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases.

Parameters:
tech Technology database to search.
number Layer number to find.

Reimplemented in oaDerivedLayer, oaPhysicalLayer, and oaSizedLayer.

oaLayer * oaLayer::find const oaTech *    tech,
const oaString &    name
[static]
 

This function searches the specified technology database for a layer with the specified name. If the specified technology database references other technology databases, those are searched as well and the first matching layer is returned. To find a layer in the current technology database only, refer to the find function that accepts the local argument.

If the function finds the specified layer, the function returns a pointer to the oaLayer object. Otherwise, the function returns NULL.

Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases.

Parameters:
tech Technology database to search.
name Layer name to find.

Reimplemented in oaDerivedLayer, oaPhysicalLayer, and oaSizedLayer.

oaValue * oaLayer::getAvgACCurrentDensity   const
 

This function returns the avgACCurrentDensity value of this layer. The returned value can be an oaFltValue, oaFlt1DTblValue, or oaFltIntFltTblValue.

For a more detailed explanation of the usage of oaValues on this function, see Average AC Current Density

oaValue * oaLayer::getAvgDCCurrentDensity   const
 

This function returns the avgDCCurrentDensity value of this layer. The returned value can be an oaFltValue or oaFlt1DTblValue.

For a more detailed explanation of the usage of oaValues on this function, see Average DC Current Density

void oaLayer::getName oaString &    name const
 

This function returns the name of the specified layer.

oaLayerNum oaLayer::getNumber   const
 

This function returns the number of the specified layer.

oaValue * oaLayer::getPeakACCurrentDensity   const
 

This function returns the peakACCurrentDensity value of this layer. The returned value can be an oaFltValue, oaFlt1DTblValue, or oaFltIntFltTblValue.

For a more detailed explanation of the usage of oaValues on this function, see Peak AC Current Density

oaValue * oaLayer::getRmsACCurrentDensity   const
 

This function returns the rmsACCurrentDensity value of this layer. Valid value types are: oaFltValue, oaFlt1DTblValue, and oaFltIntFltTblValue.

For a more detailed explanation of the usage of oaValues on this function, see RMS AC Current Density

void oaLayer::setAvgACCurrentDensity oaValue *    value
 

This function sets the avgACCurrentDensity of this layer to the specified value. Valid value types are: oaFltValue, oaFlt1DTblValue, and oaFltIntFltTblValue. A NULL argument can be passed-in for the value parameter for a reset. Note that the previous value, if any, will get destroyed if this function is successful.

Parameters:
value The avgACCurrentDensity value to set.
Exceptions:
oacValueAlreadyOwned 
oacValueNotInSameDatabase 
oacInvalidACCurrentDensityValue 
For a more detailed explanation of the usage of oaValues on this function, see Average AC Current Density

void oaLayer::setAvgDCCurrentDensity oaValue *    value
 

This function sets the avgDCCurrentDensity of this layer to the specified value. Valid value types are: oaFltValue, and oaIntFltTblValue. A NULL argument can be passed-in for the value parameter for a reset. Note that the previous value, if any, will get destroyed if this function is successful.

Parameters:
value The avgDCCurrentDensity value to set.
Exceptions:
oacValueAlreadyOwned 
oacValueNotInSameDatabase 
oacInvalidDCCurrentDensityValue 
For a more detailed explanation of the usage of oaValues on this function, see Average DC Current Density

void oaLayer::setName const oaString &    name
 

This function sets the name of this layer to the specified value.

Exceptions:
oacLayerNameExists 

void oaLayer::setNumber oaLayerNum    number
 

This function sets the number of this layer to the specified value. If the specified layer number exists, an oacLayerNumberExists exception is thrown.

Note: If this function modifies a layer number (a new number is set on a layer, which replaces a previous number set on this layer), this function unbinds the layer headers in all open designs that are bound to this layer. If any layer headers exist in the opened designs with the new layer number, those headers are bound to this layer. Similarly, this function will unbind any LPPHeaders that are bound to this layer in those designs, and will bind any LPPHeaders with the new layer number. The function will destroy any derived sized layers, viaDefs, or viaSpecs in the same tech that depend on this layer. The dependent objects are destroyed because they are bound to the layer by number (when the layer number changes, the binding is no longer valid).

Exceptions:
oacLayerNumberExists 

void oaLayer::setPeakACCurrentDensity oaValue *    value
 

This function sets the peakACCurrentDensity of this layer to the specified value. Valid value types are: oaFltValue, oaFlt1DTblValue, and oaFltIntFltTblValue. A NULL argument can be passed-in for the value parameter for a reset. Note that the previous value, if any, will get destroyed if this function is successful.

Parameters:
value The peakACCurrentDensity value to set.
Exceptions:
oacValueAlreadyOwned 
oacValueNotInSameDatabase 
oacInvalidACCurrentDensityValue 
For a more detailed explanation of the usage of oaValues on this function, see Peak AC Current Density

void oaLayer::setRmsACCurrentDensity oaValue *    value
 

This function sets the rmsACCurrentDensity of this layer to the specified value. Valid value types are: oaFltValue, oaFlt1DTblValue, and oaFltIntFltTblValue. A NULL argument can be passed-in for the value parameter for a reset. Note that the previous value, if any, will get destroyed if this function is successful.

Parameters:
value The rmsACCurrentDensity value to set.
Exceptions:
oacValueAlreadyOwned 
oacValueNotInSameDatabase 
oacInvalidACCurrentDensityValue 
For a more detailed explanation of the usage of oaValues on this function, see RMS AC Current Density


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page