Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/modules/engines/buffer


Modified Files:
        evas_engine.c evas_engine.h evas_outbuf.c 


Log Message:


1. buffer test really wqasnt being very fair - time to be fair.
2. be able to skip a copy in certain cases when scaling - should improve
speed in several situations - evas is defintiely not optimal :)

===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/modules/engines/buffer/evas_engine.c,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -3 -r1.2 -r1.3
--- evas_engine.c       15 Jan 2006 06:21:04 -0000      1.2
+++ evas_engine.c       23 Jan 2006 07:57:30 -0000      1.3
@@ -290,6 +290,8 @@
 
        dep = OUTBUF_DEPTH_BGR_24BPP_888_888;
        if      (depth_type == EVAS_ENGINE_BUFFER_DEPTH_ARGB32)
+         dep = OUTBUF_DEPTH_ARGB_32BPP_8888_8888;
+       else if (depth_type == EVAS_ENGINE_BUFFER_DEPTH_RGB32)
          dep = OUTBUF_DEPTH_RGB_32BPP_888_8888;
        else if (depth_type == EVAS_ENGINE_BUFFER_DEPTH_BGRA32)
          dep = OUTBUF_DEPTH_BGR_32BPP_888_8888;
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/modules/engines/buffer/evas_engine.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- evas_engine.h       14 Jan 2006 12:13:37 -0000      1.1
+++ evas_engine.h       23 Jan 2006 07:57:30 -0000      1.2
@@ -8,6 +8,7 @@
 enum _Outbuf_Depth
 {
    OUTBUF_DEPTH_NONE,
+     OUTBUF_DEPTH_ARGB_32BPP_8888_8888,
      OUTBUF_DEPTH_RGB_32BPP_888_8888,
      OUTBUF_DEPTH_BGR_32BPP_888_8888,
      OUTBUF_DEPTH_RGB_24BPP_888_888,
===================================================================
RCS file: 
/cvsroot/enlightenment/e17/libs/evas/src/modules/engines/buffer/evas_outbuf.c,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -3 -r1.1 -r1.2
--- evas_outbuf.c       14 Jan 2006 12:13:37 -0000      1.1
+++ evas_outbuf.c       23 Jan 2006 07:57:30 -0000      1.2
@@ -42,7 +42,7 @@
    buf->func.new_update_region = new_update_region;
    buf->func.free_update_region = free_update_region;
 
-   if ((buf->depth == OUTBUF_DEPTH_RGB_32BPP_888_8888) &&
+   if ((buf->depth == OUTBUF_DEPTH_ARGB_32BPP_8888_8888) &&
        (buf->dest) && (buf->dest_row_bytes == (buf->w * sizeof(DATA32))))
      {
        buf->priv.back_buf = evas_common_image_new();
@@ -53,6 +53,16 @@
        buf->priv.back_buf->image->no_free = 1;
        buf->priv.back_buf->flags |= RGBA_IMAGE_HAS_ALPHA;
      }
+   else if ((buf->depth == OUTBUF_DEPTH_RGB_32BPP_888_8888) &&
+       (buf->dest) && (buf->dest_row_bytes == (buf->w * sizeof(DATA32))))
+     {
+       buf->priv.back_buf = evas_common_image_new();
+       buf->priv.back_buf->image = 
evas_common_image_surface_new(buf->priv.back_buf);
+       buf->priv.back_buf->image->w = w;
+       buf->priv.back_buf->image->h = h;
+       buf->priv.back_buf->image->data = buf->dest;
+       buf->priv.back_buf->image->no_free = 1;
+     }
 
    return buf;
 }
@@ -85,8 +95,11 @@
        im = evas_common_image_create(w, h);
        if (im)
          {
-            im->flags |= RGBA_IMAGE_HAS_ALPHA;
-            memset(im->image->data, 0, w * h * sizeof(DATA32));
+            if ((buf->depth == OUTBUF_DEPTH_ARGB_32BPP_8888_8888))
+              {
+                 im->flags |= RGBA_IMAGE_HAS_ALPHA;
+                 memset(im->image->data, 0, w * h * sizeof(DATA32));
+              }
          }
      }
    return im;




-------------------------------------------------------
This SF.net email is sponsored by: Splunk Inc. Do you grep through log files
for problems?  Stop!  Download the new AJAX search engine that makes
searching your log files as easy as surfing the  web.  DOWNLOAD SPLUNK!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=103432&bid=230486&dat=121642
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to