首页 / tech / oaTech

oaTech

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

概览

oaTechoapy 中可用,可通过 _tech 模块访问。

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

详细说明

The oaTech class implements a technology database (oaTech), which contains process information。 A library ( oaLib ) typically contains a single technology database, and all the designs in the library use that technology database。 Alternatively, a user can define an attachment from one library to the technology database in another library。 In this case, all the designs in the library use the attached technology database。 Whether in the same library or in a different library, the main technology database associated with a design is known as its primary technology database。 Any technology database can contain references to other technology databases。 A reference is a mechanism that allows a technology database to inherit information from one or more technology databases。 This approach is known as using incremental technology databases 。 A referenced technology database can itself reference other technology databases to form a chain, known as a graph of technology databases。 All the technology information in a graph is available to the design library。 When a design is opened, the primary technology database is opened, and if there are any references, the graph of technology databases is opened as well。 For more information, refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide。 When a technology database contained within a library is opened, it is associated with the library and remains the technology database for that library until the database is purged or the library is closed。 When a technology database is associated with a library through attachment, an application can remove the association ( oaTech::detach ) and re-associate the library to another technology database in a different library ( oaTech::attach )。 The oaTech class can be observed by deriving from oaObserver 。 Attached oaTech Databases A user can use oaTech::attach to associate a library with a technology database in a different library。 In addition, the associations can be made through any number of libraries (using multiple applications of oaTech::attach ) as long as the intermediate libraries do not contain technology databases themselves and the final target library does contain a technology database。 Note: To support backward data compatibility, the previous mechanism for attaching technology libraries is still supported。 Namely, a string property called techLibName in a library’s oaLibDMData database still specifies the name of the target library。 The oaTech::attach function creates the techLibName property when it is called。 In order to construct the name of the library, the techLibName string is interpreted in the oaNativeNS namespace。

方法总览

状态 Python 调用
obj.close()
obj.purge()
obj.save()
obj.save(type)
obj.saveAs(libName)
obj.reopen(mode)
obj.revert()
obj.getLibName(libName)
obj.getLibName(ns, out)
obj.getLib()
obj.getCreateTime()
obj.getReadInTime()
obj.getLastSavedTime()
obj.getTimeStamp(type)
obj.getTimeStamp(def)
obj.enableTimeStamps(value=true)
obj.getMode()
obj.getRefCount()
obj.isModified()
obj.isRecovered()
obj.getDBUPerUU(viewType)
obj.getDBUPerUU(viewType, local)
obj.getUserUnits(viewType)
obj.getUserUnits(viewType, local)
obj.getClearanceMeasure()
obj.getClearanceMeasure(local)
obj.getDefaultManufacturingGrid()
obj.getDefaultManufacturingGrid(local)
obj.isGateGrounded()
obj.isGateGrounded(local)
obj.getTechHeaders(refHeaders, local=false)
obj.hasUnboundRefs()
obj.setDBUPerUU(viewType, value)
obj.setUserUnits(viewType, value)
obj.setClearanceMeasure(measure)
obj.setDefaultManufacturingGrid(grid)
obj.setGateGrounded(gateGrounded)
obj.unsetDBUPerUU(viewType)
obj.unsetUserUnits(viewType)
obj.unsetClearanceMeasure()
obj.unsetDefaultManufacturingGrid()
obj.unsetGateGrounded()
obj.isDBUPerUUSet(viewType)
obj.isUserUnitsSet(viewType)
obj.isClearanceMeasureSet()
obj.isDefaultManufacturingGridSet()
obj.isGateGroundedSet()
obj.setRefs(refs)
obj.unsetRefs()
obj.setProcessFamily(processFamily)
obj.unsetProcessFamily()
obj.getProcessFamily(processFamily, local=false)
obj.hasProcessFamily(local=false)
obj.validate()
obj.uuToDBU(viewType, value)
obj.uuToDBUDistance(viewType, value)
obj.uuToDBUArea(viewType, value)
obj.dbuToUU(viewType, value)
obj.dbuToUUDistance(viewType, value)
obj.dbuToUUArea(viewType, value)
obj.enableUndo(value, undoModel)
obj.redo()
obj.undo()
obj.isUndoEnabled()
obj.isInUndo()
obj.setCp(checkPointID=UINT_MAX)
obj.unsetCp()
obj.getNumUndoCpRecs()
obj.getCpID()
obj.getNumUndoRecsOnCp()
obj.getUndoModel()
obj.calcVMSize()
obj.minimizeVM()
obj.hasDefaultConstraintGroup()
obj.getDefaultConstraintGroup()
obj.getFoundryRules()
obj.getFeatures(dataModelRev, features)
obj.getAnalysisLibs()
obj.getAnalysisLibs(filterFlags)
obj.getLayers()
obj.getLayers(filterFlags)
obj.getOpPoints()
obj.getOpPoints(filterFlags)
obj.getPurposes()
obj.getPurposes(filterFlags)
obj.getSiteDefs()
obj.getSiteDefs(filterFlags)
obj.getValues()
obj.getValues(filterFlags)
obj.getViaDefs()
obj.getViaDefs(filterFlags)
obj.getViaSpecs()
obj.getViaSpecs(filterFlags)
obj.getViaVariants(filterFlags=oacViaVariantIterAll)
obj.getViaVariantHeaders(filterFlags=oacViaVariantHeaderIterAll)
obj.getLayerHeaders()
obj.getViaDefHeaders()
obj.getConstraints(def=NULL)
obj.getConstraints(def, filterFlags)
obj.getConstraintGroups()
obj.getConstraintGroups(filterFlags)
obj.getConstraintGroups(def, filterFlags=oacTechConstraintGroupIterAll)
obj.getConstraintParams()
obj.getConstraintParams(filterFlags)
obj.getConstraintGroupHeaders()
obj.getDerivedLayerParams(filterFlags=oacTechDerivedLayerParamIterAll)
obj.getAppObjectDefs()
obj.getAppObjects(def)
obj.getAppDefsByDataType(dataType)
obj.getGroups()
obj.getGroups(def)
obj.getGroupsByName(name)
obj.getUsedIn()
_tech.oaTech.create(libName)
_tech.oaTech.create(lib)
_tech.oaTech.open(libName, mode='r')
_tech.oaTech.open(lib, mode='r')
_tech.oaTech.recover(libName, type)
_tech.oaTech.find(libName)
_tech.oaTech.find(lib)
_tech.oaTech.destroy(libName)
_tech.oaTech.destroy(lib)
_tech.oaTech.destroy(libName, type)
_tech.oaTech.exists(libName, inherited=true)
_tech.oaTech.exists(lib, inherited=true)
_tech.oaTech.exists(libName, type)
_tech.oaTech.exists(lib, type)
_tech.oaTech.getDefaultDBUPerUU(viewType)
_tech.oaTech.getDefaultUserUnits(viewType)
_tech.oaTech.getDefaultDefaultManufacturingGrid()
_tech.oaTech.getDefaultClearanceMeasure()
_tech.oaTech.getDefaultIsGateGrounded()
_tech.oaTech.attach(lib, attachLibName)
_tech.oaTech.detach(lib)
_tech.oaTech.hasAttachment(lib)
_tech.oaTech.getAttachment(lib, attachLibName)
_tech.oaTech.getRevNumber()
_tech.oaTech.getOpenTechs()

方法说明

obj.close()

绑定状态: 已绑定

Python 调用: obj.close()

This function decrements the reference count of this tech database by one。 If the count reaches zero, this tech database is purged from memory。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.close()

obj.purge()

绑定状态: 已绑定

Python 调用: obj.purge()

This function closes this tech database, removing it from memory regardless of its reference count。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.purge()

obj.save()

绑定状态: 已绑定

Python 调用: obj.save()

This function saves the oaSaveRecoverType file to disk。

参数

  • type: Either oacAutoSaveType or oacCriticalSaveType。

异常

  • oacSaveReadOnlyTech

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.save()

obj.save(type)

绑定状态: 已绑定

Python 调用: obj.save(type)

This function saves the tech database to disk。 The tech remains open and all of its in-memory data remains valid。

异常

  • oacSaveReadOnlyTech
  • oacDataNotCompatibleOnSave: Design contains incompatible data and cannot be saved。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.save(type)

obj.saveAs(libName)

绑定状态: 已绑定

Python 调用: obj.saveAs(libName)

