Definition at line 19 of file rose_extent.h.
|
template<class Other > |
| ExtentMap (const Other &other) |
|
ExtentMap | subtract_from (const Extent &e) const |
|
void | allocate_at (const Extent &request) |
|
Extent | allocate_best_fit (const rose_addr_t size) |
|
Extent | allocate_first_fit (const rose_addr_t size) |
|
void | dump_extents (std::ostream &, const std::string &prefix="", const std::string &label="") const |
|
void | dump_extents (FILE *f, const char *prefix, const char *label, bool pad=true) const |
|
| RangeMap () |
| Create a new, empty map.
|
|
| RangeMap (const Other &other) |
| Create a new map from an existing map.
|
|
bool | empty () const |
| Returns true if this RangeMap is empty.
|
|
size_t | nranges () const |
| Returns the number of ranges in the range map.
|
|
Range::Value | size () const |
| Returns the number of values represented by this RangeMap.
|
|
Range::Value | min () const |
| Returns the minimum value in an extent map.
|
|
Range::Value | max () const |
| Returns the maximum value in an extent map.
|
|
Range | minmax () const |
| Returns the range of values in this map.
|
|
void | clear (bool notify=true) |
| Clears the map.
|
|
void | erase (const Range &erase_range) |
| Erases the specified range from this map.
|
|
void | erase_ranges (const OtherMap &other) |
| Erase ranges from this map.
|
|
iterator | insert (Range new_range, Value new_value=Value(), bool make_hole=true) |
| Insert a range/value pair into the map.
|
|
void | insert_ranges (const RangeMap &x, bool make_hole=true) |
| Insert one rangemap into another.
|
|
void | insert_ranges (const_iterator start, const_iterator stop, bool make_hole=true) |
| Insert part of one rangemap into another.
|
|
bool | overlaps (const RangeMap &x) const |
| Determines if two range maps overlap.
|
|
bool | overlaps (const Range &r) const |
| Determines if a range map overlaps with a specified range.
|
|
bool | distinct (const Range &r) const |
| Determines if a range map does not contain any part of the specified range.
|
|
bool | distinct (const RangeMap &x) const |
| Determines if two range maps are distinct.
|
|
bool | contains (Range need) const |
| Determines if this range map contains all of the specified range.
|
|
bool | contains (const RangeMap &x) const |
| Determins if this range map contains all of some other range map.
|
|
ResultMap | invert () const |
| Create an inverse of a range map.
|
|
ResultMap | invert_within (const Range &limits) const |
| Create a range map that's the inverse of some other map.
|
|
RangeMap | select_overlapping_ranges (const Range &selector) const |
| Select ranges overlapping selector range.
|
|
void | check () const |
|
void | print (std::ostream &o) const |
| Prints unformatted RangeMap on a single line.
|
|
iterator | begin () |
| First-item iterator.
|
|
const_iterator | begin () const |
| First-item iterator.
|
|
iterator | end () |
| End-item iterator.
|
|
const_iterator | end () const |
| End-item iterator.
|
|
reverse_iterator | rbegin () |
| Returns a reverse iterator referring to the last item of the map, the rend() iterator if the RangeMap is empty.
|
|
const_reverse_iterator | rbegin () const |
| Returns a reverse iterator referring to the last item of the map, the rend() iterator if the RangeMap is empty.
|
|
reverse_iterator | rend () |
| Returns a reverse iterator referring to the element right before the first element in the map, which is considered its reverse end.
|
|
const_reverse_iterator | rend () const |
| Returns a reverse iterator referring to the element right before the first element in the map, which is considered its reverse end.
|
|
iterator | find (const typename Range::Value &addr) |
| Find the range containing specified value.
|
|
const_iterator | find (const typename Range::Value &addr) const |
| Find the range containing specified value.
|
|
iterator | lower_bound (const typename Range::Value &addr) |
| Finds the first range ending above the specified value.
|
|
const_iterator | lower_bound (const typename Range::Value &addr) const |
| Finds the first range ending above the specified value.
|
|
iterator | find_prior (const typename Range::Value &addr) |
| Finds the last range starting at or below the specified value.
|
|
const_iterator | find_prior (const typename Range::Value &addr) const |
| Finds the last range starting at or below the specified value.
|
|
iterator | best_fit (const typename Range::Value &size, iterator start) |
| Find range with closest size.
|
|
const_iterator | best_fit (const typename Range::Value &size, const_iterator start) const |
| Find range with closest size.
|
|
iterator | first_fit (const typename Range::Value &size, iterator start) |
| Find first range of larger size.
|
|
const_iterator | first_fit (const typename Range::Value &size, const_iterator start) |
| Find first range of larger size.
|
|
iterator | find_overlap (const RangeMap &x) |
| Find the first overlap between two RangeMap objects.
|
|
const_iterator | first_overlap (const RangeMap &x) const |
| Find the first overlap between two RangeMap objects.
|
|
iterator | find_overlap (iterator start, iterator stop, const RangeMap &x) |
| Find an overlap between two RangeMap objects.
|
|
const_iterator | find_overlap (const_iterator start, const_iterator stop, const RangeMap &x) const |
| Find an overlap between two RangeMap objects.
|
|