summaryrefslogtreecommitdiffstats
path: root/src/input/pvsPrivInputSignalHandler.h
diff options
context:
space:
mode:
authorSebastien Braun2010-10-23 17:49:12 +0200
committerSebastien Braun2010-10-24 23:43:08 +0200
commit7e3b963e3a0cbbf9391243e72ceb015e9015d630 (patch)
treed980c26b837ef106e286ea3ed3562ee37ffbd0bf /src/input/pvsPrivInputSignalHandler.h
parentFix forgotten change of j to mods in X11FakeKeyboardHandler. (diff)
downloadpvs-7e3b963e3a0cbbf9391243e72ceb015e9015d630.tar.gz
pvs-7e3b963e3a0cbbf9391243e72ceb015e9015d630.tar.xz
pvs-7e3b963e3a0cbbf9391243e72ceb015e9015d630.zip
Documentation fixes and code cleanup
Diffstat (limited to 'src/input/pvsPrivInputSignalHandler.h')
-rw-r--r--src/input/pvsPrivInputSignalHandler.h17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/input/pvsPrivInputSignalHandler.h b/src/input/pvsPrivInputSignalHandler.h
index cb75c86..bc549ec 100644
--- a/src/input/pvsPrivInputSignalHandler.h
+++ b/src/input/pvsPrivInputSignalHandler.h
@@ -19,6 +19,19 @@
#include <QObject>
+/**
+ * Handle signals.
+ *
+ * This class reads \c int values from a file descriptor and dispatches sends
+ * Qt signals according to the \c SIG... value the integer represents.
+ * The purpose of this mechanism is to integrate (asynchronous) Unix signal
+ * handling into the synchronous event-driven Qt main loop. The main() function
+ * is expected to open a socket pair and install handlers for all relevant signals
+ * that simply write the number of the signal to that pipe.
+ *
+ * If allowUnauthenticatedKilling() has not been called, this class only accepts
+ * signal numbers that are sent by the same process.
+ */
class PVSPrivInputSignalHandler : public QObject
{
Q_OBJECT
@@ -28,16 +41,20 @@ public:
{
}
+ /** If \c value is \c true, allow sending signal numbers from other processes. */
void allowUnauthenticatedKilling(bool value)
{
_allowUnauthenticatedKilling = value;
}
public slots:
+ /** Connect this slot to a \c QSocketNotifier's \c activated(int) signal. */
void signalReceived(int sigfd);
signals:
+ /** SIGTERM */
void terminate();
+ /** SIGHUP */
void reloadConfiguration();
private: