IncomingCallList PowerScript function
Description
Provides a list of the callers of a routine included in a
performance analysis model.
Controls
ProfileRoutine object
Syntax
|
1 |
<span>iinstancename</span>.<span>IncomingCallList </span><span></span>( <span>list</span>, <span>aggregrateduplicateroutinecalls</span> ) |
|
Argument |
Description |
|---|---|
|
instancename |
Instance name of the ProfileRoutine object. |
|
list |
An unbounded array variable of datatype ProfileCall |
|
aggregateduplicateroutinecalls |
A boolean indicating whether duplicate |
Return Values
ErrorReturn. Returns one of the following values:
-
Success! – The function
succeeded -
ModelNotExistsError! – The model does not
exist
Usage
Use this function to extract a list of the callers of a routine
included in a performance analysis model. Each caller is defined
as a ProfileCall object and provides the called routine and the
calling routine, the number of times the call was made, and the
elapsed time. The callers are listed in no particular order.
You must have previously created the performance analysis
model from a trace file using the BuildModel function.
The aggregateduplicateroutinecalls argument
indicates whether duplicate routine calls will result in the creation
of a single or of multiple ProfileCall objects. This argument has
no effect unless line tracing is enabled and a calling routine calls
the current routine from more than one line. If aggregateduplicateroutinecalls is true,
a new ProfileCall object is created that aggregates all calls from
the calling routine to the current routine. If aggregateduplicateroutinecalls is false,
multiple ProfileCall objects are returned, one for each line from
which the calling routine called the called routine.
Examples
This example gets a list of the routines included
in a performance analysis model and then gets a list of the routines
that called each routine:
|
1 |
Long ll_cnt |
|
1 |
ProfileCall lproc_call[] |
|
1 |
|
1 |
lpro_model.BuildModel() |
|
1 |
lpro_model.RoutineList(i_routinelist) |
|
1 |
|
1 |
FOR ll_cnt = 1 TO UpperBound(iprort_list) |
|
1 |
iprort_list[ll_cnt].<span>IncomingCallList</span>(lproc_call, & <br> TRUE) |
|
1 |
... |
|
1 |
NEXT |