Enlightenment CVS committal

Author  : raster
Project : e17
Module  : libs/evas

Dir     : e17/libs/evas/src/lib


Modified Files:
        Evas.h 


Log Message:


yuv pixel import api (well arbitary pixel format import api) for doing media
sreams (video) via image objects

===================================================================
RCS file: /cvsroot/enlightenment/e17/libs/evas/src/lib/Evas.h,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -3 -r1.21 -r1.22
--- Evas.h      18 Oct 2003 03:34:00 -0000      1.21
+++ Evas.h      10 Dec 2003 01:12:12 -0000      1.22
@@ -92,6 +92,7 @@
 #endif
 #endif
 
+typedef struct _Evas_Pixel_Import_Source Evas_Pixel_Import_Source; /**< A source 
description of pixels for importing pixels */
 typedef struct _Evas_Engine_Info      Evas_Engine_Info; /**< A generic Evas Engine 
information structure */
 typedef struct _Evas_Event_Mouse_Down Evas_Event_Mouse_Down; /**< Event structure for 
#EVAS_CALLBACK_MOUSE_DOWN event callbacks */
 typedef struct _Evas_Event_Mouse_Up   Evas_Event_Mouse_Up; /**< Event structure for 
#EVAS_CALLBACK_MOUSE_UP event callbacks */
@@ -114,6 +115,17 @@
 #define EVAS_ALLOC_ERROR_FATAL                     1 /**< Allocation failed despite 
attempts to free up memory */
 #define EVAS_ALLOC_ERROR_RECOVERED                 2 /**< Allocation succeeded, but 
extra memory had to be found by freeing up speculative resources */
 
+struct _Evas_Pixel_Import_Source
+{
+   int format; /**< pixel format type ie ARGB32, YUV420P_601 etc. */
+   int w, h; /**< width and height of source in pixels */
+   void **rows; /**< an array of pointers (size depends on format) pointing to left 
edge of each scanline */
+};
+
+#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 */
+
 struct _Evas_Engine_Info /** Generic engine information. Generic info is useless */
 {
    int magic; /**< Magic number */
@@ -334,6 +346,10 @@
    void              evas_object_image_smooth_scale_set(Evas_Object *obj, Evas_Bool 
smooth_scale);
    Evas_Bool         evas_object_image_smooth_scale_get(Evas_Object *obj);
    void              evas_object_image_reload          (Evas_Object *obj);
+   Evas_Bool         evas_object_image_pixels_import          (Evas_Object *obj, 
Evas_Pixel_Import_Source *pixels);
+   void              evas_object_image_pixels_get_callback_set(Evas_Object *obj, void 
(*func) (void *data, Evas_Object *o), void *data);
+   void              evas_object_image_pixels_dirty_set       (Evas_Object *obj, 
Evas_Bool dirty);
+   Evas_Bool         evas_object_image_pixels_dirty_get       (Evas_Object *obj); 
        
    void              evas_image_cache_flush            (Evas *e);
    void              evas_image_cache_reload           (Evas *e);




-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills.  Sign up for IBM's
Free Linux Tutorials.  Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click
_______________________________________________
enlightenment-cvs mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs

Reply via email to