GetChildrenList

Description

Provides a list of the children of a routine included in a trace tree model.

Applies to

TraceTreeObject, TraceTreeRoutine, and TraceTreeGarbageCollect objects

Syntax

instancename.GetChildrenList ( list )

Argument

Description

instancename

Instance name of the TraceTreeObject, TraceTreeRoutine, or TraceTreeGarbageCollect object.

list

An unbounded array variable of datatype TraceTreeNode in which GetChildrenList stores a TraceTreeNode object for each child of a routine. This argument is passed by reference.


Return value

ErrorReturn. Returns the following values:

  • Success! -- The function succeeded

  • ModelNotExistsError! -- The model does not exist

Usage

You use the GetChildrenList function to extract a list of the children of a routine (the classes and routines it calls) included in a trace tree model. Each child listed is defined as a TraceTreeNode object and provides the type of activity represented by that child.

You must have previously created the trace tree model from a trace file using the BuildModel function.

When the GetChildrenList function is called for TraceTreeGarbageCollect objects, each child listed usually represents the destruction of a garbage collected object.

Examples

This example checks the activity type of a node included in the trace tree model. If the activity type is an occurrence of a routine, it determines the name of the class that contains the routine and provides a list of the classes and routines called by that routine:

TraceTree ltct_node
TraceTreeNode ltctn_list
...
CHOOSE CASE node.ActivityType
    CASE ActRoutine!
    TraceTreeRoutine ltctrt_rout
    ltctrt_rout = ltct_node
   
    result += "Enter " + ltctrt_rout.ClassName &
       + "." + ltctrt_rout.name + " " &
       + String(ltctrt_rout.ObjectID) + " " &
    + String(ltctrt_rout.EnterTimerValue) &
     + "~r~n" ltctrt_rout.GetChildrenList(ltctn_list)
...

See also

BuildModel