#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 int | GWEN_Memory_ModuleFini () |
GWENHYWFAR_API int | GWEN_Memory_ModuleInit () |
GWENHYWFAR_API void * | GWEN_Memory_realloc (void *oldp, size_t nsize) |
GWENHYWFAR_API char * | GWEN_Memory_strdup (const char *s) |
#define GWEN_FREE_OBJECT | ( | varname | ) | GWEN_Memory_dealloc((void*)varname); |
Definition at line 99 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_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_CTF_Context_freeData(), 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_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_Signal_free(), GWEN_SignalObject_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_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_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 | ) |
Value:
{\ varname=(typ*)GWEN_Memory_malloc(sizeof(typ)); \ memset(varname, 0, sizeof(typ));\ }
Definition at line 93 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_Crypt_CryptAlgo_new(), GWEN_Crypt_HashAlgo_new(), GWEN_Crypt_Key_new(), GWEN_Crypt_KeyRsa_fromDb(), GWEN_Crypt_KeyRsa_GeneratePair(), 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_CTF_Context_new(), GWEN_CurrentTime(), 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_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_Signal_new(), GWEN_SignalObject_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_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().
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 | ) |
Definition at line 471 of file memory.c.
References gwen_memory__nofree, and GWEN_Memory_Collect().
Referenced by GWEN_Buffer_free(), GWEN_DB_Dump(), GWEN_DB_GroupRename(), GWEN_DB_Node_free(), GWEN_DB_SetCharValueInNode(), GWEN_DB_VariableRename(), GWEN_DB_WriteGroupToIoLayer(), GWEN_Memory_realloc(), GWEN_XMLNode__CheckNameSpaceDecls1(), GWEN_XMLNode__SetProperty(), GWEN_XMLNode_CopyProperties(), GWEN_XMLNode_free(), GWEN_XMLNode_SetData(), and GWEN_XMLProperty_free().
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 | ) |
Definition at line 388 of file memory.c.
References gwen_memory__allocated_bytes, gwen_memory__allocated_calls, GWEN_Memory__Malloc(), and gwen_memory__verbous.
Referenced by GWEN_Buffer_dup(), GWEN_Buffer_new(), GWEN_DB_Dump(), GWEN_DB_ValueBin_new(), GWEN_DB_WriteGroupToIoLayer(), GWEN_Memory_realloc(), and GWEN_Memory_strdup().
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 | ) |
Definition at line 529 of file memory.c.
References GWEN_Memory_malloc().
Referenced by GWEN_DB_Group_new(), GWEN_DB_GroupRename(), GWEN_DB_SetCharValueInNode(), GWEN_DB_ValueChar_new(), GWEN_DB_Var_new(), GWEN_DB_VariableRename(), GWEN_XMLNode__CheckNameSpaceDecls1(), GWEN_XMLNode__SetProperty(), GWEN_XMLNode_CopyProperties(), GWEN_XMLNode_new(), GWEN_XMLNode_SetData(), and GWEN_XMLProperty_new().