aboutsummaryrefslogtreecommitdiff
path: root/libcrystfel/src/utils.h
diff options
context:
space:
mode:
authorThomas White <taw@physics.org>2024-01-16 12:00:20 +0100
committerThomas White <taw@physics.org>2024-02-06 16:59:34 +0100
commit5960cc81e3e35e4d38fdd720680c98bef070d695 (patch)
tree00e009da3728c4d7a8d306ae7dbea74d11e86c8f /libcrystfel/src/utils.h
parent9ad42732052c3e2ff41c00bed8b5cec013c8941e (diff)
Add hooks for custom memory allocation in libcrystfel
Diffstat (limited to 'libcrystfel/src/utils.h')
-rw-r--r--libcrystfel/src/utils.h14
1 files changed, 14 insertions, 0 deletions
diff --git a/libcrystfel/src/utils.h b/libcrystfel/src/utils.h
index cb68069e..30a7c4ef 100644
--- a/libcrystfel/src/utils.h
+++ b/libcrystfel/src/utils.h
@@ -239,6 +239,20 @@ extern void set_log_message_func(LogMsgFunc new_log_msg_func,
void *vp);
+/* ---------------------------- Memory management --------------------------- */
+
+extern void *cfmalloc(size_t size);
+extern void cffree(void *ptr);
+extern void *cfcalloc(size_t nmemb, size_t size);
+extern void *cfrealloc(void *ptr, size_t size);
+extern char *cfstrdup(const char *s);
+extern char *cfstrndup(const char *s, size_t n);
+extern int set_mm_funcs(void *(*cfmalloc)(size_t size),
+ void (*cffree)(void *ptr),
+ void *(*cfcalloc)(size_t nmemb, size_t size),
+ void *(*cfrealloc)(void *ptr, size_t size));
+
+
/* ------------------------------ File handling ----------------------------- */
extern char *check_prefix(char *prefix);