00001 /* 00002 File : raise.h 00003 Date : 19-Sep-02 00004 Description : Raise common signal types. 00005 00006 Copyright © 1995-2002 Alexander Thoukydides 00007 00008 This program is free software; you can redistribute it and/or 00009 modify it under the terms of the GNU General Public License 00010 as published by the Free Software Foundation; either version 2 00011 of the License, or (at your option) any later version. 00012 00013 This program is distributed in the hope that it will be useful, 00014 but WITHOUT ANY WARRANTY; without even the implied warranty of 00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00016 GNU General Public License for more details. 00017 00018 You should have received a copy of the GNU General Public License 00019 along with this program; if not, write to the Free Software 00020 Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA 00021 */ 00022 00023 // Only include header file once 00024 #ifndef RAISE_H 00025 #define RAISE_H 00026 00027 // Signal types 00028 typedef int raise_type; 00029 #define RAISE_ABRT ((raise_type) 0x10) 00030 #define RAISE_FPE ((raise_type) 0x20) 00031 #define RAISE_ILL_INSTR ((raise_type) 0x30) 00032 #define RAISE_ILL_ZERO ((raise_type) 0x31) 00033 #define RAISE_INT ((raise_type) 0x40) 00034 #define RAISE_SEGV_PREF ((raise_type) 0x50) 00035 #define RAISE_SEGV_ABORT ((raise_type) 0x51) 00036 #define RAISE_SEGV_ADDR ((raise_type) 0x52) 00037 #define RAISE_TERM ((raise_type) 0x60) 00038 #define RAISE_STAK ((raise_type) 0x70) 00039 #define RAISE_OSERROR ((raise_type) 0xa0) 00040 00041 #ifdef __cplusplus 00042 extern "C" { 00043 #endif 00044 00045 /* 00046 Parameters : type - The type of signal to raise. 00047 Returns : void 00048 Description : Raise the specified signal by performing an appropriate 00049 action. This does not explicitly call raise() for most 00050 signals. 00051 */ 00052 void raise_signal(raise_type type); 00053 00054 #ifdef __cplusplus 00055 } 00056 #endif 00057 00058 #endif
1.3.3