mutter/cogl/driver/gl
Robert Bragg 34658ea057 generalize driver description and selection
This adds a table of driver descriptions to cogl-renderer.c in order of
preference and when choosing what driver to use we now iterate the table
instead of repeating boilerplate checks. For handling the "default driver"
that can be specified when building cogl and handling driver overrides
there is a foreach_driver_description() that will make sure to iterate
the default driver first or if an override has been set then nothing but
the override will be considered.

This patch introduces some driver flags that let us broadly categorize
what kind of GL driver we are currently running on. Since there are
numerous OpenGL apis with different broad feature sets and new apis
may be introduced in the future by Khronos then we should tend to
avoid using the driver id to do runtime feature checking. These flags
provide a more stable quantity for broad feature checks.

Reviewed-by: Neil Roberts <neil@linux.intel.com>

(cherry picked from commit e07d0fc7441dddc3f0a2bc33a6a37d62ddc3efc0)
2013-08-23 14:51:43 +01:00
..
gl generalize driver description and selection 2013-08-23 14:51:43 +01:00
gles generalize driver description and selection 2013-08-23 14:51:43 +01:00
cogl-attribute-gl-private.h buffer: splits out GL specific code 2013-01-22 17:47:59 +00:00
cogl-attribute-gl.c generalize driver description and selection 2013-08-23 14:51:43 +01:00
cogl-buffer-gl-private.h Allow propogation of OOM errors to apps 2013-01-22 17:48:07 +00:00
cogl-buffer-gl.c buffer: Don't set the invalidate hint when requesting read access 2013-02-19 15:03:30 +00:00
cogl-clip-stack-gl-private.h clip-stack: Splits out opengl specific code 2013-01-22 17:47:59 +00:00
cogl-clip-stack-gl.c Separate out CoglPath api into sub-library 2013-08-19 22:44:35 +01:00
cogl-framebuffer-gl-private.h framebuffer: Bind the framebuffer before querying the bits 2013-01-22 17:48:18 +00:00
cogl-framebuffer-gl.c gl: ensure depth isn't masked during clear 2013-03-06 16:45:31 +00:00
cogl-pipeline-fragend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-fragend-fixed.c Remove cogl-internal.h 2013-01-22 17:48:17 +00:00
cogl-pipeline-fragend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-fragend-glsl.c generalize driver description and selection 2013-08-23 14:51:43 +01:00
cogl-pipeline-opengl-private.h pipeline: improve real_blend_enable checks 2013-06-06 21:27:09 +01:00
cogl-pipeline-opengl.c generalize driver description and selection 2013-08-23 14:51:43 +01:00
cogl-pipeline-progend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-progend-fixed.c generalize driver description and selection 2013-08-23 14:51:43 +01:00
cogl-pipeline-progend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-progend-glsl.c gl: bind position attribute to location 0 2013-08-19 22:44:45 +01:00
cogl-pipeline-vertend-fixed-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-vertend-fixed.c Don't generate GLSL for the point size for default pipelines 2013-06-21 14:18:37 +01:00
cogl-pipeline-vertend-glsl-private.h Re-organize the source layout 2013-01-22 17:47:19 +00:00
cogl-pipeline-vertend-glsl.c Don't generate GLSL for the point size for default pipelines 2013-06-21 14:18:37 +01:00
cogl-texture-2d-gl-private.h texture: remove _cogl_texture_prepare_for_upload 2013-07-29 16:31:44 +01:00
cogl-texture-2d-gl.c texture: remove _cogl_texture_prepare_for_upload 2013-07-29 16:31:44 +01:00
cogl-texture-gl-private.h Move _cogl_texture_get_gl_format to -texture-gl.c 2013-01-22 17:48:17 +00:00
cogl-texture-gl.c cogl-texture-gl.c: Don't include strings.h unconditionally 2013-08-19 22:44:45 +01:00
cogl-util-gl-private.h Add the layer's sampler and uniform declarations at the start 2013-02-27 15:53:43 +00:00
cogl-util-gl.c Add the layer's sampler and uniform declarations at the start 2013-02-27 15:53:43 +00:00