1
+
/*
 
2
+
 
3
+
    Interface definitions for bget.c, the memory management package.
 
4
+
 
5
+
*/
 
6
+
/* in PIO we use DEBUG bget uses NDEBUG */
 
7
+
//#ifndef DEBUG
 
8
+
//#undef NDEBUG
 
9
+
//#endif
 
10
+
 
11
+
#ifndef _
 
12
+
#ifdef PROTOTYPES
 
13
+
#define  _(x)  x              /* If compiler knows prototypes */
 
14
+
#else
 
15
+
#define  _(x)  ()                     /* It it doesn't */
 
16
+
#endif /* PROTOTYPES */
 
17
+
#endif
 
18
+
 
19
+
typedef long bufsize;
 
20
+
void    bpool       _((void *buffer, bufsize len));
 
21
+
void   *bget        _((bufsize size));
 
22
+
void   *bgetz       _((bufsize size));
 
23
+
void   *bgetr       _((void *buffer, bufsize newsize));
 
24
+
void    brel        _((void *buf));
 
25
+
void    bectl       _((int (*compact)(bufsize sizereq, int sequence),
 
26
+
               void *(*acquire)(bufsize size),
 
27
+
               void (*release)(void *buf), bufsize pool_incr));
 
28
+
void    bstats      _((bufsize *curalloc, bufsize *totfree, bufsize *maxfree,
 
29
+
               long *nget, long *nrel));
 
30
+
void    bstatse     _((bufsize *pool_incr, long *npool, long *npget,
 
31
+
               long *nprel, long *ndget, long *ndrel));
 
32
+
void    bufdump     _((void *buf));
 
33
+
void    bpoold      _((void *pool, int dumpalloc, int dumpfree));
 
34
+
int bpoolv      _((void *pool));
 
35
+
void bpoolrelease  _();
 
36
+
void bfreespace  _((bufsize *maxfree, bufsize *totfree));