1995-08-09 08:06:35 -07:00
|
|
|
/***********************************************************************/
|
|
|
|
/* */
|
1996-04-30 07:53:58 -07:00
|
|
|
/* Objective Caml */
|
1995-08-09 08:06:35 -07:00
|
|
|
/* */
|
|
|
|
/* Xavier Leroy and Damien Doligez, INRIA Rocquencourt */
|
|
|
|
/* */
|
1996-04-30 07:53:58 -07:00
|
|
|
/* Copyright 1996 Institut National de Recherche en Informatique et */
|
1999-11-17 10:59:06 -08:00
|
|
|
/* en Automatique. All rights reserved. This file is distributed */
|
2001-12-07 05:41:02 -08:00
|
|
|
/* under the terms of the GNU Library General Public License, with */
|
|
|
|
/* the special exception on linking described in file ../LICENSE. */
|
1995-08-09 08:06:35 -07:00
|
|
|
/* */
|
|
|
|
/***********************************************************************/
|
|
|
|
|
|
|
|
/* $Id$ */
|
|
|
|
|
1995-05-04 03:15:53 -07:00
|
|
|
#ifndef _signals_
|
|
|
|
#define _signals_
|
|
|
|
|
|
|
|
#include "misc.h"
|
1996-11-02 10:00:46 -08:00
|
|
|
#include "mlvalues.h"
|
1995-05-04 03:15:53 -07:00
|
|
|
|
|
|
|
extern value signal_handlers;
|
2001-08-28 07:47:48 -07:00
|
|
|
CAMLextern int volatile pending_signal;
|
|
|
|
CAMLextern int volatile something_to_do;
|
1999-12-23 09:33:46 -08:00
|
|
|
extern int volatile force_major_slice;
|
2001-08-28 07:47:48 -07:00
|
|
|
CAMLextern int volatile async_signal_mode;
|
1997-09-02 05:55:01 -07:00
|
|
|
|
2001-08-28 07:47:48 -07:00
|
|
|
CAMLextern void enter_blocking_section (void);
|
|
|
|
CAMLextern void leave_blocking_section (void);
|
1997-09-02 05:55:01 -07:00
|
|
|
void urge_major_slice (void);
|
2001-08-28 07:47:48 -07:00
|
|
|
CAMLextern int convert_signal_number (int);
|
1999-06-05 05:02:48 -07:00
|
|
|
void execute_signal(int signal_number, int in_signal_handler);
|
1999-12-23 09:33:46 -08:00
|
|
|
void process_event(void);
|
1995-05-04 03:15:53 -07:00
|
|
|
|
2001-08-28 07:47:48 -07:00
|
|
|
CAMLextern void (*enter_blocking_section_hook)(void);
|
|
|
|
CAMLextern void (*leave_blocking_section_hook)(void);
|
|
|
|
CAMLextern void (* volatile async_action_hook)(void);
|
1996-04-01 07:24:38 -08:00
|
|
|
|
1995-05-04 03:15:53 -07:00
|
|
|
#endif /* _signals_ */
|
|
|
|
|