Manuals >Reference >ICCAP_FUNC Statement
Print version of this Book (PDF file)
prevnext

ICCAP_FUNC Statement

The PEL statement ICCAP_FUNC replaced MENU_FUNC to reflect the fact that many objects you act on are not menu-related. (Note: Existing macros using the MENU_FUNC statement will still work but we recommend you create new macros using ICCAP_FUNC.)

The form of the PEL statement is

 ICCAP_FUNC()

where () contains at least two arguments, each enclosed in quotation marks, separated by a comma

    • The first argument is the name of the object on which you want to act
    • The second argument is the action you want to perform
    • Optional arguments can be used to anticipate prompts during execution, namely for filenames for reading or writing

An example is shown next:

 iccap_func("/CGaas1/dc/DeviceParameterSet","Memory Store")

where

CGaas1

is the model name

dc

is the DUT name

DeviceParameterSet

is the object on which to act

Memory Store

is the action to perform on DeviceParameterSet (the object)

The Third Parameter
The optional arguments anticipate the need for information required to continue macro execution. If the argument is not included, and information is required, a dialog box appears prompting the user for the information. Usually, the optional arguments are file names used when reading from or writing to files. The following example shows how this optional argument is used to specify the file fileName.mdm from which to import data. This anticipates the need for a file name prompt and so avoids interrupting execution.

Example
 iccap_func("CGaas1/dc/igvg_0vs","Import Data", 
            "fileName.mdm") 

To successfully create macros with the ICCAP_FUNC statement, you must understand the hierarchy of the objects and specify the exact names of objects and actions. A tree-like structure, shown next, illustrates the relationship of the objects.

IC-CAP
   |— Variables
   |— GUI Items
         |— GUI Item
   |— Simulation Debugger
   |— Hardware
         |— HPIB Analyzer
   |— PlotOptions
   |— MODEL(*)
         |— Variables
         |— GUI Items
              |— GUI Item
         |— Circuit
         |— PlotOptimizer
         |— PlotOptions
         |— Parameter Set
         |— MACRO(*)
         |— DUT(*)
               |—Variables
               |— GUI Items
                     |— GUI Item
               |—Test Circuit
               |—Device Parameter Set
               |—SETUP(*)
                     |—Variables
                     |— GUI Items
                           |— GUI Item
                     |—Instrument Options
                     |—INPUT(*)
                     |—OUTPUT(*)
                     |—TRANSFORM(*)
                     |—PLOT(*)
                           |— PlotOptions

When specifying objects at lower levels, you must include the related objects above them, separating them with slashes. For example, to perform Save As on an instrument options table, you would specify:

 "/model/DUT/setup/InstrumentOptions","Save As"

where model, DUT, and setup are the actual model, DUT, and setup names.

An asterisk (*) next to an object (in this illustration) indicates that multiple objects or items with different names can be specified for that object. For example, a model may have many DUTs, but only one Parameter Set.

Tips:

    • Objects (first argument) are case-sensitive and space-sensitive; use exact spellings shown throughout this documentation (spaces shown in the illustration at left are for readability only). Use the notations ../ and ../.. to indicate relative path for objects.
    • Actions (second argument) are not sensitive to case or spaces.

prevnext