mirror of
https://github.com/FreeRTOS/FreeRTOS-Kernel.git
synced 2025-08-19 17:48:33 -04:00
First version under SVN is V4.0.1
This commit is contained in:
parent
243393860c
commit
b6df57c7e3
918 changed files with 269038 additions and 0 deletions
43
Demo/uIP_Demo_Rowley_ARM7/uip/memb.h
Normal file
43
Demo/uIP_Demo_Rowley_ARM7/uip/memb.h
Normal file
|
@ -0,0 +1,43 @@
|
|||
/**
|
||||
* \addtogroup exampleapps
|
||||
* @{
|
||||
*/
|
||||
|
||||
/**
|
||||
* \file
|
||||
* Memory block allocation routines.
|
||||
* \author Adam Dunkels <adam@sics.se>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __MEMB_H__
|
||||
#define __MEMB_H__
|
||||
|
||||
/**
|
||||
* Declare a memory block.
|
||||
*
|
||||
* \param name The name of the memory block (later used with
|
||||
* memb_init(), memb_alloc() and memb_free()).
|
||||
*
|
||||
* \param size The size of each memory chunk, in bytes.
|
||||
*
|
||||
* \param num The total number of memory chunks in the block.
|
||||
*
|
||||
*/
|
||||
#define MEMB(name, size, num) \
|
||||
static char memb_mem[(size + 1) * num]; \
|
||||
static struct memb_blocks name = {size, num, memb_mem}
|
||||
|
||||
struct memb_blocks {
|
||||
unsigned short size;
|
||||
unsigned short num;
|
||||
char *mem;
|
||||
};
|
||||
|
||||
void memb_init(struct memb_blocks *m);
|
||||
char *memb_alloc(struct memb_blocks *m);
|
||||
char memb_ref(struct memb_blocks *m, char *ptr);
|
||||
char memb_free(struct memb_blocks *m, char *ptr);
|
||||
|
||||
|
||||
#endif /* __MEMB_H__ */
|
Loading…
Add table
Add a link
Reference in a new issue