|
OpenMAXBellagio 0.9.3
|
00001 00026 #ifndef __TQUEUE_H__ 00027 #define __TQUEUE_H__ 00028 00029 #include <pthread.h> 00032 #define MAX_QUEUE_ELEMENTS 10 00033 00035 typedef struct qelem_t qelem_t; 00036 struct qelem_t{ 00037 qelem_t* q_forw; 00038 void* data; 00039 }; 00040 00043 typedef struct queue_t{ 00044 qelem_t* first; 00045 qelem_t* last; 00046 int nelem; 00047 pthread_mutex_t mutex; 00048 } queue_t; 00049 00057 int queue_init(queue_t* queue); 00058 00064 void queue_deinit(queue_t* queue); 00065 00074 int queue(queue_t* queue, void* data); 00075 00083 void* dequeue(queue_t* queue); 00084 00091 int getquenelem(queue_t* queue); 00092 00093 #endif