X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fjobs.h;h=a98b27ad8d25d84b8d3ba36994fd672749bd8830;hb=c186dfbdbd43f5b51a67812ad48e1df1eacf131e;hp=cf433892289234659c38e3435cc4fa94eff65a90;hpb=162436f4ffbbf63d867735f7de5b78dcd684f890;p=src%2Fapp-framework-binder.git diff --git a/src/jobs.h b/src/jobs.h index cf433892..a98b27ad 100644 --- a/src/jobs.h +++ b/src/jobs.h @@ -17,6 +17,9 @@ #pragma once +struct sd_event; +struct jobloop; + extern int jobs_queue0( void *group, int timeout, @@ -43,32 +46,23 @@ extern int jobs_queue3( void *arg2, void *arg3); -extern int jobs_invoke0( +extern int jobs_enter( + void *group, int timeout, - void (*callback)(int signum)); + void (*callback)(int signum, void *closure, struct jobloop *jobloop), + void *closure); -extern int jobs_invoke( - int timeout, - void (*callback)(int signum, void* arg), - void *arg); +extern int jobs_leave(struct jobloop *jobloop); -extern int jobs_invoke2( - int timeout, - void (*callback)(int signum, void* arg1, void *arg2), - void *arg1, - void *arg2); - -extern int jobs_invoke3( +extern int jobs_call( + void *group, int timeout, - void (*callback)(int signum, void* arg1, void *arg2, void *arg3), - void *arg1, - void *arg2, - void *arg3); + void (*callback)(int, void*), + void *arg); -extern int jobs_add_event_loop(void *key, int timeout, void (*evloop)(int, void*), void *closure); +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_start(int allowed_count, int start_count, int waiter_count, void (*start)());