Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

ClassAnalyser Class Reference

#include <class_analy.h>

Inheritance diagram for ClassAnalyser:

Analyser Object List of all members.

Public Member Functions

void init (ht_class_shared_data *Class_shared, ht_streamfile *File)
int load (ht_object_stream *f)
virtual void done ()
virtual OBJECT_ID object_id () const
virtual void beginAnalysis ()
virtual UINT bufPtr (Address *Addr, byte *buf, int size)
virtual Address * createAddress ()
Address * createAddress32 (ClassAddress addr)
virtual Assembler * createAssembler ()
virtual const char * getName ()
virtual const char * getType ()
virtual void initCodeAnalyser ()
virtual void initUnasm ()
virtual void log (const char *msg)
virtual Address * nextValid (Address *Addr)
virtual void store (ht_object_stream *f)
virtual int queryConfig (int mode)
virtual bool validAddress (Address *Addr, tsectype action)
virtual Address * fileofsToAddress (FILEOFS fileofs)
virtual FILEOFS addressToFileofs (Address *Addr)
virtual char * getSegmentNameByAddress (Address *Addr)

Public Attributes

ht_class_shared_data * class_shared
ht_streamfile * file

Member Function Documentation

FILEOFS ClassAnalyser::addressToFileofs (  Address *  Addr  )  [virtual]
 

Implements Analyser.

Definition at line 175 of file class_analy.cc.

References FILEOFS, INVALID_FILE_OFS, scinitialized, and validAddress().

Referenced by bufPtr().

void ClassAnalyser::beginAnalysis (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 80 of file class_analy.cc.

References Analyser::addAddressSymbol(), Analyser::addComment(), Analyser::beginAnalysis(), class_shared, ht_class_shared_data::classinfo, createAddress32(), ht_stree::enum_next(), ClassMethod::flags, ht_class_shared_data::flags, ht_snprintf(), java_demangle(), java_demangle_flags(), label_func, ht_class_shared_data::methods, ClassMethod::name, NULL, Analyser::pushAddress(), Analyser::setLocationTreeOptimizeThreshold(), Analyser::setSymbolTreeOptimizeThreshold(), ClassMethod::start, ClassMethod::type, and value.

UINT ClassAnalyser::bufPtr (  Address *  Addr,
byte *  buf,
int  size
)  [virtual]
 

Implements Analyser.

Definition at line 140 of file class_analy.cc.

References addressToFileofs(), assert, buf, file, FILEOFS, INVALID_FILE_OFS, ht_stream::read(), ht_streamfile::seek(), size, and UINT.

Address * ClassAnalyser::createAddress (   )  [virtual]
 

Implements Analyser.

Definition at line 151 of file class_analy.cc.

Address * ClassAnalyser::createAddress32 (  ClassAddress  addr  ) 
 

Definition at line 159 of file class_analy.cc.

References dword.

Referenced by beginAnalysis(), fileofsToAddress(), and htclassimage_init().

Assembler * ClassAnalyser::createAssembler (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 167 of file class_analy.cc.

References NULL.

void ClassAnalyser::done (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 72 of file class_analy.cc.

References Analyser::done().

Address * ClassAnalyser::fileofsToAddress (  FILEOFS  fileaddr  )  [virtual]
 

converts |FILEOFS fileaddr| to |Address|

Reimplemented from Analyser.

Definition at line 281 of file class_analy.cc.

References createAddress32(), FILEOFS, NULL, scvalid, and validAddress().

const char * ClassAnalyser::getName (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 197 of file class_analy.cc.

References file, and ht_stream::get_desc().

char * ClassAnalyser::getSegmentNameByAddress (  Address *  Addr  )  [virtual]
 

Reimplemented from Analyser.

Definition at line 187 of file class_analy.cc.

const char * ClassAnalyser::getType (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 205 of file class_analy.cc.

void ClassAnalyser::init (  ht_class_shared_data *  Class_shared,
ht_streamfile *  File
) 
 

Definition at line 44 of file class_analy.cc.

References class_shared, Area::done(), file, Analyser::init(), ht_class_shared_data::initialized, Analyser::setLocationTreeOptimizeThreshold(), and Analyser::setSymbolTreeOptimizeThreshold().

Referenced by htclassimage_init().

void ClassAnalyser::initCodeAnalyser (   )  [virtual]
 

Reimplemented from Analyser.

Definition at line 213 of file class_analy.cc.

References Analyser::initCodeAnalyser().

void ClassAnalyser::initUnasm (   )  [virtual]
 

Implements Analyser.

Definition at line 227 of file class_analy.cc.

References class_shared, class_token_func(), and DPRINTF.

int ClassAnalyser::load (  ht_object_stream *  f  )  [virtual]
 

loads object from object stream.

Returns:
ht_stream errorcode

Reimplemented from Analyser.

Definition at line 64 of file class_analy.cc.

References Analyser::load().

void ClassAnalyser::log (  const char *  msg  )  [virtual]
 

Reimplemented from Analyser.

Definition at line 237 of file class_analy.cc.

Address * ClassAnalyser::nextValid (  Address *  Addr  )  [virtual]
 

Implements Analyser.

Definition at line 250 of file class_analy.cc.

References class_shared, Area::findNext(), and ht_class_shared_data::valid.

OBJECT_ID ClassAnalyser::object_id (   )  const [virtual]
 

Returns:
unique object id.

Reimplemented from Object.

Definition at line 132 of file class_analy.cc.

References ATOM_CLASS_ANALYSER.

int ClassAnalyser::queryConfig (  int  mode  )  [virtual]
 

Reimplemented from Analyser.

Definition at line 266 of file class_analy.cc.

References Q_DO_ANALYSIS, Q_ENGAGE_CODE_ANALYSER, and Q_ENGAGE_DATA_ANALYSER.

void ClassAnalyser::store (  ht_object_stream *  st  )  [virtual]
 

stores object.

Reimplemented from Analyser.

Definition at line 258 of file class_analy.cc.

References Analyser::store().

bool ClassAnalyser::validAddress (  Address *  Addr,
tsectype  action
)  [virtual]
 

Implements Analyser.

Definition at line 295 of file class_analy.cc.

References class_shared, Area::contains(), ht_class_shared_data::initialized, Address::isValid(), sccode, scinitialized, and ht_class_shared_data::valid.

Referenced by addressToFileofs(), and fileofsToAddress().


Member Data Documentation

ht_class_shared_data* ClassAnalyser::class_shared
 

Definition at line 30 of file class_analy.h.

Referenced by beginAnalysis(), init(), initUnasm(), nextValid(), and validAddress().

ht_streamfile* ClassAnalyser::file
 

Definition at line 31 of file class_analy.h.

Referenced by bufPtr(), getName(), and init().


The documentation for this class was generated from the following files:
Generated on Fri May 7 21:15:55 2004 by doxygen 1.3.5