Home | History | Annotate | Download | only in pulse
      1 #ifndef fooglibmainloophfoo
      2 #define fooglibmainloophfoo
      3 
      4 /***
      5   This file is part of PulseAudio.
      6 
      7   Copyright 2004-2006 Lennart Poettering
      8   Copyright 2006 Pierre Ossman <ossman (at) cendio.se> for Cendio AB
      9 
     10   PulseAudio is free software; you can redistribute it and/or modify
     11   it under the terms of the GNU Lesser General Public License as published
     12   by the Free Software Foundation; either version 2.1 of the License,
     13   or (at your option) any later version.
     14 
     15   PulseAudio is distributed in the hope that it will be useful, but
     16   WITHOUT ANY WARRANTY; without even the implied warranty of
     17   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
     18   General Public License for more details.
     19 
     20   You should have received a copy of the GNU Lesser General Public License
     21   along with PulseAudio; if not, write to the Free Software
     22   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
     23   USA.
     24 ***/
     25 
     26 #include <glib.h>
     27 
     28 #include <pulse/mainloop-api.h>
     29 #include <pulse/cdecl.h>
     30 #include <pulse/version.h>
     31 
     32 /** \page glib-mainloop GLIB Main Loop Bindings
     33  *
     34  * \section overv_sec Overview
     35  *
     36  * The GLIB main loop bindings are extremely easy to use. All that is
     37  * required is to create a pa_glib_mainloop object using
     38  * pa_glib_mainloop_new(). When the main loop abstraction is needed, it is
     39  * provided by pa_glib_mainloop_get_api().
     40  *
     41  */
     42 
     43 /** \file
     44  * GLIB main loop support */
     45 
     46 PA_C_DECL_BEGIN
     47 
     48 /** An opaque GLIB main loop object */
     49 typedef struct pa_glib_mainloop pa_glib_mainloop;
     50 
     51 /** Create a new GLIB main loop object for the specified GLIB main
     52  * loop context. Takes an argument c for the
     53  * GMainContext to use. If c is NULL the default context is used. */
     54 pa_glib_mainloop *pa_glib_mainloop_new(GMainContext *c);
     55 
     56 /** Free the GLIB main loop object */
     57 void pa_glib_mainloop_free(pa_glib_mainloop* g);
     58 
     59 /** Return the abstract main loop API vtable for the GLIB main loop
     60     object. No need of freeing the API as it is owned by the loop and
     61     it is destroyed when this dies */
     62 pa_mainloop_api* pa_glib_mainloop_get_api(pa_glib_mainloop *g);
     63 
     64 PA_C_DECL_END
     65 
     66 #endif
     67