diff options
author | Neil Roberts <neil@openedhand.com> | 2008-04-25 13:37:36 +0000 |
---|---|---|
committer | Neil Roberts <neil@openedhand.com> | 2008-04-25 13:37:36 +0000 |
commit | 6409b1adeb10a3f6ec70fbf96035284b4430541d (patch) | |
tree | 7200eb310be6df7cae620320e1de319c45673e8c /clutter/clutter-feature.c | |
parent | 7c3cf35eec1abdd5c6734f5c2e9932e3e3d8d16d (diff) | |
download | clutter-6409b1adeb10a3f6ec70fbf96035284b4430541d.tar.gz |
Merged clutter-ivan branch into trunk.
svn merge \
https://svn.o-hand.com/repos/clutter/trunk/clutter@2509 \
https://svn.o-hand.com/repos/clutter/branches/clutter-ivan@HEAD
Diffstat (limited to 'clutter/clutter-feature.c')
-rw-r--r-- | clutter/clutter-feature.c | 32 |
1 files changed, 29 insertions, 3 deletions
diff --git a/clutter/clutter-feature.c b/clutter/clutter-feature.c index a3a2883b5..10edfe994 100644 --- a/clutter/clutter-feature.c +++ b/clutter/clutter-feature.c @@ -43,7 +43,7 @@ #include "clutter-private.h" #include "clutter-debug.h" -#include "cogl.h" +#include "cogl/cogl.h" typedef struct ClutterFeatures { @@ -53,6 +53,32 @@ typedef struct ClutterFeatures static ClutterFeatures* __features = NULL; +ClutterFeatureFlags +_clutter_features_from_cogl (guint cogl_flags) +{ + ClutterFeatureFlags clutter_flags = 0; + + if (cogl_flags & COGL_FEATURE_TEXTURE_RECTANGLE) + clutter_flags |= CLUTTER_FEATURE_TEXTURE_RECTANGLE; + + if (cogl_flags & COGL_FEATURE_TEXTURE_NPOT) + clutter_flags |= CLUTTER_FEATURE_TEXTURE_NPOT; + + if (cogl_flags & COGL_FEATURE_TEXTURE_YUV) + clutter_flags |= CLUTTER_FEATURE_TEXTURE_YUV; + + if (cogl_flags & COGL_FEATURE_TEXTURE_READ_PIXELS) + clutter_flags |= CLUTTER_FEATURE_TEXTURE_READ_PIXELS; + + if (cogl_flags & COGL_FEATURE_SHADERS_GLSL) + clutter_flags |= CLUTTER_FEATURE_SHADERS_GLSL; + + if (cogl_flags & COGL_FEATURE_OFFSCREEN) + clutter_flags |= CLUTTER_FEATURE_OFFSCREEN; + + return clutter_flags; +} + void _clutter_feature_init (void) { @@ -72,8 +98,8 @@ _clutter_feature_init (void) context = clutter_context_get_default (); - __features->flags = cogl_get_features() - |_clutter_backend_get_features (context->backend); + __features->flags = (_clutter_features_from_cogl (cogl_get_features ()) + | _clutter_backend_get_features (context->backend)); __features->features_set = TRUE; |