This function saves the tech database to the disk in the tech file associated with the specified library name。 The tech remains open and all of its in-memory data remains valid。

参数

  • libName: The name of the library in which to save the oaTech database。

异常

  • oacTechLibNotFound
  • oacDataNotCompatibleOnSave: Design contains incompatible data and cannot be saved。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.saveAs(libName)

obj.reopen(mode)

绑定状态: 已绑定

Python 调用: obj.reopen(mode)

This function reopens this tech database using the specified access mode。 You can reset or truncate the contents of the tech database depending on the new access mode。 This function does not affect the reference count of the tech database。

参数

  • mode: The mode in which to open the design。 'r' for read 'w' for write (truncate by deleting existing data) 'a' for append 'A' for append in override mode, which is not typically used。 Refer to Compatibility for OpenAccess Applications and Data in the Programmers Guide for more information。

异常

  • oacOpenOnTechBeingPurged
  • oacDataNotCompatibleOnOpenInAppendMode: The design contains new features that are not understood by this version of OpenAccess and cannot be opened in append mode。
  • oacDataNotCompatibleOnOpenInEditableMode: The design contains new features that are not understood by this version of OpenAccess and cannot be opened in 'a'ppend or 'A'ppend mode。
  • oacCannotDowngradeDatabase: The database was opened in ‘A’ mode and cannot be reopened in 'a' mode。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.reopen(mode)

obj.revert()

绑定状态: 已绑定

Python 调用: obj.revert()

This function reloads the contents of this tech database from disk。 If the tech database is open in write mode, it is simply truncated。 This function does not affect the access mode of the tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.revert()

obj.getLibName(libName)

绑定状态: 已绑定

Python 调用: obj.getLibName(libName)

This function returns the name of the library associated with this tech database。

参数

  • ns: The name space to check for the library name。
  • out: The name of the library used by this oaTech database。

Python 示例

from oapy._oa import _tech

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

obj.getLibName(ns, out)

绑定状态: 已绑定

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

This function returns the name of the library associated with this tech database。

参数

  • libName: Name of the library associated with this oaTech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLibName(ns, out)

obj.getLib()

绑定状态: 已绑定

Python 调用: obj.getLib()

This function returns a pointer to the library object containing this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLib()

obj.getCreateTime()

绑定状态: 已绑定

Python 调用: obj.getCreateTime()

This function returns the time at which this tech database was created。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getCreateTime()

obj.getReadInTime()

绑定状态: 已绑定

Python 调用: obj.getReadInTime()

This function returns the time this tech database was read。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getReadInTime()

obj.getLastSavedTime()

绑定状态: 已绑定

Python 调用: obj.getLastSavedTime()

This function returns the time at which this tech database was last modified。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLastSavedTime()

obj.getTimeStamp(type)

绑定状态: 已绑定

Python 调用: obj.getTimeStamp(type)

This function returns the timeStamp value for the specified application object。

参数

  • def: The application object to check。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getTimeStamp(type)

obj.getTimeStamp(def)

绑定状态: 已绑定

Python 调用: obj.getTimeStamp(def)

This function returns the timeStamp value for the specified technology datatype。

参数

  • type: The technology datatype to check。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getTimeStamp(def)

obj.enableTimeStamps(value=true)

绑定状态: 已绑定

Python 调用: obj.enableTimeStamps(value=true)

This function enables or disables the update of timeStamps on this oaTech database。 TimeStamps are enabled by default。

参数

  • value: If true, enable timeStamps; If false, disable timeStamps。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.enableTimeStamps(value=true)

obj.getMode()

绑定状态: 已绑定

Python 调用: obj.getMode()

This function returns the mode of the currently open tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getMode()

obj.getRefCount()

绑定状态: 已绑定

Python 调用: obj.getRefCount()

This function returns the number of times this tech database was opened without closing。 This number includes both internal and external openings。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getRefCount()

obj.isModified()

绑定状态: 已绑定

Python 调用: obj.isModified()

This function returns a boolean value that indicates if this tech database has been modified but not saved。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isModified()

obj.isRecovered()

绑定状态: 已绑定

Python 调用: obj.isRecovered()

This function returns a boolean that indicates whether this tech was recovered from a critical save or an auto save database file。 For information about how to use a recover type database to restore a design, see the Programmers Guide article OpenAccess Libraries and Design Management 。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isRecovered()

obj.getDBUPerUU(viewType)

绑定状态: 已绑定

Python 调用: obj.getDBUPerUU(viewType)

This function returns the database-units per user-unit for the specified view type。 The local argument specifies whether, if true, to look only in this technology database or, if false, to search this technology database and all its referenced technology databases for the effective database-units per user-unit。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDBUPerUU(viewType)

obj.getDBUPerUU(viewType, local)

绑定状态: 已绑定

Python 调用: obj.getDBUPerUU(viewType, local)

This function returns the database-units per user-unit for the specified viewType used for this technology database and all of its referenced technology databases。 Both this value and the user-units type must be used to calculate the real distance meant by lengths and coordinates stored in an OpenAccess database。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->getDBUPerUU(oaViewType::get(oacMaskLayout))。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDBUPerUU(viewType, local)

obj.getUserUnits(viewType)

绑定状态: 已绑定

Python 调用: obj.getUserUnits(viewType)

This function returns the user-unit information for the specified viewType。 The local argument specifies whether, if true, to look only in this technology database or, if false, to search this technology database and all of its referenced technology databases for the effective user-unit。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getUserUnits(viewType)

obj.getUserUnits(viewType, local)

绑定状态: 已绑定

Python 调用: obj.getUserUnits(viewType, local)

This function returns the user-unit information for the specified viewType used for this technology database and all of its referenced technology databases。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getUserUnits(viewType, local)

obj.getClearanceMeasure()

绑定状态: 已绑定

Python 调用: obj.getClearanceMeasure()

This function returns the clearance measure enum value in use。 The local argument specifies whether, if true, to look only in this technology database or, if false, to search this technology database and all of its referenced technology databases for the effective clearance measure。

参数

  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getClearanceMeasure()

obj.getClearanceMeasure(local)

绑定状态: 已绑定

Python 调用: obj.getClearanceMeasure(local)

This function returns the clearance measurement enum value used for this technology database and all of its referenced technology databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getClearanceMeasure(local)

obj.getDefaultManufacturingGrid()

绑定状态: 已绑定

Python 调用: obj.getDefaultManufacturingGrid()

This function returns the manufacturing grid that applies to all physical layers unless it has been overridden at the physical layer level。 The local argument specifies whether, if true, to look only in this technology database or, if false, to search this technology database and all of its referenced technology databases for the effective manufacturing grid。

参数

  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

返回

  • An oaDist, which is an oaUInt4 that represents the non-negative distance, along one axis, between two oaCoord values。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDefaultManufacturingGrid()

obj.getDefaultManufacturingGrid(local)

绑定状态: 已绑定

Python 调用: obj.getDefaultManufacturingGrid(local)

This function returns the manufacturing grid that applies to all physical layers unless it has been overridden at the physical layer level。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDefaultManufacturingGrid(local)

obj.isGateGrounded()

绑定状态: 已绑定

Python 调用: obj.isGateGrounded()

This function returns a boolean indicating whether or not the gates are considered grounded。 The local argument specifies whether, if true, to look only in this technology database or, if false, to search this technology database and all of its referenced technology databases for the effective boolean value。

参数

  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isGateGrounded()

obj.isGateGrounded(local)

绑定状态: 已绑定

Python 调用: obj.isGateGrounded(local)

This function returns a boolean value indicating whether or not the gates are considered grounded in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isGateGrounded(local)

obj.getTechHeaders(refHeaders, local=false)

绑定状态: 已绑定

Python 调用: obj.getTechHeaders(refHeaders, local=false)

This function returns an ordered list of tech database headers that are referenced by this tech database。 If there are no references, an empty array is returned。 Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases。

参数

  • refHeaders: Array containing the set of oaTech database headers。
  • local: Specifies the extent of the search for referenced oaTech databases。 If local is true, the tech headers referenced directly from this tech in the order in which the references were set are returned。 If local is false, the complete graph of tech databases rooted at this tech is returned in the refHeaders array。 The order of the tech headers reflects a depth-first traversal of the tech graph。 Note that this graph may not be complete if there are missing tech databases in the list。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getTechHeaders(refHeaders, local=false)

obj.hasUnboundRefs()

