gimp r24352 - in trunk: . app/base app/core app/display
- From: neo svn gnome org
- To: svn-commits-list gnome org
- Subject: gimp r24352 - in trunk: . app/base app/core app/display
- Date: Thu, 13 Dec 2007 17:27:07 +0000 (GMT)
Author: neo
Date: 2007-12-13 17:27:07 +0000 (Thu, 13 Dec 2007)
New Revision: 24352
ViewCVS link: http://svn.gnome.org/viewcvs/gimp?rev=24352&view=rev
Modified:
trunk/ChangeLog
trunk/app/base/temp-buf.c
trunk/app/base/temp-buf.h
trunk/app/base/tile-pyramid.c
trunk/app/base/tile-pyramid.h
trunk/app/core/gimpimage-preview.c
trunk/app/core/gimpprojection.c
trunk/app/core/gimpprojection.h
trunk/app/display/gimpdisplayshell-draw.c
trunk/app/display/gimpdisplayshell-render.c
Log:
2007-12-13 Sven Neumann <sven gimp org>
Speed up our display rendering code paths by keeping data with
pre-multiplied alpha where possible. The projection tile-manager
at 100 % zoom is not affected. So we can still always get the
non-pre-multiplied pixel data.
* app/core/gimpprojection.[ch]: removed
gimp_projection_get_opacity(), the projection is always opaque.
* app/base/tile-pyramid.[ch]: use pre-multiplied alpha for the
upper levels of the pyramid. This speeds up validation of the
upper levels significantly.
* app/base/temp-buf.[ch]: added temp_buf_demultiply().
* app/core/gimpimage-preview.c: demultiply the preview temp-buf
obtained from the projection's tile tyramid.
* app/display/gimpdisplayshell-draw.c
* app/display/gimpdisplayshell-render.c: added code to deal with
pre-multiplied data. In fact all data returned by
render_image_tile_fault() is now pre-multiplied so that
render_image_rgb_a() and render_image_gray_a() don't need to use
the large lookup tables from gimprender.[ch] any longer.
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]