Commit | Line | Data |
---|---|---|
0203b5fd JPM |
1 | \r |
2 | \r | |
3 | #ifndef __DWARFMANAGER_H__\r | |
4 | #define __DWARFMANAGER_H__\r | |
5 | \r | |
6 | \r | |
009df4d7 JPM |
7 | // Definition for the DWARF status of each source file\r |
8 | typedef enum\r | |
9 | {\r | |
10 | DWARFSTATUS_OK = 0x0,\r | |
11 | DWARFSTATUS_OUTDATEDFILE = 0x1,\r | |
12 | DWARFSTATUS_NOFILE = 0x2,\r | |
13 | DWARFSTATUS_NOFILEINFO = 0x4,\r | |
14 | DWARFSTATUS_UNKNOWN = 0xff\r | |
15 | }DWARFstatus;\r | |
16 | \r | |
f0dd2f7b | 17 | // Internal manager\r |
0203b5fd JPM |
18 | extern bool DWARFManager_Reset(void);\r |
19 | extern bool DWARFManager_Close(void);\r | |
20 | extern void DWARFManager_Init(void);\r | |
c89f8ff7 | 21 | extern int DWARFManager_ElfInit(Elf *ElfPtr, struct stat FileElfInfo);\r |
f0dd2f7b | 22 | extern void DWARFManager_Set(size_t NbPathsInList, char **PtrListPaths);\r |
aae93d86 | 23 | extern size_t DWARFManager_GetNbSources(void);\r |
0203b5fd | 24 | \r |
f0dd2f7b JPM |
25 | // General manager\r |
26 | extern char *DWARFManager_GetFunctionName(size_t Adr);\r | |
aae93d86 | 27 | extern size_t DWARFManager_GetSrcLanguageFromIndex(size_t Index);\r |
f0dd2f7b JPM |
28 | \r |
29 | // Source text files manager\r | |
009df4d7 | 30 | extern char *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, DWARFstatus *Status);\r |
f0dd2f7b | 31 | extern char *DWARFManager_GetNumFullSourceFilename(size_t Index);\r |
aae93d86 | 32 | extern char *DWARFManager_GetNumSourceFilename(size_t Index);\r |
f0dd2f7b JPM |
33 | \r |
34 | // Symbols manager\r | |
0203b5fd | 35 | extern char *DWARFManager_GetSymbolnameFromAdr(size_t Adr);\r |
f0dd2f7b JPM |
36 | \r |
37 | // Source text lines manager\r | |
38 | extern size_t DWARFManager_GetNumLineFromAdr(size_t Adr, size_t Tag);\r | |
0203b5fd JPM |
39 | extern char *DWARFManager_GetLineSrcFromAdr(size_t Adr, size_t Tag);\r |
40 | extern char *DWARFManager_GetLineSrcFromAdrNumLine(size_t Adr, size_t NumLine);\r | |
41 | extern char *DWARFManager_GetLineSrcFromNumLineBaseAdr(size_t Adr, size_t NumLine);\r | |
aae93d86 JPM |
42 | extern char **DWARFManager_GetSrcListPtrFromIndex(size_t Index, bool Used);\r |
43 | extern size_t DWARFManager_GetSrcNbListPtrFromIndex(size_t Index, bool Used);\r | |
44 | extern size_t *DWARFManager_GetSrcNumLinesPtrFromIndex(size_t Index, bool Used);\r | |
0203b5fd JPM |
45 | \r |
46 | // Global variables manager\r | |
47 | extern size_t DWARFManager_GetNbGlobalVariables(void);\r | |
48 | extern char *DWARFManager_GetGlobalVariableName(size_t Index);\r | |
49 | extern size_t DWARFManager_GetGlobalVariableTypeEncoding(size_t Index);\r | |
50 | extern char *DWARFManager_GetGlobalVariableTypeName(size_t Index);\r | |
51 | extern size_t DWARFManager_GetGlobalVariableTypeByteSize(size_t Index);\r | |
52 | extern size_t DWARFManager_GetGlobalVariableAdr(size_t Index);\r | |
53 | extern size_t DWARFManager_GetGlobalVariableAdrFromName(char *VariableName);\r | |
54 | extern size_t DWARFManager_GetGlobalVariableTypeTag(size_t Index);\r | |
55 | \r | |
56 | // Local variables manager\r | |
57 | extern size_t DWARFManager_GetNbLocalVariables(size_t Adr);\r | |
58 | extern char *DWARFManager_GetLocalVariableName(size_t Adr, size_t Index);\r | |
59 | extern size_t DWARFManager_GetLocalVariableTypeEncoding(size_t Adr, size_t Index);\r | |
60 | extern char *DWARFManager_GetLocalVariableTypeName(size_t Adr, size_t Index);\r | |
61 | extern size_t DWARFManager_GetLocalVariableTypeByteSize(size_t Adr, size_t Index);\r | |
62 | extern size_t DWARFManager_GetLocalVariableTypeTag(size_t Adr, size_t Index);\r | |
63 | extern size_t DWARFManager_GetLocalVariableOp(size_t Adr, size_t Index);\r | |
64 | extern int DWARFManager_GetLocalVariableOffset(size_t Adr, size_t Index);\r | |
65 | \r | |
66 | \r | |
67 | #endif // __DWARFMANAGER_H__\r |