Delete the ObjInsert() function from dstm.h
[IRC.git] / Robust / src / Runtime / DSTM / interface / llookup.h
1 #ifndef _LLOOKUP_H_
2 #define _LLOOKUP_H_
3
4 #define LOADFACTOR 0.75
5 #define HASH_SIZE 100
6
7 typedef struct hashlistnode {
8         unsigned int oid;
9         unsigned int mid;
10         struct hashlistnode *next;
11 } lhashlistnode_t;
12
13 typedef struct hashtable {
14         lhashlistnode_t *table; // points to beginning of hash table
15         unsigned int size;
16         unsigned int numelements;
17         float loadfactor;
18 } lhashtable_t;
19
20 /* Prototypes for hash*/
21 lhashtable_t lhashCreate(unsigned int size, float loadfactor);
22 unsigned int lhashFunction(lhashtable_t table, unsigned int oid);
23 void lhashInsert(lhashtable_t table, unsigned int oid, unsigned int mid);
24 int lhashSearch(lhashtable_t table, unsigned int oid); //returns oid, -1 if not found
25 int lhashRemove(lhashtable_t table, unsigned int oid); //returns -1 if not found
26 void lhashResize(lhashtable_t table, unsigned int newsize);
27 /* end hash */
28
29 #endif
30