Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib


Modified Files:
        Evas.h 


Log Message:


1. add new api calls to 1. set a "native surface" for image objects. this
currently does nothing and i have kept it VEEERY generic it's a pointer to a
native surface which can be just about anything - each engine will probably
define a format of its own you need to use VIA the native surface type.
2. add calls to set/get colorspace - moving this down into the engine level.
so far engines do nothing at all with it - but api is there.
3. clean up gl engine a bit - make it more standard.

===================================================================
RCS file: /cvs/e/e17/libs/evas/src/lib/Evas.h,v
retrieving revision 1.93
retrieving revision 1.94
diff -u -3 -r1.93 -r1.94
--- Evas.h      2 Dec 2006 03:20:56 -0000       1.93
+++ Evas.h      9 Dec 2006 08:52:08 -0000       1.94
@@ -56,11 +56,19 @@
 
 typedef enum _Evas_Font_Hinting_Flags
 {
-   EVAS_FONT_HINTING_NONE,
-   EVAS_FONT_HINTING_AUTO,
-   EVAS_FONT_HINTING_BYTECODE
+   EVAS_FONT_HINTING_NONE, /**< No font hinting */
+   EVAS_FONT_HINTING_AUTO, /**< Automatic font hinting */
+   EVAS_FONT_HINTING_BYTECODE /**< Bytecode font hinting */
 } Evas_Font_Hinting_Flags; /**< Flags for Font Hinting */
 
+typedef enum _Evas_Colorspace
+{
+   EVAS_COLORSPACE_ARGB8888, /**< ARGB 32 bits per pixel, high-byte is Alpha, 
accessed 1 32bit word at a time */
+     /* these are not currently supported - but planned for the future */
+   EVAS_COLORSPACE_YCBCR422P601, /**< YCbCr 4:2:2 Planar with Planes in order 
Y, Cb and Cr, ITU.BT-601 specifications */
+   EVAS_COLORSPACE_YCBCR422P709 /**< YCbCr 4:2:2 Planar with Planes in order 
Y, Cb and Cr, ITU-BT-709 specifications */
+} Evas_Colorspace; /**< Colorspaces for pixel data supported by Evas */
+
 typedef struct _Evas_List             Evas_List; /**< A generic linked list 
node handle */
 typedef struct _Evas_Rectangle        Evas_Rectangle; /**< A generic rectangle 
handle */
 typedef struct _Evas_Smart_Class      Evas_Smart_Class; /**< A smart object 
base class */
@@ -72,6 +80,7 @@
 typedef struct _Evas_Modifier Evas_Modifier; /**< An Evas Modifier */
 typedef struct _Evas_Lock Evas_Lock; /**< An Evas Lock */
 typedef struct _Evas_Smart Evas_Smart; /**< An Evas Smart Object handle */
+typedef struct _Evas_Native_Surface Evas_Native_Surface; /**< A generic 
datatype for engine specific native surface information */
 typedef unsigned long long Evas_Modifier_Mask; /**< An Evas modifier mask type 
*/
 
 typedef int    Evas_Coord;
@@ -148,6 +157,16 @@
    void **rows; /**< an array of pointers (size depends on format) pointing to 
left edge of each scanline */
 };
 
+struct _Evas_Native_Surface
+{
+   union {
+      void           *p;
+      unsigned short  s;
+      unsigned int    i;
+      unsigned long   l;
+   } data;
+};
+
 #define EVAS_PIXEL_FORMAT_NONE                     0 /**< No pixel format */
 #define EVAS_PIXEL_FORMAT_ARGB32                   1 /**< ARGB 32bit pixel 
format with A in the high byte per 32bit pixel word */
 #define EVAS_PIXEL_FORMAT_YUV420P_601              2 /**< YUV 420 Planar 
format with CCIR 601 color encoding wuth contiguous planes in the order Y, U 
and V */
@@ -468,6 +487,10 @@
    EAPI void              evas_object_image_load_size_get          
(Evas_Object *obj, int *w, int *h);
    EAPI void              evas_object_image_load_scale_down_set    
(Evas_Object *obj, int scale_down);
    EAPI int               evas_object_image_load_scale_down_get    
(Evas_Object *obj);
+   EAPI void              evas_object_image_colorspace_set         
(Evas_Object *obj, Evas_Colorspace cspace);
+   EAPI Evas_Colorspace   evas_object_image_colorspace_get         
(Evas_Object *obj);
+   EAPI void                 evas_object_image_native_surface_set  
(Evas_Object *obj, Evas_Native_Surface *surf);
+   EAPI Evas_Native_Surface *evas_object_image_native_surface_get  
(Evas_Object *obj);
 
 /* image cache */
    EAPI void              evas_image_cache_flush            (Evas *e);



-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys - and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
enlightenment-cvs mailing list
enlightenment-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to