X-Git-Url: http://git.hcoop.net/clinton/Virtual-Jaguar-Rx.git/blobdiff_plain/f0dd2f7b7cc2f165b00dedcbc5bf6fbaa2ca136d..cbd79f6681578e8e8086cd175b1fbe5301a0b43d:/src/debugger/DWARFManager.h diff --git a/src/debugger/DWARFManager.h b/src/debugger/DWARFManager.h index d05e4ee..3b2b063 100644 --- a/src/debugger/DWARFManager.h +++ b/src/debugger/DWARFManager.h @@ -4,20 +4,32 @@ #define __DWARFMANAGER_H__ +// Definition for the DWARF status of each source file +typedef enum +{ + DWARFSTATUS_OK = 0x0, + DWARFSTATUS_OUTDATEDFILE = 0x1, + DWARFSTATUS_NOFILE = 0x2, + DWARFSTATUS_NOFILEINFO = 0x4, + DWARFSTATUS_UNKNOWN = 0xff +}DWARFstatus; + // Internal manager extern bool DWARFManager_Reset(void); extern bool DWARFManager_Close(void); extern void DWARFManager_Init(void); -extern int DWARFManager_ElfInit(Elf *ElfPtr); +extern int DWARFManager_ElfInit(Elf *ElfPtr, struct stat FileElfInfo); extern void DWARFManager_Set(size_t NbPathsInList, char **PtrListPaths); +extern size_t DWARFManager_GetNbSources(void); // General manager extern char *DWARFManager_GetFunctionName(size_t Adr); +extern size_t DWARFManager_GetSrcLanguageFromIndex(size_t Index); // Source text files manager -extern char *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, bool *Error); -extern size_t DWARFManager_GetNbFullSourceFilename(void); +extern char *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, DWARFstatus *Status); extern char *DWARFManager_GetNumFullSourceFilename(size_t Index); +extern char *DWARFManager_GetNumSourceFilename(size_t Index); // Symbols manager extern char *DWARFManager_GetSymbolnameFromAdr(size_t Adr); @@ -27,6 +39,9 @@ extern size_t DWARFManager_GetNumLineFromAdr(size_t Adr, size_t Tag); extern char *DWARFManager_GetLineSrcFromAdr(size_t Adr, size_t Tag); extern char *DWARFManager_GetLineSrcFromAdrNumLine(size_t Adr, size_t NumLine); extern char *DWARFManager_GetLineSrcFromNumLineBaseAdr(size_t Adr, size_t NumLine); +extern char **DWARFManager_GetSrcListPtrFromIndex(size_t Index, bool Used); +extern size_t DWARFManager_GetSrcNbListPtrFromIndex(size_t Index, bool Used); +extern size_t *DWARFManager_GetSrcNumLinesPtrFromIndex(size_t Index, bool Used); // Global variables manager extern size_t DWARFManager_GetNbGlobalVariables(void);