summaryrefslogtreecommitdiff
path: root/src/ipa/raspberrypi/controller/rpi/dpc.hpp
diff options
context:
space:
mode:
authorTomi Valkeinen <tomi.valkeinen@iki.fi>2020-10-22 11:17:28 +0300
committerKieran Bingham <kieran.bingham@ideasonboard.com>2020-10-27 14:48:17 +0000
commit22679a81ebf5a69ef28c52e01ae259d96b27072a (patch)
treec303faf46da61e9be9ba0473de6f9c22db5d6820 /src/ipa/raspberrypi/controller/rpi/dpc.hpp
parent4a748394e534eca79e54b6153691621c1482a76c (Diffstat (limited to 'src/ipa/raspberrypi/controller/rpi/dpc.hpp')
0 files changed, 0 insertions, 0 deletions
span class="hl kwc">protected: static void sigAlarmHandler(int) { cout << "SIGALARM received" << endl; if (interrupt) dispatcher->interrupt(); } int init() { dispatcher = Thread::current()->eventDispatcher(); struct sigaction sa = {}; sa.sa_handler = &sigAlarmHandler; sigaction(SIGALRM, &sa, nullptr); return 0; } int run() { Timer timer; /* Event processing interruption by signal. */ std::chrono::steady_clock::time_point start = std::chrono::steady_clock::now(); timer.start(1000); struct itimerval itimer = {}; itimer.it_value.tv_usec = 500000; interrupt = false; setitimer(ITIMER_REAL, &itimer, nullptr); dispatcher->processEvents();