Classes | |
| struct | Entry |
Public Types | |
| enum | { HEAPENTRY_INVALID = -1 } |
| typedef T | value_type |
| typedef Common::Array< Entry > | ArrayType |
Public Member Functions | |
| SegmentObjTable (SegmentType type) | |
| int | allocEntry () |
| bool | isValidOffset (uint32 offset) const override |
| bool | isValidEntry (int idx) const |
| virtual void | freeEntry (int idx) |
| Common::Array< reg_t > | listAllDeallocatable (SegmentId segId) const override |
| uint | size () const |
| T & | at (uint index) |
| const T & | at (uint index) const |
| T & | operator[] (uint index) |
| const T & | operator[] (uint index) const |
Public Member Functions inherited from Sci::SegmentObj | |
| SegmentObj (SegmentType type) | |
| SegmentType | getType () const |
| virtual SegmentRef | dereference (reg_t pointer) |
| virtual reg_t | findCanonicAddress (SegManager *segMan, reg_t sub_addr) const |
| virtual void | freeAtAddress (SegManager *segMan, reg_t sub_addr) |
| virtual Common::Array< reg_t > | listAllOutgoingReferences (reg_t object) const |
Public Member Functions inherited from Common::Serializable | |
| virtual void | saveLoadWithSerializer (Serializer &ser)=0 |
Public Attributes | |
| int | first_free = HEAPENTRY_INVALID |
| int | entries_used = 0 |
| ArrayType | _table |
Public Attributes inherited from Sci::SegmentObj | |
| SegmentType | _type |
Additional Inherited Members | |
Static Public Member Functions inherited from Sci::SegmentObj | |
| static SegmentObj * | createSegmentObj (SegmentType type) |
|
inlineoverridevirtual |
Check whether the given offset into this memory object is valid, i.e., suitable for passing to dereference.
Implements Sci::SegmentObj.
|
inlineoverridevirtual |
Iterates over and reports all addresses within the segment. Used by the garbage collector.
Reimplemented from Sci::SegmentObj.
| int Sci::SegmentObjTable< T >::first_free = HEAPENTRY_INVALID |
Beginning of a singly linked list for entries
| int Sci::SegmentObjTable< T >::entries_used = 0 |
Statistical information