diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-06-25 13:14:37 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-06-25 13:14:37 +0400 |
commit | cc0784c1b9c4d813837dedddd5b2b4c52fe291f0 (patch) | |
tree | c898623170b1576dddeb38f1ef30aa3cc83d6567 /intern/guardedalloc | |
parent | 78196d60d1a4585c613f822040f7dc339b9558b4 (diff) |
optionally use guarded alloc for tiles compositor, also replace allocation functions with a macro.
Diffstat (limited to 'intern/guardedalloc')
-rw-r--r-- | intern/guardedalloc/MEM_guardedalloc.h | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/intern/guardedalloc/MEM_guardedalloc.h b/intern/guardedalloc/MEM_guardedalloc.h index 83d6549218a..bb4c372e46d 100644 --- a/intern/guardedalloc/MEM_guardedalloc.h +++ b/intern/guardedalloc/MEM_guardedalloc.h @@ -167,7 +167,27 @@ extern "C" { #ifndef NDEBUG const char *MEM_name_ptr(void *vmemh); #endif - + +#ifdef __cplusplus +/* alloc funcs for C++ only */ +#define MEM_CXX_CLASS_ALLOC_FUNCS(_id) \ +public: \ + void *operator new(size_t num_bytes) { \ + return MEM_mallocN(num_bytes, _id); \ + } \ + void operator delete(void *mem) { \ + MEM_freeN(mem); \ + } \ + void *operator new[](size_t num_bytes) { \ + return MEM_mallocN(num_bytes, _id "[]"); \ + } \ + void operator delete[](void *mem) { \ + MEM_freeN(mem); \ + } \ + +#endif + + #ifdef __cplusplus } #endif |