プラットフォーム・デバッグ・モデルは、言語特定の具象インプリメンテーションでインプリメントおよび拡張することを目的とした、 汎用デバッグ・インターフェースを定義します。
モデルには、デバッグされるプログラム内の各種 ART ファイルを表すクラスが含まれます。 すべての ART ファイルが独自のインターフェースに加えて、IDebugElement をインプリメントします。 モデルには、次の ART ファイルの定義が含まれています。
言語特定のデバッガーをインプリメントするプラグインは一般的に、これらのインターフェースを拡張して、言語特定の動作を組み込みます。 デバッグ・エレメントはすべて、そのエレメントを発生させたプラグインの ID を戻します。 これは、デバッグ・モデル (例えば、UI クラスなど) に関連付ける他のクラスを登録するために重要です。
モデルには、デバッグ ART ファイル間での共通の動作であるデバッグ・アクションのセットを定義するインターフェースも含まれています。 これらのインターフェースは、必要に応じてデバッグ・エレメントによってインプリメントされます。 インターフェースには、以下のアクションが含まれています。
プラットフォーム・デバッグ・エレメントの定義を見ると、様々なエレメントが様々なデバッグ・アクションをインプリメントしていることを確認できます。 エレメントとその動作の標準インターフェースによって、プラットフォームは、デバッガーの具象インプリメンテーション用に拡張可能なユーティリティー・クラスと UI サポートの抽象インプリメンテーションを提供できます。
デバッグ・イベント (DebugEvent) は、プログラムをデバッグするときに発生するイベントを記述するために使用されます。 デバッグ・イベントには、イベントに関連付けられるデバッグ・エレメントが含まれています。 それぞれの種類のデバッグ・エレメントには、DebugEvent の記述通りにサポートされている特定のイベントのセットがあります。
デバッガー UI クラスは一般的に、エレメントで発生する変更に関する情報を表示するために、エレメントの特定のイベントを聴取します。 デバッグ・イベントは、debug event sets と呼ばれるグループに到達します。 プログラムの実行と同じポイントで発生するイベントは、同じセットに到達します。 クライアントは、デバッグ・イベントを受け取るために、IDebugEventSetListener をインプリメントし、リスナーを org.eclipse.debug.core プラグインに登録します。