[cogl] Remove the public ARBfp feature
- From: Neil Roberts <nroberts src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [cogl] Remove the public ARBfp feature
- Date: Wed, 30 Jan 2013 14:46:46 +0000 (UTC)
commit 02c0d30a3119ae4694e09dc3b5491f8d0308795a
Author: Neil Roberts <neil linux intel com>
Date: Wed Jan 30 14:17:53 2013 +0000
Remove the public ARBfp feature
Cogl no longer publicly exposes ARBfps so the feature check is
useless. This patch converts it to be an internal private feature
which is used to determine whether we can use the ARBfp fragend.
Reviewed-by: Robert Bragg <robert linux intel com>
cogl/cogl-context.c | 2 +-
cogl/cogl-context.h | 2 --
cogl/cogl-private.h | 3 ++-
cogl/driver/gl/cogl-pipeline-opengl.c | 2 +-
cogl/driver/gl/gl/cogl-driver-gl.c | 2 +-
.../gl/gl/cogl-pipeline-progend-fixed-arbfp.c | 2 +-
examples/cogl-info.c | 5 -----
7 files changed, 6 insertions(+), 12 deletions(-)
---
diff --git a/cogl/cogl-context.c b/cogl/cogl-context.c
index ea2b1c0..21f87f4 100644
--- a/cogl/cogl-context.c
+++ b/cogl/cogl-context.c
@@ -85,7 +85,7 @@ _cogl_init_feature_overrides (CoglContext *ctx)
ctx->private_feature_flags &= ~COGL_PRIVATE_FEATURE_PBOS;
if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_DISABLE_ARBFP)))
- COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_ARBFP, FALSE);
+ ctx->private_feature_flags &= ~COGL_PRIVATE_FEATURE_ARBFP;
if (G_UNLIKELY (COGL_DEBUG_ENABLED (COGL_DEBUG_DISABLE_GLSL)))
COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_GLSL, FALSE);
diff --git a/cogl/cogl-context.h b/cogl/cogl-context.h
index 160f5cd..25e1d24 100644
--- a/cogl/cogl-context.h
+++ b/cogl/cogl-context.h
@@ -184,7 +184,6 @@ cogl_is_context (void *object);
* @COGL_FEATURE_ID_ONSCREEN_MULTIPLE: Multiple onscreen framebuffers
* supported.
* @COGL_FEATURE_ID_GLSL: GLSL support
- * @COGL_FEATURE_ID_ARBFP: ARBFP support
* @COGL_FEATURE_ID_UNSIGNED_INT_INDICES: Set if
* %COGL_INDICES_TYPE_UNSIGNED_INT is supported in
* cogl_indices_new().
@@ -220,7 +219,6 @@ typedef enum _CoglFeatureID
COGL_FEATURE_ID_TEXTURE_RECTANGLE,
COGL_FEATURE_ID_TEXTURE_3D,
COGL_FEATURE_ID_GLSL,
- COGL_FEATURE_ID_ARBFP,
COGL_FEATURE_ID_OFFSCREEN,
COGL_FEATURE_ID_OFFSCREEN_MULTISAMPLE,
COGL_FEATURE_ID_ONSCREEN_MULTIPLE,
diff --git a/cogl/cogl-private.h b/cogl/cogl-private.h
index d1c32e8..08ee775 100644
--- a/cogl/cogl-private.h
+++ b/cogl/cogl-private.h
@@ -56,7 +56,8 @@ typedef enum
COGL_PRIVATE_FEATURE_QUERY_TEXTURE_PARAMETERS = 1L<<20,
COGL_PRIVATE_FEATURE_ALPHA_TEXTURES = 1L<<21,
COGL_PRIVATE_FEATURE_TEXTURE_SWIZZLE = 1L<<22,
- COGL_PRIVATE_FEATURE_TEXTURE_MAX_LEVEL = 1L<<23
+ COGL_PRIVATE_FEATURE_TEXTURE_MAX_LEVEL = 1L<<23,
+ COGL_PRIVATE_FEATURE_ARBFP = 1L<<24
} CoglPrivateFeatureFlags;
/* Sometimes when evaluating pipelines, either during comparisons or
diff --git a/cogl/driver/gl/cogl-pipeline-opengl.c b/cogl/driver/gl/cogl-pipeline-opengl.c
index 8fc4a55..0a7b4db 100644
--- a/cogl/driver/gl/cogl-pipeline-opengl.c
+++ b/cogl/driver/gl/cogl-pipeline-opengl.c
@@ -662,7 +662,7 @@ get_max_activateable_texture_units (void)
uploaded (but doesn't necessarily relate to how many texture
images can be sampled) */
if (cogl_has_feature (ctx, COGL_FEATURE_ID_GLSL) ||
- cogl_has_feature (ctx, COGL_FEATURE_ID_ARBFP))
+ (ctx->private_feature_flags & COGL_PRIVATE_FEATURE_ARBFP))
/* Previously this code subtracted the value by one but there
was no explanation for why it did this and it doesn't seem
to make sense so it has been removed */
diff --git a/cogl/driver/gl/gl/cogl-driver-gl.c b/cogl/driver/gl/gl/cogl-driver-gl.c
index 140a0e7..efe25c1 100644
--- a/cogl/driver/gl/gl/cogl-driver-gl.c
+++ b/cogl/driver/gl/gl/cogl-driver-gl.c
@@ -465,7 +465,7 @@ _cogl_driver_update_features (CoglContext *ctx,
private_flags |= COGL_PRIVATE_FEATURE_BLEND_CONSTANT;
if (ctx->glGenPrograms)
- COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_ARBFP, TRUE);
+ private_flags |= COGL_PRIVATE_FEATURE_ARBFP;
if (ctx->glCreateProgram)
COGL_FLAGS_SET (ctx->features, COGL_FEATURE_ID_GLSL, TRUE);
diff --git a/cogl/driver/gl/gl/cogl-pipeline-progend-fixed-arbfp.c b/cogl/driver/gl/gl/cogl-pipeline-progend-fixed-arbfp.c
index 31e715b..3d41f92 100644
--- a/cogl/driver/gl/gl/cogl-pipeline-progend-fixed-arbfp.c
+++ b/cogl/driver/gl/gl/cogl-pipeline-progend-fixed-arbfp.c
@@ -58,7 +58,7 @@ _cogl_pipeline_progend_fixed_arbfp_start (CoglPipeline *pipeline)
/* Validate that we can handle the fragment state using ARBfp
*/
- if (!cogl_has_feature (ctx, COGL_FEATURE_ID_ARBFP))
+ if (!(ctx->private_feature_flags & COGL_PRIVATE_FEATURE_ARBFP))
return FALSE;
/* Fragment snippets are only supported in the GLSL fragend */
diff --git a/examples/cogl-info.c b/examples/cogl-info.c
index 3eacdc3..50721b2 100644
--- a/examples/cogl-info.c
+++ b/examples/cogl-info.c
@@ -70,11 +70,6 @@ struct {
"GLSL support"
},
{
- COGL_FEATURE_ID_ARBFP,
- "ARBFP support",
- "ARBFP support"
- },
- {
COGL_FEATURE_ID_UNSIGNED_INT_INDICES,
"Unsigned integer indices",
"COGL_RENDERER_INDICES_TYPE_UNSIGNED_INT is supported in cogl_indices_new()."
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]