Dyninst::SymtabAPI::SymtabReader Class Reference

#include <SymtabReader.h>

Inheritance diagram for Dyninst::SymtabAPI::SymtabReader:
Dyninst::SymReader

Public Member Functions

 SymtabReader (std::string file_)
 SymtabReader (const char *buffer, unsigned long size)
 SymtabReader (Symtab *s)
virtual ~SymtabReader ()
virtual Symbol_t getSymbolByName (std::string symname)
virtual unsigned long getSymbolSize (const Symbol_t &sym)
virtual Symbol_t getContainingSymbol (Dyninst::Offset offset)
virtual std::string getInterpreterName ()
virtual unsigned getAddressWidth ()
virtual unsigned numSegments ()
virtual bool getSegment (unsigned num, SymSegment &seg)
virtual Dyninst::Offset getSymbolOffset (const Symbol_t &sym)
virtual Dyninst::Offset getSymbolTOC (const Symbol_t &sym)
virtual std::string getSymbolName (const Symbol_t &sym)
virtual std::string getDemangledName (const Symbol_t &sym)
virtual bool isValidSymbol (const Symbol_t &sym)
virtual Section_t getSectionByName (std::string name)
virtual Section_t getSectionByAddress (Dyninst::Address addr)
virtual Dyninst::Address getSectionAddress (Section_t sec)
virtual std::string getSectionName (Section_t sec)
virtual bool isValidSection (Section_t sec)
virtual Dyninst::Offset imageOffset ()
virtual Dyninst::Offset dataOffset ()
virtual void * getElfHandle ()
virtual int getFD ()

Protected Attributes

Symtabsymtab
int ref_count
std::vector< SymSegmentsegments
bool ownsSymtab

Private Member Functions

void buildSegments ()

Friends

class SymtabReaderFactory

Detailed Description

Definition at line 62 of file SymtabReader.h.


Constructor & Destructor Documentation

SymtabReader::SymtabReader ( std::string  file_  ) 

Definition at line 47 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::openFile(), and symtab.

SymtabReader::SymtabReader ( const char *  buffer,
unsigned long  size 
)

Definition at line 56 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::openFile(), and symtab.

SymtabReader::SymtabReader ( Symtab s  ) 

Definition at line 67 of file SymtabReader.C.

SymtabReader::~SymtabReader (  )  [virtual]

Definition at line 73 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::closeSymtab(), ownsSymtab, and symtab.


Member Function Documentation

void SymtabReader::buildSegments (  )  [private]

Definition at line 147 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::getSegmentsSymReader(), segments, and symtab.

Referenced by getSegment(), and numSegments().

Dyninst::Offset SymtabReader::dataOffset (  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 200 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::dataOffset(), and symtab.

unsigned SymtabReader::getAddressWidth (  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 126 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::getAddressWidth(), and symtab.

Symbol_t SymtabReader::getContainingSymbol ( Dyninst::Offset  offset  )  [virtual]
std::string SymtabReader::getDemangledName ( const Symbol_t sym  )  [virtual]
void * SymtabReader::getElfHandle (  )  [virtual]
virtual int Dyninst::SymReader::getFD (  )  [inline, virtual, inherited]

Reimplemented in Dyninst::SymElf.

Definition at line 108 of file SymReader.h.

std::string SymtabReader::getInterpreterName (  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 115 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::getInterpreterName(), and symtab.

Dyninst::Address SymtabReader::getSectionAddress ( Section_t  sec  )  [virtual]
Section_t SymtabReader::getSectionByAddress ( Dyninst::Address  addr  )  [virtual]
Section_t SymtabReader::getSectionByName ( std::string  name  )  [virtual]
std::string SymtabReader::getSectionName ( Section_t  sec  )  [virtual]
bool SymtabReader::getSegment ( unsigned  num,
SymSegment seg 
) [virtual]

Implements Dyninst::SymReader.

Definition at line 138 of file SymtabReader.C.

References buildSegments(), and segments.

Symbol_t SymtabReader::getSymbolByName ( std::string  symname  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 83 of file SymtabReader.C.

References DEFN_SYMBOL_T, Dyninst::SymtabAPI::Symtab::findSymbol(), and symtab.

std::string SymtabReader::getSymbolName ( const Symbol_t sym  )  [virtual]
Dyninst::Offset SymtabReader::getSymbolOffset ( const Symbol_t sym  )  [virtual]
unsigned long SymtabReader::getSymbolSize ( const Symbol_t sym  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 183 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symbol::getSize(), and Dyninst::Symbol_t::v2.

Dyninst::Offset SymtabReader::getSymbolTOC ( const Symbol_t sym  )  [virtual]
Dyninst::Offset SymtabReader::imageOffset (  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 195 of file SymtabReader.C.

References Dyninst::SymtabAPI::Symtab::imageOffset(), and symtab.

bool SymtabReader::isValidSection ( Section_t  sec  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 240 of file SymtabReader.C.

References Dyninst::Section_t::v1.

bool SymtabReader::isValidSymbol ( const Symbol_t sym  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 190 of file SymtabReader.C.

References Dyninst::Symbol_t::v1, and Dyninst::Symbol_t::v2.

unsigned SymtabReader::numSegments (  )  [virtual]

Implements Dyninst::SymReader.

Definition at line 132 of file SymtabReader.C.

References buildSegments(), and segments.


Friends And Related Function Documentation

friend class SymtabReaderFactory [friend]

Definition at line 63 of file SymtabReader.h.


Field Documentation

Definition at line 68 of file SymtabReader.h.

Referenced by ~SymtabReader().

Definition at line 67 of file SymtabReader.h.

Referenced by buildSegments(), getSegment(), and numSegments().


The documentation for this class was generated from the following files:
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 12 Jul 2013 for SymtabAPI by  doxygen 1.6.1