schCheckHierConfig
schCheckHierConfig(h_cfgId[v_pathVector[g_refLibs] ] ) =>l_errors/ nil
Description
Performs a check of the hierarchy. The check starts with the top cellview that is specified in the given hierarchy configuration. The hierarchy traversed is defined by information in this hierarchy configuration. Usually, the hierarchy is confined to the library of the given cellview, but you can specify a list of reference libraries to process if the hierarchy extends beyond the current library.
You must have write permission to any cellview that is to be checked.
This function uses the following environment settings:
-
checkAlwaysspecifies whether to check every cellview regardless of the extraction status
Whennil, cellviews are checked only if they need it. -
updateConnspecifies whether connectivity extraction is performed on all schematics encountered -
runSRCspecifies whether the schematic rules checker is run on all schematics encountered -
runVICspecifies whether the cross-view checker is run on all cellviews encountered -
checkHierSavespecifies whether processed cellviews are automatically saved
Ifnil, you must explicitly save and close the cellviews processed, or any updates are lost. -
saveActionspecifies what to do for those cellviews containing errors whencheckHierSaveist
Valid values areSave,No Save, andAsk Me.
The given cellview ID must be an editable schematic. If a cellview contains any of the following property values, it is not processed:
nlAction == { ignore | stop }
schType == { border | patchCord | ripper | noSchEdit }
Arguments
Value Returned
Examples
cfgId = deGetConfigId( getCurrentWindow( ))
schSetEnv( "checkHierSave" t )
schSetEnv( "saveAction" "Save" )
errs = schCheckHierConfig( cfgId )
cfgId = deGetConfigId( getCurrentWindow( ))
path = deGetVector( getCurrentWindow( ))
errs = schCheckHierConfig( cfgId path "libA libB" )
If errors are encountered, errs is a list of cellview/number-of-errors pairs. You can process this list as follows:
foreach( x errs
info( "%s %s %s has %d error(s).\n" car(x)~>lib~>name
car(x)~>cellName car(x)~>viewName cadr(x))
)
Return to top