oaStdViaDef Class Reference

Inheritance diagram for oaStdViaDef:

oaViaDef oaTechObject oaObject


Public Methods

void getParams (oaViaParam &params) const
oaBoolean hasImplant1 () const
oaBoolean hasImplant2 () const
oaPhysicalLayergetImplant1 () const
oaPhysicalLayergetImplant2 () const
oaLayerNum getImplant1Num () const
oaLayerNum getImplant2Num () const
void setParams (const oaViaParam &params)

Static Public Methods

oaStdViaDef * create (oaTech *tech, const oaString &name, oaPhysicalLayer *layer1, oaPhysicalLayer *layer2, const oaViaParam &params, oaPhysicalLayer *implant1=NULL, oaPhysicalLayer *implant2=NULL)

Detailed Description

The oaStdViaDef class implements an oaStdViaDef object in a technology database. An oaStdViaDef object has an unique name and is associated with two layers and a list of via parameters with default values. A standard via in a route must point to an oaStdViaDef object in the technology database associated with the design where the route resides.

An oaStdViaDef object is used to create an oaStdVia. The parameters used to create the oaStdViaDef establish a baseline of default parameter values for the standard vias that are created using the oaStdViaDef. The default flag bits for each of the parameters associated with an oaStdViaDef are set.

For information about creating oaStdViaDef objects and using them in the creation of standard vias, refer to Representing Vias in OpenAccess in the Programmers Guide.


Member Function Documentation

oaStdViaDef * oaStdViaDef::create oaTech *    tech,
const oaString &    name,
oaPhysicalLayer *    layer1,
oaPhysicalLayer *    layer2,
const oaViaParam &    params,
oaPhysicalLayer *    implant1 = NULL,
oaPhysicalLayer *    implant2 = NULL
[static]
 

This function creates an oaStdViaDef object with the specified attributes. The object that is returned is used to create an oaStdVia. The params that are used to create the oaStdViaDef establish a baseline of default parameter values for any standard via that is created using this oaStdViaDef.

This function throws an exception if a viaDef with the specified name already exists. An exception is also thrown if layer1 and layer2 are not included in the graph of technology databases rooted at the specified tech.

Note: The intended use is for layer1 to be the bottom layer, which should be the layer with the lower manufacturing layer number. Layer2 should be the top layer. The database does not enforce this because some tech databases do not have valid manufacturing layer numbers. Some applications require this layer ordering.

Parameters:
tech The technology database in which to create the oaStdViaDef object
name The name of the oaStdViaDef object to created
layer1 The first layer of the oaStdViaDef object
layer2 The second layer of the oaStdViaDef object
params The via parameters of the oaStdViaDef object
implant1 The optional first implant layer of the oaStdViaDef object
implant2 The optional second implant layer of the oaStdViaDef object
Exceptions:
oacLayerNotInReferencedTech 
oacConflictingLayerNamesInTech 
oacConflictingLayerNumbersInTech 
oacViaDefExists 

oaLayer * oaStdViaDef::getImplant1   const
 

This function returns the implant1 layer associated with this oaStdViaDef object. If this oaStdViaDef object was created using a NULL implant1 argument, NULL is returned.

oaLayerNum oaStdViaDef::getImplant1Num   const
 

This function returns the implant1 layer number associated with this stdViaDef. An exception is thrown if this stdViaDef is not associated with an implant1 layer, so it is recommended that you call hasImplant1() before calling this function.

oaLayer * oaStdViaDef::getImplant2   const
 

This function returns the implant2 layer associated with this oaStdViaDef object. If this oaStdViaDef object was created using a NULL implant2 argument, NULL is returned.

oaLayerNum oaStdViaDef::getImplant2Num   const
 

This function returns the implant2 layer number associated with this stdViaDef. An exception is thrown if this stdViaDef is not associated with an implant2 layer, so it is recommended that you call hasImplant2() before calling this function.

void oaStdViaDef::getParams oaViaParam &    params const
 

This function returns the standard via parameters associated with this oaStdViaDef object in the given params. These parameters comprise a baseline default set of parameters used to create an oaStdVia object. The default flag bit for each parameter in params is set.

oaBoolean oaStdViaDef::hasImplant1   const
 

This function returns a boolean to indicate if this stdViaDef is associated with an implant1 layer. If this function returns true, an oaStdVia created using this oaStdViaDef object will have an implant1 shape.

oaBoolean oaStdViaDef::hasImplant2   const
 

This function returns a boolean to indicate if this stdViaDef is associated with an implant2 layer. If this function returns true, an oaStdVia created using this oaStdViaDef object will have an implant1 shape.

void oaStdViaDef::setParams const oaViaParam &    params
 

This function sets the standard via parameters associated with this oaStdViaDef object in the given params. A new set of baseline default parameters is established for the creation of oaStdVia objects using this oaStdViaDef object.


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

Return to top of page