|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||
See:
Description
| Packages | |
|---|---|
| cz.cuni.amis.dash | Package contains mostly classes responsible for displaying plan of debugged agent. |
| cz.cuni.amis.pogamut.sposh.dbg.engine | |
| cz.cuni.amis.pogamut.sposh.dbg.exceptions | |
| cz.cuni.amis.pogamut.sposh.dbg.lap | |
| cz.cuni.amis.pogamut.sposh.dbg.view | |
| cz.cuni.sposh.debugger | In this package are actions that are plugged into NetBeans as menu or toolbar actions. |
Dash is a debugger for Yaposh plans, it can display the plan of debugged agent.
Dash provides three main functions:
WatchLapAction. When action is enabled, it tries to detect all debugged Yaposh engines by having breakpoint at evaluation method of PoshEngine and assuming that each new thread that reaches the breakpoint is new engine. The thread is basically always logic thread of the agent.Through coopoeration of PoshEngine (Yaposh engine) and NetBeans Debugger API. Example: Dash wants to be informed every time some node of the plan is evaluated. We know that right before the node is evaluated by the engine, it calls EngineLog#pathReached, so Dash uses NetBeans Debugger API to add breakpoint there and listens on it. When breakpoint is reached, the listener is notified. The listener knows that some logic thread is evaluating engine and has reached the node, it only needs to filter such events by thread and now we are informed each time the engine tries to evaluate some node.
Goal of this plugin is basically to create a class that represents planner engine(implementor IDebugEngine, for Yaposh it is YaposhEngine), connect it to the engine and show state of execution of planner in DashWindow. IDebugEngine has listeners that are notified when e.g. engine reaches some path. That way, the widgets and DashWindow can be updated.
Lifecycle of IDebugEngine, it must notify its listeners about changes in its lifecycle
initialize() to ask engine to connect to debugged plannerIDebugEngine know that planner exists and is being run, but it doesn't yet have plan of the plannerIDebugEngine got the plan
|
||||||||||
| PREV NEXT | FRAMES NO FRAMES | |||||||||