globus_common  17.9
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
globus_fifo.h
Go to the documentation of this file.
1 
2 #ifndef GLOBUS_FIFO_H
3 #define GLOBUS_FIFO_H
4 
18 #include "globus_list.h"
19 
20 #ifdef __cplusplus
21 extern "C" {
22 #endif
23 
28 struct globus_fifo_s;
33 typedef struct globus_fifo_s * globus_fifo_t;
34 
42 extern int
44  globus_fifo_t * fifo);
45 
54 extern void
56  globus_fifo_t * fifo);
57 
67 void
69  globus_fifo_t * fifo,
70  void (*datum_free)(void *));
71 
77 extern int
79  const globus_fifo_t * fifo);
80 
86 extern int
88  const globus_fifo_t * fifo);
89 
94 extern int
96  globus_fifo_t * fifo,
97  void * datum);
98 
104 extern globus_fifo_t *
106  const globus_fifo_t * fifo);
107 
112 extern void *
114  globus_fifo_t * fifo);
115 
120 extern void *
122  globus_fifo_t * fifo);
123 
128 extern void *
130  globus_fifo_t * headp,
131  void * datum);
132 
137 extern void *
139  globus_fifo_t * fifo);
140 
145 extern int
147  globus_fifo_t * fifo_dest,
148  globus_fifo_t * fifo_src);
149 
154 extern globus_list_t *
156  globus_fifo_t * fifo );
157 
158 #ifdef __cplusplus
159 }
160 #endif
161 
162 #endif /* GLOBUS_FIFO_H */
int globus_fifo_size(const globus_fifo_t *fifo)
Definition: globus_fifo.c:93
void * globus_fifo_tail_peek(globus_fifo_t *fifo)
Definition: globus_fifo.c:187
void * globus_fifo_peek(globus_fifo_t *fifo)
Definition: globus_fifo.c:173
Linked List.
struct globus_fifo_s * globus_fifo_t
Definition: globus_fifo.h:33
List data type.
Definition: globus_list.h:28
void * globus_fifo_remove(globus_fifo_t *fifo, void *datum)
Definition: globus_fifo.c:228
globus_fifo_t * globus_fifo_copy(const globus_fifo_t *fifo)
Definition: globus_fifo.c:140
int globus_fifo_move(globus_fifo_t *fifo_dest, globus_fifo_t *fifo_src)
Definition: globus_fifo.c:272
void globus_fifo_destroy(globus_fifo_t *fifo)
Definition: globus_fifo.c:42
int globus_fifo_empty(const globus_fifo_t *fifo)
Definition: globus_fifo.c:82
int globus_fifo_enqueue(globus_fifo_t *fifo, void *datum)
Definition: globus_fifo.c:104
int globus_fifo_init(globus_fifo_t *fifo)
Initialize the fifo structure.
Definition: globus_fifo.c:25
globus_list_t * globus_fifo_convert_to_list(globus_fifo_t *fifo)
Definition: globus_fifo.c:303
void globus_fifo_destroy_all(globus_fifo_t *fifo, void(*datum_free)(void *))
Definition: globus_fifo.c:61
void * globus_fifo_dequeue(globus_fifo_t *fifo)
Definition: globus_fifo.c:201