globus_common  17.11
globus_handle_table.h
Go to the documentation of this file.
1 
21 #ifndef GLOBUS_HANDLE_TABLE_H
22 #define GLOBUS_HANDLE_TABLE_H
23 
24 #include "globus_types.h"
25 
26 #ifdef __cplusplus
27 extern "C" {
28 #endif
29 
34 typedef struct globus_l_handle_table_s * globus_handle_table_t;
35 
40 typedef int globus_handle_t;
41 
48 typedef
49 void
51  void * datum);
52 
58 #define GLOBUS_NULL_HANDLE 0
59 #define GLOBUS_HANDLE_TABLE_NO_HANDLE 0
60 
61 int
63  globus_handle_table_t * handle_table,
64  globus_handle_destructor_t destructor);
65 
66 int
68  globus_handle_table_t * handle_table);
69 
72  globus_handle_table_t * handle_table,
73  void * datum,
74  int initial_refs);
75 
78  globus_handle_table_t * handle_table,
79  globus_handle_t handle);
80 
83  globus_handle_table_t * handle_table,
84  globus_handle_t handle,
85  unsigned int inc);
86 
89  globus_handle_table_t * handle_table,
90  globus_handle_t handle);
91 
92 void *
94  globus_handle_table_t * handle_table,
95  globus_handle_t handle);
96 
97 #ifdef __cplusplus
98 }
99 #endif
100 
101 #endif /* GLOBUS_HANDLE_TABLE_H */
Common Primitive Types.
int globus_bool_t
Boolean type.
Definition: globus_types.h:78
int globus_handle_table_init(globus_handle_table_t *handle_table, globus_handle_destructor_t destructor)
Definition: globus_handle_table.c:47
int globus_handle_table_destroy(globus_handle_table_t *handle_table)
Destroy a handle table.
Definition: globus_handle_table.c:94
void(* globus_handle_destructor_t)(void *datum)
Handle datum destructor.
Definition: globus_handle_table.h:50
void * globus_handle_table_lookup(globus_handle_table_t *handle_table, globus_handle_t handle)
Resolve a handle its datum.
Definition: globus_handle_table.c:399
int globus_handle_t
Handle abstract type.
Definition: globus_handle_table.h:40
globus_handle_t globus_handle_table_insert(globus_handle_table_t *handle_table, void *datum, int initial_refs)
Definition: globus_handle_table.c:171
globus_bool_t globus_handle_table_decrement_reference(globus_handle_table_t *handle_table, globus_handle_t handle)
Remove a reference to a handle.
Definition: globus_handle_table.c:310
globus_bool_t globus_handle_table_increment_reference_by(globus_handle_table_t *handle_table, globus_handle_t handle, unsigned int inc)
Increment the reference count for handle.
Definition: globus_handle_table.c:253
globus_bool_t globus_handle_table_increment_reference(globus_handle_table_t *handle_table, globus_handle_t handle)
Add a reference to a handle table entry.
Definition: globus_handle_table.c:376
struct globus_l_handle_table_s * globus_handle_table_t
Handle table abstract type.
Definition: globus_handle_table.h:34