1 /***********************************************************************/
2 /* Open Visualization Data Explorer                                    */
3 /* (C) Copyright IBM Corp. 1989,1999                                   */
4 /* ALL RIGHTS RESERVED                                                 */
5 /* This code licensed under the                                        */
6 /*    "IBM PUBLIC LICENSE - Open Visualization Data Explorer"          */
7 /***********************************************************************/
8 /*
9  * $Header: /src/master/dx/src/exec/dpexec/d.h,v 1.6 2004/06/09 16:14:27 davidt Exp $
10  */
11 
12 #include <dxconfig.h>
13 
14 #ifndef	__EX_DICTIONARY_H
15 #define	__EX_DICTIONARY_H
16 
17 #include <dx/dx.h>
18 
19 #include "exobject.h"
20 
21 #if defined(__cplusplus) || defined(c_plusplus)
22 extern "C" {
23 #endif
24 
25 typedef struct _EXDictionary		*EXDictionary;
26 
27 EXDictionary _dxf_ExDictionaryCreate(int size, int local, int locking);
28 EXDictionary _dxf_ExDictionaryCreateSorted(int size, int local, int locking);
29 Error	     _dxf_ExDictionaryDestroy(EXDictionary d);
30 int  	     _dxf_ExDictionaryCompact(EXDictionary d);
31 Error	     _dxf_ExDictionaryDelete(EXDictionary d, Pointer key);
32 Error 	     _dxf_ExDictionaryDeleteNoLock(EXDictionary d, Pointer key);
33 Error	     _dxf_ExDictionaryInsert(EXDictionary d, char *key, EXObj obj);
34 int	     _dxf_ExDictionaryPurge(EXDictionary d);
35 EXObj	     _dxf_ExDictionarySearch(EXDictionary d, char *key);
36 Error	     _dxf_ExDictionaryBeginIterate(EXDictionary d);
37 EXObj	     _dxf_ExDictionaryIterate(EXDictionary d, char **key);
38 Error	     _dxf_ExDictionaryEndIterate(EXDictionary d);
39 int          _dxf_ExDictionaryIterateMany(EXDictionary d, char **key, EXObj *obj, int n);
40 int	     _dxf_ExIsDictionarySorted(EXDictionary d);
41 Error 	     _dxf_ExDictionaryBeginIterateSorted(EXDictionary d, int reverse);
42 EXObj 	     _dxf_ExDictionaryIterateSorted(EXDictionary d, char **key);
43 int          _dxf_ExDictionaryIterateSortedMany(EXDictionary d, char **key, EXObj *obj, int n);
44 Error	     _dxf_ExDictPrint(EXDictionary d);
45 
46 #if defined(__cplusplus) || defined(c_plusplus)
47 }
48 #endif
49 
50 
51 #endif /* __EX_DICTIONARY_H */
52