ARB
arb_core.h
Go to the documentation of this file.
1 // ================================================================ //
2 // //
3 // File : arb_core.h //
4 // Purpose : //
5 // //
6 // Coded by Ralf Westram (coder@reallysoft.de) in November 2010 //
7 // Institute of Microbiology (Technical University Munich) //
8 // http://www.arb-home.de/ //
9 // //
10 // ================================================================ //
11 
12 #ifndef ARB_CORE_H
13 #define ARB_CORE_H
14 
15 #ifndef _GLIBCXX_CSTDIO
16 #include <cstdio>
17 #endif
18 #ifndef DUPSTR_H
19 #include <dupstr.h>
20 #endif
21 #ifndef ATTRIBUTES_H
22 #include <attributes.h>
23 #endif
24 
25 typedef const char *GB_ERROR; // memory managed by CORE
26 
27 struct GBS_regex;
29 
30 enum GB_CASE {
34 };
35 
36 typedef void (*gb_error_handler_type)(const char *msg);
37 typedef void (*gb_warning_func_type)(const char *msg);
38 typedef void (*gb_information_func_type)(const char *msg);
39 typedef int (*gb_status_gauge_func_type)(double val);
40 typedef int (*gb_status_msg_func_type)(const char *val);
41 
42 
43 bool GBK_running_on_valgrind(void);
45 
46 bool GBK_raises_SIGSEGV(void (*cb)(void));
47 void GBK_install_SIGSEGV_handler(bool dump_backtrace);
48 
49 GB_ERROR GBK_assert_msg(const char *assertion, const char *file, int linenr);
50 
51 void GBK_dump_backtrace(FILE *out, const char *message);
52 void GBK_terminate(const char *error) __ATTR__NORETURN;
53 
54 GB_ERROR GBK_system(const char *system_command);
55 
56 #else
57 #error arb_core.h included twice
58 #endif // ARB_CORE_H
GB_ERROR GBK_system(const char *system_command)
Definition: arb_msg.cxx:519
const char * GB_ERROR
Definition: arb_core.h:25
GB_ERROR GBK_assert_msg(const char *assertion, const char *file, int linenr)
Definition: arb_msg.cxx:217
void(* gb_error_handler_type)(const char *msg)
Definition: arb_core.h:36
size_t GBK_getNonfreeableAddress()
Definition: arb_signal.cxx:102
int(* gb_status_msg_func_type)(const char *val)
Definition: arb_core.h:40
#define cb(action)
bool GBK_raises_SIGSEGV(void(*cb)(void))
Definition: arb_signal.cxx:111
void GBK_install_SIGSEGV_handler(bool dump_backtrace)
Definition: arb_signal.cxx:47
void GBK_terminate(const char *error) __ATTR__NORETURN
Definition: arb_msg.cxx:463
int(* gb_status_gauge_func_type)(double val)
Definition: arb_core.h:39
void message(char *errortext)
static void error(const char *msg)
Definition: mkptypes.cxx:96
bool GBK_running_on_valgrind(void)
Definition: arb_signal.cxx:98
GB_CASE
Definition: arb_core.h:30
void GBK_dump_backtrace(FILE *out, const char *message)
Definition: arb_msg.cxx:428
void(* gb_information_func_type)(const char *msg)
Definition: arb_core.h:38
#define __ATTR__NORETURN
Definition: attributes.h:56
void(* gb_warning_func_type)(const char *msg)
Definition: arb_core.h:37