1
0
Fork 0
mutter-performance-source/cogl/cogl-glib-source.h
Neil Roberts 85d79ab4fa Add a utility to make a GSource out of a CoglContext
The GSource is created using cogl_glib_source_new which takes a
pointer to a CoglContext. The source calls cogl_poll_get_info() in its
prepare function and cogl_poll_dispatch() in its dispatch
function. The poll FDs on the source are updated according to what
Cogl reports.

The header is only included and the source only compiled if Cogl is
configured with GLib support.

Reviewed-by: Robert Bragg <robert@linux.intel.com>
2012-01-05 13:40:59 +00:00

59 lines
1.7 KiB
C

/*
* Cogl
*
* An object oriented GL/GLES Abstraction/Utility Layer
*
* Copyright (C) 2011 Intel Corporation.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library. If not, see <http://www.gnu.org/licenses/>.
*
*
*/
#if !defined(__COGL_H_INSIDE__) && !defined(CLUTTER_COMPILATION)
#error "Only <cogl/cogl.h> can be included directly."
#endif
#ifndef __COGL_GSOURCE_H__
#define __COGL_GSOURCE_H__
#include <glib.h>
#include <cogl/cogl-context.h>
G_BEGIN_DECLS
/**
* cogl_glib_source_new:
* @context: A #CoglContext
* @priority: The priority of the #GSource
*
* Creates a #GSource which handles Cogl's internal system event
* processing. This can be used as a convenience instead of
* cogl_poll_get_info() and cogl_poll_dispatch() in applications that
* are already using the GLib main loop. After this is called the
* #GSource should be attached to the main loop using
* g_source_attach().
*
* Return value: a new #GSource
*
* Stability: unstable
* Since: 1.10
*/
GSource *
cogl_glib_source_new (CoglContext *context,
int priority);
G_END_DECLS
#endif /* __COGL_GSOURCE_H__ */