signal-handler.h (1090B)
1 #ifndef SIGNAL_HANDLER_H 2 #define SIGNAL_HANDLER_H 3 4 #include <signal.h> 5 6 #include "block.h" 7 #include "timer.h" 8 9 typedef sigset_t signal_set; 10 typedef int (*signal_refresh_callback)(block* const blocks, 11 const unsigned short block_count); 12 typedef int (*signal_timer_callback)(block* const blocks, 13 const unsigned short block_code, 14 timer* const timer); 15 16 typedef struct { 17 int fd; 18 const signal_refresh_callback refresh_callback; 19 const signal_timer_callback timer_callback; 20 21 block* const blocks; 22 const unsigned short block_count; 23 } signal_handler; 24 25 signal_handler signal_handler_new( 26 block* const blocks, const unsigned short block_count, 27 const signal_refresh_callback refresh_callback, 28 const signal_timer_callback timer_callback); 29 int signal_handler_init(signal_handler* const handler); 30 int signal_handler_deinit(signal_handler* const handler); 31 int signal_handler_process(signal_handler* const handler, timer* const timer); 32 33 #endif // SIGNAL_HANDLER_H