18 /* ObjectHash *********************************************************/
20 struct ObjectHash * noargallocateObjectHash();
21 struct ObjectHash * allocateObjectHash(int size);
22 void ObjectHashaddChild(struct ObjectHash *thisvar, struct ObjectHash * child);
23 void freeObjectHash(struct ObjectHash *);
25 void ObjectHashrehash(struct ObjectHash * thisvar);
26 int ObjectHashadd(struct ObjectHash *, int key, int data, int data2, int data3, int data4);
28 int ObjectHashadd_I(struct ObjectHash *, int key, int data, int data2, int data3, int data4);
30 int ObjectHashremove(struct ObjectHash *,int key);
31 bool ObjectHashcontainskey(struct ObjectHash *,int key);
32 bool ObjectHashcontainskeydata(struct ObjectHash *,int key, int data);
33 int ObjectHashget(struct ObjectHash *,int key, int* data, int* data2, int * data3, int* data4);
34 void ObjectHashaddParent(struct ObjectHash *,struct ObjectHash* parent);
35 int ObjectHashfirstkey(struct ObjectHash *);
36 struct ObjectIterator* ObjectHashcreateiterator(struct ObjectHash *);
37 void ObjectHashiterator(struct ObjectHash *, struct ObjectIterator * it);
38 int ObjectHashcount(struct ObjectHash *, int key);
43 struct ObjectNode **bucket;
44 struct ObjectNode *listhead;
45 struct ObjectNode *listtail;
48 inline int ObjectHashcountset(struct ObjectHash * thisvar);
50 /* ObjectIterator *****************************************************/
53 struct ObjectNode *next;
54 struct ObjectNode *lnext;
55 struct ObjectNode *lprev;
63 struct ObjectIterator {
64 struct ObjectNode *cur;
67 inline struct ObjectIterator * noargallocateObjectIterator();
69 inline struct ObjectIterator * allocateObjectIterator(struct ObjectNode *start);
71 inline int ObjhasNext(struct ObjectIterator *thisvar);
73 inline int Objnext(struct ObjectIterator *thisvar);
75 inline int Objkey(struct ObjectIterator *thisvar);
77 inline int Objdata(struct ObjectIterator *thisvar);
78 inline int Objdata2(struct ObjectIterator *thisvar);
79 inline int Objdata3(struct ObjectIterator *thisvar);
80 inline int Objdata4(struct ObjectIterator *thisvar);