Enlightenment CVS committal

Author  : barbieri
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib/canvas


Modified Files:
        evas_layer.c 


Log Message:
Make layer number a short and Save 8 bytes.

By having a layer as a short (16 bits) we can pack it together with
the bitfields, saving 4 bytes per sub-struct, 8 bytes in total, also
bringing the struct down from 4 to 3 cachelines on my laptop.

Rationale: layers are mostly used to differentiate groups of objects
and they stacking, usually we have few layers and we use very large or
very small numbers to make a layer be at the top or at the bottom, but
usually we don't need so many layers.

Caution: code that use values like 999999 will break, so fix your
code! I'll provide another patch to fix all the CVS using these large
values.


===================================================================
RCS file: /cvs/e/e17/libs/evas/src/lib/canvas/evas_layer.c,v
retrieving revision 1.20
retrieving revision 1.21
diff -u -3 -r1.20 -r1.21
--- evas_layer.c        8 Feb 2008 22:35:19 -0000       1.20
+++ evas_layer.c        1 May 2008 06:18:21 -0000       1.21
@@ -78,7 +78,7 @@
 }
 
 Evas_Layer *
-evas_layer_find(Evas *e, int layer_num)
+evas_layer_find(Evas *e, short layer_num)
 {
    Evas_Object_List *list;
 
@@ -139,7 +139,7 @@
  * @ingroup Evas_Object_Layer_Group
  */
 EAPI void
-evas_object_layer_set(Evas_Object *obj, int l)
+evas_object_layer_set(Evas_Object *obj, short l)
 {
    Evas *e;
 
@@ -187,7 +187,7 @@
  * @return  Number of the layer.
  * @ingroup Evas_Object_Layer_Group
  */
-EAPI int
+EAPI short
 evas_object_layer_get(const Evas_Object *obj)
 {
    MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);



-------------------------------------------------------------------------
This SF.net email is sponsored by the 2008 JavaOne(SM) Conference 
Don't miss this year's exciting event. There's still time to save $100. 
Use priority code J8TL2D2. 
http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to