lib.dwfl
Class Dwfl

java.lang.Object
  extended by lib.dwfl.Dwfl

public class Dwfl
extends Object


Constructor Summary
Dwfl(String debugInfoPath)
          Create a dwfl with the specified debug-info search path.
 
Method Summary
 void close()
           
 DwflDie getCompilationUnit(long addr)
           
 DwarfDieFactory getFactory()
           
 LinkedList getLineAddresses(String fileName, int lineNo, int column)
          Get all the DwflLine objects associated with a line in a source file.
 DwflModule getModule(long addr)
          Get the DwflModule associated with an address.
 DwflModule[] getModules()
          Return all the DwflModule objects associated with this Dwfl.
 DwflLine getSourceLine(long addr)
           
 boolean isLineExecutable(String fileName, int lineNo, int column)
          Test to see if the requested line number is executable.
 void mapBegin(long vdso)
          Start refreshing the address map using raw information extracted from /proc/pid/maps.
 void mapEnd()
          Finish reporting a raw address map.
 void mapModule(String name, long low, long high, int devMajor, int devMinor, int inode)
          Report a single raw line from /proc/pid/maps.
 void reportBegin()
          Start a refresh of the address map.
 void reportEnd()
          Finish a refresh of the address map.
 void reportModule(String moduleName, long low, long high)
          Report a mapped component.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Dwfl

public Dwfl(String debugInfoPath)
Create a dwfl with the specified debug-info search path.

Method Detail

close

public void close()

getSourceLine

public DwflLine getSourceLine(long addr)

getCompilationUnit

public DwflDie getCompilationUnit(long addr)

getLineAddresses

public LinkedList getLineAddresses(String fileName,
                                   int lineNo,
                                   int column)
Get all the DwflLine objects associated with a line in a source file.


isLineExecutable

public boolean isLineExecutable(String fileName,
                                int lineNo,
                                int column)
Test to see if the requested line number is executable.


getFactory

public DwarfDieFactory getFactory()

reportBegin

public void reportBegin()
Start a refresh of the address map.


reportEnd

public void reportEnd()
Finish a refresh of the address map.


reportModule

public void reportModule(String moduleName,
                         long low,
                         long high)
Report a mapped component.


mapBegin

public void mapBegin(long vdso)
Start refreshing the address map using raw information extracted from /proc/pid/maps.


mapModule

public void mapModule(String name,
                      long low,
                      long high,
                      int devMajor,
                      int devMinor,
                      int inode)
Report a single raw line from /proc/pid/maps.


mapEnd

public void mapEnd()
Finish reporting a raw address map.


getModules

public DwflModule[] getModules()
Return all the DwflModule objects associated with this Dwfl. Use a the cached array if possible.

Returns:
an array of DwflModule.

getModule

public DwflModule getModule(long addr)
Get the DwflModule associated with an address.

Returns:
The module