首页 / design / oaInstHeader

oaInstHeader

模块: oapy._oa._design 导入: from oapy._oa import _design

概览

oaInstHeaderoapy 中可用,可通过 _design 模块访问。

本页汇总 oaInstHeader 当前在 oapy 中可用的 Python 接口。

详细说明

The oaInstHeader class implements an object that contains information common to all the instances of a particular master design in a given parent design。 An oaInstHeader is an automatic object that is created and destroyed by the database。 An oaInstHeader is automatically created whenever the first inst is created。 An oaInstHeader is destroyed when the last inst of it is destroyed。 oaInstHeaders are always in the block domain。 An oaInstHeader may have one or more equivalents in the module hierarchy and will have an equivalent oaOccInstHeader in the occurrence hierarchy。 For instances of Pcells, there are two kinds of instHeaders: SuperHeaders represent all of the instances of a Pcell master, regardless of parameter settings SubHeaders represent all of the instances that have one specific set of parameter values For more information about Pcells, refer to Support for Pcells in the Programmers Guide。 Every instance of a Pcell has exactly one subHeader, which, in turn, has exactly one superHeader。 InstHeaders for instances that are not Pcells are neither subheaders nor superheaders。 The oaInstHeader class can be observed by deriving from oaObserver

方法总览

状态 Python 调用
obj.getLibName(libName)
obj.getCellName(cellName)
obj.getViewName(viewName)
obj.getLibName(ns, libName)
obj.getCellName(ns, cellName)
obj.getViewName(ns, viewName)
obj.getParams(params)
obj.getAllParams(params)
obj.findParam(name, param)
obj.setMasterBBox(bBox)
obj.getInsts(filterFlags=oacInstIterNotImplicit)
obj.getSubHeaders()
_design.oaInstHeader.find(block, master)
_design.oaInstHeader.find(block, libName, cellName, viewName)
_design.oaInstHeader.setMaster(header, master, params=NULL)

方法说明

obj.getLibName(libName)

绑定状态: 已绑定

Python 调用: obj.getLibName(libName)

This function returns the library name of the master oaDesign referenced by this instHeader。

参数

  • ns: The namespace in which to return the library name。
  • libName: The returned library name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getLibName(libName)

obj.getCellName(cellName)

绑定状态: 已绑定

Python 调用: obj.getCellName(cellName)

This function returns the cell name of the master oaDesign referenced by this instHeader。

参数

  • ns: The namespace in which to return the cell name。
  • cellName: The returned cell name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getCellName(cellName)

obj.getViewName(viewName)

绑定状态: 已绑定

Python 调用: obj.getViewName(viewName)

This function returns the view name of the master oaDesign referenced by this instHeader。

参数

  • ns: The namespace in which to return the view name。
  • viewName: The returned view name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getViewName(viewName)

obj.getLibName(ns, libName)

绑定状态: 已绑定

Python 调用: obj.getLibName(ns, libName)

This function returns the library name of the master oaDesign referenced by this instHeader。

参数

  • libName: The returned library name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getLibName(ns, libName)

obj.getCellName(ns, cellName)

绑定状态: 已绑定

Python 调用: obj.getCellName(ns, cellName)

This function returns the cell name of the master oaDesign referenced by this instHeader。

参数

  • cellName: The returned cell name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getCellName(ns, cellName)

obj.getViewName(ns, viewName)

绑定状态: 已绑定

Python 调用: obj.getViewName(ns, viewName)

This function returns the view name of the master oaDesign referenced by this instHeader。

参数

  • viewName: The returned view name。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getViewName(ns, viewName)

obj.getParams(params)

绑定状态: 已绑定

Python 调用: obj.getParams(params)

This function fills out params with the parameters associated with this instHeader。 This call only returns the non-default parameters that were specified during creation or through calls to setParams() on the instances。 If this instHeader is not associated with a Pcell master or uses all default parameters, params will have a numParams of zero。 Note that params also will have a numParams of zero if the instHeader is a superHeader。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getParams(params)

obj.getAllParams(params)

绑定状态: 已绑定

Python 调用: obj.getAllParams(params)

This function fills out params with the complete set of parameters associated with this instHeader。 The paramArray will contain the params for which this instHeader uses default values and the params for which it uses override values。 If this instHeader is not associated with a Pcell master, params will have a numParams of zero。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getAllParams(params)

