Gray C++ Libraries  0.0.2
A set of C++ libraries for MSVC, GNU on Windows, WinCE, Linux
GrayKernel::CKeMem< TYPE, _UTAG > Struct Template Reference

#include <cKernel.h>

Public Member Functions

void InitMem (TYPE *p=nullptr)
 
bool AllocMem (POOL_TYPE ePoolType, SIZE_T nNumberOfBytes=sizeof(TYPE))
 
NTSTATUS AllocMemQuota (POOL_TYPE ePoolType, SIZE_T nNumberOfBytes=sizeof(TYPE))
 
void FreeLast ()
 
void Free ()
 
TYPEDetachMem ()
 
bool IsValidMem () const
 
 operator const TYPE * () const
 
 operator TYPE * ()
 
TYPEoperator-> ()
 

Public Attributes

TYPEm_p
 

Detailed Description

template<class TYPE, ULONG _UTAG = 'IKUn'>
struct GrayKernel::CKeMem< TYPE, _UTAG >

NON constructed/destructed kernel memory allocate/de-allocate.

Member Function Documentation

◆ AllocMem()

template<class TYPE , ULONG _UTAG = 'IKUn'>
bool GrayKernel::CKeMem< TYPE, _UTAG >::AllocMem ( POOL_TYPE  ePoolType,
SIZE_T  nNumberOfBytes = sizeof(TYPE) 
)
inline

ePoolType = NonPagedPool,

◆ AllocMemQuota()

template<class TYPE , ULONG _UTAG = 'IKUn'>
NTSTATUS GrayKernel::CKeMem< TYPE, _UTAG >::AllocMemQuota ( POOL_TYPE  ePoolType,
SIZE_T  nNumberOfBytes = sizeof(TYPE) 
)
inline
  • ePoolType = NonPagedPool,

◆ DetachMem()

template<class TYPE , ULONG _UTAG = 'IKUn'>
TYPE* GrayKernel::CKeMem< TYPE, _UTAG >::DetachMem ( )
inline

◆ Free()

template<class TYPE , ULONG _UTAG = 'IKUn'>
void GrayKernel::CKeMem< TYPE, _UTAG >::Free ( )
inline

◆ FreeLast()

template<class TYPE , ULONG _UTAG = 'IKUn'>
void GrayKernel::CKeMem< TYPE, _UTAG >::FreeLast ( )
inline

◆ InitMem()

template<class TYPE , ULONG _UTAG = 'IKUn'>
void GrayKernel::CKeMem< TYPE, _UTAG >::InitMem ( TYPE p = nullptr)
inline

◆ IsValidMem()

template<class TYPE , ULONG _UTAG = 'IKUn'>
bool GrayKernel::CKeMem< TYPE, _UTAG >::IsValidMem ( ) const
inline

◆ operator const TYPE *()

template<class TYPE , ULONG _UTAG = 'IKUn'>
GrayKernel::CKeMem< TYPE, _UTAG >::operator const TYPE * ( ) const
inline

◆ operator TYPE *()

template<class TYPE , ULONG _UTAG = 'IKUn'>
GrayKernel::CKeMem< TYPE, _UTAG >::operator TYPE * ( )
inline

◆ operator->()

template<class TYPE , ULONG _UTAG = 'IKUn'>
TYPE* GrayKernel::CKeMem< TYPE, _UTAG >::operator-> ( )
inline

Member Data Documentation

◆ m_p

template<class TYPE , ULONG _UTAG = 'IKUn'>
TYPE* GrayKernel::CKeMem< TYPE, _UTAG >::m_p

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