CVC3  2.4.1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
CVC3::MemoryManagerChunks Class Reference

#include <memory_manager_chunks.h>

Inheritance diagram for CVC3::MemoryManagerChunks:
CVC3::MemoryManager

Public Member Functions

 MemoryManagerChunks (unsigned dataSize, unsigned chunkSize=1024)
 ~MemoryManagerChunks ()
void * newData (size_t size)
void deleteData (void *d)
- Public Member Functions inherited from CVC3::MemoryManager
virtual ~MemoryManager ()

Private Member Functions

void newChunk ()

Private Attributes

unsigned d_dataSize
unsigned d_chunkSize
unsigned d_chunkSizeBytes
std::vector< char * > d_freeList
std::vector< char * > d_chunkList
char * d_nextFree
char * d_endChunk

Detailed Description

Definition at line 42 of file memory_manager_chunks.h.

Constructor & Destructor Documentation

CVC3::MemoryManagerChunks::MemoryManagerChunks ( unsigned  dataSize,
unsigned  chunkSize = 1024 
)
inline

Definition at line 64 of file memory_manager_chunks.h.

CVC3::MemoryManagerChunks::~MemoryManagerChunks ( )
inline

Definition at line 69 of file memory_manager_chunks.h.

References d_chunkList.

Member Function Documentation

void CVC3::MemoryManagerChunks::newChunk ( )
inlineprivate

Definition at line 55 of file memory_manager_chunks.h.

References d_chunkList, d_chunkSizeBytes, d_endChunk, d_nextFree, and FatalAssert.

Referenced by newData().

void* CVC3::MemoryManagerChunks::newData ( size_t  size)
inlinevirtual

Implements CVC3::MemoryManager.

Definition at line 76 of file memory_manager_chunks.h.

References d_dataSize, d_endChunk, d_freeList, d_nextFree, DebugAssert, and newChunk().

void CVC3::MemoryManagerChunks::deleteData ( void *  d)
inlinevirtual

Implements CVC3::MemoryManager.

Definition at line 93 of file memory_manager_chunks.h.

References d_freeList.

Member Data Documentation

unsigned CVC3::MemoryManagerChunks::d_dataSize
private

Definition at line 44 of file memory_manager_chunks.h.

Referenced by newData().

unsigned CVC3::MemoryManagerChunks::d_chunkSize
private

Definition at line 45 of file memory_manager_chunks.h.

unsigned CVC3::MemoryManagerChunks::d_chunkSizeBytes
private

Definition at line 46 of file memory_manager_chunks.h.

Referenced by newChunk().

std::vector<char*> CVC3::MemoryManagerChunks::d_freeList
private

Definition at line 47 of file memory_manager_chunks.h.

Referenced by deleteData(), and newData().

std::vector<char*> CVC3::MemoryManagerChunks::d_chunkList
private

Definition at line 48 of file memory_manager_chunks.h.

Referenced by newChunk(), and ~MemoryManagerChunks().

char* CVC3::MemoryManagerChunks::d_nextFree
private

Definition at line 50 of file memory_manager_chunks.h.

Referenced by newChunk(), and newData().

char* CVC3::MemoryManagerChunks::d_endChunk
private

Definition at line 52 of file memory_manager_chunks.h.

Referenced by newChunk(), and newData().


The documentation for this class was generated from the following file: