oaDesignInst Class Reference

Inheritance diagram for oaDesignInst:

oaWaferObject oaObject


Public Methods

void destroy ()
void getName (oaString &name) const
void getLibName (oaScalarName &name) const
void getLibName (const oaNameSpace &nameSpace, oaString &name) const
void getCellName (oaScalarName &name) const
void getCellName (const oaNameSpace &nameSpace, oaString &name) const
void getViewName (oaScalarName &name) const
void getViewName (const oaNameSpace &nameSpace, oaString &name) const
oaFloat getMag () const
void getOrigin (oaPoint &origin) const
oaOrient getOrient () const
void getTransform (oaTransform &xform) const
oaWaferObjectgetOwner () const
void getLayerMapping (oaLayerMapArray &layers) const
oaReticleUsage getReticleUsage () const
oaBoolean isPrintable () const
oaBoolean hasLayerMapping () const
void setName (const oaString &name)
void setOrigin (const oaPoint &origin)
void setOrient (oaOrient orient)
void setTransform (const oaTransform &xform)
void setPrintable (oaBoolean value)
void setMag (oaFloat mag)
void setLayerMapping (const oaLayerMapArray &layers)
void setReticleUsage (oaReticleUsage reticalUsage)

Static Public Methods

oaDesignInst * create (oaReticle *reticle, const oaString &name, const oaScalarName &libName, const oaScalarName &cellName, const oaScalarName &viewName, oaFloat magnification, const oaTransform &xform, oaBoolean isPrintable, oaReticleUsage reticleUsage)
oaDesignInst * create (oaFrame *frame, const oaString &name, const oaScalarName &libName, const oaScalarName &cellName, const oaScalarName &viewName, oaFloat magnification, const oaTransform &xform, oaBoolean isPrintable, oaReticleUsage reticleUsage)
oaDesignInst * find (const oaWafer *wafer, const oaString &name)

Public Types

enum  { dtIndex = oacDesignInstWaferDataType }

Detailed Description

An oaDesignInst represents an instance of an oaDesign in either an oaFrame or an oaReticle. The instance specifies the actual geometry for printing on a reticle, and ultimately on a wafer. All of the geometry for a reticle is contained in oaDesignInsts that exist either directly in the oaReticle or in a hierarchy of oaFrames that are instantiated on the reticle.

The layer numbers for the wafer, which are specified on the oaImage that points to the oaReticle, do not have to use the same layer numbers as the oaDesign databases that are instantiated on the reticle. The layer numbers for the oaDesign are specified in the oaTech that it is connected to. Different oaDesigns used on a given reticle may be connected to different oaTech databases. The oaDesignInst may contain a mapping from the various wafer layer numbers it is used with to the corresponding layer number in its oaDesign. If the oaDesignInst does not have a layer mapping, all layers from its oaDesign are applied to each layer of the reticle. This option is used for features such as alignment marks that are intended to appear on all reticles.”

The size of shapes contained in an instantiated oaDesign depends on several factors. The size of a shape starts with the size as specified by the coordinates of the shape in the design database and the DBUPerUU and oaUserUnitsType for that design database. The design database need not use the same values as the oaWafer. Then the size is scaled according to the product of all the magnification factors on the oaDesignInst and its parent oaFrameInsts. The result is the size of the feature on the Wafer. In addition, shapes are scaled by the scale factor on the oaReticle to get their size as printed on the oaReticle.

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


Member Function Documentation

oaDesignInst * oaDesignInst::create oaFrame *    frame,
const oaString &    name,
const oaScalarName &    libName,
const oaScalarName &    cellName,
const oaScalarName &    viewName,
oaFloat    magnification,
const oaTransform &    xform,
oaBoolean    isPrintable,
oaReticleUsage    reticleUsage
[static]
 

This function creates an oaDesignInst object with the specified attributes.

Parameters:
frame The frame in which the instance is instantiated
name The name of the instance
libName The library name of the master design
cellName The cell name of the master design
viewName The view name of the master design
magnification The magnification value for the instance
xform The transform for the instance
isPrintable Whether the instance is printable
reticleUsage The reticle usage for the instance
Exceptions:
oacDesignInstAlreadyExists 

oaDesignInst * oaDesignInst::create oaReticle *    reticle,
const oaString &    name,
const oaScalarName &    libName,
const oaScalarName &    cellName,
const oaScalarName &    viewName,
oaFloat    magnification,
const oaTransform &    xform,
oaBoolean    isPrintable,
oaReticleUsage    reticleUsage
[static]
 

This function creates an oaDesignInst object with the specified attributes.

Parameters:
reticle The reticle in which the instance is instantiated
name The name of the instance
libName The library name of the master design
cellName The cell name of the master design
viewName The view name of the master design
magnification The magnification value for the instance
xform The transform for the instance
isPrintable Whether the instance is printable
reticleUsage The reticle usage for the instance
Exceptions:
oacDesignInstAlreadyExists 

