From 8f79a36a592c796c19037a2513c6fc7098698dee Mon Sep 17 00:00:00 2001 From: David Oberhollenzer Date: Sun, 7 Mar 2021 18:05:41 +0100 Subject: Implement a custom memory pool allocator Signed-off-by: David Oberhollenzer --- include/mempool.h | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 include/mempool.h (limited to 'include') diff --git a/include/mempool.h b/include/mempool.h new file mode 100644 index 0000000..6d3990e --- /dev/null +++ b/include/mempool.h @@ -0,0 +1,30 @@ +/* SPDX-License-Identifier: LGPL-3.0-or-later */ +/* + * mempool.h + * + * Copyright (C) 2021 David Oberhollenzer + */ +#ifndef MEMPOOL_H +#define MEMPOOL_H + +#include "compat.h" + +typedef struct mem_pool_t mem_pool_t; + +#ifdef __cplusplus +extern "C" { +#endif + +mem_pool_t *mem_pool_create(size_t obj_size); + +void mem_pool_destroy(mem_pool_t *mem); + +void *mem_pool_allocate(mem_pool_t *mem); + +void mem_pool_free(mem_pool_t *mem, void *ptr); + +#ifdef __cplusplus +} +#endif + +#endif /* MEMPOOL_H */ -- cgit v1.2.3