|
ChibiOS/NIL
4.0.1
|
Memory Pools macros and structures. More...
Go to the source code of this file.
Data Structures | |
| struct | pool_header |
| Memory pool free object header. More... | |
| struct | memory_pool_t |
| Memory pool descriptor. More... | |
| struct | guarded_memory_pool_t |
| Guarded memory pool descriptor. More... | |
Macros | |
| #define | _MEMORYPOOL_DATA(name, size, align, provider) {NULL, size, align, provider} |
| Data part of a static memory pool initializer. More... | |
| #define | MEMORYPOOL_DECL(name, size, align, provider) memory_pool_t name = _MEMORYPOOL_DATA(name, size, align, provider) |
| Static memory pool initializer. More... | |
| #define | _GUARDEDMEMORYPOOL_DATA(name, size, align) |
| Data part of a static guarded memory pool initializer. More... | |
| #define | GUARDEDMEMORYPOOL_DECL(name, size, align) guarded_memory_pool_t name = _GUARDEDMEMORYPOOL_DATA(name, size, align) |
| Static guarded memory pool initializer. More... | |
Functions | |
| void | chPoolObjectInitAligned (memory_pool_t *mp, size_t size, unsigned align, memgetfunc_t provider) |
| Initializes an empty memory pool. More... | |
| void | chPoolLoadArray (memory_pool_t *mp, void *p, size_t n) |
| Loads a memory pool with an array of static objects. More... | |
| void * | chPoolAllocI (memory_pool_t *mp) |
| Allocates an object from a memory pool. More... | |
| void * | chPoolAlloc (memory_pool_t *mp) |
| Allocates an object from a memory pool. More... | |
| void | chPoolFreeI (memory_pool_t *mp, void *objp) |
| Releases an object into a memory pool. More... | |
| void | chPoolFree (memory_pool_t *mp, void *objp) |
| Releases an object into a memory pool. More... | |
| void | chGuardedPoolObjectInitAligned (guarded_memory_pool_t *gmp, size_t size, unsigned align) |
| Initializes an empty guarded memory pool. More... | |
| void | chGuardedPoolLoadArray (guarded_memory_pool_t *gmp, void *p, size_t n) |
| Loads a guarded memory pool with an array of static objects. More... | |
| void * | chGuardedPoolAllocTimeoutS (guarded_memory_pool_t *gmp, sysinterval_t timeout) |
| Allocates an object from a guarded memory pool. More... | |
| void * | chGuardedPoolAllocTimeout (guarded_memory_pool_t *gmp, sysinterval_t timeout) |
| Allocates an object from a guarded memory pool. More... | |
| void | chGuardedPoolFree (guarded_memory_pool_t *gmp, void *objp) |
| Releases an object into a guarded memory pool. More... | |
| static void | chPoolObjectInit (memory_pool_t *mp, size_t size, memgetfunc_t provider) |
| Initializes an empty memory pool. More... | |
| static void | chPoolAdd (memory_pool_t *mp, void *objp) |
| Adds an object to a memory pool. More... | |
| static void | chPoolAddI (memory_pool_t *mp, void *objp) |
| Adds an object to a memory pool. More... | |
| static void | chGuardedPoolObjectInit (guarded_memory_pool_t *gmp, size_t size) |
| Initializes an empty guarded memory pool. More... | |
| static cnt_t | chGuardedPoolGetCounterI (guarded_memory_pool_t *gmp) |
| Gets the count of objects in a guarded memory pool. More... | |
| static void * | chGuardedPoolAllocI (guarded_memory_pool_t *gmp) |
| Allocates an object from a guarded memory pool. More... | |
| static void | chGuardedPoolFreeI (guarded_memory_pool_t *gmp, void *objp) |
| Releases an object into a guarded memory pool. More... | |
| static void | chGuardedPoolFreeS (guarded_memory_pool_t *gmp, void *objp) |
| Releases an object into a guarded memory pool. More... | |
| static void | chGuardedPoolAdd (guarded_memory_pool_t *gmp, void *objp) |
| Adds an object to a guarded memory pool. More... | |
| static void | chGuardedPoolAddI (guarded_memory_pool_t *gmp, void *objp) |
| Adds an object to a guarded memory pool. More... | |
| static void | chGuardedPoolAddS (guarded_memory_pool_t *gmp, void *objp) |
| Adds an object to a guarded memory pool. More... | |
Memory Pools macros and structures.
Definition in file chmempools.h.