18 #define NSIG (_SIGMAX + 1)
23 #pragma warning(disable : 4668)
26static BOOL WINAPI consoleHandler(DWORD signal)
31 case CTRL_BREAK_EVENT:
36 default:
return false;
50 if(signal != SIGINT)
sighandler_t hand = std::signal(signal, handler);
56 SetConsoleCtrlHandler(consoleHandler, TRUE);
85 const static std::vector<int> termin{
131#if defined(SIGSTKFLT)
143#if defined(SIGVTALRM)
161#if defined(SIGUNUSED)
164#if defined(SIGUNUSED)
171 if(std::find(termin.begin(), termin.end(), sign) != termin.end())
static const std::size_t m_signals_number
static void clean_terminal() noexcept
Signals(const Terminal &) noexcept
void setHandler(const sighandler_t &handler) noexcept
void reset_and_raise(const int &sign) noexcept
std::vector< sighandler_t > m_handlers
static const Term::Terminal * m_term
Term::Terminal & terminal
void(*)(int) sighandler_t