HpSomBinaryFile Class Reference

#include <loader/HpSomBinaryFile.h>

Inheritance diagram for HpSomBinaryFile:

BinaryFile List of all members.

Detailed Description

Definition at line 87 of file HpSomBinaryFile.h.

Public Member Functions

virtual void Close ()
virtual ADDRESS GetAddressByName (char *pName, bool bNoTypeOK=false)
virtual std::list< const char * > getDependencyList ()
virtual std::map< ADDRESS,
const char * > * 
GetDynamicGlobalMap ()
virtual ADDRESS GetEntryPoint ()
virtual std::list< SectionInfo * > & GetEntryPoints (const char *pEntry="main")
virtual const char * getFilename () const
virtual LOAD_FMT GetFormat () const
virtual std::pair< unsigned,
unsigned > 
GetGlobalPointerInfo ()
virtual ADDRESS getImageBase ()
virtual size_t getImageSize ()
virtual MACHINE GetMachine () const
virtual ADDRESS GetMainEntryPoint ()
 HpSomBinaryFile ()
bool IsDynamicLinkedProc (ADDRESS uNative)
virtual bool isLibrary () const
virtual bool Open (const char *sName)
virtual bool PostLoad (void *handle)
virtual const char * SymbolByAddress (ADDRESS dwAddr)
virtual void UnLoad ()
virtual ~HpSomBinaryFile ()

Protected Member Functions

virtual bool RealLoad (const char *sName)

Private Member Functions

std::pair< ADDRESS, int > getSubspaceInfo (const char *ssname)

Private Attributes

std::set< ADDRESSimports
const char * m_pFileName
unsigned char * m_pImage
SymTab symbols


Constructor & Destructor Documentation

HpSomBinaryFile::HpSomBinaryFile  ) 
 

Definition at line 36 of file HpSomBinaryFile.cpp.

HpSomBinaryFile::~HpSomBinaryFile  )  [virtual]
 

Definition at line 41 of file HpSomBinaryFile.cpp.

References m_pImage.


Member Function Documentation

void HpSomBinaryFile::Close  )  [virtual]
 

Implements BinaryFile.

Definition at line 423 of file HpSomBinaryFile.cpp.

ADDRESS HpSomBinaryFile::GetAddressByName char *  pName,
bool  bNoTypeOK = false
[virtual]
 

Definition at line 471 of file HpSomBinaryFile.cpp.

References SymTab::find(), NO_ADDRESS, and symbols.

std::list< const char * > HpSomBinaryFile::getDependencyList  )  [virtual]
 

Implements BinaryFile.

Definition at line 451 of file HpSomBinaryFile.cpp.

std::map< ADDRESS, const char * > * HpSomBinaryFile::GetDynamicGlobalMap  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 538 of file HpSomBinaryFile.cpp.

References m_pImage, BinaryFile::m_pSections, import_entry::name, and UINT4.

ADDRESS HpSomBinaryFile::GetEntryPoint  )  [virtual]
 

Implements BinaryFile.

Definition at line 400 of file HpSomBinaryFile.cpp.

std::list< SectionInfo * > & HpSomBinaryFile::GetEntryPoints const char *  pEntry = "main"  )  [virtual]
 

Implements BinaryFile.

Definition at line 407 of file HpSomBinaryFile.cpp.

References BinaryFile::GetSectionInfoByName().

virtual const char* HpSomBinaryFile::getFilename  )  const [inline, virtual]
 

Implements BinaryFile.

Definition at line 98 of file HpSomBinaryFile.h.

References m_pFileName.

LOAD_FMT HpSomBinaryFile::GetFormat  )  const [virtual]
 

Implements BinaryFile.

Definition at line 434 of file HpSomBinaryFile.cpp.

References LOADFMT_PAR.

std::pair< unsigned, unsigned > HpSomBinaryFile::GetGlobalPointerInfo  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 516 of file HpSomBinaryFile.cpp.

References getSubspaceInfo().

ADDRESS HpSomBinaryFile::getImageBase  )  [virtual]
 

Implements BinaryFile.

