GNU Octave  4.4.1
A high-level interpreted language, primarily intended for numerical computations, mostly compatible with Matlab
signal-wrappers.h
Go to the documentation of this file.
1 /*
2 
3 Copyright (C) 2016-2018 John W. Eaton
4 
5 This file is part of Octave.
6 
7 Octave is free software: you can redistribute it and/or modify it
8 under the terms of the GNU General Public License as published by
9 the Free Software Foundation, either version 3 of the License, or
10 (at your option) any later version.
11 
12 Octave is distributed in the hope that it will be useful, but
13 WITHOUT ANY WARRANTY; without even the implied warranty of
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 GNU General Public License for more details.
16 
17 You should have received a copy of the GNU General Public License
18 along with Octave; see the file COPYING. If not, see
19 <https://www.gnu.org/licenses/>.
20 
21 */
22 
23 #if ! defined (octave_signal_wrappers_h)
24 #define octave_signal_wrappers_h 1
25 
26 #if ! defined (__cplusplus)
27 # include <stdbool.h>
28 #endif
29 
30 #include <sys/types.h>
31 
32 #if defined __cplusplus
33 extern "C" {
34 #endif
35 
36 typedef void octave_sig_handler (int);
37 
38 extern int octave_kill_wrapper (pid_t pid, int signum);
39 
40 extern char * octave_strsignal_wrapper (int signum);
41 
42 extern bool octave_have_kill (void);
43 
44 extern bool octave_get_sig_number (const char *signame, int *signum);
45 
48  bool restart_syscalls);
49 
50 extern octave_sig_handler *
51 octave_set_signal_handler_by_name (const char *signame,
52  octave_sig_handler *handler,
53  bool restart_syscalls);
54 
55 extern octave_sig_handler *
57 
58 extern octave_sig_handler *
59 octave_set_default_signal_handler_by_name (const char *signame);
60 
61 extern int octave_num_signals (void);
62 
63 extern void * octave_block_child (void);
64 
65 extern void octave_unblock_child (void *context);
66 
67 extern void octave_block_interrupt_signal (void);
68 
69 extern void octave_unblock_interrupt_signal (void);
70 
71 extern void octave_block_signal_by_name (const char *signame);
72 
73 extern void octave_unblock_signal_by_name (const char *signame);
74 
75 extern void octave_save_signal_mask (void);
76 
77 extern void octave_restore_signal_mask (void);
78 
79 extern void * octave_alloc_signal_mask (void);
80 
81 extern void octave_free_signal_mask (void *mask);
82 
83 extern void octave_get_signal_mask (void *mask);
84 
85 extern void octave_set_signal_mask (void *mask);
86 
87 extern void octave_block_async_signals (void);
88 
89 extern void octave_unblock_async_signals (void);
90 
91 extern int octave_raise_wrapper (int signum);
92 
93 extern void
95 
96 // This can be useful for debugging.
97 extern void octave_show_sigmask (const char *);
98 
99 #if defined __cplusplus
100 }
101 #endif
102 
103 #endif
void octave_unblock_async_signals(void)
void octave_get_signal_mask(void *mask)
void octave_block_signal_by_name(const char *signame)
octave_sig_handler * octave_set_signal_handler_internal(int sig, octave_sig_handler *handler, bool restart_syscalls)
bool octave_have_kill(void)
void octave_unblock_child(void *context)
int octave_kill_wrapper(pid_t pid, int signum)
void octave_create_interrupt_watcher_thread(octave_sig_handler *handler)
static llvm::LLVMContext & context
Definition: jit-typeinfo.cc:79
void octave_sig_handler(int)
void octave_show_sigmask(const char *)
int octave_num_signals(void)
void * octave_block_child(void)
void octave_restore_signal_mask(void)
void octave_free_signal_mask(void *mask)
void * octave_alloc_signal_mask(void)
void octave_block_interrupt_signal(void)
void octave_set_signal_mask(void *mask)
double signum(double x)
Definition: lo-mappers.h:244
void octave_unblock_interrupt_signal(void)
octave_sig_handler * octave_set_default_signal_handler(int sig)
void octave_save_signal_mask(void)
bool octave_get_sig_number(const char *signame, int *signum)
octave_sig_handler * octave_set_signal_handler_by_name(const char *signame, octave_sig_handler *handler, bool restart_syscalls)
int octave_raise_wrapper(int signum)
void octave_block_async_signals(void)
char * octave_strsignal_wrapper(int signum)
octave_sig_handler * octave_set_default_signal_handler_by_name(const char *signame)
void octave_unblock_signal_by_name(const char *signame)