1 saw 1.1 /*-----------------------------------------------------------------------------
2 * Copyright (c) 1991,1992 Southeastern Universities Research Association,
3 * Continuous Electron Beam Accelerator Facility
4 *
5 * This software was developed under a United States Government license
6 * described in the NOTICE file included as part of this distribution.
7 *
8 * CEBAF Data Acquisition Group, 12000 Jefferson Ave., Newport News, VA 23606
9 * Email: coda@cebaf.gov Tel: (804) 249-7101 Fax: (804) 249-7363
10 *-----------------------------------------------------------------------------
11 *
12 * Description:
13 * header file for CODA readout language symbol hash table
14 *
15 * Author: Jie Chen, CEBAF Data Acquisition Group
16 *
17 * Revision History:
18 * $Log: crlHash.h,v $
19 * Revision 1.1 94/03/15 12:53:09 12:53:09 heyes (Graham Heyes)
20 * Initial revision
21 *
22 saw 1.1 *
23 */
24 #ifndef _crl_hash_h
25 #define _crl_hash_h
26
27 #define CTPHASH
28 #ifndef CTPHASH
29 typedef struct _symbol{
30 char *var_name;
31 int var_type; /*0: integer, 1: unsigned long */
32 }CrlSymbol;
33 #else
34 typedef void *CrlSymbol;
35 #endif
36 typedef struct _SLOT_ENTRY
37 {
38 CrlSymbol crlSymbol;
39 struct _SLOT_ENTRY *next;
40 }symbolEntry;
41
42 extern void crlHashCreate(symbolEntry **hash_table_head);
43 saw 1.1 extern int crlHashAdd(CrlSymbol symbol,symbolEntry **hash_table_head);
44 extern int crlHashDelete(CrlSymbol symbol,symbolEntry **hash_table_head);
45 CrlSymbol *crlHashFind(CrlSymbol symbol,symbolEntry **hash_table_head);
46 extern void crlHashWalk(symbolEntry **hash_table_head,void (*action)());
47 /*extern int crlHashDestroy();*/
48 /*extern void crlAddSymbols();*/
49 /*extern void isSymbolFound();*/
50
51 #define TABLE_SIZE 2053
52
53
54 #endif
|