Joedb
9.1.4
The Journal-Only Embedded Database
Loading...
Searching...
No Matches
src
joedb
Signal.cpp
Go to the documentation of this file.
1
#include "
joedb/Signal.h
"
2
3
extern
"C"
4
{
5
static
sig_atomic_t signal_status;
6
7
// Note: in C++11 signal handlers must have C linkage
8
// making the function static triggers clang-tidy bugprone-signal-handler
9
// not declaring the function before triggers -Wmissing-declarations
10
void
CDECL
joedb_signal_handler
(
int
status);
11
void
CDECL
joedb_signal_handler
(
int
status)
12
{
13
signal_status = status;
14
}
15
}
16
17
namespace
joedb
18
{
19
////////////////////////////////////////////////////////////////////////////
20
void
Signal::set_signal
(
int
status)
21
////////////////////////////////////////////////////////////////////////////
22
{
23
signal_status = status;
24
}
25
26
////////////////////////////////////////////////////////////////////////////
27
int
Signal::get_signal
()
28
////////////////////////////////////////////////////////////////////////////
29
{
30
return
signal_status;
31
}
32
33
////////////////////////////////////////////////////////////////////////////
34
void
Signal::start
()
35
////////////////////////////////////////////////////////////////////////////
36
{
37
std::signal(SIGINT,
joedb_signal_handler
);
38
}
39
40
////////////////////////////////////////////////////////////////////////////
41
void
Signal::stop
()
42
////////////////////////////////////////////////////////////////////////////
43
{
44
std::signal(SIGINT, SIG_DFL);
45
}
46
}
joedb_signal_handler
void joedb_signal_handler(int status)
Definition
Signal.cpp:11
Signal.h
CDECL
#define CDECL
Definition
Signal.h:7
joedb::Signal::get_signal
static int get_signal()
Definition
Signal.cpp:27
joedb::Signal::start
static void start()
Definition
Signal.cpp:34
joedb::Signal::stop
static void stop()
Definition
Signal.cpp:41
joedb::Signal::set_signal
static void set_signal(int status)
Definition
Signal.cpp:20
joedb
Definition
Blob.h:7
Generated by
1.9.8