6f480c7530
This removes the gl centric _cogl_texture_prepare_for_upload api from cogl-texture.c and instead adds a _cogl_bitmap_convert_for_upload() api which everything now uses instead. GL specific code that needed the gl internal/format/type enums returned by _cogl_texture_prepare_for_upload now use ->pixel_format_to_gl directly. Since there was a special case optimization in cogl_texture_new_from_file that aimed to avoid copying the temporary bitmap that's created for the given file and allow conversions to happen in-place the new _cogl_bitmap_convert_for_upload() api supports converting in place depending on a 'can_convert_in_place' argument. This ability to convert bitmaps in-place has been integrated across the different components as appropriate. In updating cogl-texture-2d-sliced.c this was able to remove a number of other GL specific parts to how spans are setup. Reviewed-by: Neil Roberts <neil@linux.intel.com> (cherry picked from commit e190dd23c655da34b9c5c263a9f6006dcc0413b0) Conflicts: cogl/cogl-auto-texture.c cogl/cogl.symbols |
||
---|---|---|
.. | ||
gl | ||
gles | ||
cogl-attribute-gl-private.h | ||
cogl-attribute-gl.c | ||
cogl-buffer-gl-private.h | ||
cogl-buffer-gl.c | ||
cogl-clip-stack-gl-private.h | ||
cogl-clip-stack-gl.c | ||
cogl-framebuffer-gl-private.h | ||
cogl-framebuffer-gl.c | ||
cogl-pipeline-fragend-fixed-private.h | ||
cogl-pipeline-fragend-fixed.c | ||
cogl-pipeline-fragend-glsl-private.h | ||
cogl-pipeline-fragend-glsl.c | ||
cogl-pipeline-opengl-private.h | ||
cogl-pipeline-opengl.c | ||
cogl-pipeline-progend-fixed-private.h | ||
cogl-pipeline-progend-fixed.c | ||
cogl-pipeline-progend-glsl-private.h | ||
cogl-pipeline-progend-glsl.c | ||
cogl-pipeline-vertend-fixed-private.h | ||
cogl-pipeline-vertend-fixed.c | ||
cogl-pipeline-vertend-glsl-private.h | ||
cogl-pipeline-vertend-glsl.c | ||
cogl-texture-2d-gl-private.h | ||
cogl-texture-2d-gl.c | ||
cogl-texture-gl-private.h | ||
cogl-texture-gl.c | ||
cogl-util-gl-private.h | ||
cogl-util-gl.c |