diff options
author | Andreas Eversberg <jolly@eversberg.eu> | 2016-07-09 11:15:48 +0200 |
---|---|---|
committer | Andreas Eversberg <jolly@eversberg.eu> | 2016-07-09 11:27:02 +0200 |
commit | f39ee2f15a5ab52efe12fa4ac50d04e473a613c4 (patch) | |
tree | d7fcc2dd6f1993537707f1d5143767140b45bb0a /src | |
parent | 26ab26db48c7042a38ab4ded612df29aef75e4ba (diff) |
common code: Add support for main loop handler
Diffstat (limited to 'src')
-rw-r--r-- | src/amps/main.c | 2 | ||||
-rw-r--r-- | src/anetz/main.c | 2 | ||||
-rw-r--r-- | src/bnetz/main.c | 2 | ||||
-rw-r--r-- | src/cnetz/main.c | 2 | ||||
-rw-r--r-- | src/common/main.h | 2 | ||||
-rw-r--r-- | src/common/main_common.c | 5 | ||||
-rw-r--r-- | src/nmt/main.c | 2 |
7 files changed, 10 insertions, 7 deletions
diff --git a/src/amps/main.c b/src/amps/main.c index cc15575..0d78703 100644 --- a/src/amps/main.c +++ b/src/amps/main.c @@ -365,7 +365,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error setting SCHED_RR with prio %d\n", rt_prio); } - main_loop(&quit, latency, interval); + main_loop(&quit, latency, interval, NULL); if (rt_prio > 0) { struct sched_param schedp; diff --git a/src/anetz/main.c b/src/anetz/main.c index f67abbe..76c56aa 100644 --- a/src/anetz/main.c +++ b/src/anetz/main.c @@ -193,7 +193,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error setting SCHED_RR with prio %d\n", rt_prio); } - main_loop(&quit, latency, interval); + main_loop(&quit, latency, interval, NULL); if (rt_prio > 0) { struct sched_param schedp; diff --git a/src/bnetz/main.c b/src/bnetz/main.c index 44379bb..0e69b80 100644 --- a/src/bnetz/main.c +++ b/src/bnetz/main.c @@ -208,7 +208,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error setting SCHED_RR with prio %d\n", rt_prio); } - main_loop(&quit, latency, interval); + main_loop(&quit, latency, interval, NULL); if (rt_prio > 0) { struct sched_param schedp; diff --git a/src/cnetz/main.c b/src/cnetz/main.c index 1027b34..2cc9c54 100644 --- a/src/cnetz/main.c +++ b/src/cnetz/main.c @@ -313,7 +313,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error setting SCHED_RR with prio %d\n", rt_prio); } - main_loop(&quit, latency, interval); + main_loop(&quit, latency, interval, NULL); if (rt_prio > 0) { struct sched_param schedp; diff --git a/src/common/main.h b/src/common/main.h index 6a67717..c2abb6f 100644 --- a/src/common/main.h +++ b/src/common/main.h @@ -37,5 +37,5 @@ void opt_switch_common(int c, char *arg0, int *skip_args); extern int quit; void sighandler(int sigset); -void main_loop(int *quit, int latency, int interval); +void main_loop(int *quit, int latency, int interval, void (*myhandler)(void)); diff --git a/src/common/main_common.c b/src/common/main_common.c index 68d8584..ac223f4 100644 --- a/src/common/main_common.c +++ b/src/common/main_common.c @@ -277,7 +277,7 @@ static int get_char() } /* Loop through all transceiver instances of one network. */ -void main_loop(int *quit, int latency, int interval) +void main_loop(int *quit, int latency, int interval, void (*myhandler)(void)) { int latspl; sender_t *sender; @@ -332,6 +332,9 @@ next_char: /* process audio of built-in call control */ process_call(c); + if (myhandler) + myhandler(); + /* sleep a while */ usleep(interval * 1000); } diff --git a/src/nmt/main.c b/src/nmt/main.c index d696c6f..3e9356b 100644 --- a/src/nmt/main.c +++ b/src/nmt/main.c @@ -286,7 +286,7 @@ int main(int argc, char *argv[]) fprintf(stderr, "Error setting SCHED_RR with prio %d\n", rt_prio); } - main_loop(&quit, latency, interval); + main_loop(&quit, latency, interval, NULL); if (rt_prio > 0) { struct sched_param schedp; |