Sun WorkShop 入門

関数のグラフ表示

コールグラファを使用すると、ANSI C、C++、Fortran で記述されたプログラムの関数呼び出しの関係をグラフ表示することができます。呼び出し元関数、呼び出し先関数の両方が表示されます。

関数呼び出しの関係を表示する場合は、ソースブラウズ用データベースが必要です。ソースブラウズ用データベースについては、「ソースブラウズ用データベース」を参照してください。


注 -

仮想関数をグラフ表示することはできますが、実際に呼び出される関数を特定することはできません。 たとえば、実際には b1::d()b2::d() を呼び出す仮想関数 b::d()main で呼び出す場合、どちらの関数が呼び出されているかは特定できません。グラフには、b::d() を呼び出している main が表示されますが、mainb1::d()mainb2::d() の関連性は示されません。


「コールグラファ」ウィンドウ

「コールグラファ」ウィンドウには、関数やサブルーチンの呼び出しの関係がグラフ表示されます。図 3-5 を参照してください。

「コールグラファ」ウィンドウ内のノードの背景、コールグラフ区画の背景、ノードのボックスの枠、ノードのボックス内のテキスト、ノード間の矢印に使う色を変更したい場合は、WORKSHOP リソースファイルを編集します。「「コールグラファ」ウィンドウと 「クラスグラファ」ウィンドウの色」を参照してください。色の設定を変更すると、同じ設定が「コールグラファ」ウィンドウと「クラスグラファ」ウィンドウの両方に適用されます。「クラスグラファ」ウィンドウについては、「「クラスグラファ」ウィンドウ」を参照してください。

図 3-5 「コールグラファ」ウィンドウ

Graphic

「グラフ」メニュー 

関数呼び出しのグラフ表示を変更するコマンドを選択できます。 

「ノード」メニュー 

表示されたノードを変更するコマンドを選択できます。 

「関数」テキストフィールド 

グラフ表示したい関数やサブルーチンを入力します。「関数」テキストフィールドの右横の矢印ボタンを押すと、以前にグラフ表示した関数やサブルーチンの履歴が一覧表示されます。 

「追加」ボタン 

指定された関数を持つノードをコールグラフ区画に追加します。 

「検索」ボタン 

グラフ区画内を移動して、指定された関数やサブルーチンのノードを表示します。 

コールグラフ区画 

ソース内の関数やサブルーチンの呼び出しの関係をグラフ表示します。複数の関数やサブルーチンを選択してコールグラフ区画に再配置することもできます。 

「左を展開」ボタン 

選択された関数ノードを直接呼び出すノード (1 レベル上の親) をすべて表示します。 

「右を展開」ボタン 

選択された関数やサブルーチンノードから直接呼び出されるノード (1 レベル下の子) をすべて表示します。 

「両方を展開」ボタン 

選択された関数ノードを直接呼び出すノードと直接呼び出される関数ノード (1 レベル上の親と 1 レベル下の子) をすべて表示します。ノードをダブルクリックしても同じ処理が実行されます。 

「左を消去」ボタン 

選択されたノードを直接呼び出すノード (1 レベル上の親) をすべて非表示にします。 

「右を消去」ボタン 

選択されたノードから直接呼び出されるノード (1 レベル下の子) をすべて非表示にします。 

「ソース表示」ボタン 

選択されたノードが含まれているソースファイルをエディタウィンドウに表示します。 

メッセージ表示領域 

表示されているノードの数、追加されたノードの数、表示されていないノードの数、エラーメッセージなどを表示します。 

関数またはサブルーチン呼び出しのグラフ表示

関数またはサブルーチンをグラフ表示するには、次の手順に従ってください。

  1. 「ブラウズ」ウィンドウの「ソースをブラウズ」ラジオボタンをクリックします。

  2. 「ブラウズ」ウィンドウのタイトルバーに正しいブラウズディレクトリが表示されていることを確認します。

    ブラウズディレクトリが正しくない場合は、「ブラウズ」⇒「ブラウズ対象ディレクトリを変更」を選択して、「ソースブラウザのデータベースディレクトリ」ダイアログボックスを表示します。ここで、ソースブラウザデータベースが格納されているディレクトリを選択してください。

  3. 「ブラウズ」⇒「関数呼び出しをグラフ表示」を選択するか、「デバッグ」ウィンドウに表示されたソースコードから関数を選択して、「ブラウズ」⇒「関数呼び出しをグラフ表示」を選択します。

  4. テキストフィールドに関数またはサブルーチンの名前を入力して、「追加」ボタンか Return キーを押します。

    テキストフィールドに関数またはサブルーチンの名前が入力されていないと、デフォルトで main が設定されます。

関数またはサブルーチンに関する情報を表示するには、次の方法があります。


注 -

「グラフ」メニューのコマンドでは、コールグラフの表示を変更できます (「コールグラファ、クラスグラファのレイアウト変更」を参照)。「グラフの印刷」で説明する手順に従って、コールグラフを印刷することもできます。