Product Documentation
Virtuoso Layout Suite SKILL Reference
Product Version IC23.1, November 2023

lxRunCmdInXL

lxRunCmdInXL(
d_layCV 
u_cmd 
[ ?cmdArgs g_cmdArgs ] 
[ ?hierarchical {t | nil} ]
[ ?editLayout {t | nil} ]
[ ?editSchematic {t | nil} ]
[ ?skipLeafs {t | nil} ]
[ ?noSchematic {t | nil} ]
)
=> t / nil

Description

Runs a user-defined command in Layout XL in the current layout or for each unique layout master in the specified layout cellviews hierarchy. When the lxRunCmdInXL SKILL function is run, the CPH and the binder are enabled, but no windows open. The physConfig and the schematic connectivity reference is obtained from the layout cellviews by setting the SKILL functions lxSetConnRef and lxSetConfigRef. The lxRunCmdInXL function does not support the following commands: interactive edits, incremental binding, and incremental extraction. The user-supplied command must have at least two arguments—the schematic cellview ID and the layout cellview ID for the Layout XL session.

Arguments

d_layCV

ID of the layout cellview.

u_cmd

The command symbol.

?cmdArgs g_cmdArgs

The list of additional command arguments.

?hierarchical

The user-defined command is first run alphabetically on each unique layout master in the specified layout cellview. Then, run on the specified layout cellview, provided the cellview can be opened in Layout XL.

The default is nil, which runs the user command only on the specified layout cellview.

?editLayout

Opens the layout cellviews in append mode to enable edits to the layouts. The layout cellviews are left open after the command is run to enable you to save the edited layouts, if appropriate.

The default is nil, which opens the layout cellviews in read-only mode.

?editSchematic

The default nil opens the schematic cellviews in read-only mode. When set to t, the schematic cellviews are opened in append mode to enable edits to the schematic. Any edited schematic cellviews are left open after the command is run to enable you to save the schematics, if required.

The default is nil.

?skipLeafs

Skips any layouts with no instances and does not run an XL session on the layout.

The default is nil.

?noSchematic

Specifies whether lxRunCmdInXL should run without the schematic. The default is nil.

Value Returned

Return value from
supplied command

Return value based on the SKILL command provided by the user.

nil

Error in command.

Example

lxRunCmdInXL(lcv 'lxCheckAgainstSource)

Result

= lxRunCmdInXL(lcv 'lxUpdateComponentsAndNets ?hierarchical t ?editLayout t)
procedure(myFn(scv lcv doit)
   when(doit
       when(myUpdateSchematicFn(scv lcv)
           dbSave(scv)
       )
   )
)
lxRunCmdInXL(lcv 'myFn ?hierarchical t ?cmdArgs list(doit) ?editSchematic t)

Return to top
 ⠀
X