memory.h File Reference

#include <gwenhywfar/gwenhywfarapi.h>
#include <gwenhywfar/types.h>
#include <gwenhywfar/error.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <assert.h>

Go to the source code of this file.

Defines

#define GWEN_FREE_OBJECT(varname)   GWEN_Memory_dealloc((void*)varname);
#define GWEN_LOCATION_FUNCTION   __PRETTY_FUNCTION__
#define GWEN_MEM_FREE(varname)   GWEN_Memory_dealloc((void*)varname);
#define GWEN_MEM_NEW(typ, memptr)   memptr=(typ*)GWEN_Memory_malloc(sizeof(typ));
#define GWEN_NEW_OBJECT(typ, varname)

Functions

GWENHYWFAR_API void GWEN_Memory_Collect ()
GWENHYWFAR_API void GWEN_Memory_dealloc (void *p)
GWENHYWFAR_API void GWEN_Memory_Dump ()
GWENHYWFAR_API void * GWEN_Memory_malloc (size_t dsize)
GWENHYWFAR_API void * GWEN_Memory_realloc (void *oldp, size_t nsize)
GWENHYWFAR_API char * GWEN_Memory_strdup (const char *s)


Define Documentation

#define GWEN_FREE_OBJECT ( varname   )     GWEN_Memory_dealloc((void*)varname);

Definition at line 92 of file memory.h.

Referenced by GWEN__ListPtr_free(), GWEN_Buffer_free(), GWEN_BufferedIO_Buffer_Table__free(), GWEN_BufferedIO_File_Table__free(), GWEN_BufferedIO_free(), GWEN_BufferedIO_Socket_Table__free(), GWEN_ConfigMgr_free(), GWEN_ConfigMgr_Plugin_FreeData(), GWEN_Crypt_CryptAlgo_free(), GWEN_Crypt_HashAlgo_free(), GWEN_Crypt_Key_free(), GWEN_Crypt_KeyRsa_freeData(), GWEN_Crypt_KeySym_freeData(), GWEN_Crypt_PaddAlgo_free(), GWEN_Crypt_Token_Context_free(), GWEN_Crypt_Token_free(), GWEN_Crypt_Token_KeyInfo_free(), GWEN_Crypt_Token_Plugin_FreeData(), GWEN_Crypt_TokenFile_freeData(), GWEN_CryptHead_free(), GWEN_CryptMgr_free(), GWEN_CTF_Context_freeData(), GWEN_Date_free(), GWEN_DateTmplChar_free(), GWEN_DB_Node_free(), GWEN_DBIO_free(), GWEN_DBIO_Plugin_FreeData(), GWEN_Digest_Gc_freeData(), GWEN_FastBuffer_free(), GWEN_Filter_free(), GWEN_Gui_CGui_FreeData(), GWEN_Gui_CProgress_free(), GWEN_Gui_free(), GWEN_HttpSession_free(), GWEN_IdList64_free(), GWEN_IdList64_Iterator_free(), GWEN_IdList_free(), GWEN_IdMap_free(), GWEN_IdMapHex4_free(), GWEN_IdMapHex4Map_free(), GWEN_IdTable64_free(), GWEN_IdTable_free(), GWEN_InheritData_free(), GWEN_Io_Layer_free(), GWEN_Io_LayerBuffered_freeData(), GWEN_Io_LayerCodec_freeData(), GWEN_Io_LayerFile_freeData(), GWEN_Io_LayerHttp_freeData(), GWEN_Io_LayerMemory_freeData(), GWEN_Io_LayerPackets_freeData(), GWEN_Io_LayerSocket_freeData(), GWEN_Io_Request_free(), GWEN_Ipc__Request_free(), GWEN_IpcManager_free(), GWEN_IpcMsg_free(), GWEN_IpcNode_free(), GWEN_IpcRequest_free(), GWEN_IpcRequestManager_free(), GWEN_List1_free(), GWEN_List1Element_free(), GWEN_List_free(), GWEN_ListEntry_free(), GWEN_ListIterator_free(), GWEN_Logger_free(), GWEN_LoggerDomain_free(), GWEN_MDigest_free(), GWEN_MemCache_free(), GWEN_MemCacheEntry_free(), GWEN_MemoryDebugEntry_free(), GWEN_MemoryDebugObject_free(), GWEN_MsgEngine_free(), GWEN_MsgEngine_TrustedData_free(), GWEN_Plugin_free(), GWEN_PluginDescription_free(), GWEN_PluginManager_free(), GWEN_RefPtr_free(), GWEN_RefPtrInfo_free(), GWEN_RefPtrObject_free(), GWEN_RingBuffer_free(), GWEN_SigHead_free(), GWEN_Signal_free(), GWEN_SignalObject_free(), GWEN_SigTail_free(), GWEN_Slot_free(), GWEN_SslCertDescr_free(), GWEN_StringList2_free(), GWEN_StringList_free(), GWEN_StringListEntry_free(), GWEN_Tag16_free(), GWEN_Time_free(), GWEN_TimeTmplChar_free(), GWEN_TLV_free(), GWEN_Tree_free(), GWEN_TreeElement_free(), GWEN_Url_free(), GWEN_XmlCtx_free(), GWEN_XMLNode_free(), GWEN_XMLNode_NameSpace_free(), GWEN_XMLNode_Path_free(), GWEN_XMLProperty_free(), and GWEN_XsdNode_free().

