

/******************************************************************************
 * DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED DEPRECATED 
 ******************************************************************************/

#ifndef _MALLOC_BUCKET_H
#define	_MALLOC_BUCKET_H

#include "standard_includes.h"
#include "flags.h"

typedef struct MallocListStruct{
    void * bucket;
    struct MallocListStruct * next;
}MallocList;

typedef struct MallocBucketStruct{
    MallocList * root;
    MallocList * head;
    long int counter;
    long int size_bucket;
    int size_of;
    void * (* mem_malloc)(int size_of, int size_bucket);
}MallocBucket;

extern void malloc_bucket_create(MallocBucket **bucket, long int size_bucket,
        int size_of, void * (* mem_malloc)(int size_of, int size_bucket));

extern void * malloc_bucket_new(MallocBucket * bucket);

extern void malloc_bucket_reset(MallocBucket * bucket);

#endif	/* _MALLOC_BUCKET_H */

