[project @ 2005-07-27 15:32:12 by simonmar]
[ghc-hetmet.git] / ghc / rts / Capability.h
index 21d4ce4..5f1649e 100644 (file)
@@ -23,6 +23,8 @@
 #ifndef __CAPABILITY_H__
 #define __CAPABILITY_H__
 
+#include "RtsFlags.h"
+
 // All the capabilities
 extern Capability *capabilities;
 
@@ -38,6 +40,10 @@ extern void releaseCapability( Capability* cap );
 //
 extern void threadRunnable ( void );
 
+// Return the capability that I own.
+// 
+extern Capability *myCapability (void);
+
 extern void prodWorker ( void );
 
 #ifdef RTS_SUPPORTS_THREADS
@@ -53,7 +59,7 @@ extern void prodWorker ( void );
 // current worker thread should then re-acquire it using
 // waitForCapability().
 //
-extern void yieldCapability( Capability **pCap );
+extern void yieldCapability( Capability** pCap, Condition *cond );
 
 // Acquires a capability for doing some work.
 //