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

Address Class Reference

#include <analy.h>

Inheritance diagram for Address:

Object AddressFlat32 AddressFlat64 AddressX86_1616 AddressX86_1632 AddressX86Flat32 InvalidAddress List of all members.

Public Member Functions

virtual bool add (int offset)=0
virtual int byteSize ()=0
virtual int compareTo (const Object *obj) const=0
virtual int compareDelinear (Address *to)
virtual bool difference (int &result, Address *to)=0
virtual void getFromArray (const byte *array)=0
virtual void getFromCPUAddress (CPU_ADDR *ca)=0
virtual bool isValid ()
virtual int parseString (const char *s, int length, Analyser *a)=0
virtual void putIntoArray (byte *array)=0
virtual void putIntoCPUAddress (CPU_ADDR *ca)=0
virtual int stringify (char *s, int max_length, int format)=0
virtual int stringSize ()=0
virtual int toString (char *s, int maxlen)

Member Function Documentation

virtual bool Address::add int  offset  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by XBEAnalyser::beginAnalysis(), PEFAnalyser::beginAnalysis(), PEAnalyser::beginAnalysis(), NEAnalyser::beginAnalysis(), MachoAnalyser::beginAnalysis(), LEAnalyser::beginAnalysis(), ElfAnalyser::beginAnalysis(), CoffAnalyser::beginAnalysis(), Analyser::continueAnalysis(), Analyser::doBranch(), AnalyserOutput::generateFile(), Analyser::getLocationContextByAddress(), htclassimage_init(), AnalyserOutput::nextLine(), AnalyserOutput::prevLine(), ht_analy_sub::search(), and srt_x86().

virtual int Address::byteSize  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by AnalyserOutput::generateAddr(), ht_aviewer::handlemsg(), AnalyserHTOutput::link(), and ht_aviewer::qword_to_pos().

int Address::compareDelinear Address to  )  [virtual]
 

Reimplemented in AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Definition at line 45 of file analy.cc.

References compareTo().

virtual int Address::compareTo const Object obj  )  const [pure virtual]
 

Standard Object comparator.

Parameters:
obj object to compare to
Returns:
0 for equality, negative number if |this<obj| and positive number if |this>obj|

Reimplemented from Object.

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by Analyser::addSymbol(), Analyser::assignSymbol(), ht_aviewer::canCreateAddress(), compareDelinear(), Analyser::doBranch(), AnalyserOutput::generateFile(), AnalyserOutput::getAddr(), Analyser::getLocationContextByAddress(), Analyser::newLocation(), AnalyserOutput::nextLine(), and AnalyserOutput::prevLine().

virtual bool Address::difference int &  result,
Address to
[pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by Analyser::continueAnalysis(), ht_aviewer::dataStringDialog(), AnalyserOutput::generateAddr(), CallChain::get_text(), AnalyInfoline::gettext(), Analyser::gotoAddress(), ht_aviewer::pos_to_string(), and ht_aviewer::showXRefs().

virtual void Address::getFromArray const byte *  array  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by ht_analy_sub::getline(), ht_aviewer::handlemsg(), ht_analy_sub::next_line_id(), ht_analy_sub::prev_line_id(), ht_aviewer::qword_to_pos(), and ht_aviewer::ref_sel().

virtual void Address::getFromCPUAddress CPU_ADDR ca  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

bool Address::isValid  )  [virtual]
 

Reimplemented in InvalidAddress.

Definition at line 50 of file analy.cc.

Referenced by ht_aviewer::convertAddressToViewerPos(), Analyser::doBranch(), AnalyserOutput::generateAddr(), AnalyserOutput::generateFile(), AnalyserOutput::getAddr(), Analyser::gotoAddress(), Analyser::pushAddress(), and ClassAnalyser::validAddress().

virtual int Address::parseString const char *  s,
int  length,
Analyser a
[pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

virtual void Address::putIntoArray byte *  array  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by ht_aviewer::convertAddressToViewerPos(), ht_analy_sub::first_line_id(), AnalyserOutput::generateAddr(), ht_analy_sub::last_line_id(), AnalyserHTOutput::link(), ht_analy_sub::next_line_id(), ht_analy_sub::prev_line_id(), and ht_aviewer::symbol_handler().

virtual void Address::putIntoCPUAddress CPU_ADDR ca  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by Analyser::mapAddr(), and srt_x86().

virtual int Address::stringify char *  s,
int  max_length,
int  format
[pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by AnalyserTxtOutput::beginLine(), AnalyserHTOutput::beginLine(), AnalyserOutput::generateAddr(), AnalyserOutput::getAddr(), and toString().

virtual int Address::stringSize  )  [pure virtual]
 

Implemented in InvalidAddress, AddressFlat32, AddressFlat64, AddressX86Flat32, AddressX86_1616, and AddressX86_1632.

Referenced by AnalyserTxtOutput::beginLine(), AnalyserHTOutput::beginLine(), and SymbolBox::cursorAdjust().

int Address::toString char *  s,
int  maxlen
[virtual]
 

Prints object in string |s|

Returns:
number of characters written in s

Reimplemented from Object.

Definition at line 55 of file analy.cc.

References global_analyser_address_string_format, and stringify().


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