Manuals >User's Guide >Creating and Running Macros Print version of this Book (PDF file) |
![]() ![]() |
|
|
Autostart MacrosYou can request the execution of the npn/dc_test macro after the model file is loaded, by starting IC-CAP in this fashion: You can intersperse any number of model file names and autostart macro execution requests. Just be sure to precede each macro with the -x option, and do not execute a macro before you load the model file containing it. You can load several models before executing any macros, if desired. You can execute 0, 1, or more autostart macros for each model loaded. These options are demonstrated below: iccap bjt_npn.mdl -x npn/dc_test nmos2.mdl iccap bjt_npn.mdl -x npn/dc_test -x npn/prdc_test nmos2.mdl iccap bjt_npn.mdl -x npn/dc_test nmos2.mdl -x npn/prdc_test iccap bjt_npn.mdl nmos2.mdl -x npn/dc_test -x npn/prdc_test Unattended IC-CAP SessionsIt is possible to run an IC-CAP session completely unattended, by executing all needed menu functions within one or more autostart macros. Such a session can be terminated with the following macro statement: In this example, Exit! is used to exit without prompting to save changes; to prompt the user to save files before exiting, use Exit only. Disallowed Deletes and ReadsBecause the iccap_func function can access objects in the system and execute actions on them, some potentially dangerous situations arise. The following is an example of a Macro attempting to Delete itself: The system prevents such commands from executing, because reliable operation could not otherwise be guaranteed. Another case which can be less obvious to recognize, but which would be equally dangerous is as follows: In this attempt to delete the model that owns the running Macro, the Macro would be destroyed. This is not permitted. In general, when a Program or Macro is running, attempts to execute the Delete or Open functions fail when that operation would result in the running Program or Macro being destroyed or overwritten. However, most requests to perform Delete or Open should succeed. The following example shows a supported case in which a Macro within the npn model deletes the fgummel Setup: This is not a problem, since the Macro would not be deleted when the fgummel Setup is deleted. |
|
|
|
![]() ![]() |