void oaDesignInst::destroy  
 

This function destroys this design instance, removing it from the database.

oaDesignInst * oaDesignInst::find const oaWafer *    wafer,
const oaString &    name
[static]
 

This function searches the specified wafer for a designInst with the given name. A pointer to the designInst is returned if found; otherwise, NULL is returned.

Parameters:
wafer The wafer to search
name The design instance name to find

void oaDesignInst::getCellName const oaNameSpace &    nameSpace,
oaString &    name
const
 

This function returns the cell name associated with this design instance in the nameSpace specified.

Parameters:
nameSpace The name space in which to return the name.
name The string to fill out with the cell name.

void oaDesignInst::getCellName oaScalarName &    name const
 

This function returns the cell name associated with this design instance in the specified oaScalarName.

Parameters:
name The string to fill out with the cell name.

void oaDesignInst::getLayerMapping oaLayerMapArray &    layers const
 

This function returns the mapping layers assoicated with this design instance. This function throws an exception if this design instance does not have any mapping layers.

Parameters:
layers The returned mapping layers
Exceptions:
oacDesignInstInvalidMapLayer 

void oaDesignInst::getLibName const oaNameSpace &    nameSpace,
oaString &    name
const
 

This function returns the library name associated with this design instance in the nameSpace specified.

Parameters:
nameSpace The name space in which to return the name.
name The string to fill out with the library name.

void oaDesignInst::getLibName oaScalarName &    name const
 

This function returns the library name associated with this design instance in the specified name.

Parameters:
name The string to fill out with the library name

oaFloat oaDesignInst::getMag   const
 

This function returns the magnification of this design instance

void oaDesignInst::getName oaString &    name const
 

This function returns the name of this design instance in the specified name

Parameters:
name The name to be filled out with the name of this design instance

oaOrient oaDesignInst::getOrient   const
 

This function returns the orientation of this design instance

void oaDesignInst::getOrigin oaPoint &    origin const
 

This function fills out 'origin' with the origin of this design instance.

Parameters:
origin The origin to be filled out

oaWaferObject * oaDesignInst::getOwner   const
 

This function returns a pointer to object that owns this design instance. The owning object can be either an oaReticle or an oaFrame.

oaReticleUsage oaDesignInst::getReticleUsage   const
 

This function returns the reticle usage of this design instance.

void oaDesignInst::getTransform oaTransform &    xform const
 

This function fills out 'xform' with the transform of this design instance.

Parameters:
xform The transform to be filled out

void oaDesignInst::getViewName const oaNameSpace &    nameSpace,
oaString &    name
const
 

This function returns the view name associated with this design instance in the nameSpace specified.

Parameters:
nameSpace The name space in which to return the name.
name The string to fill out with the view name.

void oaDesignInst::getViewName oaScalarName &    name const
 

This function returns the view name associated with this design instance in the specified oaScalarName.

Parameters:
name The string to fill out with the view name.

oaBoolean oaDesignInst::hasLayerMapping   const
 

This function returns a boolean indicating whether or not this design instance has any layer mapping.

oaBoolean oaDesignInst::isPrintable   const
 

This function returns a boolean indicating whether or not this design instance is printable.

void oaDesignInst::setLayerMapping const oaLayerMapArray &    layers
 

This function sets the mapping layers of this design instance to the given layers.

Parameters:
layers The mapping layers

void oaDesignInst::setMag oaFloat    mag
 

This function sets the magnification of this design instance to the specified value.

Parameters:
mag The new magnification

void oaDesignInst::setName const oaString &    name
 

This function sets the name of this design instance to the specified 'name'. An exception is thrown if another design instance already has the specified name.

Parameters:
name The new name of the design instance
Exceptions:
oacDesignInstAlreadyExists 

void oaDesignInst::setOrient oaOrient    orient
 

This function sets the orientation for this design instance.

Parameters:
orient The new orientation

void oaDesignInst::setOrigin const oaPoint &    origin
 

This function sets the origin value for this design instance.

Parameters:
origin The new origin

void oaDesignInst::setPrintable oaBoolean    value
 

This function sets the isPrintable attribute of this design instance to the specified value.

Parameters:
value The new value indicating whether or not this design instance is printable

void oaDesignInst::setReticleUsage oaReticleUsage    reticalUsage
 

This function sets the reticle usage of this design instance to the given reticle usage.

Parameters:
reticalUsage The new reticle usage

void oaDesignInst::setTransform const oaTransform &    xform
 

This function sets the transform for this design instance.

Parameters:
xform The new transform


Member Enumeration Documentation

anonymous enum
 

Enumeration values:
dtIndex 


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

Return to top of page