|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object java.util.Observable frysk.rt.BreakpointManager
public class BreakpointManager
Class for managing user breakpoints. In particular it defers inserting breakpoints whose addresses cannot be found in the executable, trying again when shared libraries are loaded.
Nested Class Summary | |
---|---|
private class |
BreakpointManager.ProcWatcher
|
Field Summary | |
---|---|
private TreeMap |
breakpointMap
|
private static Log |
fine
|
private HashSet |
managedProcs
|
private SteppingEngine |
steppingEngine
|
private HashMap |
watchers
|
Constructor Summary | |
---|---|
BreakpointManager(SteppingEngine steppingEngine)
Initialize the BreakpointManager. |
Method Summary | |
---|---|
private void |
addBreakpoint(SourceBreakpoint bp)
|
FunctionBreakpoint |
addFunctionBreakpoint(String name,
ObjectDeclaration decl)
Create a function breakpoint not associated with any process |
LineBreakpoint |
addLineBreakpoint(File fileName,
int line,
int column)
Create a line breakpoint that is not associated with any process. |
LineBreakpoint |
addLineBreakpoint(String fileName,
int lineNumber,
int column)
Create a line breakpoint that is not associated with any process. |
PLTBreakpoint |
addPLTBreakpoint(PLTEntry entry)
Create a PLT breakpoint not associated with any process |
SymbolBreakpoint |
addSymbolBreakpoint(DwflSymbol symbol)
Create a symbol breakpoint not associated with any process |
void |
disableBreakpoint(SourceBreakpoint breakpoint,
Task task)
Disable a breakpoint in a task. |
SourceBreakpoint.State |
enableBreakpoint(SourceBreakpoint breakpoint,
Task task)
Try to enable a breakpoint in a task. |
SourceBreakpoint |
getBreakpoint(int bptId)
|
Iterator |
getBreakpointTableIterator()
|
void |
manageProcess(Proc proc)
|
void |
refreshBreakpoints(Task task)
|
Methods inherited from class java.util.Observable |
---|
addObserver, clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
private static final Log fine
private TreeMap breakpointMap
private SteppingEngine steppingEngine
private HashMap watchers
private HashSet managedProcs
Constructor Detail |
---|
public BreakpointManager(SteppingEngine steppingEngine)
steppingEngine
- the stepping engine the manager will use
to insert / delete breakpoints.Method Detail |
---|
private void addBreakpoint(SourceBreakpoint bp)
public LineBreakpoint addLineBreakpoint(String fileName, int lineNumber, int column)
fileName
- the filelineNumber
- line in the filecolumn
- column number in the file
public LineBreakpoint addLineBreakpoint(File fileName, int line, int column)
fileName
- the filelineNumber
- line in the filecolumn
- column number in the file
public SymbolBreakpoint addSymbolBreakpoint(DwflSymbol symbol)
symbol
- the symbol to breakpoint at
public PLTBreakpoint addPLTBreakpoint(PLTEntry entry)
entry
- the PLT entry to breakpoint at
public FunctionBreakpoint addFunctionBreakpoint(String name, ObjectDeclaration decl)
name
- the name of the functiondie
- a DwarfDie representing the function or inlined
instance. If null, a lookup against the Elf symbol name is
performed.
public SourceBreakpoint.State enableBreakpoint(SourceBreakpoint breakpoint, Task task)
breakpoint
- the breakpointtask
- task in which breakpoint will be enabled.
public void disableBreakpoint(SourceBreakpoint breakpoint, Task task)
breakpoint
- the breakpointtask
- the taskpublic Iterator getBreakpointTableIterator()
public SourceBreakpoint getBreakpoint(int bptId)
public void refreshBreakpoints(Task task)
public void manageProcess(Proc proc)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |