mutter/cogl
Robert Bragg a1234ee8d1 Add internal _cogl_init() function
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>
2011-06-30 14:33:11 +01:00
..
driver Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
tesselator build: Do not build a noinst library for the tesselator 2010-09-12 19:25:47 +01:00
winsys Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl2-clip-state.c framebuffer: expose experimental cogl_get_draw_framebuffer 2011-04-11 15:28:53 +01:00
cogl2-clip-state.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl2-path.c Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl2-path.h path 2.0: update path API for experimental 2.0 API 2010-11-11 13:17:26 +00:00
cogl-1.0.pc.in Give cogl-pango it's own pkg-config file 2011-05-06 12:12:08 +01:00
cogl-2.0-experimental.pc.in Make it clearer that the 2.0 API is experimental 2011-06-14 17:09:55 +01:00
cogl-atlas-texture-private.h cogl-atlas-texture: Add a callback for when any atlas reorganizes 2011-05-05 17:32:28 +01:00
cogl-atlas-texture.c cogl-atlas-texture: Add a callback for when any atlas reorganizes 2011-05-05 17:32:28 +01:00
cogl-atlas.c Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
cogl-atlas.h cogl: Use GHookList instead of CoglCallbackList 2011-03-14 18:18:15 +00:00
cogl-attribute-buffer-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-buffer.c Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-buffer.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-attribute-private.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-attribute.c Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-attribute.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-bitmap-fallback.c cogl-bitmap: Encapsulate the CoglBitmap even internally 2010-07-15 17:24:01 +01:00
cogl-bitmap-pixbuf.c Fix ISO C90 compiler warnings in Cogl 2011-02-15 12:40:11 +00:00
cogl-bitmap-private.h cogl-bitmap-private.h: Include cogl-bitmap.h 2011-05-05 17:32:29 +01:00
cogl-bitmap.c cogl-texture: Don't use the source rowstride if we have to copy bitmap 2011-01-10 16:54:58 +00:00
cogl-bitmap.h docs: Fixes for the Cogl API reference 2010-12-22 09:52:35 +00:00
cogl-bitmask.c cogl-vertex-attribute: Use glVertexAttribPointer on GLES2 2010-12-13 17:28:29 +00:00
cogl-bitmask.h cogl-context: Store winsys features in an array of unsigned ints 2011-04-20 18:20:10 +01:00
cogl-blend-string.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-blend-string.h blend-strings: removes the AUTO_COMPOSITE function enum 2010-06-15 15:26:27 +01:00
cogl-blit.c Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
cogl-blit.h cogl-atlas: Try 4 different approaches for migrating textures 2011-02-15 12:10:54 +00:00
cogl-buffer-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-buffer.c Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-buffer.h docs: Fixes for the Cogl API reference 2010-12-22 09:52:35 +00:00
cogl-clip-stack.c Make cogl_framebuffer_get_width/height experimental public API 2011-04-11 17:54:36 +01:00
cogl-clip-stack.h clip-stack: Adds _cogl_clip_stack_get_bounds API 2011-01-21 16:18:10 +00:00
cogl-clip-state-private.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl-clip-state.c framebuffer: expose experimental cogl_get_draw_framebuffer 2011-04-11 15:28:53 +01:00
cogl-clip-state.h cogl-clip-state: Adapt to experimental cogl2 API. 2011-03-10 13:05:43 +00:00
cogl-clutter.c Make stub winsys into a proper winsys backend 2011-06-01 20:44:41 +01:00
cogl-clutter.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-color-private.h pipeline: Implements _cogl_pipeline_hash function 2010-12-07 16:00:32 +00:00
cogl-color.c cogl-color: add cogl_color_init_from_xyz funcs 2010-06-15 15:26:27 +01:00
cogl-color.h cogl-color: add cogl_color_init_from_xyz funcs 2010-06-15 15:26:27 +01:00
cogl-context-private.h Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-context.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-context.h android: Expose the only android specific symbol as experimental 2011-05-17 15:24:55 +01:00
cogl-debug-options.h cogl-debug: Add an option to disable atlasing sharing 2011-05-05 17:32:31 +01:00
cogl-debug.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-debug.h Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-defines.h.in Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-deprecated.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-depth-state-private.h Adds missing cogl-depth-state-private.h 2011-05-16 18:45:51 +01:00
cogl-depth-state.c Revert "Do not use "near" and "far" variables" 2011-06-14 14:40:27 +01:00
cogl-depth-state.h Fix some gtk-doc annotations in cogl-depth-state.h 2011-06-14 17:09:55 +01:00
cogl-display-glx-private.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-display-private.h Adds _cogl_wayland_texture_2d_new_from_buffer API 2011-06-01 20:44:42 +01:00
cogl-display-xlib-private.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-display.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-display.h Adds _cogl_wayland_texture_2d_new_from_buffer API 2011-06-01 20:44:42 +01:00
cogl-enum-types.c.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-enum-types.h.in Intial Re-layout of the Cogl source code and introduction of a Cogl Winsys 2009-10-16 18:58:50 +01:00
cogl-euler.c math: Adds an experimental euler API 2011-05-16 14:12:42 +01:00
cogl-euler.h Add compile time checks for size of public structs 2011-05-16 14:12:49 +01:00
cogl-feature-private.c Add internal _cogl_get_proc_address 2011-06-01 20:44:41 +01:00
cogl-feature-private.h egl: Check EGL extension as early as possible 2011-06-01 20:44:41 +01:00
cogl-fixed.c Fixed "the the" repetitions in some doc strings 2010-11-25 18:18:51 +00:00
cogl-fixed.h analysis: Fix some CoglFixed API 2010-06-01 12:08:18 +01:00
cogl-flags.h cogl-context: Store winsys features in an array of unsigned ints 2011-04-20 18:20:10 +01:00
cogl-framebuffer-private.h Add a WGL winsys 2011-05-10 17:58:41 +01:00
cogl-framebuffer.c Typo fix in cogl-framebuffer 2011-06-16 00:27:13 +01:00
cogl-framebuffer.h wayland: Allow setting foreign display/compositor 2011-05-11 16:46:52 +01:00
cogl-gtype-private.h matrix gtype: registers a boxed type for CoglMatrix 2010-12-07 12:16:50 +00:00
cogl-handle.h CoglObject: Adds cogl_object_{get,set}_user_data 2010-06-04 14:44:15 +01:00
cogl-index-buffer-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-index-buffer.c Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-index-buffer.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices-private.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices.c Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-indices.h Rename CoglIndexArray to CoglIndexBuffer 2011-05-16 14:31:31 +01:00
cogl-internal.h Adds _cogl_wayland_texture_2d_new_from_buffer API 2011-06-01 20:44:42 +01:00
cogl-journal-private.h cogl-journal: Use a pool of vertex arrays 2011-06-01 14:41:59 +01:00
cogl-journal.c cogl-journal: Use a pool of vertex arrays 2011-06-01 14:41:59 +01:00
cogl-material-compat.c Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-material-compat.h Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-matrix-mesa.c math: Adds an experimental quaternion API 2011-05-16 14:11:47 +01:00
cogl-matrix-mesa.h math: Adds an experimental quaternion API 2011-05-16 14:11:47 +01:00
cogl-matrix-private.h cogl-debug: Split the flags to support more than 32 2011-01-24 15:45:45 +00:00
cogl-matrix-stack.c framebuffer: expose experimental cogl_get_draw_framebuffer 2011-04-11 15:28:53 +01:00
cogl-matrix-stack.h cogl: upload matrices with uniforms on GLES2 2010-12-13 17:29:13 +00:00
cogl-matrix.c math: Adds an experimental quaternion API 2011-05-16 14:11:47 +01:00
cogl-matrix.h Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-object-private.h cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-object.c cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-object.h cogl-debug: add instrumentation to track the number of objects 2011-06-14 12:14:02 +01:00
cogl-offscreen.h Add some more introspection annotations 2010-09-06 16:11:46 +01:00
cogl-onscreen-template-private.h Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-onscreen-template.c Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-onscreen-template.h Adds renderer,display,onscreen-template and swap-chain stubs 2011-04-11 17:54:35 +01:00
cogl-pango.h deprecate #include <cogl/cogl-pango.h> 2011-05-16 13:28:17 +01:00
cogl-path-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-path.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-path.h docs: Fixes for the Cogl API reference 2010-12-22 09:52:35 +00:00
cogl-pipeline-fragend-arbfp-private.h Rename CoglPipelineBackend to CoglPipelineFragend 2010-12-13 17:22:57 +00:00
cogl-pipeline-fragend-arbfp.c Implement COGL_DEBUG=disable-texturing for ARBFp and GLSL fragends 2011-06-08 18:03:58 +01:00
cogl-pipeline-fragend-fixed-private.h Rename CoglPipelineBackend to CoglPipelineFragend 2010-12-13 17:22:57 +00:00
cogl-pipeline-fragend-fixed.c cogl-pipeline-fragend-fixed: Fix enabling texture targets 2011-05-27 11:59:17 +01:00
cogl-pipeline-fragend-glsl-private.h cogl: Add a GLSL 'progend' 2010-12-13 17:22:57 +00:00
cogl-pipeline-fragend-glsl.c Implement COGL_DEBUG=disable-texturing for ARBFp and GLSL fragends 2011-06-08 18:03:58 +01:00
cogl-pipeline-opengl-private.h cogl-pipeline: Move texture enabling/disabling to fixed fragend 2010-12-13 17:22:57 +00:00
cogl-pipeline-opengl.c cogl-pipeline-opengl: Don't use number of tex units on fixed-function 2011-05-27 11:59:17 +01:00
cogl-pipeline-private.h Remove G_CONST_RETURN 2011-06-09 16:21:15 +01:00
cogl-pipeline-progend-glsl-private.h cogl: rename CoglVertexAttribute CoglAttribute 2011-01-21 16:24:14 +00:00
cogl-pipeline-progend-glsl.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-pipeline-vertend-fixed-private.h cogl: Add a fixed function vertend 2010-12-13 17:22:57 +00:00
cogl-pipeline-vertend-fixed.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-pipeline-vertend-glsl-private.h cogl: Add a vertend to generate GLSL 2010-12-13 17:28:28 +00:00
cogl-pipeline-vertend-glsl.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-pipeline.c pipeline: Fix argument checking in set_depth_state() 2011-05-18 11:50:56 +01:00
cogl-pipeline.h Add CoglDepthState API 2011-05-16 18:36:44 +01:00
cogl-pixel-buffer-private.h Rename CoglPixelArray to CoglPixelBuffer 2011-05-16 14:31:31 +01:00
cogl-pixel-buffer.c Rename CoglPixelArray to CoglPixelBuffer 2011-05-16 14:31:31 +01:00
cogl-pixel-buffer.h Rename CoglPixelArray to CoglPixelBuffer 2011-05-16 14:31:31 +01:00
cogl-point-in-poly-private.h util: tune point_in_poly test for polys in screen coords 2011-03-07 13:26:19 +00:00
cogl-point-in-poly.c util: tune point_in_poly test for polys in screen coords 2011-03-07 13:26:19 +00:00
cogl-primitive-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-primitive.c cogl-primitive: Fix some broken changes for removal of NULL terminator 2011-05-16 18:34:22 +01:00
cogl-primitive.h Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-primitives-private.h cogl: Don't flush the journal when flushing clip state 2010-11-04 18:10:08 +00:00
cogl-primitives.c Don't pass around NULL terminated CoglAttribute arrays 2011-05-16 14:32:37 +01:00
cogl-primitives.h Use begin/end macros in cogl-primitives.h 2010-03-25 09:33:26 +00:00
cogl-private.h Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-profile.c cogl-debug: Split the flags to support more than 32 2011-01-24 15:45:45 +00:00
cogl-profile.h Initialize the cogl uprof state in cogl_create_context 2010-09-14 12:43:17 +01:00
cogl-program-private.h cogl-program: Add private functions to check if have each shader type 2010-12-13 17:22:57 +00:00
cogl-program.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-quaternion-private.h math: Adds an experimental quaternion API 2011-05-16 14:11:47 +01:00
cogl-quaternion.c math: Adds an experimental euler API 2011-05-16 14:12:42 +01:00
cogl-quaternion.h doc: fix the name of the cogl_quaternion_equal args 2011-05-16 17:08:30 +01:00
cogl-rectangle-map.c debug: Allow to compile a debug Cogl without cairo 2011-05-17 15:24:54 +01:00
cogl-rectangle-map.h cogl-atlas: Rename to CoglRectangleMap 2010-08-12 11:54:42 +01:00
cogl-renderer-glx-private.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-renderer-private.h Adds wayland support to the cogl EGL winsys 2011-05-10 16:36:40 +01:00
cogl-renderer-x11-private.h Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-renderer-xlib-private.h remove _cogl_xlib_trap/untrap_errors wrappers 2011-06-01 20:44:42 +01:00
cogl-renderer-xlib.c cogl-renderer: Move the XEvent filters to be generic for all renderers 2011-04-20 18:17:06 +01:00
cogl-renderer.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl-renderer.h replace _xlib_add_filter use with _cogl_renderer API 2011-06-01 20:44:42 +01:00
cogl-shader-boilerplate.h cogl-shader-boilerplate: Specify default precision earlier 2011-03-08 13:21:24 +00:00
cogl-shader-private.h Revert "cogl: Remove the generated array size for cogl_tex_coord_in" 2010-12-03 15:27:17 +00:00
cogl-shader.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-shader.h cogl-shader: Add deprecation guards for cogl_program_uniform_* 2010-09-03 16:59:01 +01:00
cogl-spans.c Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-spans.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-sub-texture-private.h Remove mentions of the FSF address 2010-03-01 12:56:10 +00:00
cogl-sub-texture.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-swap-chain-private.h EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-swap-chain.c EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-swap-chain.h EGL: Updates GDL platform support 2011-05-05 14:46:02 +01:00
cogl-texture-2d-private.h Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-texture-2d-sliced-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-2d-sliced.c Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
cogl-texture-2d.c Adds _cogl_wayland_texture_2d_new_from_buffer API 2011-06-01 20:44:42 +01:00
cogl-texture-2d.h include required cogl-context.h in cogl-texture-2d.h 2011-06-14 17:09:55 +01:00
cogl-texture-3d-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-3d.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-texture-3d.h Add a Cogl texture 3D backend 2010-07-13 14:28:52 +01:00
cogl-texture-driver.h Add a Cogl texture 3D backend 2010-07-13 14:28:52 +01:00
cogl-texture-private.h journal: Support per-framebuffer journals 2011-01-21 16:18:10 +00:00
cogl-texture-rectangle-private.h cogl: rename CoglMaterial -> CoglPipeline 2010-11-03 18:09:23 +00:00
cogl-texture-rectangle.c cogl: rename cogl-context.h cogl-context-private.h 2011-04-11 15:18:12 +01:00
cogl-texture.c Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
cogl-texture.h Add _cogl_egl_texture_2d_new_from_image API 2011-06-01 20:44:42 +01:00
cogl-types.h Add compile time checks for size of public structs 2011-05-16 14:12:49 +01:00
cogl-util.c Moves all GLX code down from Clutter to Cogl 2011-04-11 17:54:36 +01:00
cogl-util.h cogl-util: Add an internal wrapper for the ffs function 2011-01-10 16:55:00 +00:00
cogl-vector.c math: Adds an experimental cogl_vector3_* API 2010-05-20 17:18:24 +01:00
cogl-vector.h cogl: declare experimental symbols consistently 2010-06-30 18:51:31 +01:00
cogl-vertex-buffer-private.h Rename CoglVertexArray to CoglAttributeBuffer 2011-05-16 14:31:31 +01:00
cogl-vertex-buffer.c cogl-vertex-buffer: make sure to unref weak pipelines 2011-06-13 17:48:23 +01:00
cogl-vertex-buffer.h docs: clarify cogl_vertex_buffer_adds docs 2011-02-09 19:12:12 +00:00
cogl-xlib-private.h replace _xlib_add_filter use with _cogl_renderer API 2011-06-01 20:44:42 +01:00
cogl-xlib.c replace _xlib_add_filter use with _cogl_renderer API 2011-06-01 20:44:42 +01:00
cogl-xlib.h cogl-renderer: Move the XEvent filters to be generic for all renderers 2011-04-20 18:17:06 +01:00
cogl.c Add internal _cogl_init() function 2011-06-30 14:33:11 +01:00
cogl.h Make CoglTexture2D public as experimental API 2011-06-01 20:44:41 +01:00
Makefile.am Fixes for make distcheck 2011-06-14 17:09:55 +01:00
stb_image.c Update stb_image.c 2010-03-03 17:02:51 +00:00