qTox  Version: nightly | Commit: bc751c8e1cac455f9690654fcfe0f560d2d7dfdd
posixsignalnotifier.h
Go to the documentation of this file.
1 /*
2  Copyright © 2017-2019 by The qTox Project Contributors
3 
4  This file is part of qTox, a Qt-based graphical interface for Tox.
5 
6  qTox is libre software: you can redistribute it and/or modify
7  it under the terms of the GNU General Public License as published by
8  the Free Software Foundation, either version 3 of the License, or
9  (at your option) any later version.
10 
11  qTox is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  GNU General Public License for more details.
15 
16  You should have received a copy of the GNU General Public License
17  along with qTox. If not, see <http://www.gnu.org/licenses/>.
18 */
19 
20 #pragma once
21 
22 #include <QObject>
23 
24 class QSocketNotifier;
25 
26 class PosixSignalNotifier : public QObject
27 {
28  Q_OBJECT
29 
30 public:
32 
33  static void watchSignal(int signum);
34  static void watchSignals(std::initializer_list<int> signalSet);
35  static void watchCommonTerminatingSignals();
36 
38 
39 signals:
40  void activated(int signal);
41 
42 private slots:
43  void onSignalReceived();
44 
45 private:
47 
48 private:
49  QSocketNotifier* notifier{nullptr};
50 };
PosixSignalNotifier::watchSignals
static void watchSignals(std::initializer_list< int > signalSet)
Definition: posixsignalnotifier.cpp:96
PosixSignalNotifier::~PosixSignalNotifier
~PosixSignalNotifier()
Definition: posixsignalnotifier.cpp:68
PosixSignalNotifier::watchSignal
static void watchSignal(int signum)
Definition: posixsignalnotifier.cpp:81
PosixSignalNotifier::onSignalReceived
void onSignalReceived()
Definition: posixsignalnotifier.cpp:114
PosixSignalNotifier
Class for converting POSIX signals to Qt signals.
Definition: posixsignalnotifier.h:26
PosixSignalNotifier::watchCommonTerminatingSignals
static void watchCommonTerminatingSignals()
Definition: posixsignalnotifier.cpp:103
PosixSignalNotifier::globalInstance
static PosixSignalNotifier & globalInstance()
Definition: posixsignalnotifier.cpp:108
PosixSignalNotifier::PosixSignalNotifier
PosixSignalNotifier()
Definition: posixsignalnotifier.cpp:125
PosixSignalNotifier::activated
void activated(int signal)
PosixSignalNotifier::notifier
QSocketNotifier * notifier
Definition: posixsignalnotifier.h:49