5 struct QueueItem * head;
6 struct QueueItem * tail;
12 struct QueueItem * next;
13 struct QueueItem * prev;
16 #define isEmpty(x) ((x)->head==NULL)
18 void * getItem(struct Queue * queue);
19 void freeQueue(struct Queue * q);
20 struct Queue * createQueue();
21 struct QueueItem * addNewItem(struct Queue * queue, void * ptr);
23 struct QueueItem * addNewItem_I(struct Queue * queue, void * ptr);
25 struct QueueItem * findItem(struct Queue * queue, void * ptr);
26 void removeItem(struct Queue * queue, struct QueueItem * item);
27 struct QueueItem * getTail(struct Queue * queue);
28 struct QueueItem * getNextQueueItem(struct QueueItem * qi);