lejos.nxt.debug
Class DebugInterface

java.lang.Object
  extended by lejos.nxt.debug.DebugInterface

public class DebugInterface
extends Object

This class provides the primary interface to the debug capabilities of leJOS. It has two main functions: 1. To provide access to the internal VM and program structures: Threads Stacks Methods Classes 2. Provide an event based mechanism that allows Java applications to wait for debug events from the VM.

Author:
andy

Field Summary
 int classBase
           
static int DBG_EVENT_DISABLE
           
static int DBG_EVENT_ENABLE
           
static int DBG_EVENT_IGNORE
           
static int DBG_EXCEPTION
           
static int DBG_USER_INTERRUPT
           
 Exception exception
           
 int fieldBase
           
 int frame
           
 int method
           
 int methodBase
           
 int pc
           
 Thread thread
           
 Thread[] threads
           
 int typ
           
 
Method Summary
 void clear()
           
static int eventOptions(int event, int option)
          Allow events to be enabled/disabled/ignored.
static DebugInterface get()
           
 int waitEvent(int millis)
          Wait for a debug event from the kernel
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

DBG_EXCEPTION

public static final int DBG_EXCEPTION
See Also:
Constant Field Values

DBG_USER_INTERRUPT

public static final int DBG_USER_INTERRUPT
See Also:
Constant Field Values

DBG_EVENT_DISABLE

public static final int DBG_EVENT_DISABLE
See Also:
Constant Field Values

DBG_EVENT_ENABLE

public static final int DBG_EVENT_ENABLE
See Also:
Constant Field Values

DBG_EVENT_IGNORE

public static final int DBG_EVENT_IGNORE
See Also:
Constant Field Values

typ

public int typ

exception

public Exception exception

thread

public Thread thread

pc

public int pc

frame

public int frame

method

public int method

methodBase

public int methodBase

classBase

public int classBase

fieldBase

public int fieldBase

threads

public Thread[] threads
Method Detail

get

public static DebugInterface get()

clear

public void clear()

waitEvent

public final int waitEvent(int millis)
                    throws InterruptedException
Wait for a debug event from the kernel

Parameters:
millis - wait for at most millis milliseconds. 0 = forever.
Returns:
The new debug event
Throws:
InterruptedException

eventOptions

public static final int eventOptions(int event,
                                     int option)
Allow events to be enabled/disabled/ignored. Disabled events will return to the default behaviour. Enabled events will be reported via this interface. Ignored events will be discarded.

Parameters:
event -
option -
Returns:
previous state of this event.