Update the breakpoint feature
[clinton/Virtual-Jaguar-Rx.git] / src / debugger / DWARFManager.h
index 2ef7131..3b2b063 100644 (file)
@@ -1,32 +1,67 @@
-
-
-#ifndef __DWARFMANAGER_H__
-#define __DWARFMANAGER_H__
-
-
-// 
-extern bool    DWARFManager_Reset(void);
-extern bool    DWARFManager_Close(void);
-extern void    DWARFManager_Init(void);
-extern int DWARFManager_ElfInit(Elf *ElfPtr);
-
-// 
-extern char    *DWARFManager_GetFullSourceFilenameFromAdr(size_t Adr, bool *Error);
-extern size_t DWARFManager_GetNumLineFromAdr(size_t Adr, size_t Tag);
-extern char    *DWARFManager_GetSymbolnameFromAdr(size_t Adr);
-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);
-
-// External variables manager
-extern size_t DWARFManager_GetNbExternalVariables(void);
-extern char *DWARFManager_GetExternalVariableName(size_t Index);
-extern size_t DWARFManager_GetExternalVariableTypeEncoding(size_t Index);
-extern char *DWARFManager_GetExternalVariableTypeName(size_t Index);
-extern size_t DWARFManager_GetExternalVariableTypeByteSize(size_t Index);
-extern size_t DWARFManager_GetExternalVariableAdr(size_t Index);
-extern size_t DWARFManager_GetExternalVariableAdrFromName(char *VariableName);
-extern size_t DWARFManager_GetExternalVariableTypeTag(size_t Index);
-
-
-#endif // __DWARFMANAGER_H__
+\r
+\r
+#ifndef __DWARFMANAGER_H__\r
+#define __DWARFMANAGER_H__\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, struct stat FileElfInfo);\r
+extern void DWARFManager_Set(size_t NbPathsInList, char **PtrListPaths);\r
+extern size_t DWARFManager_GetNbSources(void);\r
+\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_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
+extern char *DWARFManager_GetGlobalVariableName(size_t Index);\r
+extern size_t DWARFManager_GetGlobalVariableTypeEncoding(size_t Index);\r
+extern char *DWARFManager_GetGlobalVariableTypeName(size_t Index);\r
+extern size_t DWARFManager_GetGlobalVariableTypeByteSize(size_t Index);\r
+extern size_t DWARFManager_GetGlobalVariableAdr(size_t Index);\r
+extern size_t DWARFManager_GetGlobalVariableAdrFromName(char *VariableName);\r
+extern size_t DWARFManager_GetGlobalVariableTypeTag(size_t Index);\r
+\r
+// Local variables manager\r
+extern size_t DWARFManager_GetNbLocalVariables(size_t Adr);\r
+extern char *DWARFManager_GetLocalVariableName(size_t Adr, size_t Index);\r
+extern size_t DWARFManager_GetLocalVariableTypeEncoding(size_t Adr, size_t Index);\r
+extern char *DWARFManager_GetLocalVariableTypeName(size_t Adr, size_t Index);\r
+extern size_t DWARFManager_GetLocalVariableTypeByteSize(size_t Adr, size_t Index);\r
+extern size_t DWARFManager_GetLocalVariableTypeTag(size_t Adr, size_t Index);\r
+extern size_t DWARFManager_GetLocalVariableOp(size_t Adr, size_t Index);\r
+extern int DWARFManager_GetLocalVariableOffset(size_t Adr, size_t Index);\r
+\r
+\r
+#endif // __DWARFMANAGER_H__\r