Loading...
Searching...
No Matches
globus_fifo.h
Go to the documentation of this file.
/*
* Copyright 1999-2006 University of Chicago
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
#ifndef GLOBUS_FIFO_H
#define GLOBUS_FIFO_H
#include "globus_list.h"
#ifdef __cplusplus
extern "C" {
#endif
struct globus_fifo_s;
typedef struct globus_fifo_s * globus_fifo_t;
extern int
globus_fifo_init(
globus_fifo_t * fifo);
extern void
globus_fifo_destroy(
globus_fifo_t * fifo);
void
globus_fifo_destroy_all(
globus_fifo_t * fifo,
void (*datum_free)(void *));
extern int
globus_fifo_empty(
const globus_fifo_t * fifo);
extern int
globus_fifo_size(
const globus_fifo_t * fifo);
extern int
globus_fifo_enqueue(
globus_fifo_t * fifo,
void * datum);
extern globus_fifo_t *
globus_fifo_copy(
const globus_fifo_t * fifo);
extern void *
globus_fifo_peek(
globus_fifo_t * fifo);
extern void *
globus_fifo_tail_peek(
globus_fifo_t * fifo);
extern void *
globus_fifo_remove(
globus_fifo_t * headp,
void * datum);
extern void *
globus_fifo_dequeue(
globus_fifo_t * fifo);
extern int
globus_fifo_move(
globus_fifo_t * fifo_dest,
globus_fifo_t * fifo_src);
extern globus_list_t *
globus_fifo_convert_to_list(
globus_fifo_t * fifo );
#ifdef __cplusplus
}
#endif
#endif /* GLOBUS_FIFO_H */
globus_list.h
Linked List.
globus_fifo_init
int globus_fifo_init(globus_fifo_t *fifo)
Initialize the fifo structure.
Definition globus_fifo.c:40
globus_fifo_t
struct globus_fifo_s * globus_fifo_t
Definition globus_fifo.h:48
globus_fifo_empty
int globus_fifo_empty(const globus_fifo_t *fifo)
Definition globus_fifo.c:97
globus_fifo_tail_peek
void * globus_fifo_tail_peek(globus_fifo_t *fifo)
Definition globus_fifo.c:202
globus_fifo_convert_to_list
globus_list_t * globus_fifo_convert_to_list(globus_fifo_t *fifo)
Definition globus_fifo.c:318
globus_fifo_size
int globus_fifo_size(const globus_fifo_t *fifo)
Definition globus_fifo.c:108
globus_fifo_enqueue
int globus_fifo_enqueue(globus_fifo_t *fifo, void *datum)
Definition globus_fifo.c:119
globus_fifo_copy
globus_fifo_t * globus_fifo_copy(const globus_fifo_t *fifo)
Definition globus_fifo.c:155
globus_fifo_peek
void * globus_fifo_peek(globus_fifo_t *fifo)
Definition globus_fifo.c:188
globus_fifo_destroy
void globus_fifo_destroy(globus_fifo_t *fifo)
Definition globus_fifo.c:57
globus_fifo_destroy_all
void globus_fifo_destroy_all(globus_fifo_t *fifo, void(*datum_free)(void *))
Definition globus_fifo.c:76
globus_fifo_dequeue
void * globus_fifo_dequeue(globus_fifo_t *fifo)
Definition globus_fifo.c:216
globus_fifo_move
int globus_fifo_move(globus_fifo_t *fifo_dest, globus_fifo_t *fifo_src)
Definition globus_fifo.c:287
globus_fifo_remove
void * globus_fifo_remove(globus_fifo_t *headp, void *datum)
Definition globus_fifo.c:243
globus_list_t
struct globus_list globus_list_t
List data type.