From d9d134c7ad07db84b3555d56e9ea388593e60fb2 Mon Sep 17 00:00:00 2001 From: gdisirio Date: Tue, 26 Aug 2008 12:22:11 +0000 Subject: git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@408 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- src/include/ch.h | 2 +- src/include/mempools.h | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 src/include/mempools.h (limited to 'src/include') diff --git a/src/include/ch.h b/src/include/ch.h index e88435db8..18b766b9a 100644 --- a/src/include/ch.h +++ b/src/include/ch.h @@ -42,7 +42,7 @@ #include "sleep.h" #include "queues.h" #include "serial.h" -#include "pools.h" +#include "mempools.h" #include "debug.h" /* diff --git a/src/include/mempools.h b/src/include/mempools.h new file mode 100644 index 000000000..12edf97fe --- /dev/null +++ b/src/include/mempools.h @@ -0,0 +1,53 @@ +/* + ChibiOS/RT - Copyright (C) 2006-2007 Giovanni Di Sirio. + + This file is part of ChibiOS/RT. + + ChibiOS/RT is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or + (at your option) any later version. + + ChibiOS/RT is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . +*/ + +/** + * @addtogroup MemoryPools + * @{ + */ + +#ifndef _MEMPOOLS_H_ +#define _MEMPOOLS_H_ + +#ifdef CH_USE_MEMPOOLS + +struct pool_header { + struct pool_header *ph_next; +}; + +typedef struct { + struct pool_header *mp_next; + size_t mp_object_size; +} MemoryPool; + +#ifdef __cplusplus +extern "C" { +#endif + void chPoolInit(MemoryPool *mp, size_t size); + void *chPoolAlloc(MemoryPool *mp, bool_t grow); + void chPoolFree(MemoryPool *mp, void *objp); +#ifdef __cplusplus +} +#endif + +#endif /* CH_USE_MEMPOOLS */ + +#endif /* _MEMPOOLS_H_ */ + +/** @} */ -- cgit v1.2.3