![]() |
Gray C++ Libraries
0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
|
#include <cPool.h>
Protected Member Functions | |
cPoolClass (ITERATE_t nBucketAllocQty=128) noexcept | |
~cPoolClass () | |
![]() | |
cSingleton (cPoolClass< TYPE > *pObject, const TYPEINFO_t &rAddrCode=typeid(cPoolClass< TYPE >)) noexcept | |
virtual | ~cSingleton () |
![]() | |
cSingletonStatic (TYPE *pObject) noexcept | |
virtual | ~cSingletonStatic () noexcept |
![]() | |
cSingletonRegister (const TYPEINFO_t &rAddrCode) noexcept | |
virtual | ~cSingletonRegister () |
void | RegisterSingleton () |
![]() | |
const void * | get_HeapPtr () const noexcept override |
Get the top level (outermost, freeable) class pointer. I can delete get_HeapPtr(). More... | |
![]() | |
cPoolBase (ITERATE_t nBucketAllocQty=128) noexcept | |
Friends | |
class | cSingleton< cPoolClass< TYPE > > |
Additional Inherited Members | |
![]() | |
virtual | ~CObject () |
virtual bool | isValidCheck () const noexcept |
< memory allocation and structure definitions are valid. More... | |
virtual void | AssertValid () const |
< memory allocation and structure definitions are valid. More... | |
virtual void | Serialize (cArchive &a) |
![]() | |
cHeapObject () | |
virtual | ~cHeapObject () |
bool | IsValidInsideN (INT_PTR index) const |
bool | IsValidInsidePtr (void const *pTest) const |
virtual size_t | GetHeapStatsThis (OUT ITERATE_t &iAllocCount) const |
virtual bool | isValidCheck () const noexcept |
![]() | |
cPool (ITERATE_t nBucketAllocQty=128) noexcept | |
~cPool () | |
bool | isPoolUsed () const |
bool | put_BucketAllocQty (ITERATE_t nBucketAllocQty) |
void | FreePool () |
TYPE * | AllocPoolObjectNC () |
void | FreePoolObjectND (TYPE *pUsed) |
TYPE * | AllocPoolObject () |
void | FreePoolObject (TYPE *pUsed) |
bool | CheckValidPool (UINT_PTR uCheckVal=0) const |
bool | IsInFreeState (const TYPE *pUsedNode) const |
bool | IsInFreeList (const TYPE *pUsedNode) const |
UNITTEST_FRIEND (cPool) | |
![]() | |
ITERATE_t | get_BucketAllocQty () const noexcept |
ITERATE_t | get_AllocQty () const noexcept |
bool | isInPool (const void *pObj) const |
cPoolBucket * | AddBucketNew () |
void | FreeBuckets () |
![]() | |
static cPoolClass< TYPE > *__stdcall | get_Single () |
static TYPE2 *__stdcall | get_SingleT () |
static cPoolClass< TYPE > &__stdcall | I () |
![]() | |
static bool | isSingleCreated () noexcept |
static TYPE * | get_SingleU () noexcept |
static TYPE * | get_Single () |
template<class TYPE2 > | |
static TYPE2 *__stdcall | get_SingleCast () |
static TYPE & | I () noexcept |
![]() | |
static void __stdcall | ReleaseModule (HMODULE hMod) |
![]() | |
static cThreadLockFast | sm_LockSingle |
common lock for all cSingleton. More... | |
![]() | |
typedef cArrayStruct< cPoolNodeFreeT< TYPE > > | cPoolBucket |
![]() | |
HMODULE | m_hModuleLoaded |
What modules loaded this ? So singletons can be destroyed if DLL/SO unloads. More... | |
![]() | |
cArrayStruct< cPoolBucket > | m_aBuckets |
all allocated space. free and used objects. More... | |
ITERATE_t | m_nBucketAllocQty |
how many new objects per bucket. More... | |
![]() | |
static TYPE * | sm_pThe = nullptr |
pointer to the one and only object of this TYPE. ASSUME automatically init to = nullptr. More... | |
a Singleton pool. declare that a TYPE is only ever allocated from this pool. overload its new/delete operators to use the pool. use with POOL_CLASS_IMPL
|
inlineprotectednoexcept |
|
inlineprotected |
|
friend |