#define GWEN_LOCATION_FUNCTION   __PRETTY_FUNCTION__

Definition at line 51 of file memory.h.

#define GWEN_MEM_FREE ( varname   )     GWEN_Memory_dealloc((void*)varname);

Definition at line 82 of file memory.h.

#define GWEN_MEM_NEW ( typ,
memptr   )     memptr=(typ*)GWEN_Memory_malloc(sizeof(typ));

Definition at line 79 of file memory.h.

#define GWEN_NEW_OBJECT ( typ,
varname   ) 

Value:

{\
    varname=(typ*)GWEN_Memory_malloc(sizeof(typ)); \
    memset(varname, 0, sizeof(typ));\
  }

Definition at line 86 of file memory.h.

Referenced by GWEN__ListPtr_new(), GWEN_Buffer_dup(), GWEN_Buffer_new(), GWEN_BufferedIO_Buffer_Table__new(), GWEN_BufferedIO_File_Table__new(), GWEN_BufferedIO_new(), GWEN_BufferedIO_Socket_Table__new(), GWEN_ConfigMgr_new(), GWEN_ConfigMgr_Plugin_new(), GWEN_Crypt_CryptAlgo_new(), GWEN_Crypt_HashAlgo_new(), GWEN_Crypt_Key_new(), GWEN_Crypt_KeyRsa_fromDb(), GWEN_Crypt_KeyRsa_GeneratePair2(), GWEN_Crypt_KeySym_fromData(), GWEN_Crypt_KeySym_fromDb(), GWEN_Crypt_KeySym_Generate(), GWEN_Crypt_PaddAlgo_new(), GWEN_Crypt_Token_Context_new(), GWEN_Crypt_Token_KeyInfo_new(), GWEN_Crypt_Token_new(), GWEN_Crypt_Token_Plugin_new(), GWEN_Crypt_TokenFile_new(), GWEN_CryptHead_new(), GWEN_CryptMgr_new(), GWEN_CryptMgrKeys_new(), GWEN_CTF_Context_new(), GWEN_CurrentTime(), GWEN_Date_fromGregorian(), GWEN_Date_fromJulian(), GWEN_DateTmplChar_new(), GWEN_DB_Node_new(), GWEN_DBIO_new(), GWEN_DBIO_Plugin_new(), GWEN_Filter_new(), GWEN_Gui_CGui_new(), GWEN_Gui_CProgress_new(), GWEN_Gui_new(), GWEN_HttpSession_new(), GWEN_IdList64_Iterator_new(), GWEN_IdList64_new(), GWEN_IdList_new(), GWEN_IdMap_new(), GWEN_IdMapHex4_Extend(), GWEN_IdMapHex4Map_new(), GWEN_IdTable64_new(), GWEN_IdTable_new(), GWEN_InheritData_new(), GWEN_Io_Layer_new(), GWEN_Io_LayerBuffered_new(), GWEN_Io_LayerCodec_new(), GWEN_Io_LayerFile_new(), GWEN_Io_LayerHttp_new(), GWEN_Io_LayerMemory_new(), GWEN_Io_LayerPackets_new(), GWEN_Io_LayerSocket_new(), GWEN_Io_LayerTls_new(), GWEN_Io_Request_new(), GWEN_Ipc__Request_new(), GWEN_IpcManager_new(), GWEN_IpcMsg_new(), GWEN_IpcNode_new(), GWEN_IpcRequest_new(), GWEN_IpcRequestManager_new(), GWEN_List1_new(), GWEN_List1Element_new(), GWEN_List_dup(), GWEN_List_new(), GWEN_ListEntry_new(), GWEN_ListIterator_new(), GWEN_Logger_new(), GWEN_LoggerDomain_new(), GWEN_MDigest_Gc_new(), GWEN_MDigest_new(), GWEN_MemCache_new(), GWEN_MemCacheEntry_new(), GWEN_MemoryDebugEntry_new(), GWEN_MemoryDebugObject_new(), GWEN_MsgEngine_new(), GWEN_MsgEngine_TrustedData_new(), GWEN_Plugin_new(), GWEN_PluginDescription_dup(), GWEN_PluginDescription_new(), GWEN_PluginManager_new(), GWEN_RefPtr_dup(), GWEN_RefPtr_new(), GWEN_RefPtrInfo_new(), GWEN_RefPtrObject_new(), GWEN_RingBuffer_new(), GWEN_SigHead_new(), GWEN_Signal_new(), GWEN_SignalObject_new(), GWEN_SigTail_new(), GWEN_Slot_new(), GWEN_SslCertDescr_new(), GWEN_StringList2_dup(), GWEN_StringList2_new(), GWEN_StringList_new(), GWEN_StringListEntry_new(), GWEN_Tag16_new(), GWEN_Time_dup(), GWEN_Time_fromSeconds(), GWEN_TimeTmplChar_new(), GWEN_TLV_new(), GWEN_Tree_new(), GWEN_TreeElement_new(), GWEN_Url_new(), GWEN_XmlCtx_new(), GWEN_XMLNode_NameSpace_new(), GWEN_XMLNode_new(), GWEN_XMLNode_Path_dup(), GWEN_XMLNode_Path_new(), GWEN_XMLProperty_new(), and GWEN_XsdNode_new().


Function Documentation

GWENHYWFAR_API void GWEN_Memory_Collect (  ) 

Definition at line 562 of file memory.c.

References gwen_memory__first_table, and GWEN_Memory_Table__Collect().

Referenced by GWEN_Memory_dealloc().

GWENHYWFAR_API void GWEN_Memory_dealloc ( void *  p  ) 

GWENHYWFAR_API void GWEN_Memory_Dump (  ) 

Definition at line 550 of file memory.c.

References gwen_memory__first_table, and GWEN_Memory_Table__Dump().

GWENHYWFAR_API void* GWEN_Memory_malloc ( size_t  dsize  ) 

GWENHYWFAR_API void* GWEN_Memory_realloc ( void *  oldp,
size_t  nsize 
)

Definition at line 434 of file memory.c.

References GWEN_Memory_dealloc(), and GWEN_Memory_malloc().

Referenced by GWEN_Buffer_AllocRoom().

GWENHYWFAR_API char* GWEN_Memory_strdup ( const char *  s  ) 


Generated on Thu Aug 20 13:54:41 2009 for gwenhywfar by  doxygen 1.5.9