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.1 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