more bug fixes
[IRC.git] / Robust / src / Runtime / psemaphore.h
index 1575ff877b0ee50f252ef5f8b128e87f5b74c2a4..09eb479d589cb804825b7552fd646fb56cd75f58 100644 (file)
@@ -2,18 +2,22 @@
 #define ___PSEMAPHORE_H__
 
 #include <pthread.h>
+#include "garbage.h"
 
 
 typedef struct psemaphore_t {
   pthread_mutex_t lock;
   pthread_cond_t  cond;
   int             signaled;
+  int             tag;
 } psemaphore;
 
 
-int psem_init( psemaphore* sem );
-int psem_take( psemaphore* sem );
-int psem_give( psemaphore* sem );
+void psem_init ( psemaphore* sem );
+void psem_take ( psemaphore* sem, struct garbagelist* gl );
+void psem_give_tag ( psemaphore* sem, int tag );
+void psem_give ( psemaphore* sem);
+void psem_reset( psemaphore* sem );
 
 
 #endif // ___PSEMAPHORE_H__