All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
memory array allocator

memory array allocator More...

Detailed Description

memory array allocator

pseudo dynamic allocation in static memory arrays

Author
Tobias Heider heide.nosp@m.rt@n.nosp@m.m.ifi.nosp@m..lmu.nosp@m..de

Data Structures

struct  memarray_t
 Memory pool. More...
 

Functions

void memarray_init (memarray_t *mem, void *data, size_t size, size_t num)
 Initialize memarray pool with free list. More...
 
void * memarray_alloc (memarray_t *mem)
 Allocate memory chunk in memarray pool. More...
 
void * memarray_calloc (memarray_t *mem)
 Allocate and clear memory chunk in memarray pool. More...
 
void memarray_free (memarray_t *mem, void *ptr)
 Free memory chunk in memarray pool. More...
 

Function Documentation

◆ memarray_alloc()

void* memarray_alloc ( memarray_t mem)

Allocate memory chunk in memarray pool.

Precondition
mem != NULL
Note
Allocated structure is not cleared before returned
Parameters
[in,out]memmemarray pool to allocate block in
Returns
pointer to allocated structure, if enough memory was available
NULL, on failure

◆ memarray_calloc()

void* memarray_calloc ( memarray_t mem)

Allocate and clear memory chunk in memarray pool.

Precondition
mem != NULL
Parameters
[in,out]memmemarray pool to allocate block in
Returns
pointer to allocated structure, if enough memory was available
NULL, on failure

◆ memarray_free()

void memarray_free ( memarray_t mem,
void *  ptr 
)

Free memory chunk in memarray pool.

Precondition
mem != NULL
ptr != NULL
Parameters
[in,out]memmemarray pool to free block in
[in]ptrpointer to memarray chunk

◆ memarray_init()

void memarray_init ( memarray_t mem,
void *  data,
size_t  size,
size_t  num 
)

Initialize memarray pool with free list.

Precondition
mem != NULL
data != NULL
size >= sizeof(void*)
num != 0
Parameters
[in,out]memmemarray pool to initialize
[in]datapointer to user-allocated data
[in]sizesize of a single element in data
[in]numnumber of elements in data