summaryrefslogtreecommitdiff
path: root/src/lib/evas/include
diff options
context:
space:
mode:
authorCedric Bail <cedric.bail@samsung.com>2013-05-31 12:55:14 +0900
committerCedric Bail <cedric.bail@samsung.com>2013-06-04 11:20:25 +0900
commitad5d75dfcdda13a1136b8f850dab6235b42c5c0e (patch)
tree4c2a884b81ed42b47f8db9a7709311218e2d01a6 /src/lib/evas/include
parentcd57e792bcd2014a7b7230a3405f8ecebdc0a833 (diff)
evas: add support for engine specific extention during thread task.
Diffstat (limited to 'src/lib/evas/include')
-rw-r--r--src/lib/evas/include/evas_common.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/lib/evas/include/evas_common.h b/src/lib/evas/include/evas_common.h
index 5e7bd34123..611529b6c6 100644
--- a/src/lib/evas/include/evas_common.h
+++ b/src/lib/evas/include/evas_common.h
@@ -353,6 +353,7 @@ typedef unsigned short DATA16;
353typedef unsigned char DATA8; 353typedef unsigned char DATA8;
354 354
355typedef struct _Image_Entry Image_Entry; 355typedef struct _Image_Entry Image_Entry;
356typedef struct _Image_Entry_Task Image_Entry_Task;
356typedef struct _Image_Entry_Flags Image_Entry_Flags; 357typedef struct _Image_Entry_Flags Image_Entry_Flags;
357typedef struct _Image_Entry_Frame Image_Entry_Frame; 358typedef struct _Image_Entry_Frame Image_Entry_Frame;
358typedef struct _Image_Timestamp Image_Timestamp; 359typedef struct _Image_Timestamp Image_Timestamp;
@@ -414,6 +415,8 @@ typedef void (*Gfx_Func_Convert) (DATA32 *src, DATA8 *dst, int src_jump, int dst
414 415
415typedef void (*Evas_Render_Done_Cb)(void *); 416typedef void (*Evas_Render_Done_Cb)(void *);
416 417
418typedef void (*Evas_Engine_Thread_Task_Cb)(void *engine_data, Image_Entry *ie, void *custom_data);
419
417#include "../cache/evas_cache.h" 420#include "../cache/evas_cache.h"
418#ifdef EVAS_CSERVE2 421#ifdef EVAS_CSERVE2
419#include "../cache2/evas_cache2.h" 422#include "../cache2/evas_cache2.h"
@@ -541,6 +544,13 @@ struct _Image_Timestamp
541#endif 544#endif
542}; 545};
543 546
547struct _Image_Entry_Task
548{
549 Evas_Engine_Thread_Task_Cb cb;
550 const void *engine_data;
551 const void *custom_data;
552};
553
544struct _Image_Entry 554struct _Image_Entry
545{ 555{
546 EINA_INLIST; 556 EINA_INLIST;
@@ -557,13 +567,14 @@ struct _Image_Entry
557 567
558 Evas_Cache_Target *targets; 568 Evas_Cache_Target *targets;
559 Evas_Preload_Pthread *preload; 569 Evas_Preload_Pthread *preload;
570 Eina_List *tasks;
560 571
561 Image_Timestamp tstamp; 572 Image_Timestamp tstamp;
562 573
563 int references; 574 int references;
564 575
565#ifdef BUILD_PIPE_RENDER 576#ifdef BUILD_PIPE_RENDER
566 RGBA_Pipe *pipe; 577 RGBA_Pipe *pipe;
567#endif 578#endif
568 579
569 Evas_Image_Load_Opts load_opts; 580 Evas_Image_Load_Opts load_opts;
@@ -588,6 +599,7 @@ struct _Image_Entry
588 599
589 LK(lock); 600 LK(lock);
590 LK(lock_cancel); 601 LK(lock_cancel);
602 LK(lock_task);
591 603
592 /* for animation feature */ 604 /* for animation feature */
593 Evas_Image_Animated animated; 605 Evas_Image_Animated animated;