Call trees

Procedure calls. For procedures, Project Analyzer collects calls/called-by information. This represents the control flow in your application. A procedure call usually occurs when you explicitly call a procedure by its name. Another typical instance would be when an event is raised.

File dependencies. For files, Project Analyzer collects dependency information. A file depends on another file if it requires the other file to compile or run. A reference to a member of another file will result in a file dependency. There are a few exceptions to this rule. The most notable one is late binding, which doesn't form a file dependency.

Trees. A tree that shows a "calls" relation is called a forward call tree. A tree that shows a "called-by" relation is called a backward call tree. For the sake of simplicity, we use this calls/called-by terminology even for depends-on/required-by trees.

Call trees

Call tree window

Select Call tree in the View menu to display the call tree window. This window shows forward call trees, both the file dependency tree and the procedure call tree.

Since a call tree can easily get very large, the whole tree is not shown at once. Expand levels of the tree by clicking the + signs. To fully expand all levels of a branch, click the + button in the toolbar.

Call tree reports

Call tree reports are available in the Report menu or from the Call tree window. Take care creating a full call tree report on a big project - the results may be larger than you expected.

Call trees in the main window

You can see forward and backward trees at the bottom of the main window. The File tab shows file dependency trees for the selected file, the Procedure tab shows procedure call trees for the selected procedure.

More about call trees

Graphical call trees

Project Graph produces graphical call trees in both directions: forward and backward.

Enterprise Diagrams produces call diagrams in all directions: forward, backward and between.

Calls, dependencies and cross-references

Call and dependency trees are built based on cross-references. A cross-reference is raw data for the tree building. See Terminology for the exact definitions.

Availability of call trees

Call trees are available after phase 2 is complete. Correct detection of all the calls and dependencies requires that all the target files have been analyzed.

See also

File dependency analysis

©Aivosto Oy - Project Analyzer Help Contents