mainloop.h

Go to the documentation of this file.
00001 #ifndef foomainloophfoo
00002 #define foomainloophfoo
00003 
00004 /* $Id: mainloop.h 1426 2007-02-13 15:35:19Z ossman $ */
00005 
00006 /***
00007   This file is part of PulseAudio.
00008 
00009   Copyright 2004-2006 Lennart Poettering
00010   Copyright 2006 Pierre Ossman <ossman@cendio.se> for Cendio AB
00011 
00012   PulseAudio is free software; you can redistribute it and/or modify
00013   it under the terms of the GNU Lesser General Public License as published
00014   by the Free Software Foundation; either version 2 of the License,
00015   or (at your option) any later version.
00016 
00017   PulseAudio is distributed in the hope that it will be useful, but
00018   WITHOUT ANY WARRANTY; without even the implied warranty of
00019   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
00020   General Public License for more details.
00021 
00022   You should have received a copy of the GNU Lesser General Public License
00023   along with PulseAudio; if not, write to the Free Software
00024   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
00025   USA.
00026 ***/
00027 
00028 #include <pulse/mainloop-api.h>
00029 #include <pulse/cdecl.h>
00030 
00031 PA_C_DECL_BEGIN
00032 
00033 struct pollfd;
00034 
00079 typedef struct pa_mainloop pa_mainloop;
00080 
00082 pa_mainloop *pa_mainloop_new(void);
00083 
00085 void pa_mainloop_free(pa_mainloop* m);
00086 
00090 int pa_mainloop_prepare(pa_mainloop *m, int timeout);
00091 
00093 int pa_mainloop_poll(pa_mainloop *m);
00094 
00097 int pa_mainloop_dispatch(pa_mainloop *m);
00098 
00100 int pa_mainloop_get_retval(pa_mainloop *m);
00101 
00108 int pa_mainloop_iterate(pa_mainloop *m, int block, int *retval);
00109 
00111 int pa_mainloop_run(pa_mainloop *m, int *retval);
00112 
00114 pa_mainloop_api* pa_mainloop_get_api(pa_mainloop*m);
00115 
00117 void pa_mainloop_quit(pa_mainloop *m, int r);
00118 
00120 void pa_mainloop_wakeup(pa_mainloop *m);
00121 
00123 typedef int (*pa_poll_func)(struct pollfd *ufds, unsigned long nfds, int timeout, void*userdata);
00124 
00126 void pa_mainloop_set_poll_func(pa_mainloop *m, pa_poll_func poll_func, void *userdata);
00127 
00128 PA_C_DECL_END
00129 
00130 #endif

Generated on Tue Apr 24 02:06:15 2012 for PulseAudio by  doxygen 1.4.7