X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fjobs.h;h=f461342cd3b05821b239c2ddf8cd0a8611fd10aa;hb=170aef20bc3a59d5139c2eff8794d9ba4c83a2e5;hp=6eb0a83d25badb78e603db8625f5b95a7ac8d041;hpb=c710a0da4ebcc126275c42a0387ff85b2557e3ae;p=src%2Fapp-framework-binder.git diff --git a/src/jobs.h b/src/jobs.h index 6eb0a83d..f461342c 100644 --- a/src/jobs.h +++ b/src/jobs.h @@ -18,11 +18,7 @@ #pragma once struct sd_event; - -extern int jobs_queue0( - void *group, - int timeout, - void (*callback)(int signum)); +struct jobloop; extern int jobs_queue( void *group, @@ -30,48 +26,23 @@ extern int jobs_queue( void (*callback)(int signum, void* arg), void *arg); -extern int jobs_queue2( +extern int jobs_enter( void *group, int timeout, - void (*callback)(int signum, void* arg1, void *arg2), - void *arg1, - void *arg2); + void (*callback)(int signum, void *closure, struct jobloop *jobloop), + void *closure); -extern int jobs_queue3( - void *group, - int timeout, - void (*callback)(int signum, void* arg1, void *arg2, void *arg3), - void *arg1, - void *arg2, - void *arg3); - -extern int jobs_invoke0( - int timeout, - void (*callback)(int signum)); +extern int jobs_leave(struct jobloop *jobloop); -extern int jobs_invoke( +extern int jobs_call( + void *group, int timeout, - void (*callback)(int signum, void* arg), + void (*callback)(int, void*), void *arg); -extern int jobs_invoke2( - int timeout, - void (*callback)(int signum, void* arg1, void *arg2), - void *arg1, - void *arg2); - -extern int jobs_invoke3( - int timeout, - void (*callback)(int signum, void* arg1, void *arg2, void *arg3), - void *arg1, - void *arg2, - void *arg3); - extern struct sd_event *jobs_get_sd_event(); -extern int jobs_init(int allowed_count, int start_count, int waiter_count); -extern int jobs_add_me(); extern void jobs_terminate(); -extern int jobs_enter(int allowed_count, int start_count, int waiter_count, void (*start)()); +extern int jobs_start(int allowed_count, int start_count, int waiter_count, void (*start)(int signum));