Detailed Description

FIFO Queue Implementation.

Typedef Documentation

typedef struct globus_fifo_s* \fBglobus_fifo_t\fP

Data type used in all function calls to manipulate a Globus FIFO

Function Documentation

\fBglobus_list_t\fP* globus_fifo_convert_to_list (\fBglobus_fifo_t\fP *fifo)

Convert the fifo into a list.

\fBglobus_fifo_t\fP* globus_fifo_copy (const \fBglobus_fifo_t\fP *fifo)

Make a copy of the fifo. globus_fifo_destroy() must be called the returned pointer to free memory associated with it.

void* globus_fifo_dequeue (\fBglobus_fifo_t\fP *fifo)

dequeue the element at the front of the queue.

void globus_fifo_destroy (\fBglobus_fifo_t\fP *fifo)

Destroy the fifo data structure.

This function destroys the memory associate with the fifo data structure. For every call to globus_fifo_init() there must be a corresponding call to globus_fifo_destroy()

void globus_fifo_destroy_all (\fBglobus_fifo_t\fP *fifo, void(*)(void *)datum_free)

Destroy the fifo data structure.

This function destroys the memory associate with the fifo data structure. It calls datum_free() on behalf of all remaining nodes in the queue. For every call to globus_fifo_init() there must be a corresponding call to globus_fifo_destroy()

int globus_fifo_empty (const \fBglobus_fifo_t\fP *fifo)

This function returns a boolean indicating whether or not the fifo is empty.

int globus_fifo_enqueue (\fBglobus_fifo_t\fP *fifo, void *datum)

Add data to the back of the queue.

int globus_fifo_init (\fBglobus_fifo_t\fP *fifo)

Initialize the fifo structure. This function initializes the fifo data structure. The structure must be initalized before it can be used with any other function.

int globus_fifo_move (\fBglobus_fifo_t\fP *fifo_dest, \fBglobus_fifo_t\fP *fifo_src)

Move the queue from fifo_src pointer to fifo_dest pointer.

void* globus_fifo_peek (\fBglobus_fifo_t\fP *fifo)

get a pointer to the element at the front of the queue.

void* globus_fifo_remove (\fBglobus_fifo_t\fP *headp, void *datum)

remove datum from anywhere in the queue.

int globus_fifo_size (const \fBglobus_fifo_t\fP *fifo)

This function returns a interger representing the number of elements in the queue.

void* globus_fifo_tail_peek (\fBglobus_fifo_t\fP *fifo)

Get a pointer to the element at the back of the queue.

Author

Generated automatically by Doxygen for globus_common from the source code.