|
PulseAudio
9.0
|
00001 #ifndef foomainloophfoo 00002 #define foomainloophfoo 00003 00004 /*** 00005 This file is part of PulseAudio. 00006 00007 Copyright 2004-2006 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, see <http://www.gnu.org/licenses/>. 00022 ***/ 00023 00024 #include <pulse/mainloop-api.h> 00025 #include <pulse/cdecl.h> 00026 00027 PA_C_DECL_BEGIN 00028 00029 struct pollfd; 00030 00078 typedef struct pa_mainloop pa_mainloop; 00079 00081 pa_mainloop *pa_mainloop_new(void); 00082 00084 void pa_mainloop_free(pa_mainloop* m); 00085 00089 int pa_mainloop_prepare(pa_mainloop *m, int timeout); 00090 00092 int pa_mainloop_poll(pa_mainloop *m); 00093 00096 int pa_mainloop_dispatch(pa_mainloop *m); 00097 00099 int pa_mainloop_get_retval(pa_mainloop *m); 00100 00107 int pa_mainloop_iterate(pa_mainloop *m, int block, int *retval); 00108 00110 int pa_mainloop_run(pa_mainloop *m, int *retval); 00111 00115 pa_mainloop_api* pa_mainloop_get_api(pa_mainloop*m); 00116 00118 void pa_mainloop_quit(pa_mainloop *m, int retval); 00119 00121 void pa_mainloop_wakeup(pa_mainloop *m); 00122 00124 typedef int (*pa_poll_func)(struct pollfd *ufds, unsigned long nfds, int timeout, void*userdata); 00125 00127 void pa_mainloop_set_poll_func(pa_mainloop *m, pa_poll_func poll_func, void *userdata); 00128 00129 PA_C_DECL_END 00130 00131 #endif