/* nalloc.h */ /* $Id: nalloc.h,v 1.2 1992/10/11 15:15:14 nils Exp $ */ #ifndef _NALLOC_H #define _NALLOC_H #define SBSIZE 16384 #define MAXBLK 20000 typedef struct bigblk BIGBLK; typedef struct nalloc NALLOC; struct bigblk { NALLOC *owner; /* list this block belongs to */ int used; /* how many datas are used here? */ char *blk; /* pointer to data area */ }; /* a kludge to get rid of some warnings */ typedef struct point POINT; struct point { POINT *next; }; struct nalloc { int offset; int size; int curblk; /* current block we are adding to */ POINT *free; /* pointer to first item on free list or null */ }; NALLOC *na_open(); void *na_alloc(); char *na_get(); void na_free(); #endif