CVC3
2.4.1
|
#include <memory_manager_context.h>
Author: Clark Barrett
Created: Thu Aug 3 16:41:35 2006
Stack-based memory manager
CVC3::ContextMemoryManager::ContextMemoryManager | ( | ) | [inline] |
Definition at line 81 of file memory_manager_context.h.
References s_freePages, d_chunkList, CVC3::chunkSizeBytes, d_nextFree, FatalAssert, and d_endChunk.
Referenced by getMemory().
CVC3::ContextMemoryManager::~ContextMemoryManager | ( | ) | [inline] |
Definition at line 97 of file memory_manager_context.h.
References d_chunkList, and s_freePages.
void CVC3::ContextMemoryManager::newChunk | ( | ) | [inline, private] |
Definition at line 63 of file memory_manager_context.h.
References DebugAssert, d_chunkList, d_indexChunkList, s_freePages, CVC3::chunkSizeBytes, d_nextFree, FatalAssert, and d_endChunk.
Referenced by newData().
void* CVC3::ContextMemoryManager::newData | ( | size_t | size | ) | [inline, virtual] |
Implements CVC3::MemoryManager.
Definition at line 104 of file memory_manager_context.h.
References d_nextFree, d_endChunk, newChunk(), and DebugAssert.
void CVC3::ContextMemoryManager::deleteData | ( | void * | d | ) | [inline, virtual] |
Implements CVC3::MemoryManager.
Definition at line 116 of file memory_manager_context.h.
void CVC3::ContextMemoryManager::push | ( | ) | [inline] |
Definition at line 118 of file memory_manager_context.h.
References d_nextFreeStack, d_nextFree, d_endChunkStack, d_endChunk, d_indexChunkListStack, and d_indexChunkList.
void CVC3::ContextMemoryManager::pop | ( | ) | [inline] |
Definition at line 124 of file memory_manager_context.h.
References d_nextFree, d_nextFreeStack, d_endChunk, d_endChunkStack, d_indexChunkList, d_indexChunkListStack, s_freePages, and d_chunkList.
Referenced by CVC3::Context::pop().
static void CVC3::ContextMemoryManager::garbageCollect | ( | void | ) | [inline, static] |
Definition at line 137 of file memory_manager_context.h.
References s_freePages.
Referenced by CVC3::Context::~Context().
unsigned CVC3::ContextMemoryManager::getMemory | ( | int | verbosity | ) | [inline] |
Definition at line 144 of file memory_manager_context.h.
References ContextMemoryManager(), CVC3::MemoryTracker::getVec(), d_chunkList, d_nextFreeStack, d_endChunkStack, d_indexChunkListStack, CVC3::chunkSizeBytes, and CVC3::MemoryTracker::print().
static unsigned CVC3::ContextMemoryManager::getStaticMemory | ( | int | verbosity | ) | [inline, static] |
Definition at line 160 of file memory_manager_context.h.
References CVC3::MemoryTracker::getVec(), s_freePages, CVC3::chunkSizeBytes, and CVC3::MemoryTracker::print().
Referenced by CVC3::ContextManager::getMemory().
vector< char * > ContextMemoryManager::s_freePages [static, private] |
Definition at line 45 of file memory_manager_context.h.
Referenced by newChunk(), ContextMemoryManager(), ~ContextMemoryManager(), pop(), garbageCollect(), and getStaticMemory().
std::vector<char*> CVC3::ContextMemoryManager::d_chunkList [private] |
Definition at line 46 of file memory_manager_context.h.
Referenced by newChunk(), ContextMemoryManager(), ~ContextMemoryManager(), pop(), and getMemory().
char* CVC3::ContextMemoryManager::d_nextFree [private] |
Definition at line 49 of file memory_manager_context.h.
Referenced by newChunk(), ContextMemoryManager(), newData(), push(), and pop().
char* CVC3::ContextMemoryManager::d_endChunk [private] |
Definition at line 51 of file memory_manager_context.h.
Referenced by newChunk(), ContextMemoryManager(), newData(), push(), and pop().
unsigned CVC3::ContextMemoryManager::d_indexChunkList [private] |
Definition at line 53 of file memory_manager_context.h.
Referenced by newChunk(), push(), and pop().
std::vector<char*> CVC3::ContextMemoryManager::d_nextFreeStack [private] |
Definition at line 56 of file memory_manager_context.h.
Referenced by push(), pop(), and getMemory().
std::vector<char*> CVC3::ContextMemoryManager::d_endChunkStack [private] |
Definition at line 58 of file memory_manager_context.h.
Referenced by push(), pop(), and getMemory().
std::vector<unsigned> CVC3::ContextMemoryManager::d_indexChunkListStack [private] |
Definition at line 60 of file memory_manager_context.h.
Referenced by push(), pop(), and getMemory().