klMatrix
Public Member Functions | Static Public Member Functions | Private Attributes
klAWEMemMgr Class Reference

#include <kl_memory.h>

Inheritance diagram for klAWEMemMgr:
Inheritance graph
Collaboration diagram for klAWEMemMgr:
Collaboration graph

Public Member Functions

 klAWEMemMgr (unsigned long maxAllocate)
 
 ~klAWEMemMgr ()
 
void * allocate (size_t size)
 
bool free (void *buffer)
 
unsigned long committed ()
 
unsigned long available ()
 
unsigned long reserved ()
 
unsigned long getMaxAllocate ()
 
void setMaxAllocate (unsigned long maxAllocate)
 

Static Public Member Functions

static bool setLockPagesPrivilege (HANDLE hProcess, bool bEnable)
 

Private Attributes

multimap< size_t,
klAWEMemBlock * > * 
_freeMap
 
multimap< void
*, klAWEMemBlock * > * 
_committedMap
 
unsigned long _committed
 
unsigned long _free
 
unsigned long _reserved
 
unsigned long _maxAllocate
 
unsigned long _allocatedBlocks
 
bool bResult
 
ULONG_PTR NumberOfPages
 
ULONG_PTR NumberOfPagesInitial
 
ULONG_PTR * aPFNs
 
PVOID lpMemReserved
 
SYSTEM_INFO sSysInfo
 
int PFNArraySize
 

Constructor & Destructor Documentation

klAWEMemMgr::klAWEMemMgr ( unsigned long  maxAllocate)
inline
klAWEMemMgr::~klAWEMemMgr ( )
inline

Member Function Documentation

void* klAWEMemMgr::allocate ( size_t  size)
inlinevirtual

Implements klMemMgr.

Here is the call graph for this function:

unsigned long klAWEMemMgr::available ( )
inline
unsigned long klAWEMemMgr::committed ( )
inline
bool klAWEMemMgr::free ( void *  buffer)
inlinevirtual

Implements klMemMgr.

Here is the call graph for this function:

unsigned long klAWEMemMgr::getMaxAllocate ( )
inline
unsigned long klAWEMemMgr::reserved ( )
inline
static bool klAWEMemMgr::setLockPagesPrivilege ( HANDLE  hProcess,
bool  bEnable 
)
inlinestatic
void klAWEMemMgr::setMaxAllocate ( unsigned long  maxAllocate)
inline

Field Documentation

unsigned long klAWEMemMgr::_allocatedBlocks
private
unsigned long klAWEMemMgr::_committed
private
multimap<void*,klAWEMemBlock*>* klAWEMemMgr::_committedMap
private
unsigned long klAWEMemMgr::_free
private
multimap<size_t,klAWEMemBlock*>* klAWEMemMgr::_freeMap
private
unsigned long klAWEMemMgr::_maxAllocate
private
unsigned long klAWEMemMgr::_reserved
private
ULONG_PTR* klAWEMemMgr::aPFNs
private
bool klAWEMemMgr::bResult
private
PVOID klAWEMemMgr::lpMemReserved
private
ULONG_PTR klAWEMemMgr::NumberOfPages
private
ULONG_PTR klAWEMemMgr::NumberOfPagesInitial
private
int klAWEMemMgr::PFNArraySize
private
SYSTEM_INFO klAWEMemMgr::sSysInfo
private

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