绑定状态: 已绑定

Python 调用: obj.hasUnboundRefs()

This function returns true if this database has unbound tech database references (or if it has no tech database references)。 Otherwise, false is returned。 The existence of an unbound tech database reference affects the search order when looking up technology objects in incremental tech databases。 For more information about the search order, refer to Referencing Technology Databases in the Programmers Guide。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.hasUnboundRefs()

obj.setDBUPerUU(viewType, value)

绑定状态: 已绑定

Python 调用: obj.setDBUPerUU(viewType, value)

This function sets the database-units per user-unit information in the technology database for the specified viewType。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->setDBUPerUU(oaViewType::get(oacMaskLayout), 2000) Note: Significant flow issues result when you combine layouts that use different DBUPerUU settings in a project resulting in a single mask。 To avoid any issues, use a single DBUPerUU setting that is a function of the manufacturing grid for the given technology, as outlined in the following table。 Manufacturing Grid Typically Used at DBperUUs that Work (mathematically) Recommended 0.1 micron (100 nm)。

参数

  • viewType: Pointer to an oaViewType for the type of design to set the value for。
  • value: The number of database-units that represent a distance of 1 user-unit。

异常

  • oacInvalidDBUPerUU
  • oacConflictingDBUPerUUInTech
  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setDBUPerUU(viewType, value)

obj.setUserUnits(viewType, value)

绑定状态: 已绑定

Python 调用: obj.setUserUnits(viewType, value)

This function sets the user-unit information in the technology database for the specified viewType。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The user-unit value to set。

异常

  • oacConflictingUserUnitsInTech
  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setUserUnits(viewType, value)

obj.setClearanceMeasure(measure)

绑定状态: 已绑定

Python 调用: obj.setClearanceMeasure(measure)

This function sets the clearance measurement value for this technology database。

参数

  • measure: The clearance measurement value。

异常

  • oacConflictingClearanceMeasureInTech: The ClearanceMeasure tech attribute cannot be set as indicated because it would introduce conflicts in the specified tech graph。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setClearanceMeasure(measure)

obj.setDefaultManufacturingGrid(grid)

绑定状态: 已绑定

Python 调用: obj.setDefaultManufacturingGrid(grid)

This function sets the manufacturing grid that applies to all physical layers unless it has been overridden at the physical layer level。

参数

  • grid: The new value for the default manufacturing grid。 An oaDist is an oaUInt4 that represents the non-negative distance, along one axis, between two oaCoord values。

异常

  • oacConflictingDefaultManufacturingGridInTech

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setDefaultManufacturingGrid(grid)

obj.setGateGrounded(gateGrounded)

绑定状态: 已绑定

Python 调用: obj.setGateGrounded(gateGrounded)

This function sets the gateGrounded attribute in this technology database。

参数

  • gateGrounded: Boolean that specifies whether or not the gates are considered grounded。

异常

  • oacConflictingGateGroundedInTech: The GateGrounded tech attribute cannot be set as indicated because it would introduce conflicts in the specified tech graph。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setGateGrounded(gateGrounded)

obj.unsetDBUPerUU(viewType)

绑定状态: 已绑定

Python 调用: obj.unsetDBUPerUU(viewType)

This function reverts the database-units per user-unit attribute for the specified viewType back to its unset state in the technology database。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacUnsetDBUPerUUNotSet
  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetDBUPerUU(viewType)

obj.unsetUserUnits(viewType)

绑定状态: 已绑定

Python 调用: obj.unsetUserUnits(viewType)

This function reverts the user-unit attribute for the specified viewType back to its unset state in the technology database。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacUnsetUserUnitsNotSet
  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetUserUnits(viewType)

obj.unsetClearanceMeasure()

绑定状态: 已绑定

Python 调用: obj.unsetClearanceMeasure()

This function reverts the clearance measure attribute back to its unset state in the technology database。

异常

  • oacUnsetClearanceMeasureNotSet

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetClearanceMeasure()

obj.unsetDefaultManufacturingGrid()

绑定状态: 已绑定

Python 调用: obj.unsetDefaultManufacturingGrid()

This function reverts the default manufacturing grid attribute back to its unset state in the technology database。

异常

  • oacUnsetDefaultManufacturingGridNotSet

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetDefaultManufacturingGrid()

obj.unsetGateGrounded()

绑定状态: 已绑定

Python 调用: obj.unsetGateGrounded()

This function reverts the gates-are-considered-grounded attribute back to its unset state in the technology database。

异常

  • oacUnsetGateGroundedNotSet

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetGateGrounded()

obj.isDBUPerUUSet(viewType)

绑定状态: 已绑定

Python 调用: obj.isDBUPerUUSet(viewType)

This function returns true if the DBUPerUU attribute for the specified viewType is explicitly set in the technology database; false is returned otherwise。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isDBUPerUUSet(viewType)

obj.isUserUnitsSet(viewType)

绑定状态: 已绑定

Python 调用: obj.isUserUnitsSet(viewType)

This function returns true if the user-unit attribute for the specified viewType is explicitly set in the technology database; false is returned otherwise。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isUserUnitsSet(viewType)

obj.isClearanceMeasureSet()

绑定状态: 已绑定

Python 调用: obj.isClearanceMeasureSet()

This function returns true if the clearance measure attribute is explicitly set in the technology database; false is returned otherwise。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isClearanceMeasureSet()

obj.isDefaultManufacturingGridSet()

绑定状态: 已绑定

Python 调用: obj.isDefaultManufacturingGridSet()

This function returns true if the default manufacturing grid attribute is explicitly set in the technology database; false is returned otherwise。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isDefaultManufacturingGridSet()

obj.isGateGroundedSet()

绑定状态: 已绑定

Python 调用: obj.isGateGroundedSet()

This function returns true if the gates-are-considered-grounded attribute is explicitly set in the technology database; false is returned otherwise。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isGateGroundedSet()

obj.setRefs(refs)

绑定状态: 已绑定

Python 调用: obj.setRefs(refs)

This function sets the tech database references for this tech。 A reference is a mechanism that allows this tech database to inherit information from other techs。 The set of referenced tech databases is known as the graph of techs。 This function removes any previously existing references (as a result, some oaTechLayerHeaders and oaTechViaDefHeaders may become and remain unbound)。 An oacTechSetRefsConflicts exception is thrown if this function: Introduces a technology object with the same name (or other key attribute) as another technology object in the graph。 Introduces a technology attribute with the same name as another technology attribute in the graph that has a different value for the attribute。 Introduces a constraint group with the same name as another constraint group in the graph。 An oacTechCannotSetDuplicateRefs exception is thrown if this function attempts to set duplicate tech database references on a tech database。 An oacTechSetRefsCircularReference exception is thrown if an attempt is made to set a reference on this database so that its graph chain refers back to this tech db (if techA->techB->techC and this function attempts to set techC->techA)。 OpenAccess issues onConflict observer notifications and issues exceptions for the above errors。 OpenAccess also issues onProcessFamilyConflict and onExcludedLayerConflict observer notifications for processFamily attribute conflicts or excluded layer conflicts。 When setRefs() is used, pre and post-modify observers are called from oaObserver using the oacSetRefsTechModType。 For more information about setting references, refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide。

参数

  • refs: An array of oaTech pointers to reference。

异常

  • oacTechSetRefsConflicts: This exception is thrown if any conflict is discovered in the graph of tech databases。
  • oacTechCannotSetDuplicateRefs: This exception is throw if there is a duplicate database reference in the refs array。 For example, if the ref array contains (techB, techB)。
  • oacTechSetRefsCircularReference: This exception is thrown if an attempt is made to set a reference on this database so that its graph chain refers back to this tech db (if techA->techB->techC and this function attempts to set techC->techA)。
  • oacTechSetRefsCannotOpenAllRefGraphs: This exception is thrown if all technology databases in the graph are not open and setRefs fails to open any of them。 All technology databases in the graph must be open for setRefs to proceed。
  • oacSetRefsTechOpen: This exception is thrown if this technology database is being opened。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setRefs(refs)

obj.unsetRefs()

绑定状态: 已绑定

Python 调用: obj.unsetRefs()

This function removes all references to other tech databases。 No operation is performed if this tech database has no references。 For more information about tech database references, refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide。 Removing existing oaTech database references might cause some oaTechLayerHeaders and oaTechViaDefHeaders to become unbound and remain that way。

