]>
git.ipfire.org Git - people/ms/systemd.git/blob - manager.h
1 /*-*- Mode: C; c-basic-offset: 8 -*-*/
9 typedef struct Manager Manager
;
18 uint32_t current_job_id
;
20 /* Active jobs and names */
21 Hashmap
*names
; /* name string => Name object n:1 */
22 Hashmap
*jobs
; /* job id => Job object 1:1 */
24 /* Names that need to be loaded */
25 LIST_HEAD(Meta
, load_queue
); /* this is actually more a stack than a queue, but uh. */
27 /* Jobs to be added resp. removed. */
28 Hashmap
*jobs_to_add
; /* Name object => Job object 1:1 */
32 Manager
* manager_new(void);
33 void manager_free(Manager
*m
);
35 Job
*manager_get_job(Manager
*m
, uint32_t id
);
36 Name
*manager_get_name(Manager
*m
, const char *name
);
38 int manager_load_name(Manager
*m
, const char *name
, Name
**_ret
);
39 int manager_add_job(Manager
*m
, JobType job
, Name
*name
, JobMode mode
, Job
**_ret
);