00001 #ifndef foomainloopsignalhfoo 00002 #define foomainloopsignalhfoo 00003 00004 /*** 00005 This file is part of PulseAudio. 00006 00007 Copyright 2004-2008 Lennart Poettering 00008 Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB 00009 00010 PulseAudio is free software; you can redistribute it and/or modify 00011 it under the terms of the GNU Lesser General Public License as published 00012 by the Free Software Foundation; either version 2 of the License, 00013 or (at your option) any later version. 00014 00015 PulseAudio is distributed in the hope that it will be useful, but 00016 WITHOUT ANY WARRANTY; without even the implied warranty of 00017 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00018 General Public License for more details. 00019 00020 You should have received a copy of the GNU Lesser General Public License 00021 along with PulseAudio; if not, write to the Free Software 00022 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 00023 USA. 00024 ***/ 00025 00026 #include <pulse/mainloop-api.h> 00027 #include <pulse/cdecl.h> 00028 00029 PA_C_DECL_BEGIN 00030 00041 typedef struct pa_signal_event pa_signal_event; 00042 00044 typedef void (*pa_signal_cb_t) (pa_mainloop_api *api, pa_signal_event*e, int sig, void *userdata); 00045 00047 typedef void (*pa_signal_destroy_cb_t) (pa_mainloop_api *api, pa_signal_event*e, void *userdata); 00048 00050 int pa_signal_init(pa_mainloop_api *api); 00051 00053 void pa_signal_done(void); 00054 00056 pa_signal_event* pa_signal_new(int sig, pa_signal_cb_t callback, void *userdata); 00057 00059 void pa_signal_free(pa_signal_event *e); 00060 00062 void pa_signal_set_destroy(pa_signal_event *e, pa_signal_destroy_cb_t callback); 00063 00064 PA_C_DECL_END 00065 00066 #endif