Modèle de débogage de la plate-forme

Le modèle de débogage de la plate-forme définit les interfaces de débogage devant être implémentées et étendues dans des implémentations concrètes et spécifiques à un langage.

Objets

Le modèle comprend des classes représentant les divers objets dans un programme en cours de débogage. Tous ces objets implémentent IDebugElement en plus de leurs propres interfaces. Le modèle inclut des définitions pour les objets suivants :

Les plug-in implémentant des débogueurs spécifiques à un langage étendent généralement ces interfaces pour inclure un comportement également spécifique au langage. Tous les éléments de débogage peuvent renvoyer l'ID du plug-in dont ils sont issus. Ce point est important pour l'enregistrement d'autres classes associées à un modèle de débogage, telles que les classes de l'interface graphique.

Actions

Le modèle comprend également des interfaces définissant un jeu d'actions de débogage dont le comportement est commun à tous les objets de débogage. Ces interfaces sont implémentées par des éléments de débogage lorsque nécessaire. Elle incluent les actions suivantes :

Si vous observez les définitions des éléments de débogage de la plate-forme, vous constaterez que différents éléments implémentent diverses actions de débogage. Les interface standard pour ces éléments et leurs comportements permettent à la plate-forme de fournir des implémentations abstraites de classes d'utilitaire et un support de l'interface graphique, lequel peut être étendu pour des implémentations ou débogueurs déterminés.

Evénements

Evénements de débogage (DebugEvent) utilisés pour décrire des événements se produisant lors du débogage d'un programme.  Les événements de débogage comprennent l'élément de débogage associé à cet événement.  Chaque type d'élément de débogage possède un ensemble spécifique d'événements qu'il prend en charge comme indiqué dans DebugEvent. Les implémentations du débogueur peuvent ajouter des événements de débogage spécifiques à l'application en utilisant une désignation de DebugEvent.MODEL_SPECIFIC comme type d'événement. Une zone de données client peut être utilisée dans ce cas pour ajouter des informations spécifiques au modèle concernant l'événement.

Les classes de l'interface du débogueur écoutent généralement des événements spécifiques pour les éléments afin d'afficher des informations sur leurs changements éventuels. Les événements de débogage se présentent en groupes appelés ensemble d'événements de débogage. Les événements se produisant au même point d'exécution dans un programme appartiennent au même ensemble. Les clients doivent implémenter IDebugEventSetListener et enregistrer le module d'écoute avec le plug-in org.eclipse.debug.core pour recevoir des événements de débogage.