[cogl] Remove cogl-internal.h
- From: Robert Bragg <rbragg src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [cogl] Remove cogl-internal.h
- Date: Wed, 2 Jan 2013 18:26:30 +0000 (UTC)
commit 01cc82ece091aa3bec4c07fdd6bc9e5135fca573
Author: Robert Bragg <robert linux intel com>
Date: Tue Nov 20 18:58:05 2012 +0000
Remove cogl-internal.h
This remove cogl-internal.h in favour of using cogl-private.h. Some
things in cogl-internal.h were moved to driver/gl/cogl-util-gl-private.h
and the _cogl_gl_error_to_string function whose prototype was moved from
cogl-internal.h to cogl-util-gl-private.h has had its implementation
moved from cogl.c to cogl-util-gl.c
Reviewed-by: Neil Roberts <neil linux intel com>
cogl/Makefile.am | 1 -
cogl/cogl-atlas-texture.c | 1 -
cogl/cogl-bitmap-pixbuf.c | 1 -
cogl/cogl-blend-string.c | 1 -
cogl/cogl-boxed-value.c | 1 +
cogl/cogl-buffer.c | 1 -
cogl/cogl-clip-stack.c | 1 -
cogl/cogl-clip-state.c | 1 -
cogl/cogl-context-private.h | 1 -
cogl/cogl-context.c | 2 +-
cogl/cogl-display-private.h | 1 -
cogl/cogl-display.c | 1 -
cogl/cogl-driver.h | 12 ++
cogl/cogl-feature-private.h | 1 -
cogl/cogl-framebuffer.c | 2 +-
cogl/cogl-glsl-shader.c | 2 +-
cogl/cogl-internal.h | 133 -----------------------
cogl/cogl-journal.c | 1 -
cogl/cogl-matrix-stack.c | 2 +-
cogl/cogl-path.c | 1 -
cogl/cogl-pipeline-layer-private.h | 2 +-
cogl/cogl-pipeline-private.h | 2 +-
cogl/cogl-pipeline.c | 1 -
cogl/cogl-primitives.c | 1 -
cogl/cogl-private.h | 44 ++++++++
cogl/cogl-renderer-private.h | 1 -
cogl/cogl-renderer.c | 2 +-
cogl/cogl-sampler-cache.c | 1 +
cogl/cogl-spans.c | 1 -
cogl/cogl-sub-texture.c | 1 -
cogl/cogl-texture.c | 1 -
cogl/cogl-xlib-renderer.c | 1 -
cogl/cogl-xlib.c | 1 -
cogl/cogl.c | 39 -------
cogl/driver/gl/cogl-attribute-gl.c | 1 +
cogl/driver/gl/cogl-clip-stack-gl.c | 1 +
cogl/driver/gl/cogl-framebuffer-gl.c | 1 +
cogl/driver/gl/cogl-pipeline-fragend-fixed.c | 2 +-
cogl/driver/gl/cogl-pipeline-fragend-glsl.c | 2 +-
cogl/driver/gl/cogl-pipeline-opengl.c | 1 +
cogl/driver/gl/cogl-pipeline-progend-glsl.c | 2 +-
cogl/driver/gl/cogl-pipeline-vertend-fixed.c | 2 +-
cogl/driver/gl/cogl-pipeline-vertend-glsl.c | 2 +-
cogl/driver/gl/cogl-texture-gl.c | 2 +-
cogl/driver/gl/cogl-util-gl-private.h | 36 ++++++
cogl/driver/gl/cogl-util-gl.c | 39 +++++++-
cogl/driver/gl/gl/cogl-driver-gl.c | 2 +-
cogl/driver/gl/gl/cogl-pipeline-fragend-arbfp.c | 2 +-
cogl/driver/gl/gles/cogl-driver-gles.c | 2 +-
cogl/driver/nop/cogl-driver-nop.c | 1 -
cogl/winsys/cogl-texture-pixmap-x11.c | 1 -
doc/reference/cogl2/Makefile.am | 1 -
52 files changed, 152 insertions(+), 213 deletions(-)
---
diff --git a/cogl/Makefile.am b/cogl/Makefile.am
index 530a809..75679bd 100644
--- a/cogl/Makefile.am
+++ b/cogl/Makefile.am
@@ -252,7 +252,6 @@ cogl_sources_c = \
$(srcdir)/cogl-display-private.h \
$(srcdir)/cogl-display.h \
$(srcdir)/cogl-display.c \
- $(srcdir)/cogl-internal.h \
$(srcdir)/cogl-driver.h \
$(srcdir)/cogl.c \
$(srcdir)/cogl-object-private.h \
diff --git a/cogl/cogl-atlas-texture.c b/cogl/cogl-atlas-texture.c
index e878a3a..a3e9e7e 100644
--- a/cogl/cogl-atlas-texture.c
+++ b/cogl/cogl-atlas-texture.c
@@ -29,7 +29,6 @@
#endif
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-texture-private.h"
#include "cogl-atlas-texture-private.h"
diff --git a/cogl/cogl-bitmap-pixbuf.c b/cogl/cogl-bitmap-pixbuf.c
index 855c997..a02b253 100644
--- a/cogl/cogl-bitmap-pixbuf.c
+++ b/cogl/cogl-bitmap-pixbuf.c
@@ -26,7 +26,6 @@
#endif
#include "cogl-util.h"
-#include "cogl-internal.h"
#include "cogl-bitmap-private.h"
#include "cogl-context-private.h"
#include "cogl-private.h"
diff --git a/cogl/cogl-blend-string.c b/cogl/cogl-blend-string.c
index 7d4c2e5..f62e8c0 100644
--- a/cogl/cogl-blend-string.c
+++ b/cogl/cogl-blend-string.c
@@ -33,7 +33,6 @@
#include <glib.h>
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-debug.h"
#include "cogl-blend-string.h"
diff --git a/cogl/cogl-boxed-value.c b/cogl/cogl-boxed-value.c
index 59ff3b6..f82f78b 100644
--- a/cogl/cogl-boxed-value.c
+++ b/cogl/cogl-boxed-value.c
@@ -29,6 +29,7 @@
#include "cogl-boxed-value.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
CoglBool
_cogl_boxed_value_equal (const CoglBoxedValue *bva,
diff --git a/cogl/cogl-buffer.c b/cogl/cogl-buffer.c
index 16fddf7..4edfa54 100644
--- a/cogl/cogl-buffer.c
+++ b/cogl/cogl-buffer.c
@@ -38,7 +38,6 @@
#include <string.h>
#include <glib.h>
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/cogl-clip-stack.c b/cogl/cogl-clip-stack.c
index 0fc8dbe..9db3b0e 100644
--- a/cogl/cogl-clip-stack.c
+++ b/cogl/cogl-clip-stack.c
@@ -33,7 +33,6 @@
#include "cogl-clip-stack.h"
#include "cogl-context-private.h"
-#include "cogl-internal.h"
#include "cogl-framebuffer-private.h"
#include "cogl-journal-private.h"
#include "cogl-util.h"
diff --git a/cogl/cogl-clip-state.c b/cogl/cogl-clip-state.c
index 464bc61..cddb388 100644
--- a/cogl/cogl-clip-state.c
+++ b/cogl/cogl-clip-state.c
@@ -33,7 +33,6 @@
#include "cogl-clip-stack.h"
#include "cogl-clip-state-private.h"
#include "cogl-context-private.h"
-#include "cogl-internal.h"
#include "cogl-framebuffer-private.h"
#include "cogl-journal-private.h"
#include "cogl-util.h"
diff --git a/cogl/cogl-context-private.h b/cogl/cogl-context-private.h
index 73de061..5b81338 100644
--- a/cogl/cogl-context-private.h
+++ b/cogl/cogl-context-private.h
@@ -24,7 +24,6 @@
#ifndef __COGL_CONTEXT_PRIVATE_H
#define __COGL_CONTEXT_PRIVATE_H
-#include "cogl-internal.h"
#include "cogl-context.h"
#include "cogl-winsys-private.h"
#include "cogl-flags.h"
diff --git a/cogl/cogl-context.c b/cogl/cogl-context.c
index 30d4f21..45834e1 100644
--- a/cogl/cogl-context.c
+++ b/cogl/cogl-context.c
@@ -26,13 +26,13 @@
#endif
#include "cogl-object.h"
-#include "cogl-internal.h"
#include "cogl-private.h"
#include "cogl-winsys-private.h"
#include "winsys/cogl-winsys-stub-private.h"
#include "cogl-profile.h"
#include "cogl-util.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-display-private.h"
#include "cogl-renderer-private.h"
#include "cogl-journal-private.h"
diff --git a/cogl/cogl-display-private.h b/cogl/cogl-display-private.h
index 850cd63..04e3d32 100644
--- a/cogl/cogl-display-private.h
+++ b/cogl/cogl-display-private.h
@@ -29,7 +29,6 @@
#include "cogl-display.h"
#include "cogl-renderer.h"
#include "cogl-onscreen-template.h"
-#include "cogl-internal.h"
#ifdef COGL_HAS_WAYLAND_EGL_SERVER_SUPPORT
#include <wayland-server.h>
#endif
diff --git a/cogl/cogl-display.c b/cogl/cogl-display.c
index ec5f88a..d943c2c 100644
--- a/cogl/cogl-display.c
+++ b/cogl/cogl-display.c
@@ -32,7 +32,6 @@
#include "cogl-private.h"
#include "cogl-object.h"
-#include "cogl-internal.h"
#include "cogl-display-private.h"
#include "cogl-renderer-private.h"
diff --git a/cogl/cogl-driver.h b/cogl/cogl-driver.h
index ba6e030..03afc1a 100644
--- a/cogl/cogl-driver.h
+++ b/cogl/cogl-driver.h
@@ -267,5 +267,17 @@ struct _CoglDriverVtable
CoglError **error);
};
+#define COGL_DRIVER_ERROR (_cogl_driver_error_domain ())
+
+typedef enum { /*< prefix=COGL_DRIVER_ERROR >*/
+ COGL_DRIVER_ERROR_UNKNOWN_VERSION,
+ COGL_DRIVER_ERROR_INVALID_VERSION,
+ COGL_DRIVER_ERROR_NO_SUITABLE_DRIVER_FOUND,
+ COGL_DRIVER_ERROR_FAILED_TO_LOAD_LIBRARY
+} CoglDriverError;
+
+uint32_t
+_cogl_driver_error_domain (void);
+
#endif /* __COGL_DRIVER_H */
diff --git a/cogl/cogl-feature-private.h b/cogl/cogl-feature-private.h
index 1207f9e..40acee4 100644
--- a/cogl/cogl-feature-private.h
+++ b/cogl/cogl-feature-private.h
@@ -26,7 +26,6 @@
#include <glib.h>
-#include "cogl-internal.h"
#define COGL_CHECK_GL_VERSION(driver_major, driver_minor, \
target_major, target_minor) \
diff --git a/cogl/cogl-framebuffer.c b/cogl/cogl-framebuffer.c
index dd81001..b26de2b 100644
--- a/cogl/cogl-framebuffer.c
+++ b/cogl/cogl-framebuffer.c
@@ -29,8 +29,8 @@
#include <string.h>
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-display-private.h"
#include "cogl-renderer-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/cogl-glsl-shader.c b/cogl/cogl-glsl-shader.c
index fc3c4f0..993ba24 100644
--- a/cogl/cogl-glsl-shader.c
+++ b/cogl/cogl-glsl-shader.c
@@ -31,9 +31,9 @@
#endif
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-glsl-shader-private.h"
#include "cogl-glsl-shader-boilerplate.h"
-#include "cogl-internal.h"
#include <string.h>
diff --git a/cogl/cogl-journal.c b/cogl/cogl-journal.c
index 10b5b8d..f73e2da 100644
--- a/cogl/cogl-journal.c
+++ b/cogl/cogl-journal.c
@@ -26,7 +26,6 @@
#endif
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-journal-private.h"
#include "cogl-texture-private.h"
diff --git a/cogl/cogl-matrix-stack.c b/cogl/cogl-matrix-stack.c
index 42b681b..9bcc4d6 100644
--- a/cogl/cogl-matrix-stack.c
+++ b/cogl/cogl-matrix-stack.c
@@ -30,7 +30,7 @@
#endif
#include "cogl-context-private.h"
-#include "cogl-internal.h"
+#include "cogl-util-gl-private.h"
#include "cogl-matrix-stack.h"
#include "cogl-framebuffer-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/cogl-path.c b/cogl/cogl-path.c
index f02d5b3..2e49a5d 100644
--- a/cogl/cogl-path.c
+++ b/cogl/cogl-path.c
@@ -32,7 +32,6 @@
#include "cogl-util.h"
#include "cogl-object.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-journal-private.h"
#include "cogl-pipeline-private.h"
diff --git a/cogl/cogl-pipeline-layer-private.h b/cogl/cogl-pipeline-layer-private.h
index 90ceeab..d56e3f4 100644
--- a/cogl/cogl-pipeline-layer-private.h
+++ b/cogl/cogl-pipeline-layer-private.h
@@ -28,12 +28,12 @@
#ifndef __COGL_PIPELINE_LAYER_PRIVATE_H
#define __COGL_PIPELINE_LAYER_PRIVATE_H
+#include "cogl-private.h"
#include "cogl-pipeline.h"
#include "cogl-node-private.h"
#include "cogl-texture.h"
#include "cogl-matrix.h"
#include "cogl-pipeline-layer-state.h"
-#include "cogl-internal.h"
#include "cogl-pipeline-snippet-private.h"
#include "cogl-sampler-cache-private.h"
diff --git a/cogl/cogl-pipeline-private.h b/cogl/cogl-pipeline-private.h
index e3411a2..6cf3531 100644
--- a/cogl/cogl-pipeline-private.h
+++ b/cogl/cogl-pipeline-private.h
@@ -35,11 +35,11 @@
#include "cogl-object-private.h"
#include "cogl-profile.h"
#include "cogl-queue.h"
-#include "cogl-internal.h"
#include "cogl-boxed-value.h"
#include "cogl-pipeline-snippet-private.h"
#include "cogl-pipeline-state.h"
#include "cogl-framebuffer.h"
+#include "cogl-bitmask.h"
#include <glib.h>
diff --git a/cogl/cogl-pipeline.c b/cogl/cogl-pipeline.c
index 3bd62a7..feb911d 100644
--- a/cogl/cogl-pipeline.c
+++ b/cogl/cogl-pipeline.c
@@ -30,7 +30,6 @@
#endif
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object.h"
diff --git a/cogl/cogl-primitives.c b/cogl/cogl-primitives.c
index c72d5d2..9eeac71 100644
--- a/cogl/cogl-primitives.c
+++ b/cogl/cogl-primitives.c
@@ -26,7 +26,6 @@
#endif
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-journal-private.h"
#include "cogl-texture-private.h"
diff --git a/cogl/cogl-private.h b/cogl/cogl-private.h
index 2e8eb92..ca508a4 100644
--- a/cogl/cogl-private.h
+++ b/cogl/cogl-private.h
@@ -28,8 +28,52 @@
#include "cogl-context.h"
+
COGL_BEGIN_DECLS
+typedef enum
+{
+ COGL_PRIVATE_FEATURE_TEXTURE_2D_FROM_EGL_IMAGE = 1L<<0,
+ COGL_PRIVATE_FEATURE_MESA_PACK_INVERT = 1L<<1,
+ COGL_PRIVATE_FEATURE_STENCIL_BUFFER = 1L<<2,
+ COGL_PRIVATE_FEATURE_OFFSCREEN_BLIT = 1L<<3,
+ COGL_PRIVATE_FEATURE_FOUR_CLIP_PLANES = 1L<<4,
+ COGL_PRIVATE_FEATURE_PBOS = 1L<<5,
+ COGL_PRIVATE_FEATURE_VBOS = 1L<<6,
+ COGL_PRIVATE_FEATURE_EXT_PACKED_DEPTH_STENCIL = 1L<<7,
+ COGL_PRIVATE_FEATURE_OES_PACKED_DEPTH_STENCIL = 1L<<8,
+ COGL_PRIVATE_FEATURE_TEXTURE_FORMAT_BGRA8888 = 1L<<9,
+ COGL_PRIVATE_FEATURE_UNPACK_SUBIMAGE = 1L<<10,
+ COGL_PRIVATE_FEATURE_SAMPLER_OBJECTS = 1L<<11,
+ COGL_PRIVATE_FEATURE_FIXED_FUNCTION = 1L<<12,
+ COGL_PRIVATE_FEATURE_READ_PIXELS_ANY_FORMAT = 1L<<13,
+ COGL_PRIVATE_FEATURE_ANY_GL = 1L<<14,
+ COGL_PRIVATE_FEATURE_ALPHA_TEST = 1L<<15,
+ COGL_PRIVATE_FEATURE_FORMAT_CONVERSION = 1L<<16,
+ COGL_PRIVATE_FEATURE_QUADS = 1L<<17,
+ COGL_PRIVATE_FEATURE_BLEND_CONSTANT = 1L<<18,
+ COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS = 1L<<19,
+ COGL_PRIVATE_FEATURE_BUILTIN_POINT_SIZE_UNIFORM = 1L<<20,
+ COGL_PRIVATE_FEATURE_QUERY_TEXTURE_PARAMETERS = 1L<<21,
+ COGL_PRIVATE_FEATURE_ALPHA_TEXTURES = 1L<<22,
+ COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE = 1L<<23
+} CoglPrivateFeatureFlags;
+
+/* Sometimes when evaluating pipelines, either during comparisons or
+ * if calculating a hash value we need to tweak the evaluation
+ * semantics */
+typedef enum _CoglPipelineEvalFlags
+{
+ COGL_PIPELINE_EVAL_FLAG_NONE = 0
+} CoglPipelineEvalFlags;
+
+void
+_cogl_transform_point (const CoglMatrix *matrix_mv,
+ const CoglMatrix *matrix_p,
+ const float *viewport,
+ float *x,
+ float *y);
+
CoglBool
_cogl_check_extension (const char *name, char * const *ext);
diff --git a/cogl/cogl-renderer-private.h b/cogl/cogl-renderer-private.h
index 565d2c9..ac6effd 100644
--- a/cogl/cogl-renderer-private.h
+++ b/cogl/cogl-renderer-private.h
@@ -28,7 +28,6 @@
#include "cogl-object-private.h"
#include "cogl-winsys-private.h"
-#include "cogl-internal.h"
#include "cogl-driver.h"
#include "cogl-texture-driver.h"
diff --git a/cogl/cogl-renderer.c b/cogl/cogl-renderer.c
index f3522ea..47d8c30 100644
--- a/cogl/cogl-renderer.c
+++ b/cogl/cogl-renderer.c
@@ -32,10 +32,10 @@
#include <string.h>
#include "cogl-util.h"
-#include "cogl-internal.h"
#include "cogl-private.h"
#include "cogl-object.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-renderer.h"
#include "cogl-renderer-private.h"
diff --git a/cogl/cogl-sampler-cache.c b/cogl/cogl-sampler-cache.c
index f91983c..84bb81d 100644
--- a/cogl/cogl-sampler-cache.c
+++ b/cogl/cogl-sampler-cache.c
@@ -30,6 +30,7 @@
#include "cogl-sampler-cache-private.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#ifndef GL_TEXTURE_WRAP_R
#define GL_TEXTURE_WRAP_R 0x8072
diff --git a/cogl/cogl-spans.c b/cogl/cogl-spans.c
index d2c5129..0ab61ca 100644
--- a/cogl/cogl-spans.c
+++ b/cogl/cogl-spans.c
@@ -28,7 +28,6 @@
#include "math.h"
#include "cogl-util.h"
-#include "cogl-internal.h"
#include "cogl-spans.h"
void
diff --git a/cogl/cogl-sub-texture.c b/cogl/cogl-sub-texture.c
index 915277f..e512d48 100644
--- a/cogl/cogl-sub-texture.c
+++ b/cogl/cogl-sub-texture.c
@@ -28,7 +28,6 @@
#include "config.h"
#endif
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-texture-private.h"
#include "cogl-sub-texture-private.h"
diff --git a/cogl/cogl-texture.c b/cogl/cogl-texture.c
index 1c9da68..22874a3 100644
--- a/cogl/cogl-texture.c
+++ b/cogl/cogl-texture.c
@@ -31,7 +31,6 @@
#include "config.h"
#endif
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-bitmap.h"
#include "cogl-bitmap-private.h"
diff --git a/cogl/cogl-xlib-renderer.c b/cogl/cogl-xlib-renderer.c
index 713df7f..1116332 100644
--- a/cogl/cogl-xlib-renderer.c
+++ b/cogl/cogl-xlib-renderer.c
@@ -30,7 +30,6 @@
#include "cogl-xlib-renderer.h"
#include "cogl-util.h"
-#include "cogl-internal.h"
#include "cogl-object.h"
#include "cogl-renderer-private.h"
diff --git a/cogl/cogl-xlib.c b/cogl/cogl-xlib.c
index 853e48e..3f46917 100644
--- a/cogl/cogl-xlib.c
+++ b/cogl/cogl-xlib.c
@@ -31,7 +31,6 @@
#include <cogl-xlib.h>
-#include <cogl-internal.h>
#include <cogl-object-private.h>
#include <cogl-context-private.h>
#include <cogl-framebuffer-private.h>
diff --git a/cogl/cogl.c b/cogl/cogl.c
index 256c337..578f0b4 100644
--- a/cogl/cogl.c
+++ b/cogl/cogl.c
@@ -31,7 +31,6 @@
#include <glib/gi18n-lib.h>
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-context-private.h"
#include "cogl-pipeline-private.h"
@@ -50,44 +49,6 @@
#include "cogl-private.h"
#include "cogl-offscreen.h"
-#ifdef COGL_GL_DEBUG
-/* GL error to string conversion */
-static const struct {
- GLuint error_code;
- const char *error_string;
-} gl_errors[] = {
- { GL_NO_ERROR, "No error" },
- { GL_INVALID_ENUM, "Invalid enumeration value" },
- { GL_INVALID_VALUE, "Invalid value" },
- { GL_INVALID_OPERATION, "Invalid operation" },
-#ifdef HAVE_COGL_GL
- { GL_STACK_OVERFLOW, "Stack overflow" },
- { GL_STACK_UNDERFLOW, "Stack underflow" },
-#endif
- { GL_OUT_OF_MEMORY, "Out of memory" },
-
-#ifdef GL_INVALID_FRAMEBUFFER_OPERATION_EXT
- { GL_INVALID_FRAMEBUFFER_OPERATION_EXT, "Invalid framebuffer operation" }
-#endif
-};
-
-static const unsigned int n_gl_errors = G_N_ELEMENTS (gl_errors);
-
-const char *
-_cogl_gl_error_to_string (GLenum error_code)
-{
- int i;
-
- for (i = 0; i < n_gl_errors; i++)
- {
- if (gl_errors[i].error_code == error_code)
- return gl_errors[i].error_string;
- }
-
- return "Unknown GL error";
-}
-#endif /* COGL_GL_DEBUG */
-
CoglBool
_cogl_check_extension (const char *name, char * const *ext)
{
diff --git a/cogl/driver/gl/cogl-attribute-gl.c b/cogl/driver/gl/cogl-attribute-gl.c
index cf3f29c..dd597d4 100644
--- a/cogl/driver/gl/cogl-attribute-gl.c
+++ b/cogl/driver/gl/cogl-attribute-gl.c
@@ -32,6 +32,7 @@
#include <string.h>
#include "cogl-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-opengl-private.h"
#include "cogl-error-private.h"
#include "cogl-context-private.h"
diff --git a/cogl/driver/gl/cogl-clip-stack-gl.c b/cogl/driver/gl/cogl-clip-stack-gl.c
index 09019e2..6fcd4c1 100644
--- a/cogl/driver/gl/cogl-clip-stack-gl.c
+++ b/cogl/driver/gl/cogl-clip-stack-gl.c
@@ -30,6 +30,7 @@
#endif
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-primitives-private.h"
#include "cogl-pipeline-opengl-private.h"
#include "cogl-path-private.h"
diff --git a/cogl/driver/gl/cogl-framebuffer-gl.c b/cogl/driver/gl/cogl-framebuffer-gl.c
index 23cf1a7..1e8139c 100644
--- a/cogl/driver/gl/cogl-framebuffer-gl.c
+++ b/cogl/driver/gl/cogl-framebuffer-gl.c
@@ -27,6 +27,7 @@
#endif
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-framebuffer-private.h"
#include "cogl-framebuffer-gl-private.h"
#include "cogl-buffer-gl-private.h"
diff --git a/cogl/driver/gl/cogl-pipeline-fragend-fixed.c b/cogl/driver/gl/cogl-pipeline-fragend-fixed.c
index 7f58eec..1d320ce 100644
--- a/cogl/driver/gl/cogl-pipeline-fragend-fixed.c
+++ b/cogl/driver/gl/cogl-pipeline-fragend-fixed.c
@@ -30,13 +30,13 @@
#endif
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-state-private.h"
#include "cogl-pipeline-opengl-private.h"
#ifdef COGL_PIPELINE_FRAGEND_FIXED
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/driver/gl/cogl-pipeline-fragend-glsl.c b/cogl/driver/gl/cogl-pipeline-fragend-glsl.c
index 622e4be..6ea64c6 100644
--- a/cogl/driver/gl/cogl-pipeline-fragend-glsl.c
+++ b/cogl/driver/gl/cogl-pipeline-fragend-glsl.c
@@ -33,6 +33,7 @@
#include <string.h>
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-layer-private.h"
#include "cogl-blend-string.h"
@@ -40,7 +41,6 @@
#ifdef COGL_PIPELINE_FRAGEND_GLSL
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
#include "cogl-pipeline-cache.h"
diff --git a/cogl/driver/gl/cogl-pipeline-opengl.c b/cogl/driver/gl/cogl-pipeline-opengl.c
index 105321e..8fc4a55 100644
--- a/cogl/driver/gl/cogl-pipeline-opengl.c
+++ b/cogl/driver/gl/cogl-pipeline-opengl.c
@@ -30,6 +30,7 @@
#endif
#include "cogl-debug.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-opengl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-context-private.h"
diff --git a/cogl/driver/gl/cogl-pipeline-progend-glsl.c b/cogl/driver/gl/cogl-pipeline-progend-glsl.c
index 8d39c37..fd3c4d6 100644
--- a/cogl/driver/gl/cogl-pipeline-progend-glsl.c
+++ b/cogl/driver/gl/cogl-pipeline-progend-glsl.c
@@ -33,13 +33,13 @@
#include "cogl-util.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-opengl-private.h"
#include "cogl-offscreen.h"
#ifdef COGL_PIPELINE_PROGEND_GLSL
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
#include "cogl-pipeline-fragend-glsl-private.h"
diff --git a/cogl/driver/gl/cogl-pipeline-vertend-fixed.c b/cogl/driver/gl/cogl-pipeline-vertend-fixed.c
index 61d9eba..bc7d6c1 100644
--- a/cogl/driver/gl/cogl-pipeline-vertend-fixed.c
+++ b/cogl/driver/gl/cogl-pipeline-vertend-fixed.c
@@ -30,6 +30,7 @@
#endif
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-state-private.h"
#include "cogl-pipeline-opengl-private.h"
@@ -37,7 +38,6 @@
#ifdef COGL_PIPELINE_VERTEND_FIXED
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/driver/gl/cogl-pipeline-vertend-glsl.c b/cogl/driver/gl/cogl-pipeline-vertend-glsl.c
index 13759ab..a298145 100644
--- a/cogl/driver/gl/cogl-pipeline-vertend-glsl.c
+++ b/cogl/driver/gl/cogl-pipeline-vertend-glsl.c
@@ -32,12 +32,12 @@
#include <string.h>
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-opengl-private.h"
#ifdef COGL_PIPELINE_VERTEND_GLSL
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
#include "cogl-pipeline-vertend-glsl-private.h"
diff --git a/cogl/driver/gl/cogl-texture-gl.c b/cogl/driver/gl/cogl-texture-gl.c
index 7572fcb..55e4a8c 100644
--- a/cogl/driver/gl/cogl-texture-gl.c
+++ b/cogl/driver/gl/cogl-texture-gl.c
@@ -26,8 +26,8 @@
#include <strings.h>
-#include "cogl-internal.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-texture-gl-private.h"
#include "cogl-texture-3d-private.h"
#include "cogl-util.h"
diff --git a/cogl/driver/gl/cogl-util-gl-private.h b/cogl/driver/gl/cogl-util-gl-private.h
index 332df4f..2abd6cb 100644
--- a/cogl/driver/gl/cogl-util-gl-private.h
+++ b/cogl/driver/gl/cogl-util-gl-private.h
@@ -26,6 +26,42 @@
#ifndef _COGL_UTIL_GL_PRIVATE_H_
#include "cogl-types.h"
+#include "cogl-context.h"
+#include "cogl-gl-header.h"
+
+#ifdef COGL_GL_DEBUG
+
+const char *
+_cogl_gl_error_to_string (GLenum error_code);
+
+#define GE(ctx, x) G_STMT_START { \
+ GLenum __err; \
+ (ctx)->x; \
+ while ((__err = (ctx)->glGetError ()) != GL_NO_ERROR) \
+ { \
+ g_warning ("%s: GL error (%d): %s\n", \
+ G_STRLOC, \
+ __err, \
+ _cogl_gl_error_to_string (__err)); \
+ } } G_STMT_END
+
+#define GE_RET(ret, ctx, x) G_STMT_START { \
+ GLenum __err; \
+ ret = (ctx)->x; \
+ while ((__err = (ctx)->glGetError ()) != GL_NO_ERROR) \
+ { \
+ g_warning ("%s: GL error (%d): %s\n", \
+ G_STRLOC, \
+ __err, \
+ _cogl_gl_error_to_string (__err)); \
+ } } G_STMT_END
+
+#else /* !COGL_GL_DEBUG */
+
+#define GE(ctx, x) ((ctx)->x)
+#define GE_RET(ret, ctx, x) (ret = ((ctx)->x))
+
+#endif /* COGL_GL_DEBUG */
CoglBool
_cogl_gl_util_catch_out_of_memory (CoglContext *ctx, CoglError **error);
diff --git a/cogl/driver/gl/cogl-util-gl.c b/cogl/driver/gl/cogl-util-gl.c
index b0033c1..aadfb54 100644
--- a/cogl/driver/gl/cogl-util-gl.c
+++ b/cogl/driver/gl/cogl-util-gl.c
@@ -30,9 +30,46 @@
#include "cogl-types.h"
#include "cogl-context-private.h"
#include "cogl-error-private.h"
-#include "cogl-internal.h"
#include "cogl-util-gl-private.h"
+#ifdef COGL_GL_DEBUG
+/* GL error to string conversion */
+static const struct {
+ GLuint error_code;
+ const char *error_string;
+} gl_errors[] = {
+ { GL_NO_ERROR, "No error" },
+ { GL_INVALID_ENUM, "Invalid enumeration value" },
+ { GL_INVALID_VALUE, "Invalid value" },
+ { GL_INVALID_OPERATION, "Invalid operation" },
+#ifdef HAVE_COGL_GL
+ { GL_STACK_OVERFLOW, "Stack overflow" },
+ { GL_STACK_UNDERFLOW, "Stack underflow" },
+#endif
+ { GL_OUT_OF_MEMORY, "Out of memory" },
+
+#ifdef GL_INVALID_FRAMEBUFFER_OPERATION_EXT
+ { GL_INVALID_FRAMEBUFFER_OPERATION_EXT, "Invalid framebuffer operation" }
+#endif
+};
+
+static const unsigned int n_gl_errors = G_N_ELEMENTS (gl_errors);
+
+const char *
+_cogl_gl_error_to_string (GLenum error_code)
+{
+ int i;
+
+ for (i = 0; i < n_gl_errors; i++)
+ {
+ if (gl_errors[i].error_code == error_code)
+ return gl_errors[i].error_string;
+ }
+
+ return "Unknown GL error";
+}
+#endif /* COGL_GL_DEBUG */
+
CoglBool
_cogl_gl_util_catch_out_of_memory (CoglContext *ctx, CoglError **error)
{
diff --git a/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/driver/gl/gl/cogl-driver-gl.c
index c944718..7b66381 100644
--- a/cogl/driver/gl/gl/cogl-driver-gl.c
+++ b/cogl/driver/gl/gl/cogl-driver-gl.c
@@ -28,8 +28,8 @@
#include <string.h>
#include "cogl-private.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-feature-private.h"
#include "cogl-renderer-private.h"
#include "cogl-error-private.h"
diff --git a/cogl/driver/gl/gl/cogl-pipeline-fragend-arbfp.c b/cogl/driver/gl/gl/cogl-pipeline-fragend-arbfp.c
index 66e23cd..1325fd9 100644
--- a/cogl/driver/gl/gl/cogl-pipeline-fragend-arbfp.c
+++ b/cogl/driver/gl/gl/cogl-pipeline-fragend-arbfp.c
@@ -31,13 +31,13 @@
#include "cogl-debug.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-pipeline-private.h"
#include "cogl-pipeline-state-private.h"
#include "cogl-pipeline-layer-private.h"
#ifdef COGL_PIPELINE_FRAGEND_ARBFP
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-object-private.h"
diff --git a/cogl/driver/gl/gles/cogl-driver-gles.c b/cogl/driver/gl/gles/cogl-driver-gles.c
index 5630c66..9405e52 100644
--- a/cogl/driver/gl/gles/cogl-driver-gles.c
+++ b/cogl/driver/gl/gles/cogl-driver-gles.c
@@ -27,8 +27,8 @@
#include <string.h>
-#include "cogl-internal.h"
#include "cogl-context-private.h"
+#include "cogl-util-gl-private.h"
#include "cogl-feature-private.h"
#include "cogl-renderer-private.h"
#include "cogl-private.h"
diff --git a/cogl/driver/nop/cogl-driver-nop.c b/cogl/driver/nop/cogl-driver-nop.c
index c0e9699..6e53663 100644
--- a/cogl/driver/nop/cogl-driver-nop.c
+++ b/cogl/driver/nop/cogl-driver-nop.c
@@ -28,7 +28,6 @@
#include <string.h>
#include "cogl-private.h"
-#include "cogl-internal.h"
#include "cogl-context-private.h"
#include "cogl-feature-private.h"
#include "cogl-renderer-private.h"
diff --git a/cogl/winsys/cogl-texture-pixmap-x11.c b/cogl/winsys/cogl-texture-pixmap-x11.c
index 683c243..1dc523b 100644
--- a/cogl/winsys/cogl-texture-pixmap-x11.c
+++ b/cogl/winsys/cogl-texture-pixmap-x11.c
@@ -31,7 +31,6 @@
#endif
#include "cogl-debug.h"
-#include "cogl-internal.h"
#include "cogl-util.h"
#include "cogl-texture-pixmap-x11.h"
#include "cogl-texture-pixmap-x11-private.h"
diff --git a/doc/reference/cogl2/Makefile.am b/doc/reference/cogl2/Makefile.am
index e9e46c9..65f25b8 100644
--- a/doc/reference/cogl2/Makefile.am
+++ b/doc/reference/cogl2/Makefile.am
@@ -77,7 +77,6 @@ IGNORE_HFILES=\
cogl-gles2-types.h \
cogl-gl-header.h \
cogl-glsl-shader-boilerplate.h \
- cogl-internal.h \
cogl-profile.h \
cogl-queue.h \
cogl-rectangle-map.h \
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]