UnivesalDisassembler(2003)
|
00001 // symtable.cc 00002 // 00003 // uda - universal disassembler 00004 // Date: 2003-05-04 00005 // 00006 // Copyright (c) 2002-2003 Ales Smrcka 00007 // 00008 // This program is licensed under GNU Library GPL. See the file COPYING. 00009 // 00010 // This module contains interface of class Symbols - administration of symbols 00011 // 00012 00013 #ifndef symtableH 00014 #define symtableH 00015 00016 #include "udaclasses.h" 00017 #include "shared.h" 00018 #include <string> 00019 using namespace std; 00020 00022 class Symbols : public AbstractSymbols { 00023 int _counter; //for automatic labels 00024 public: 00025 Symbols(BinFileData &bfd) : AbstractSymbols(bfd) { _counter=0; } 00027 virtual void Load(const char *filename=NULL); 00029 bool checkaddress(const Address addr); 00031 bool defined(const Address addr); 00033 string &operator[](const Address addr); 00035 Address findaddress(const string symbol, bool &defined); 00036 }; 00037 00038 extern Symbols *symbols; 00039 00040 #endif