X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=unit.h;h=338a58b00981c1d79e724fbaa99f6c5a5e677171;hp=c0423354d10336e1da0bc526b6008873ddc26731;hb=09e80b16f2f9ee14949baee519b097a0962ff2ba;hpb=9e2f7c11fb6ba35ffec2274da3e2d08b10d23965 diff --git a/unit.h b/unit.h index c0423354d..338a58b00 100644 --- a/unit.h +++ b/unit.h @@ -250,8 +250,17 @@ struct UnitVTable { void (*sigchld_event)(Unit *u, pid_t pid, int code, int status); void (*timer_event)(Unit *u, uint64_t n_elapsed, Watch *w); + /* Called whenever any of the cgroups this unit watches for + * ran empty */ void (*cgroup_notify_empty)(Unit *u); + /* Called whenever a name thus Unit registered for comes or + * goes away. */ + void (*bus_name_owner_change)(Unit *u, const char *name, const char *old_owner, const char *new_owner); + + /* Called whenever a bus PID lookup finishes */ + void (*bus_query_pid_done)(Unit *u, const char *name, pid_t pid); + /* This is called for each unit type and should be used to * enumerate existing devices and load them. However, * everything that is loaded here should still stay in @@ -348,6 +357,9 @@ void unit_unwatch_pid(Unit *u, pid_t pid); int unit_watch_timer(Unit *u, usec_t delay, Watch *w); void unit_unwatch_timer(Unit *u, Watch *w); +int unit_watch_bus_name(Unit *u, const char *name); +void unit_unwatch_bus_name(Unit *u, const char *name); + bool unit_job_is_applicable(Unit *u, JobType j); int set_unit_path(const char *p);