#include <memory_temporal.h>
Public Member Functions | |
TimeBucket () | |
~TimeBucket () | |
void | initBucket (POSE_TimeType start_t, POSE_TimeType range_t, SuperBlock **p, int *pSz) |
int | getNumSuperBlocks () |
int | getStart () |
int | getRange () |
void | setStart (int s) |
void | setRange (int r) |
bool | isVeryFull () |
SuperBlock * | getFirstSuperBlock () |
void | setFirstSuperBlock (SuperBlock *sb) |
void | setPrevBucket (TimeBucket *p) |
void | setNextBucket (TimeBucket *n) |
TimeBucket * | getPrevBucket () |
TimeBucket * | getNextBucket () |
char * | tb_alloc (int sz) |
void | tb_free (char *mem) |
POSE_TimeType | sanity_check (POSE_TimeType last_time) |
Private Attributes | |
POSE_TimeType | start |
POSE_TimeType | range |
int | numSuperBlocks |
SuperBlock * | sBlocks |
TimeBucket * | nextBucket |
TimeBucket * | prevBucket |
SuperBlock ** | pool |
int * | poolSz |
Definition at line 113 of file memory_temporal.h.
TimeBucket::TimeBucket | ( | ) | [inline] |
Definition at line 124 of file memory_temporal.h.
TimeBucket::~TimeBucket | ( | ) | [inline] |
Definition at line 126 of file memory_temporal.h.
void TimeBucket::initBucket | ( | POSE_TimeType | start_t, | |
POSE_TimeType | range_t, | |||
SuperBlock ** | p, | |||
int * | pSz | |||
) | [inline] |
Definition at line 128 of file memory_temporal.h.
References SuperBlock::getNextBlock(), SuperBlock::initBlock(), numSuperBlocks, pool, poolSz, range, SuperBlock::resetBlock(), sBlocks, and start.
Referenced by TimePool::tmp_alloc().
int TimeBucket::getNumSuperBlocks | ( | ) | [inline] |
int TimeBucket::getStart | ( | void | ) | [inline] |
Definition at line 146 of file memory_temporal.h.
References start.
Referenced by TimePool::clean_up(), TimePool::tmp_alloc(), and TimePool::tmp_free().
int TimeBucket::getRange | ( | ) | [inline] |
Definition at line 147 of file memory_temporal.h.
References range.
Referenced by TimePool::clean_up(), TimePool::tmp_alloc(), and TimePool::tmp_free().
void TimeBucket::setStart | ( | int | s | ) | [inline] |
Definition at line 148 of file memory_temporal.h.
References start.
Referenced by TimePool::tmp_alloc().
void TimeBucket::setRange | ( | int | r | ) | [inline] |
Definition at line 149 of file memory_temporal.h.
References range.
Referenced by TimePool::tmp_alloc().
bool TimeBucket::isVeryFull | ( | ) | [inline] |
Definition at line 150 of file memory_temporal.h.
References SuperBlock::getPercentFull(), numSuperBlocks, and sBlocks.
Referenced by TimePool::tmp_alloc().
SuperBlock* TimeBucket::getFirstSuperBlock | ( | ) | [inline] |
Definition at line 155 of file memory_temporal.h.
References sBlocks.
Referenced by TimePool::clean_up().
void TimeBucket::setFirstSuperBlock | ( | SuperBlock * | sb | ) | [inline] |
Definition at line 156 of file memory_temporal.h.
References sBlocks.
Referenced by TimePool::clean_up().
void TimeBucket::setPrevBucket | ( | TimeBucket * | p | ) | [inline] |
Definition at line 157 of file memory_temporal.h.
References prevBucket.
Referenced by TimePool::clean_up(), and TimePool::tmp_alloc().
void TimeBucket::setNextBucket | ( | TimeBucket * | n | ) | [inline] |
Definition at line 158 of file memory_temporal.h.
References nextBucket.
Referenced by TimePool::clean_up(), and TimePool::tmp_alloc().
TimeBucket* TimeBucket::getPrevBucket | ( | ) | [inline] |
Definition at line 159 of file memory_temporal.h.
References prevBucket.
Referenced by TimePool::clean_up(), TimePool::sanity_check(), and TimePool::tmp_free().
TimeBucket* TimeBucket::getNextBucket | ( | ) | [inline] |
Definition at line 160 of file memory_temporal.h.
References nextBucket.
Referenced by TimePool::clean_up(), TimePool::sanity_check(), TimePool::tmp_alloc(), and TimePool::~TimePool().
char* TimeBucket::tb_alloc | ( | int | sz | ) | [inline] |
Definition at line 162 of file memory_temporal.h.
References SuperBlock::getNextBlock(), SuperBlock::initBlock(), numSuperBlocks, pool, SuperBlock::resetBlock(), SuperBlock::sb_alloc(), sBlocks, and SuperBlock::setNextBlock().
Referenced by TimePool::tmp_alloc().
void TimeBucket::tb_free | ( | char * | mem | ) | [inline] |
Definition at line 194 of file memory_temporal.h.
References CpuTopoDetails::done, SuperBlock::getNextBlock(), SuperBlock::noLongerReferenced(), numSuperBlocks, SuperBlock::sb_free(), and sBlocks.
Referenced by TimePool::tmp_free().
POSE_TimeType TimeBucket::sanity_check | ( | POSE_TimeType | last_time | ) |
Definition at line 16 of file memory_temporal.C.
References count, SuperBlock::getNextBlock(), SuperBlock::noLongerReferenced(), numSuperBlocks, range, SuperBlock::sanity_check(), sBlocks, and start.
Referenced by TimePool::sanity_check().
POSE_TimeType TimeBucket::start [private] |
Definition at line 114 of file memory_temporal.h.
Referenced by getStart(), initBucket(), sanity_check(), and setStart().
POSE_TimeType TimeBucket::range [private] |
Definition at line 115 of file memory_temporal.h.
Referenced by getRange(), initBucket(), sanity_check(), and setRange().
int TimeBucket::numSuperBlocks [private] |
Definition at line 116 of file memory_temporal.h.
Referenced by getNumSuperBlocks(), initBucket(), isVeryFull(), sanity_check(), tb_alloc(), and tb_free().
SuperBlock* TimeBucket::sBlocks [private] |
Definition at line 117 of file memory_temporal.h.
Referenced by getFirstSuperBlock(), initBucket(), isVeryFull(), sanity_check(), setFirstSuperBlock(), tb_alloc(), and tb_free().
TimeBucket* TimeBucket::nextBucket [private] |
Definition at line 118 of file memory_temporal.h.
Referenced by getNextBucket(), and setNextBucket().
TimeBucket* TimeBucket::prevBucket [private] |
Definition at line 119 of file memory_temporal.h.
Referenced by getPrevBucket(), and setPrevBucket().
SuperBlock** TimeBucket::pool [private] |
int* TimeBucket::poolSz [private] |