mirror of
https://github.com/brl/mutter.git
synced 2024-12-24 12:02:04 +00:00
a1234ee8d1
This adds a _cogl_init function for Cogl that we expect to be the first thing called before anything else is done with Cogl. It's not a public API so it's expected that all entry points for Cogl that might be the first function used should call _cogl_init(). We currently call _cogl_init() in these functions: cogl_renderer_new cogl_display_new cogl_context_new cogl_android_set_native_window _cogl_init() can be called multiple times, and only the first call has any affect. For example _cogl_init() gives us a place check and parse the COGL_DEBUG environment variable. Since we don't have any need to parse command line arguments (we can always get user configuration options from the environment) our init function doesn't require argc/argv pointers. By saying up front that we aren't interested in command line arguments that means we can avoid the mess that is GOption based library initialization which is extremely fragile due to its lack of dependency tracking between modules. Signed-off-by: Neil Roberts <neil@linux.intel.com>
57 lines
1.5 KiB
C
57 lines
1.5 KiB
C
/*
|
|
* Cogl
|
|
*
|
|
* An object oriented GL/GLES Abstraction/Utility Layer
|
|
*
|
|
* Copyright (C) 2010 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/>.
|
|
*
|
|
*
|
|
*/
|
|
|
|
#ifndef __COGL_PRIVATE_H__
|
|
#define __COGL_PRIVATE_H__
|
|
|
|
G_BEGIN_DECLS
|
|
|
|
gboolean
|
|
_cogl_gl_check_version (GError **error);
|
|
|
|
void
|
|
_cogl_gl_update_features (CoglContext *context);
|
|
|
|
gboolean
|
|
_cogl_check_extension (const char *name, const char *ext);
|
|
|
|
void
|
|
_cogl_clear (const CoglColor *color, unsigned long buffers);
|
|
|
|
void
|
|
_cogl_read_pixels_with_rowstride (int x,
|
|
int y,
|
|
int width,
|
|
int height,
|
|
CoglReadPixelsFlags source,
|
|
CoglPixelFormat format,
|
|
guint8 *pixels,
|
|
int rowstride);
|
|
|
|
void
|
|
_cogl_init (void);
|
|
|
|
G_END_DECLS
|
|
|
|
#endif /* __COGL_PRIVATE_H__ */
|