X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fjobs.h;h=f461342cd3b05821b239c2ddf8cd0a8611fd10aa;hb=e28787235090fdf2be6626e1e0a7e02314013652;hp=ef72e0c12ddcebcf3f5d59603b4d7c5b985f7310;hpb=feccdb76f572a5fad947475c21b5b9aff696b04b;p=src%2Fapp-framework-binder.git diff --git a/src/jobs.h b/src/jobs.h index ef72e0c1..f461342c 100644 --- a/src/jobs.h +++ b/src/jobs.h @@ -17,28 +17,32 @@ #pragma once +struct sd_event; +struct jobloop; + extern int jobs_queue( void *group, int timeout, 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_leave(struct jobloop *jobloop); -extern int jobs_queue3( +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 struct sd_event *jobs_get_sd_event(); -extern int jobs_init(int allowed_count, int start_count, int waiter_count); extern void jobs_terminate(); +extern int jobs_start(int allowed_count, int start_count, int waiter_count, void (*start)(int signum));