#define __DWARFMANAGER_H__\r
\r
\r
-// \r
+// Definition for the DWARF status of each source file\r
+typedef enum\r
+{\r
+ DWARFSTATUS_OK = 0x0,\r
+ DWARFSTATUS_OUTDATEDFILE = 0x1,\r
+ DWARFSTATUS_NOFILE = 0x2,\r
+ DWARFSTATUS_NOFILEINFO = 0x4,\r
+ DWARFSTATUS_UNKNOWN = 0xff\r
+}DWARFstatus;\r
+\r
+// Internal manager\r
extern bool DWARFManager_Reset(void);\r
extern bool DWARFManager_Close(void);\r
extern void DWARFManager_Init(void);\r
-extern int DWARFManager_ElfInit(Elf *ElfPtr);\r
+extern int DWARFManager_ElfInit(Elf *ElfPtr, struct stat FileElfInfo);\r
+extern void DWARFManager_Set(size_t NbPathsInList, char **PtrListPaths);\r
+extern size_t DWARFManager_GetNbSources(void);\r
\r
-// \r
-extern char *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, bool *Error);\r
-extern size_t DWARFManager_GetNumLineFromAdr(size_t Adr, size_t Tag);\r
+// General manager\r
+extern char *DWARFManager_GetFunctionName(size_t Adr);\r
+extern size_t DWARFManager_GetSrcLanguageFromIndex(size_t Index);\r
+\r
+// Source text files manager\r
+extern char *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, DWARFstatus *Status);\r
+extern char *DWARFManager_GetNumFullSourceFilename(size_t Index);\r
+extern char *DWARFManager_GetNumSourceFilename(size_t Index);\r
+\r
+// Symbols manager\r
extern char *DWARFManager_GetSymbolnameFromAdr(size_t Adr);\r
+\r
+// Source text lines manager\r
+extern size_t DWARFManager_GetNumLineFromAdr(size_t Adr, size_t Tag);\r
extern char *DWARFManager_GetLineSrcFromAdr(size_t Adr, size_t Tag);\r
extern char *DWARFManager_GetLineSrcFromAdrNumLine(size_t Adr, size_t NumLine);\r
extern char *DWARFManager_GetLineSrcFromNumLineBaseAdr(size_t Adr, size_t NumLine);\r
-extern char *DWARFManager_GetFunctionName(size_t Adr);\r
-extern size_t DWARFManager_GetNbFullSourceFilename(void);\r
-extern char *DWARFManager_GetNumFullSourceFilename(size_t Index);\r
+extern char **DWARFManager_GetSrcListPtrFromIndex(size_t Index, bool Used);\r
+extern size_t DWARFManager_GetSrcNbListPtrFromIndex(size_t Index, bool Used);\r
+extern size_t *DWARFManager_GetSrcNumLinesPtrFromIndex(size_t Index, bool Used);\r
\r
// Global variables manager\r
extern size_t DWARFManager_GetNbGlobalVariables(void);\r