obj.findParam(name, param)

绑定状态: 已绑定

Python 调用: obj.findParam(name, param)

This function searches the parameter list of this inst header looking for a parameter with the specified 'name'。 If found, it fills out 'param' with the appropriate attributes and returns true。 Otherwise, it returns false。

参数

  • name: The name of the parameter to look for。
  • param: The parameter object to be populated if parameter is found。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.findParam(name, param)

obj.setMasterBBox(bBox)

绑定状态: 已绑定

Python 调用: obj.setMasterBBox(bBox)

This function sets the bounding box of the master associated with this instHeader to the specified value。 This function is a special purpose utility that should only be called when the master cannot or should not be bound, but the bounding box of the master is known。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.setMasterBBox(bBox)

obj.getInsts(filterFlags=oacInstIterNotImplicit)

绑定状态: 已绑定

Python 调用: obj.getInsts(filterFlags=oacInstIterNotImplicit)

This function returns a collection of instances associated with this instHeader。 The filter flag bits are defined below and may be logically OR'd together to refine the contents of the collection。 Note: For a Pcell superHeader, the getInsts() collection will be empty since there are no instances under a superHeader。

参数

  • 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。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getInsts(filterFlags=oacInstIterNotImplicit)

obj.getSubHeaders()

绑定状态: 已绑定

Python 调用: obj.getSubHeaders()

This function returns a collection of subHeaders in this superHeader。

Python 示例

from oapy._oa import _design

# assume obj is a oaInstHeader
obj.getSubHeaders()

_design.oaInstHeader.find(block, master)

绑定状态: 已绑定

Python 调用: _design.oaInstHeader.find(block, master)

This function searches the specified block for an instHeader with the specified master design library, cell, and view names。 If the specified master is a Pcell, the superHeader is returned。

Python 示例

from oapy._oa import _design

_design.oaInstHeader.find(block, master)

_design.oaInstHeader.find(block, libName, cellName, viewName)

绑定状态: 已绑定

Python 调用: _design.oaInstHeader.find(block, libName, cellName, viewName)

This function searches the specified block for an instHeader with the specified master design。 If the specified master is a Pcell, the superHeader is returned。

Python 示例

from oapy._oa import _design

_design.oaInstHeader.find(block, libName, cellName, viewName)

_design.oaInstHeader.setMaster(header, master, params=NULL)

绑定状态: 已绑定

Python 调用: _design.oaInstHeader.setMaster(header, master, params=NULL)

This function specifies a new master for all the instances of a standard design or a Pcell master。 After a remaster operation, the original header is destroyed, and a different header is used to group the instances。 The results of this function call vary depending on what sort of original master you have, and what sort of new master you are targeting。 Specifically, the following scenarios produce different results。 Remastering all the instances of a standard oaDesign master to a different oaDesign master Remastering all the instances of a standard oaDesign master to a Pcell superMaster Remastering all the instances of a Pcell subMaster to a standard oaDesign master Remastering all the instances of a Pcell subMaster to a different Pcell superMaster The following figure shows the instances of a standard oaDesign master being set to a new standard oaDesign master (from an abstract view to a layout view)。 Note that an oacParamsSuppliedForNonPCellInstMaster error is thrown if params are specified in this case。 The header for the target INV/Layout design master is used to group the instances。 Any properties on the instances remain unchanged after the remaster。 Observer notifications are sent for each instance (as if oaInst::setMaster had been called on each individual instance)。 Refer to Remastering Instances in the "Support for Pcells" section of the Programmers Guide for a complete explanation of the results of the scenarios for remastering instances when Pcells are involved。

参数

  • header: The header for the instances being remastered (cannot be a superHeader)。
  • master: The design that will become the new master for the instances (cannot be a subMaster)。
  • params: An optional array of parameters for the new master (only applicable if the new master is a superMaster)。

异常

  • oacParamsSuppliedForNonPCellInstMaster
  • oacInvalidHeaderForSetMaster
  • oacInvalidSuperMaster
  • oacInvalidDataTypeForParam
  • oacNotExistInDefaultParam
  • oacInstsInHierHaveDifferentProps

Python 示例

from oapy._oa import _design

_design.oaInstHeader.setMaster(header, master, params=NULL)