merge upstream HEAD
[ghc-hetmet.git] / rts / posix / Signals.h
1 /* -----------------------------------------------------------------------------
2  *
3  * (c) The GHC Team, 1998-2005
4  *
5  * Signal processing / handling.
6  *
7  * ---------------------------------------------------------------------------*/
8
9 #ifndef POSIX_SIGNALS_H
10 #define POSIX_SIGNALS_H
11
12 #ifdef HAVE_SIGNAL_H
13 # include <signal.h>
14 #endif
15
16 #include "BeginPrivate.h"
17
18 rtsBool anyUserHandlers(void);
19
20 #if !defined(THREADED_RTS)
21 extern siginfo_t pending_handler_buf[];
22 extern siginfo_t *next_pending_handler;
23 #define signals_pending() (next_pending_handler != pending_handler_buf)
24 void startSignalHandlers(Capability *cap);
25 #endif
26
27 Capability *ioManagerStartCap (Capability *cap);
28
29 extern StgInt *signal_handlers;
30
31 #include "EndPrivate.h"
32
33 #endif /* POSIX_SIGNALS_H */
34