GetInputUDSParams

This is the main definition method of the UDO. The supplied arguments populate details of the parameters to which the UDO user will specify value, specify the probe names and their types as well as the dynamic probe selections.

UI Access

The GetInputUDSParams function results in the following dialog when you click Results>Create User Defined Solution. The mapping from the UDSParams and the properties to the GUI elements should be unambiguous. The name and description of the UDS are also displayed in the Create New User Defined Solution window.
Create New User Defined Solution dialog.

When a report is created from the UDO dialog box, the category and quantity names specified by the UDO are used (as seen below).
Report Dialog box, UDO Output catagory listed.

Parameters
Name Type Description
<udsParams> List<UDSProbeParams> Parameters for the probe. The UDO script must add one instance of UDSProbeParams for each probe definition it will display. When creating the UDO solution, the UDO user must assign a matching quantity to each probe. When user define a UDS in the GUI, the user must select a design-solution-quantity for each UDSProbeParam .
<propList> IPropertyList The propList object is used to add properties that should be displayed to the user for data collection. These properties with their user-supplied values are returned to the UDO script by the Compute method.
<userSelectionForDynamicProbes> List<UDSProbeParams> When user defines a UDS in the GUI, the user ONLY needs to specify the Design-Solution. This quantity will be assigned dynamically by matching the component-expression defined in each UDSProbeParam.
Return Value Boolean. If true, the event was handled successfully. If false, it was not.

 

Python Syntax GetInputUDSParams(<udsParams>, <propList>, <userSelectionForDynamicProbes>)
Python Example
# Returns list of UDSParams and list of dynamic properties
# Adds setup time properties to the propList
def GetInputUDSParams(self, udsParams, propList, userSelectedDynamicProbes):

  # Add the probes. We need only one double quantity
  param1 = UDSProbeParams("probe1", "double quantity probe", 
  Constants.kDoubleParamStr, "", "")
  udsParams.Add(param1)

  # Add the properties we want the user to supply
  # In this case, we will ask for a start/end range for
  # X parameters. Since we cannot reasonably provide defaults
  # as we have no idea what the sweep limits will be, we will
  # also ask if the limits are to be activated.
  prop = propList.AddNumberProperty("X Min", "0")
  prop.Description = "Start X value to consider"

  prop = propList.AddNumberProperty("X Max", "1")
  prop.Description = "End X value to consider"

  # For menus, the first option is the default.
  prop = propList.AddMenuProperty("Activate X Limits", ["No", "Yes"])
  prop.Description = "Activate X range"

  return True