异常

  • oacUnsetRefsTechOpen: This exception is thrown if this technology database is being opened。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetRefs()

obj.setProcessFamily(processFamily)

绑定状态: 已绑定

Python 调用: obj.setProcessFamily(processFamily)

This function sets the processFamily attribute for this technology database。 When called, this function replaces the current processFamily attribute unless doing so causes an error。 It is an error if a tech, in any technology database graph that this tech is part of, has a different processFamily attribute already set。 Setting the processFamily to its current value does not produce an error。 If you call this function with an empty string, the processFamily attribute is unset。

参数

  • processFamily: The string value for the process family attribute。

异常

  • oacConflictingProcessFamilyInTech

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setProcessFamily(processFamily)

obj.unsetProcessFamily()

绑定状态: 已绑定

Python 调用: obj.unsetProcessFamily()

This function unsets the processFamily attribute to the empty string for this technology database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetProcessFamily()

obj.getProcessFamily(processFamily, local=false)

绑定状态: 已绑定

Python 调用: obj.getProcessFamily(processFamily, local=false)

This function retrieves the processFamily attribute and returns it in the processFamily string。 If the processFamily attribute is unset, the empty string is returned。

参数

  • processFamily: Returned string containing the processFamily。
  • local: If true, look only in this technology database; If false, search this technology database and all its referenced technology databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getProcessFamily(processFamily, local=false)

obj.hasProcessFamily(local=false)

绑定状态: 已绑定

Python 调用: obj.hasProcessFamily(local=false)

This function checks this database for a processFamily attribute if local is true, or if local is false, checks all databases in the graph of techs for a processFamily attribute。 The function returns true if the processFamily attribute is set and returns false if the attribute is not set。

参数

  • local: If true, search for the processFamily attribute only in this technology database; If false, search this technology database and all its referenced technology databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.hasProcessFamily(local=false)

obj.validate()

绑定状态: 已绑定

Python 调用: obj.validate()

This function returns false if there are multiple objects with the same attributes or conflicting parameter values in the technology database graph rooted at this tech database。 It returns true otherwise。 OpenAccess issues onConflict observer notifications for conflicting objects in different techs in the graph。 It also issues onProcessFamilyConflict and onExcludedLayerConflict for processFamily attribute conflicts or excluded layer conflicts。 For more information, refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.validate()

obj.uuToDBU(viewType, value)

绑定状态: 已绑定

Python 调用: obj.uuToDBU(viewType, value)

This function converts the user units into database units for the specified viewType。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->uuToDBU(oaViewType::get(oacMaskLayout), 22.6)。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The value in user units to convert to database units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.uuToDBU(viewType, value)

obj.uuToDBUDistance(viewType, value)

绑定状态: 已绑定

Python 调用: obj.uuToDBUDistance(viewType, value)

This function converts the user-unit distance to database-unit distance for the specified viewType。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->uuToDBU(oaViewType::get(oacMaskLayout), 22.6)。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The distance in user units to convert to database units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.uuToDBUDistance(viewType, value)

obj.uuToDBUArea(viewType, value)

绑定状态: 已绑定

Python 调用: obj.uuToDBUArea(viewType, value)

This function converts the area in square user units to an area in square database units for the specified viewType。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->uuToDBUArea(oaViewType::get(oacMaskLayout), 184.0)。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The area in user units to convert to database units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.uuToDBUArea(viewType, value)

obj.dbuToUU(viewType, value)

绑定状态: 已绑定

Python 调用: obj.dbuToUU(viewType, value)

This function converts the database units into user units for the specified viewType。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The value in database units to convert to user units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.dbuToUU(viewType, value)

obj.dbuToUUDistance(viewType, value)

绑定状态: 已绑定

Python 调用: obj.dbuToUUDistance(viewType, value)

This function converts the database unit distance to user unit distance for the specified viewType。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The distance in database units to convert to user units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.dbuToUUDistance(viewType, value)

obj.dbuToUUArea(viewType, value)

绑定状态: 已绑定

Python 调用: obj.dbuToUUArea(viewType, value)

This function converts the database unit area to user unit area for the specified viewType。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。
  • value: The area in database units to convert to user units。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.dbuToUUArea(viewType, value)

obj.enableUndo(value, undoModel)

绑定状态: 已绑定

Python 调用: obj.enableUndo(value, undoModel)

This function enables or disables undo for this in-memory image of the technology database。 If enabled, all changes made to this tech are logged so that undo() can restore the tech to earlier states。 If disabled, undo records are not created, and changes are not logged。 This function requires the caller to specify a particular model for undo (oaUndoModelEnum value)。 When enabling undo, the undoModel argument is required。 If disabling undo, the undoModel argument is omitted。 When undo is disabled, the current undo log and undo records are discarded。 OpenAccess supports two undo models: postCheckpoint model, in which checkpoints are set after an action preCheckpoint model, in which checkpoints are set before an action If postCheckpoint is specified, a call to undo must immediately follow a checkpoint or an exception is thrown。 See Undo and Redo Use Models in OpenAccess for more information。

参数

  • value: A value of true enables undo, a value of false disables undo。
  • undoModel: Specifies the postCheckpoint or preCheckpoint model for enabling undo or is not specified for disabling undo。

异常

  • oacTechCannotChangeUndoModel

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.enableUndo(value, undoModel)

obj.redo()

绑定状态: 已绑定

Python 调用: obj.redo()

This function restores the state of the in-memory image of the technology database to its state before the last undo。 The records are stored using either a pre-checkpoint or post-checkpoint model。 This call reverses the changes only if undo is enabled, undo() was called for this tech, and no changes occurred since the last undo() 。 The redo operation starts from the most recent record and restores the one transaction defined by both the checkpoint and the undo model。 Refer to the Undo and Redo Use Models article for additional information。 If there is an enabled observer on the action that is completed as a result of the redo operation, that observer is called。 In addition, there are observers for the redo operation itself。 Refer to oaTechUndoObserver for more information。

异常

  • oacTechUndoNotEnabled

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.redo()

obj.undo()

绑定状态: 已绑定

Python 调用: obj.undo()

This function reverts the changes made to the in-memory image of this technology database。 Undo records are stored using either a pre-checkpoint or post-checkpoint model。 This function steps back one checkpoint to the most recent checkpoint and reverses the changes saved in the undo records。 The undo operation starts from the most recent record and reverses the one transaction defined by both the checkpoint and the undo model。 Refer to the Undo and Redo Use Models article for additional information。 If there is an enabled observer on the action that is completed as a result of the undo operation, that observer is called。 In addition, there are observers for the undo operation itself。 Refer to oaTechUndoObserver for more information。 Note that only changes to managed objects in the oaTech are reversed。 Utility objects that contain pointers to a managed object are not affected。

异常

  • oacTechUndoNotEnabled
  • oacTechCannotUndoWithoutCpInPostModel

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.undo()

obj.isUndoEnabled()

绑定状态: 已绑定

Python 调用: obj.isUndoEnabled()

This function determines whether undo is enabled for this technology database in memory。

返回

  • true if undo is enabled; false if undo is not enabled。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isUndoEnabled()

obj.isInUndo()

绑定状态: 已绑定

Python 调用: obj.isInUndo()

This function determines whether this technology database in memory is currently in an undo or redo operation。

返回

  • true if this tech is in an undo or redo operation; false if the tech is not in an undo or redo operation。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.isInUndo()

obj.setCp(checkPointID=UINT_MAX)

绑定状态: 已绑定

Python 调用: obj.setCp(checkPointID=UINT_MAX)

This function sets an undo checkpoint for the in-memory image of this technology database。 A checkpoint marks a state of the tech。 If undo is enabled, each call to undo() restores the tech to the state marked by the previous checkpoint。 The checkpoint has a user-specified ID, which can be used to assist in keeping track of checkpoints。 If not specified, a unique value of checkPointID is automatically assigned to the checkpoint by OpenAccess。

参数

  • checkPointID: The specified checkpoint ID。

异常

  • oacTechUndoNotEnabled

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.setCp(checkPointID=UINT_MAX)

obj.unsetCp()

绑定状态: 已绑定

Python 调用: obj.unsetCp()

This function removes the last checkpoint in this tech assuming that there are no undo records after the last checkpoint。 Otherwise, an exception is thrown。 See oaTech::getNumUndoCpRecs() for getting the number of undo records after the checkpoint。

