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