diff options
author | Lennart Poettering <lennart@poettering.net> | 2004-08-17 13:28:52 +0000 |
---|---|---|
committer | Lennart Poettering <lennart@poettering.net> | 2004-08-17 13:28:52 +0000 |
commit | bee750bbb3d9d7a64fa7f344ab42cdcfcb280a7e (patch) | |
tree | 65fa186106a07d71a74d5b347bc7b8a8e0e23b60 /polyp/mainloop-signal.h | |
parent | aff43ddabb87903823805ec49533cb99fb1aa771 (diff) |
create native-common-internal.h
git-svn-id: file:///home/lennart/svn/public/pulseaudio/trunk@131 fefdeb5f-60dc-0310-8127-8f9354f1896f
Diffstat (limited to 'polyp/mainloop-signal.h')
-rw-r--r-- | polyp/mainloop-signal.h | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/polyp/mainloop-signal.h b/polyp/mainloop-signal.h index 4dd6c552..0ff20827 100644 --- a/polyp/mainloop-signal.h +++ b/polyp/mainloop-signal.h @@ -27,14 +27,32 @@ PA_C_DECL_BEGIN +/** \file + * UNIX signal support for main loops. In contrast to other + * main loop event sources such as timer and IO events, UNIX signal + * support requires modification of the global process + * environment. Due to this the generic main loop abstraction layer as + * defined in \ref mainloop-api.h doesn't have direct support for UNIX + * signals. However, you may hook signal support into an abstract main loop via the routines defined herein. + */ + +/** Initialize the UNIX signal subsystem and bind it to the specified main loop */ int pa_signal_init(struct pa_mainloop_api *api); + +/** Cleanup the signal subsystem */ void pa_signal_done(void); +/** \struct pa_signal_event + * A UNIX signal event source object */ struct pa_signal_event; +/** Create a new UNIX signal event source object */ struct pa_signal_event* pa_signal_new(int signal, void (*callback) (struct pa_mainloop_api *api, struct pa_signal_event*e, int signal, void *userdata), void *userdata); + +/** Free a UNIX signal event source object */ void pa_signal_free(struct pa_signal_event *e); +/** Set a function that is called when the signal event source is destroyed. Use this to free the userdata argument if required */ void pa_signal_set_destroy(struct pa_signal_event *e, void (*callback) (struct pa_mainloop_api *api, struct pa_signal_event*e, void *userdata)); PA_C_DECL_END |