00001 /*! \file include/kernel/queue.h 00002 * \brief Circular queues header. 00003 * \author Andrea Righi <drizzt@inwind.it> 00004 * \date Last update: 2003-12-08 00005 * \note Copyright (©) 2003 Andrea Righi 00006 */ 00007 00008 #ifndef QUEUE_H 00009 #define QUEUE_H 00010 00011 //! Queue structure. 00012 typedef struct QUEUE 00013 { 00014 void *value; //!< The value of the element. 00015 struct QUEUE *next; //!< A pointer to the next element. 00016 } queue_t; 00017 00018 int count_queue(queue_t **q); 00019 void add_queue(queue_t **q, void *v); 00020 int rem_queue(queue_t **q, void *v); 00021 void *pick_queue(queue_t **q); 00022 void *find_queue(queue_t **q, void *v); 00023 00024 #endif