home *** CD-ROM | disk | FTP | other *** search
/ Power-Programmierung / CD1.mdf / magazine / drdobbs / 1987 / 12 / deikman / cache.h < prev    next >
Text File  |  1987-12-21  |  1KB  |  34 lines

  1. /* cache header */
  2.  
  3. typedef struct CACHE {
  4.   int    recl;        /* record length */
  5.   int    maxr;        /* number of records in cache */
  6.   long    hits;        /* number of true finds for cacfind() */
  7.   long    miss;        /* number of misses for cacfind() */
  8.   long    adds;        /* number of calls to cacnew() */
  9.   int    (*proc)();    /* pointer to function for processing */
  10.   long    idnt;        /* identifier passed to proc() */
  11.   long    *nums;        /* numbers of records */
  12.   char    *recs;        /* pointer to first record */
  13.   short    *next;        /* array of next pointers */
  14.   short *prio;        /* array of prior pointers */
  15.   char    *mark;        /* array of process-record markers */
  16.   short    lru;        /* oldest index */
  17.   short mru;        /* newest index */
  18.   } CACDS;
  19.  
  20. long    cacamem;    /* amount of memory allocated */
  21.  
  22. CACDS    *cacallo(int, int, int ( *)(), long);
  23. char      *cacmem (int);
  24. char      *cacnum (struct CACHE  *, long);
  25. char      *cacold (struct CACHE  *);
  26. int      cacflsh(struct CACHE  *);
  27. int      cacnew (struct CACHE  *, short);
  28. char      *cacfind(struct CACHE  *, long);
  29. int      cacproc(struct CACHE  *, long);
  30. int     cacunpc(struct CACHE  *, long);
  31. int      cacstat(struct CACHE  *, long  *, long  *, long  *);
  32. int      cacfree(struct CACHE  *);
  33.  
  34.