异常

  • oacTechUndoNotEnabled
  • oacTechCannotUnsetNonEmptyCp

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.unsetCp()

obj.getNumUndoCpRecs()

绑定状态: 已绑定

Python 调用: obj.getNumUndoCpRecs()

This function returns the number of undo records on the most recent checkpoint saved for this tech。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getNumUndoCpRecs()

obj.getCpID()

绑定状态: 已绑定

Python 调用: obj.getCpID()

This function returns the ID of the last checkpoint set in this tech。 If the ID is not set on that checkpoint, this function returns UINT_MAX。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getCpID()

obj.getNumUndoRecsOnCp()

绑定状态: 已绑定

Python 调用: obj.getNumUndoRecsOnCp()

This function returns the number of undo records that will be removed if an undo command is issued。 The value returned depends on the undo model in use。 If the undo model is oacUndoModelPostCheckpoint, the function returns the number of undo records before the last checkpoint。 If the undo model is oacUndoModelPreCheckpoint, the function returns the number of undo records after the last checkpoint。 For more information about undo models, refer to Undo and Redo Use Models in OpenAccess in the Programmers Guide。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getNumUndoRecsOnCp()

obj.getUndoModel()

绑定状态: 已绑定

Python 调用: obj.getUndoModel()

This function returns the undo model specified when calling enableUndo() 。 If this function is called and undo is not enabled, the default value of oacUndoModelNotSpecified is returned。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getUndoModel()

obj.calcVMSize()

绑定状态: 已绑定

Python 调用: obj.calcVMSize()

This function calculates and returns the amount of virtual memory this tech database is currently using。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.calcVMSize()

obj.minimizeVM()

绑定状态: 已绑定

Python 调用: obj.minimizeVM()

This function minimizes the amount of virtual memory this tech is currently using。 It releases dynamically allocated data structures that can be rebuilt as needed。 Applications can call this function after creating a tech or making significant edits to an existing tech, before starting a phase of processing that interacts with the tech in different ways。 This function should be called sparingly, as it can have a substantial impact on the performance of subsequent operations。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.minimizeVM()

obj.hasDefaultConstraintGroup()

绑定状态: 已绑定

Python 调用: obj.hasDefaultConstraintGroup()

This function returns a boolean indicating whether or not there is a default constraint group for this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.hasDefaultConstraintGroup()

obj.getDefaultConstraintGroup()

绑定状态: 已绑定

Python 调用: obj.getDefaultConstraintGroup()

This function returns the default constraint group for this technology。 If no constraints have been set on the default constraint group, a new constraint group is created and returned。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDefaultConstraintGroup()

obj.getFoundryRules()

绑定状态: 已绑定

Python 调用: obj.getFoundryRules()

This function returns the constraint group that represents the foundry rules for this technology。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getFoundryRules()

obj.getFeatures(dataModelRev, features)

绑定状态: 已绑定

Python 调用: obj.getFeatures(dataModelRev, features)

This function returns the data model revision number for the database, as well as an array of the features currently in the database。 The application can iterate through the array to get the ID for each feature present。 Each feature ID corresponds to an oaFeatureIDEnum value。

参数

  • dataModelRev: returned data model revision。
  • features: returned feature array。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getFeatures(dataModelRev, features)

obj.getAnalysisLibs()

绑定状态: 已绑定

Python 调用: obj.getAnalysisLibs()

This function returns a collection of analysis libraries。

参数

  • filterFlags: Determines the extent of the returned collection of analysis libraries: oacAnalysisLibIterAll: The collection contains all analysis libraries defined in this and all referenced tech databases oacAnalysisLibIterLocal: The collection contains the analysis libraries defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getAnalysisLibs()

