xeye_ atsu / Mbed 2 deprecated FRDM_RaVem_JVM

Dependencies:   mbed

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers pool.h Source File

pool.h

00001 //
00002 //  pool.h
00003 //  
00004 //
00005 //  Created by atsu on 13/08/20.
00006 //
00007 //
00008 
00009 #ifndef POOL_H_
00010 #define POOL_H_
00011 
00012 #include <stdio.h>
00013 #include <string.h>
00014 #include "device_depend.h"
00015 
00016 
00017 #define memory_available    1
00018 #define memory_invalid      0
00019 #define pool_size           512 // 256 * (sizeof(int)) = 1kByte
00020 #define magic_value         0xDEADDEAD
00021 //#define USE_MAGIC
00022 
00023 typedef struct {
00024     int *first_pointer;
00025     int *next_pointer;
00026     int pool_size_all;
00027     int available;
00028 }pool_all;
00029 
00030 typedef struct {
00031     int **this_pointer;
00032     int my_size;
00033     int available;
00034 #if defined(USE_MAGIC)
00035     int magic_num;
00036 #endif
00037 }pool_each;
00038 
00039 extern int pl_buf[pool_size];
00040 void pool_init(void);
00041 void pool_free(int *pointr);
00042 int *pool_alloc(int size);
00043 int *pool_realloc(int *pointr, int size);
00044 
00045 #endif
00046