00001 #ifndef QTHREAD_QDQUEUE_H
00002 #define QTHREAD_QDQUEUE_H
00003
00004 #include <qthread/qthread.h>
00005
00006 Q_STARTCXX
00007 typedef struct qdqueue_s qdqueue_t;
00008
00009
00010 qdqueue_t *qdqueue_create(void);
00011
00012
00013 int qdqueue_destroy(qthread_t * me, qdqueue_t * q);
00014
00015
00016 int qdqueue_enqueue(qthread_t * me, qdqueue_t * q, void *elem);
00017
00018
00019 int qdqueue_enqueue_there(qthread_t * me, qdqueue_t * q, void *elem,
00020 qthread_shepherd_id_t there);
00021
00022
00023 void *qdqueue_dequeue(qthread_t * me, qdqueue_t * q);
00024
00025
00026 int qdqueue_empty(qthread_t * me, qdqueue_t * q);
00027
00028 Q_ENDCXX
00029 #endif