obj.getAnalysisLibs(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getAnalysisLibs(filterFlags)

This function returns a collection of analysis libraries contained in the graph of tech databases rooted at this oaTech。 To return a collection of analysis libraries in the current tech only, refer to the getAnalysisLibs function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getAnalysisLibs(filterFlags)

obj.getLayers()

绑定状态: 已绑定

Python 调用: obj.getLayers()

This function returns a collection of layers。 The filterFlags value defines the extent of the collection。

参数

  • filterFlags: Defines the extent of the returned collection of layers: oacLayerIterAll: The collection contains all layers defined in this and all referenced tech databases。 oacLayerIterLocal: The collection contains the layers defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLayers()

obj.getLayers(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getLayers(filterFlags)

This function returns a collection of layers this and all referenced tech databases。 To return a collection of layers in the current tech only, refer to the getLayers function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLayers(filterFlags)

obj.getOpPoints()

绑定状态: 已绑定

Python 调用: obj.getOpPoints()

This function returns a collection of operating points。 The filterFlags value defines the extent of the collection。

参数

  • filterFlags: Determines the extent of the returned collection of operating points: oacOpPointIterAll: The collection contains all operating points defined in this and all referenced tech databases 。 oacOpPointIterLocal: The collection contains the operating points defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getOpPoints()

obj.getOpPoints(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getOpPoints(filterFlags)

This function returns a collection of operating points in this and all referenced tech databases。 To return a collection of operating points in the current tech only, refer to the getOpPoints function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getOpPoints(filterFlags)

obj.getPurposes()

绑定状态: 已绑定

Python 调用: obj.getPurposes()

This function returns a collection of purposes。

参数

  • filterFlags: Determines the extent of the returned collection of purposes: oacPurposeIterAll: The collection contains all purposes defined in this and all referenced tech databases。 oacPurposeIterLocal: The collection contains the purposes defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getPurposes()

obj.getPurposes(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getPurposes(filterFlags)

This function returns a collection of purposes in this and all referenced tech databases。 To return a collection of purposes in the current tech only, refer to the getPurposes function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getPurposes(filterFlags)

obj.getSiteDefs()

绑定状态: 已绑定

Python 调用: obj.getSiteDefs()

This function returns a collection of siteDefs。

参数

  • filterFlags: Determines the extent of the returned collection of siteDefs: oacSiteDefIterAll: The collection contains all siteDefs defined in this and all referenced tech databases。 oacSiteDefIterLocal: The collection contains the siteDefs defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getSiteDefs()

obj.getSiteDefs(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getSiteDefs(filterFlags)

This function returns a collection of siteDefs in this and all referenced tech databases。 To return a collection of siteDefs in the current tech only, refer to the getSiteDefs function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getSiteDefs(filterFlags)

obj.getValues()

绑定状态: 已绑定

Python 调用: obj.getValues()

This function returns a collection of values。

参数

  • filterFlags: Determines the extent of the returned collection of values: oacTechValueIterAll: The collection contains all values defined in this and all referenced tech databases。 oacTechValueIterLocal: The collection contains the values defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getValues()

obj.getValues(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getValues(filterFlags)

This function returns a collection of values in this and all referenced tech databases。 To return a collection of values in the current tech only, refer to the getValues function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getValues(filterFlags)

obj.getViaDefs()

绑定状态: 已绑定

Python 调用: obj.getViaDefs()

This function returns a collection of viaDefs。

参数

  • filterFlags: Determines the extent of the returned collection of viaDefs: oacViaDefIterAll: The collection contains all viaDefs defined in this and all referenced tech databases。 oacViaDefIterLocal: The collection contains the viaDefs defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaDefs()

obj.getViaDefs(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getViaDefs(filterFlags)

This function returns a collection of viaDefs in this and all referenced tech databases。 To return a collection of viaDefs in the current tech only, refer to the getViaDefs function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaDefs(filterFlags)

obj.getViaSpecs()

绑定状态: 已绑定

Python 调用: obj.getViaSpecs()

This function returns a collection of viaSpecs。

参数

  • filterFlags: Determines the extent of the returned collection of viaSpecs: oacViaSpecIterAll: The collection contains all viaSpecs defined in this and all referenced tech databases。 oacViaSpecIterLocal: The collection contains the viaSpecs defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaSpecs()

obj.getViaSpecs(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getViaSpecs(filterFlags)

This function returns a collection of via specs in this and all referenced tech databases。 To return a collection of via specs in the current tech only, refer to the getViaSpecs function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaSpecs(filterFlags)

obj.getViaVariants(filterFlags=oacViaVariantIterAll)

绑定状态: 已绑定

Python 调用: obj.getViaVariants(filterFlags=oacViaVariantIterAll)

This function returns a collection of oaViaVariants。

参数

  • filterFlags: Specifies what the collection contains。 The bit flags are defined as follows: oacViaVariantIterAll: The returned collection contains all oaViaVariants defined in this and all referenced technology databases。 oacViaVariantIterLocal: The returned collection contains the oaViaVariants defined locally in this technology database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaVariants(filterFlags=oacViaVariantIterAll)

obj.getViaVariantHeaders(filterFlags=oacViaVariantHeaderIterAll)

绑定状态: 已绑定

Python 调用: obj.getViaVariantHeaders(filterFlags=oacViaVariantHeaderIterAll)

This function returns a collection of viaVariantHeaders。

参数

  • filterFlags: Specifies what the collection contains。 The bit flags are defined as follows: oacViaVariantHeaderIterAll: The collection contains all oaViaVariantHeaders defined in this and all referenced technology databases。 oacViaVariantHeaderIterLocal: The collection contains the oaViaVariantHeaders defined locally in this technology database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaVariantHeaders(filterFlags=oacViaVariantHeaderIterAll)

obj.getLayerHeaders()

绑定状态: 已绑定

Python 调用: obj.getLayerHeaders()

This function returns a collection of layerHeaders in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getLayerHeaders()

obj.getViaDefHeaders()

绑定状态: 已绑定

Python 调用: obj.getViaDefHeaders()

This function returns a collection of viaDefHeaders in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getViaDefHeaders()

obj.getConstraints(def=NULL)

绑定状态: 已绑定

Python 调用: obj.getConstraints(def=NULL)

This function returns a collection of constraints that match the given constraint definition。

参数

  • def: Constraint definition to match。 When NULL is specified, the collection contains all constraints。
  • filterFlags: Determines the extent of the returned collection of constraints: oacConstraintIterAll: The collection contains all constraints defined in this and all referenced tech databases。 oacConstraintIterLocal: The collection contains the constraints defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraints(def=NULL)

obj.getConstraints(def, filterFlags)

绑定状态: 已绑定

Python 调用: obj.getConstraints(def, filterFlags)

This function returns a collection of constraints with the specified definition in this and any referenced tech databases。 If no definition is specified, all the constraints are returned。 To return a collection of constraints in the current tech only, refer to the getConstraints function that takes the filterFlags argument。

参数

  • def: Optional constraint definition to search for。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraints(def, filterFlags)

obj.getConstraintGroups()

绑定状态: 已绑定

Python 调用: obj.getConstraintGroups()

This function returns a collection of constraint groups that are associated with the specified constraintGroupDef。

参数

  • def: pointer to an oaConstraintGroupDef 。
  • filterFlags: Determines the extent of the returned collection of constraint groups: oacTechConstraintGroupIterAll (the default): The collection contains all constraint groups defined in this and all referenced tech databases。 oacTechConstraintGroupIterLocal: The collection contains the constraint groups defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintGroups()

obj.getConstraintGroups(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getConstraintGroups(filterFlags)

This function returns a collection of constraint groups。

参数

  • filterFlags: Determines the extent of the returned collection of constraint groups: oacTechConstraintGroupIterAll: The collection contains all constraint groups defined in this and all referenced tech databases。 oacTechConstraintGroupIterLocal: The collection contains the constraint groups defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintGroups(filterFlags)

obj.getConstraintGroups(def, filterFlags=oacTechConstraintGroupIterAll)

绑定状态: 已绑定

Python 调用: obj.getConstraintGroups(def, filterFlags=oacTechConstraintGroupIterAll)

This function returns a collection of constraint groups in this and all referenced tech databases。 To return a collection of constraint groups in the current tech only, refer to the getConstraintGroups function that takes the filterFlags argument。 Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information about referenced tech databases。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintGroups(def, filterFlags=oacTechConstraintGroupIterAll)

obj.getConstraintParams()

绑定状态: 已绑定

Python 调用: obj.getConstraintParams()

This function returns a collection of constraint parameters。

参数

  • filterFlags: Determines the extent of the returned collection of constraint parameters: oacTechConstraintParamIterAll: The collection contains all constraint parameters defined in this and all referenced tech databases。 oacTechConstraintParamIterLocal: The collection contains the constraint parameters defined locally in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintParams()

obj.getConstraintParams(filterFlags)

绑定状态: 已绑定

Python 调用: obj.getConstraintParams(filterFlags)

This function returns a collection of constraint parameters in this and all referenced tech databases。 To return a collection of constraint parameters in the current tech only, refer to the getConstraintParams function that takes the filterFlags argument。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintParams(filterFlags)

obj.getConstraintGroupHeaders()

绑定状态: 已绑定

Python 调用: obj.getConstraintGroupHeaders()

This function returns a collection of constraint group headers used by this tech database。 Note that the collection can include oaConstraintGroupHeaders with the same name (for default or foundry constraint groups)。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getConstraintGroupHeaders()

obj.getDerivedLayerParams(filterFlags=oacTechDerivedLayerParamIterAll)

绑定状态: 已绑定

Python 调用: obj.getDerivedLayerParams(filterFlags=oacTechDerivedLayerParamIterAll)

This function returns a collection of derivedLayer parameters。

参数

  • filterFlags: Determines the extent of the returned collection of derivedLayer parameters: oacTechDerivedLayerParmIterAll: The collection contains all derivedLayer parameters defined in this and all referenced oaTech databases。 oacTechDerivedLayerParamIterLocal: The collection contains the derivedLayer parameters defined locally in this oaTech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getDerivedLayerParams(filterFlags=oacTechDerivedLayerParamIterAll)

obj.getAppObjectDefs()

绑定状态: 已绑定

Python 调用: obj.getAppObjectDefs()

This function returns a collection of appObjectDefs used in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getAppObjectDefs()

obj.getAppObjects(def)

绑定状态: 已绑定

Python 调用: obj.getAppObjects(def)

This function returns a collection of any oaAppObject with the specified extension that exists in this tech database。

参数

  • def: The extension to include in the oaAppObject collection。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getAppObjects(def)

obj.getAppDefsByDataType(dataType)

绑定状态: 已绑定

Python 调用: obj.getAppDefsByDataType(dataType)

This function returns a collection of appDefs of the specified data type used in this tech database。

参数

  • dataType: The type code for the specified data table。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getAppDefsByDataType(dataType)

obj.getGroups()

绑定状态: 已绑定

Python 调用: obj.getGroups()

This function returns a collection of groups in this tech database with the specified group definition。

参数

  • def: Input group definition。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getGroups()

obj.getGroups(def)

绑定状态: 已绑定

Python 调用: obj.getGroups(def)

This function returns the complete set of groups in this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getGroups(def)

obj.getGroupsByName(name)

绑定状态: 已绑定

Python 调用: obj.getGroupsByName(name)

This function returns a collection of group names for the specified extension in this tech database。

参数

  • name: The extension to include in the collection。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getGroupsByName(name)

obj.getUsedIn()

绑定状态: 已绑定

Python 调用: obj.getUsedIn()

This function returns a collection of techHeaders in other open tech databases that contain references to this tech database。

Python 示例

from oapy._oa import _tech

# assume obj is a oaTech
obj.getUsedIn()

_tech.oaTech.create(libName)

绑定状态: 已绑定

Python 调用: _tech.oaTech.create(libName)

This function creates the tech database for the specified library。 An exception is thrown if the tech database already exists or if the specified library uses an attached tech database in another library。

参数

  • lib: The library for which to create the tech database。

返回

  • A pointer to the new oaTech database。

异常

  • oacTechAlreadyExists
  • oacTechLibNotFound
  • oacCannotFindInheritedTechLib
  • oacTechAttachedTechLibDetected

Python 示例

from oapy._oa import _tech

_tech.oaTech.create(libName)

_tech.oaTech.create(lib)

绑定状态: 已绑定

Python 调用: _tech.oaTech.create(lib)

This function creates the tech database for the specified library。 An exception is thrown if the tech database already exists or if the specified library uses an attached tech database in another library。

参数

  • libName: The name of the library for which to create the tech database。

返回

  • A pointer to the new tech database。

异常

  • oacLibNotFound
  • oacTechAlreadyExists
  • oacTechLibNotFound
  • oacCannotFindInheritedTechLib
  • oacTechAttachedTechLibDetected

Python 示例

from oapy._oa import _tech

_tech.oaTech.create(lib)

_tech.oaTech.open(libName, mode='r')

绑定状态: 已绑定

Python 调用: _tech.oaTech.open(libName, mode='r')

This function opens the tech database for the specified library with the specified access mode。 Note that the open functions do not create tech databases, they simply open them。 The tech to be opened might reference other techs in a graph。 If so, OpenAccess attempts to open the referenced techs as well。 If one of the referenced techs was edited out of context, conflicting technology objects might be encountered。 It is an error if opening a tech: Introduces a technology object with the same name as another technology object in the graph。 Introduces a technology attribute with the same name as another technology attribute in the graph that has a different value for the attribute。 Introduces a constraint group with the same name as another constraint group in the graph。 OpenAccess issues onConflict observer notifications and issues exceptions for conflicting objects in different techs in the graph。 It also issues onProcessFamilyConflict and onExcludedLayerConflict for processFamily attribute conflicts or excluded layer conflicts。 For more information about referenced tech databases, refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide。

参数

  • lib: A pointer to the library whose oaTech database is to be opened。
  • mode: The mode in which to open the database。 'r' for read 'w' for write (truncate by deleting existing data) 'a' for append 'A' for append in override mode, which is not typically used。 Refer to Compatibility for OpenAccess Applications and Data in the Programmers Guide for more information。

返回

  • A pointer to the opened tech database。

异常

  • oacOpenOnTechBeingPurged: Attempt to open a technology database that is being purged。
  • oacCannotFindLibraryTech: Tech database for the specified library is not found。
  • oacTechFileDoesNotExist
  • oacCannotFindInheritedTechLib
  • oacDataNotCompatibleOnOpen: The design contains new features that are not understood by this version of OpenAccess and cannot be opened。
  • oacDataNotCompatibleOnOpenInAppendMode: The design contains new features that are not understood by this version of OpenAccess and cannot be opened in append mode。
  • oacCannotRepairCorruptedAppData

Python 示例

from oapy._oa import _tech

_tech.oaTech.open(libName, mode='r')

_tech.oaTech.open(lib, mode='r')

绑定状态: 已绑定

Python 调用: _tech.oaTech.open(lib, mode='r')

This function opens the tech database for the specified library with the specified access mode。 Note that the open functions do not create tech databases, they simply open them。 The tech to be opened might reference other techs in a graph。 If so, OpenAccess attempts to open the referenced techs as well。 Refer to Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information。 If one of the referenced techs was edited out of context, conflicting technology objects might be encountered when opening the tech。 It is an error if opening a tech: Introduces a technology object with the same name as another technology object in the graph。 Introduces a technology attribute with the same name as another technology attribute in the graph that has a different value for the attribute。 Introduces a constraint group with the same name as another constraint group in the graph。 OpenAccess issues observer notifications and exceptions for conflicting objects in different techs in the graph。 It also issues onProcessFamilyConflict and onExcludedLayerConflict for processFamily attribute conflicts or excluded layer conflicts。 Refer to Conflicts in Incremental Technology Databases in the Using Technology Databases section of the Programmers Guide for more information。

参数

  • libName: The name of the library whose oaTech database is to be opened。
  • mode: The mode in which to open the design。 'r' for read 'w' for write (truncate by deleting existing data) 'a' for append 'A' for append in override mode, which is not typically used。 Refer to Compatibility for OpenAccess Applications and Data in the Programmers Guide for more information。

返回

  • A pointer to the opened tech database。

异常

  • oacTechLibNotFound
  • oacOpenOnTechBeingPurged
  • oacCannotFindLibraryTech
  • oacTechFileDoesNotExist
  • oacCannotFindInheritedTechLib
  • oacDataNotCompatibleOnOpen: The design contains new features that are not understood by this version of OpenAccess and cannot be opened。
  • oacDataNotCompatibleOnOpenInAppendMode: The design contains new features that are not understood by this version of OpenAccess and cannot be opened in append mode。
  • oacCannotRepairCorruptedAppData

Python 示例

from oapy._oa import _tech

_tech.oaTech.open(lib, mode='r')

_tech.oaTech.recover(libName, type)

绑定状态: 已绑定

Python 调用: _tech.oaTech.recover(libName, type)

This function attempts to recover the tech with the specified saveRecover type in the specified library。 If successful, the tech is returned。

参数

  • libName: The name of the library。
  • type: Either oacAutoSaveType or oacCriticalSaveType。

异常

  • oacTechLibNotFound

Python 示例

from oapy._oa import _tech

_tech.oaTech.recover(libName, type)

_tech.oaTech.find(libName)

绑定状态: 已绑定

Python 调用: _tech.oaTech.find(libName)

This function attempts to find an open tech database for the specified library。 If the library contains a tech database, and that database is not open, the function returns NULL。 If there is no local tech database, and the library uses an attached tech database specified with the "techLibName" property instead, this function recursively attempts to resolve the target library and find the open tech database for the resolved target library。 (see the oaTech class description for further information)。 If successful, the function returns a pointer to the tech database。 Otherwise, NULL is returned。 An oacCannotFindInheritedTechLib exception is thrown if a "techLibName" string property in the target library resolution chain specifies the name of a non-existent library。

参数

  • lib: A pointer to the library whose oaTech database is to be found。

异常

  • oacCannotFindInheritedTechLib

Python 示例

from oapy._oa import _tech

_tech.oaTech.find(libName)

_tech.oaTech.find(lib)

绑定状态: 已绑定

Python 调用: _tech.oaTech.find(lib)

This function attempts to find an open tech database for the specified library name。 If the library contains a tech database, and that database is not open, the function will return NULL。 If there is no local tech database, if the library uses an attached tech database specified with the "techLibName" property, this function will recursively attempt to resolve the target library and find the open tech database for the resolved target library (see the oaTech class description for further information)。 If successful, the function returns a pointer to the tech database。 Otherwise, NULL is returned。 An oacCannotFindInheritedTechLib exception is thrown if a "techLibName" string property in the target library resolution chain specifies the name of a non-existent library。

参数

  • libName: Name of the library whose oaTech database is to be found。

异常

  • oacCannotFindInheritedTechLib

Python 示例

from oapy._oa import _tech

_tech.oaTech.find(lib)

_tech.oaTech.destroy(libName)

绑定状态: 已绑定

Python 调用: _tech.oaTech.destroy(libName)

This function attempts to remove the specified oaSaveRecoverType file from disk。 It throws an exception if this file cannot be found on disk。

参数

  • libName: The name of the library。
  • type: Either oacAutoSaveType or oacCriticalSaveType。

异常

  • oacTechLibNotFound

Python 示例

from oapy._oa import _tech

_tech.oaTech.destroy(libName)

_tech.oaTech.destroy(lib)

绑定状态: 已绑定

Python 调用: _tech.oaTech.destroy(lib)

This function attempts to remove the tech database associated with the library specified by lib。 The tech database for the library will be removed from disk。 If no tech database exists, but the library uses an attached tech database specified with the "techLibName" property, then the attachment property will be removed。 It is not an error to remove the tech database even if other libraries use this tech as an attached tech。 An exception is thrown if the tech database is open。 See the oaTech class description for more information about attached tech databases。

参数

  • lib: A pointer to the library containing the oaTech database to destroy。

异常

  • oacDestroyTechOpen

Python 示例

from oapy._oa import _tech

_tech.oaTech.destroy(lib)

_tech.oaTech.destroy(libName, type)

绑定状态: 已绑定

Python 调用: _tech.oaTech.destroy(libName, type)

This function attempts to remove the tech database associated with the library specified by libName。 The tech database for the library will be removed from disk。 If no tech database exists, but the library uses an attached tech database specified with the "techLibName" property, then the attachment property will be removed。 It is not an error to remove the oaTech database even if other libraries use this tech database as an attached tech。 An exception is thrown if the tech database is open。 See the oaTech class description for more information about attached tech databases。

参数

  • libName: The library containing the oaTech database to destroy。

异常

  • oacTechLibNotFound
  • oacDestroyTechOpen
  • oacDestroyWithAttachProperty

Python 示例

from oapy._oa import _tech

_tech.oaTech.destroy(libName, type)

_tech.oaTech.exists(libName, inherited=true)

绑定状态: 已绑定

Python 调用: _tech.oaTech.exists(libName, inherited=true)

This function returns a boolean that indicates whether the specified oaSaveRecover file exists for the tech in the specified library。

参数

  • lib: The library to check。
  • type: The oaSaveRecover type to match, which is either oacAutoSaveType or oacCriticalSaveType。

Python 示例

from oapy._oa import _tech

_tech.oaTech.exists(libName, inherited=true)

_tech.oaTech.exists(lib, inherited=true)

绑定状态: 已绑定

Python 调用: _tech.oaTech.exists(lib, inherited=true)

This function returns a boolean that indicates whether the specified oaSaveRecover file exists for the tech in the specified library。

参数

  • libName: The name of the library to check。
  • type: The oaSaveRecover type to match, which is either oacAutoSaveType or oacCriticalSaveType。

Python 示例

from oapy._oa import _tech

_tech.oaTech.exists(lib, inherited=true)

_tech.oaTech.exists(libName, type)

绑定状态: 已绑定

Python 调用: _tech.oaTech.exists(libName, type)

This function returns true if the tech database is open for the specified library or if a non-zero size tech database for the specified library exists on disk。 It returns false otherwise。 If the tech is not currently open and if inherited is true (default), this function uses the library's "techLibName" string property to resolve the target library (see the oaTech class description for further information)。 If inherited is false, the property is ignored and the lookup is done using the specified library only。 An oacCannotFindInheritedTechLib exception is thrown if inherited is true and a "techLibName" string property in the target library resolution chain specifies the name of a non-existent library。

参数

  • lib: A pointer to the library to check。
  • inherited: If true, look at the "techLibName" property string value (interpreted in the oaNativeNS ) to resolve the target library。

异常

  • oacCannotFindInheritedTechLib

Python 示例

from oapy._oa import _tech

_tech.oaTech.exists(libName, type)

_tech.oaTech.exists(lib, type)

绑定状态: 已绑定

Python 调用: _tech.oaTech.exists(lib, type)

This function returns true if the tech database is open for the specified library or if a non-zero size tech database for the specified library exists on disk。 It returns false otherwise。 If the tech is not currently open and if inherited is true (default), this function uses the library's "techLibName" string property to resolve the target library (see the oaTech class description for further information)。 If inherited is false, the property is ignored and the lookup is done using the specified library only。 An oacCannotFindInheritedTechLib exception is thrown if inherited is true and a "techLibName" string property in the target library resolution chain specifies the name of a non-existent library。

参数

  • libName: The name of the library to check。
  • inherited: If true, look at the library's "techLibName" property string value (interpreted in the oaNativeNS ) to resolve the target library。

异常

  • oacCannotFindInheritedTechLib

Python 示例

from oapy._oa import _tech

_tech.oaTech.exists(lib, type)

_tech.oaTech.getDefaultDBUPerUU(viewType)

绑定状态: 已绑定

Python 调用: _tech.oaTech.getDefaultDBUPerUU(viewType)

This function returns the default database-units per user-unit for the specified viewType。 These are the static values that will be returned by getDBUPerUU() when no call to setDBUPerUU has been made for a given viewType。 The viewTypes allowed in this call are the subset of oaReservedViewType values that are used as viewTypes for an oaDesign 。 These are: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The caller can construct the viewType inline with this function call as in: tech->getDefaultDBUPerUU(oaViewType::get(oacMaskLayout))。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

_tech.oaTech.getDefaultDBUPerUU(viewType)

_tech.oaTech.getDefaultUserUnits(viewType)

绑定状态: 已绑定

Python 调用: _tech.oaTech.getDefaultUserUnits(viewType)

This function returns the requested user-unit information from the tech database for the specified viewType。 Note: Although users can construct their own oaViewTypes, valid viewTypes for this function are restricted to the set of reserved viewTypes, namely, an oaReservedViewType object constructed with one of the following reserved view type enumerated constants: oacMaskLayout , oacSchematic , oacSchematicSymbol , oacNetlist , or oacHierDesign 。 The developer can call oaViewType::get(oaReservedViewType) to construct and return a pointer to an a oaViewType object using one of the valid reserved viewType enumerated constants (for example, oaViewType::get(oacMaskLayout) or oaViewType::get (oaReservedViewType(oacMaskLayout)) 。

参数

  • viewType: A pointer to an oaViewType that corresponds to the specified type oaReservedViewType 。 It needs to be one of the reserved design viewTypes: maskLayout, schematic, schematicSymbol, netlist, or oaHierDesign。

异常

  • oacInvalidTechViewType

Python 示例

from oapy._oa import _tech

_tech.oaTech.getDefaultUserUnits(viewType)

_tech.oaTech.getDefaultDefaultManufacturingGrid()

绑定状态: 已绑定

Python 调用: _tech.oaTech.getDefaultDefaultManufacturingGrid()

This function returns the default value for the default manufacturing grid。

返回

  • An oaDist, which is an oaUInt4 that represents the non-negative distance, along one axis, between two oaCoord values。

Python 示例

from oapy._oa import _tech

_tech.oaTech.getDefaultDefaultManufacturingGrid()

_tech.oaTech.getDefaultClearanceMeasure()

绑定状态: 已绑定

Python 调用: _tech.oaTech.getDefaultClearanceMeasure()

This function returns the default clearance measure enum value。

Python 示例

from oapy._oa import _tech

_tech.oaTech.getDefaultClearanceMeasure()

_tech.oaTech.getDefaultIsGateGrounded()

绑定状态: 已绑定

Python 调用: _tech.oaTech.getDefaultIsGateGrounded()

This function returns the default boolean value indicating whether or not the gates are considered grounded。

Python 示例

from oapy._oa import _tech

_tech.oaTech.getDefaultIsGateGrounded()

_tech.oaTech.attach(lib, attachLibName)

绑定状态: 已绑定

Python 调用: _tech.oaTech.attach(lib, attachLibName)

This function creates a technology attachment between the specified library lib and the library with the name attachLibName。 If there is an existing attachment, it is first removed。 The oacAttachLibraryHasLocalTech error is thrown if a technology database exists locally in the library lib。 The oacDMDataCannotGetWriteAccess error is thrown if the library dmData database in the library lib cannot be opened for editing。 Note that the library dmData database is needed because this function creates a string property called techLibName in the dmData that specifies the name of the associated technology library。

参数

  • lib: Pointer to the technology library to attach。
  • attachLibName: Name of the library to attach to。

异常

  • oacAttachLibraryHasLocalTech
  • oacDMDataCannotGetWriteAccess

Python 示例

from oapy._oa import _tech

_tech.oaTech.attach(lib, attachLibName)

_tech.oaTech.detach(lib)

绑定状态: 已绑定

Python 调用: _tech.oaTech.detach(lib)

This function removes the technology attachment from the specified library lib。 The oacDetachNoAttachment error is thrown if the library does not have a technology attachment to another library。 The oacDMDataCannotGetWriteAccess error is thrown if the library dmData database cannot be opened for edit。 Note that the library dmData database is needed because the technology attachment information is stored there。

参数

  • lib: Pointer to the technology library to detach。

异常

  • oacDetachNoAttachment
  • oacDMDataCannotGetWriteAccess

Python 示例

from oapy._oa import _tech

_tech.oaTech.detach(lib)

_tech.oaTech.hasAttachment(lib)

绑定状态: 已绑定

Python 调用: _tech.oaTech.hasAttachment(lib)

This function returns true if the technology library lib has a technology attachment to another library。

参数

  • lib: Pointer to the technology library。

Python 示例

from oapy._oa import _tech

_tech.oaTech.hasAttachment(lib)

_tech.oaTech.getAttachment(lib, attachLibName)

绑定状态: 已绑定

Python 调用: _tech.oaTech.getAttachment(lib, attachLibName)

This function gets the name of the library that the specified library lib has a technology attachment to and returns it in attachLibName。 It is an error if lib does not have a technology attachment to another library。

参数

  • lib: Pointer to the technology library。
  • attachLibName: Retrieved library name。

异常

  • oacGetAttachmentNoAttachment

Python 示例

from oapy._oa import _tech

_tech.oaTech.getAttachment(lib, attachLibName)

_tech.oaTech.getRevNumber()

绑定状态: 已绑定

Python 调用: _tech.oaTech.getRevNumber()

This function returns the revision number for the tech database。

Python 示例

from oapy._oa import _tech

_tech.oaTech.getRevNumber()

_tech.oaTech.getOpenTechs()

绑定状态: 已绑定

Python 调用: _tech.oaTech.getOpenTechs()

This function returns a collection of currently open tech databases。

Python 示例

from oapy._oa import _tech

_tech.oaTech.getOpenTechs()