home *** CD-ROM | disk | FTP | other *** search
/ QBasic & Borland Pascal & C / Delphi5.iso / C / Samples / CSAPE32.ARJ / INCLUDE / OSLIST.H < prev    next >
C/C++ Source or Header  |  1990-09-07  |  2KB  |  57 lines

  1. /*
  2.     oslist.h
  3.  
  4.     % symbol list header
  5.  
  6.     OWL 1.2
  7.     Copyright (c) 1988 - 1990, by Oakland Group, Inc.
  8.     ALL RIGHTS RESERVED.
  9.  
  10.     Revision History:
  11.     -----------------
  12.      8/09/89 jdc    changed oslist_GetSym to oslist_Get
  13.  
  14.     12/11/89 jmd    renamed this file
  15.      1/20/89 jdc    speeded data retrieval
  16.      3/28/90 jmd    ansi-fied
  17.      4/23/90 jmdc    added oslist_FindData
  18.      6/18/90 jdc    made alpha_find public, now FindAlpha
  19.      7/31/90 jdc    preened
  20.      9/07/90 jmd    changed some names around
  21. */
  22.  
  23. typedef    struct oslist_struct {
  24.  
  25.     xarray    seqnt;
  26.     iarray    alpha;
  27.     int     size;
  28.  
  29.     int     dsize;        /* size of data element associated with each symbol */
  30.  
  31. } *oslist_type;
  32.  
  33. #define    OSLIST_SYMMAXLEN    100
  34. #define    OSLIST_BADNAME        -1
  35.  
  36. /* OSLIST.C */
  37. extern oslist_type oslist_Open(int size, int data_size);
  38. extern int        oslist_SetSym(oslist_type oslist, char *symbol, VOID *data);
  39. extern char       *oslist_GetSym(oslist_type oslist, int h);
  40. extern VOID       *oslist_GetData(oslist_type oslist, int h);
  41. extern void        oslist_SetData(oslist_type oslist, int h, VOID *data);
  42. extern int        oslist_GetAlphaHandle(oslist_type oslist, int a);
  43. extern int        oslist_GetSize(oslist_type oslist);
  44. extern int        oslist_FindHandle(oslist_type oslist, char *symbol);
  45. extern boolean    oslist_FindAlpha(oslist_type oslist, char *name, int *alpha);
  46. extern boolean    oslist_Delete(oslist_type oslist, int h);
  47. extern void        oslist_Close(oslist_type oslist);
  48.  
  49. #define oslist_GetAlphaSym(oslist, a)    \
  50.     oslist_GetSym(oslist, oslist_GetAlphaHandle(oslist, a))
  51.  
  52. #define oslist_GetDataSize(oslist)    ((oslist)->dsize)
  53.  
  54. #define oslist_FindData(oslist, name)     \
  55.     oslist_GetData(oslist, oslist_FindHandle(oslist, name))
  56.  
  57.