My Project
|
A contiguous range of bytes in some address space. More...
#include <address.hh>
Public Member Functions | |
Range (AddrSpace *s, uintb f, uintb l) | |
Construct a Range from offsets. More... | |
Range (void) | |
Constructor for use with restoreXml. | |
AddrSpace * | getSpace (void) const |
Get the address space containing this Range. | |
uintb | getFirst (void) const |
Get the offset of the first byte in this Range. | |
uintb | getLast (void) const |
Get the offset of the last byte in this Range. | |
Address | getFirstAddr (void) const |
Get the address of the first byte. | |
Address | getLastAddr (void) const |
Get the address of the last byte. | |
Address | getLastAddrOpen (const AddrSpaceManager *manage) const |
Get address of first byte after this. More... | |
bool | contains (const Address &addr) const |
Determine if the address is in this Range. More... | |
bool | operator< (const Range &op2) const |
Sorting operator for Ranges. More... | |
void | printBounds (ostream &s) const |
Print this Range to a stream. More... | |
void | saveXml (ostream &s) const |
Save this Range to an XML stream. More... | |
void | restoreXml (const Element *el, const AddrSpaceManager *manage) |
Restore this from XML stream. More... | |
Friends | |
class | RangeList |
A contiguous range of bytes in some address space.
|
inline |
Construct a Range from offsets.
Offsets must expressed in bytes as opposed to addressable words
s | is the address space containing the range |
f | is the offset of the first byte in the range |
l | is the offset of the last byte in the range |
|
inline |
Address Range::getLastAddrOpen | ( | const AddrSpaceManager * | manage | ) | const |
Get address of first byte after this.
Get the last address +1, updating the space, or returning the extremal address if necessary
manage | is used to fetch the next address space |
|
inline |
Sorting operator for Ranges.
Compare based on address space, then the starting offset
op2 | is the Range to compare with this |
void Range::printBounds | ( | ostream & | s | ) | const |
void Range::restoreXml | ( | const Element * | el, |
const AddrSpaceManager * | manage | ||
) |
Restore this from XML stream.
Reconstruct this object from an XML <range> element
el | is the XML element |
manage | is the space manage for recovering AddrSpace objects |
void Range::saveXml | ( | ostream & | s | ) | const |
Save this Range to an XML stream.
Write this object to a stream as a <range> tag.
s | is the output stream |