Definition at line 115 of file RooLinkedList.cxx.
Public Member Functions | |
Pool () | |
constructor | |
~Pool () | |
destructor | |
void | acquire () |
acquire the pool | |
RooLinkedListElem * | pop_free_elem () |
pop a free element out of the pool | |
void | push_free_elem (RooLinkedListElem *el) |
push a free element back into the pool | |
bool | release () |
release the pool, return true if the pool is unused | |
Private Types | |
enum | { minsz = 7 , maxsz = 18 , szincr = 1 } |
typedef std::map< const void *, Chunk * > | AddrMap |
typedef RooLinkedListImplDetails::Chunk | Chunk |
a chunk of memory in the pool | |
typedef std::list< Chunk * > | ChunkList |
Private Member Functions | |
Int_t | nextChunkSz () const |
find size of next chunk to allocate (in a hopefully smart way) | |
void | updateCurSz (Int_t sz, Int_t incr) |
adjust _cursz to current largest block | |
Private Attributes | |
AddrMap | _addrmap |
Int_t | _cursz |
ChunkList | _freelist |
UInt_t | _refCount |
UInt_t | _szmap [(maxsz - minsz)/szincr] |
|
private |
Definition at line 125 of file RooLinkedList.cxx.
|
private |
a chunk of memory in the pool
Definition at line 123 of file RooLinkedList.cxx.
|
private |
Definition at line 124 of file RooLinkedList.cxx.
|
private |
Enumerator | |
---|---|
minsz | minimum chunk size (just below 1 << minsz bytes) |
maxsz | maximum chunk size (just below 1 << maxsz bytes) |
szincr | size class increment (sz = 1 << (minsz + k * szincr)) |
Definition at line 117 of file RooLinkedList.cxx.
RooLinkedListImplDetails::Pool::Pool | ( | ) |
constructor
Definition at line 152 of file RooLinkedList.cxx.
RooLinkedListImplDetails::Pool::~Pool | ( | ) |
destructor
Definition at line 157 of file RooLinkedList.cxx.
|
inline |
acquire the pool
Definition at line 132 of file RooLinkedList.cxx.
|
private |
find size of next chunk to allocate (in a hopefully smart way)
Definition at line 232 of file RooLinkedList.cxx.
RooLinkedListElem * RooLinkedListImplDetails::Pool::pop_free_elem | ( | ) |
pop a free element out of the pool
Definition at line 165 of file RooLinkedList.cxx.
void RooLinkedListImplDetails::Pool::push_free_elem | ( | RooLinkedListElem * | el | ) |
push a free element back into the pool
Definition at line 183 of file RooLinkedList.cxx.
|
inline |
release the pool, return true if the pool is unused
Definition at line 134 of file RooLinkedList.cxx.
adjust _cursz to current largest block
Definition at line 220 of file RooLinkedList.cxx.
|
private |
Definition at line 140 of file RooLinkedList.cxx.
|
private |
Definition at line 143 of file RooLinkedList.cxx.
|
private |
Definition at line 141 of file RooLinkedList.cxx.
|
private |
Definition at line 144 of file RooLinkedList.cxx.
Definition at line 142 of file RooLinkedList.cxx.