Definition at line 456 of file HpSomBinaryFile.cpp.

size_t HpSomBinaryFile::getImageSize  )  [virtual]
 

Implements BinaryFile.

Definition at line 461 of file HpSomBinaryFile.cpp.

References m_pImage, and UINT4.

MACHINE HpSomBinaryFile::GetMachine  )  const [virtual]
 

Implements BinaryFile.

Definition at line 439 of file HpSomBinaryFile.cpp.

References MACHINE_HPRISC.

ADDRESS HpSomBinaryFile::GetMainEntryPoint  )  [virtual]
 

Implements BinaryFile.

Definition at line 570 of file HpSomBinaryFile.cpp.

References SymTab::find(), BinaryFile::m_pSections, symbols, and UINT4.

std::pair< ADDRESS, int > HpSomBinaryFile::getSubspaceInfo const char *  ssname  )  [private]
 

Definition at line 487 of file HpSomBinaryFile.cpp.

References m_pImage, subspace_dictionary_record::subspace_length, subspace_dictionary_record::subspace_start, and UINT4.

Referenced by GetGlobalPointerInfo(), and RealLoad().

bool HpSomBinaryFile::IsDynamicLinkedProc ADDRESS  uNative  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 481 of file HpSomBinaryFile.cpp.

References imports.

bool HpSomBinaryFile::isLibrary  )  const [virtual]
 

Implements BinaryFile.

Definition at line 444 of file HpSomBinaryFile.cpp.

References m_pImage, and UINT4.

bool HpSomBinaryFile::Open const char *  sName  )  [virtual]
 

Implements BinaryFile.

Definition at line 418 of file HpSomBinaryFile.cpp.

bool HpSomBinaryFile::PostLoad void *  handle  )  [virtual]
 

Implements BinaryFile.

Definition at line 428 of file HpSomBinaryFile.cpp.

bool HpSomBinaryFile::RealLoad const char *  sName  )  [protected, virtual]
 

Implements BinaryFile.

Definition at line 117 of file HpSomBinaryFile.cpp.

References AUXHDR, SectionInfo::bBss, SectionInfo::bCode, SectionInfo::bData, SectionInfo::bReadOnly, getSubspaceInfo(), BinaryFile::m_iNumSections, m_pFileName, m_pImage, BinaryFile::m_pSections, import_entry::name, NULL, SectionInfo::pSectionName, size, symbols, UC, SectionInfo::uHostAddr, UINT4, SectionInfo::uNativeAddr, SectionInfo::uSectionEntrySize, and SectionInfo::uSectionSize.

const char * HpSomBinaryFile::SymbolByAddress ADDRESS  dwAddr  )  [virtual]
 

Reimplemented from BinaryFile.

Definition at line 467 of file HpSomBinaryFile.cpp.

References SymTab::find(), and symbols.

void HpSomBinaryFile::UnLoad  )  [virtual]
 

Implements BinaryFile.

Definition at line 392 of file HpSomBinaryFile.cpp.

References m_pImage.


Member Data Documentation

std::set<ADDRESS> HpSomBinaryFile::imports [private]
 

Definition at line 149 of file HpSomBinaryFile.h.

Referenced by IsDynamicLinkedProc().

const char* HpSomBinaryFile::m_pFileName [private]
 

Definition at line 150 of file HpSomBinaryFile.h.

Referenced by getFilename(), and RealLoad().

unsigned char* HpSomBinaryFile::m_pImage [private]
 

Definition at line 146 of file HpSomBinaryFile.h.

Referenced by GetDynamicGlobalMap(), getImageSize(), getSubspaceInfo(), isLibrary(), RealLoad(), UnLoad(), and ~HpSomBinaryFile().

SymTab HpSomBinaryFile::symbols [private]
 

Definition at line 147 of file HpSomBinaryFile.h.

Referenced by GetAddressByName(), GetMainEntryPoint(), RealLoad(), and SymbolByAddress().


The documentation for this class was generated from the following files:
Generated on Tue Sep 19 21:18:43 2006 for Boomerang by  doxygen 1.4.6