diff options
author | Hisham Muhammad <hisham@gobolinux.org> | 2006-03-04 18:16:49 +0000 |
---|---|---|
committer | Hisham Muhammad <hisham@gobolinux.org> | 2006-03-04 18:16:49 +0000 |
commit | d6231bab89d634da5564491196b7c478db038505 (patch) | |
tree | bfc0bf00b138763eb41132fd27a8f389a78bf3a4 /DebugMemory.h |
Initial import.
Diffstat (limited to 'DebugMemory.h')
-rw-r--r-- | DebugMemory.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/DebugMemory.h b/DebugMemory.h new file mode 100644 index 00000000..8261fee7 --- /dev/null +++ b/DebugMemory.h @@ -0,0 +1,62 @@ +/* Do not edit this file. It was automatically genarated. */ + +#ifndef HEADER_DebugMemory +#define HEADER_DebugMemory + +#define _GNU_SOURCE + +#include <stdlib.h> +#include <stdio.h> +#include <string.h> +#include <stdbool.h> + +#include <assert.h> + + +#undef strdup +#undef malloc +#undef realloc +#undef calloc +#undef free + +typedef struct DebugMemoryItem_ DebugMemoryItem; + +struct DebugMemoryItem_ { + void* data; + char* file; + int line; + DebugMemoryItem* next; +}; + +typedef struct DebugMemory_ { + DebugMemoryItem* first; + int allocations; + int deallocations; + int size; + FILE* file; +} DebugMemory; + + +void DebugMemory_new(); + +void* DebugMemory_malloc(int size, char* file, int line); + +void* DebugMemory_calloc(int a, int b, char* file, int line); + +void* DebugMemory_realloc(void* ptr, int size, char* file, int line); + +void* DebugMemory_strdup(char* str, char* file, int line); + +void DebugMemory_free(void* data, char* file, int line); + +void DebugMemory_assertSize(); + +int DebugMemory_getBlockCount(); + +void DebugMemory_registerAllocation(void* data, char* file, int line); + +void DebugMemory_registerDeallocation(void* data, char* file, int line); + +void DebugMemory_report(); + +#endif |