]> sigrok.org Git - pulseview.git/blobdiff - signalhandler.cpp
DecodeSignal: Support unitsize > 1 for logic output
[pulseview.git] / signalhandler.cpp
index 398114d5b96f610954f5c86f8d6b833407a9812b..d228718f00f8d861f8626d96e932c1b407e70fb0 100644 (file)
 
 #include "signalhandler.hpp"
 
-#include <assert.h>
-#include <signal.h>
-#include <stdlib.h>
+#include <cassert>
+#include <csignal>
+#include <cstdlib>
+
 #include <sys/socket.h>
 #include <unistd.h>
 
@@ -42,7 +43,8 @@ bool SignalHandler::prepare_signals()
        sig_action.sa_flags = SA_RESTART;
 
        if (sigaction(SIGINT, &sig_action, nullptr) != 0 ||
-               sigaction(SIGTERM, &sig_action, nullptr) != 0) {
+               sigaction(SIGTERM, &sig_action, nullptr) != 0 ||
+               sigaction(SIGUSR1, &sig_action, nullptr) != 0) {
                close(sockets_[0]);
                close(sockets_[1]);
                return false;
@@ -70,14 +72,16 @@ void SignalHandler::on_socket_notifier_activated()
                abort();
        }
 
-       switch(sig_number)
-       {
+       switch (sig_number) {
        case SIGINT:
                Q_EMIT int_received();
                break;
        case SIGTERM:
                Q_EMIT term_received();
                break;
+       case SIGUSR1:
+               Q_EMIT usr1_received();
+               break;
        }
 
        socket_notifier_->setEnabled(true);