aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/evas/src/modules/engines/directfb/evas_engine.h
diff options
context:
space:
mode:
authorDavid Walter Seikel2012-01-04 18:41:13 +1000
committerDavid Walter Seikel2012-01-04 18:41:13 +1000
commitdd7595a3475407a7fa96a97393bae8c5220e8762 (patch)
treee341e911d7eb911a51684a7412ef7f7c7605d28e /libraries/evas/src/modules/engines/directfb/evas_engine.h
parentAdd the skeleton. (diff)
downloadSledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.zip
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.gz
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.bz2
SledjHamr-dd7595a3475407a7fa96a97393bae8c5220e8762.tar.xz
Add the base Enlightenment Foundation Libraries - eina, eet, evas, ecore, embryo, and edje.
Note that embryo wont be used, but I'm not sure yet if you can build edje without it.
Diffstat (limited to 'libraries/evas/src/modules/engines/directfb/evas_engine.h')
-rw-r--r--libraries/evas/src/modules/engines/directfb/evas_engine.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/libraries/evas/src/modules/engines/directfb/evas_engine.h b/libraries/evas/src/modules/engines/directfb/evas_engine.h
new file mode 100644
index 0000000..7ad1e38
--- /dev/null
+++ b/libraries/evas/src/modules/engines/directfb/evas_engine.h
@@ -0,0 +1,71 @@
1#ifndef EVAS_ENGINE_DIRECTFB_H
2#define EVAS_ENGINE_DIRECTFB_H
3
4#include "evas_common.h"
5#include "evas_private.h"
6#include "Evas_Engine_DirectFB.h"
7
8extern int _evas_engine_directfb_log_dom ;
9
10#ifdef ERR
11# undef ERR
12#endif
13#define ERR(...) EINA_LOG_DOM_ERR(_evas_engine_directfb_log_dom, __VA_ARGS__)
14
15#ifdef DBG
16# undef DBG
17#endif
18#define DBG(...) EINA_LOG_DOM_DBG(_evas_engine_directfb_log_dom, __VA_ARGS__)
19
20#ifdef INF
21# undef INF
22#endif
23#define INF(...) EINA_LOG_DOM_INFO(_evas_engine_directfb_log_dom, __VA_ARGS__)
24
25#ifdef WRN
26# undef WRN
27#endif
28#define WRN(...) EINA_LOG_DOM_WARN(_evas_engine_directfb_log_dom, __VA_ARGS__)
29
30#ifdef CRIT
31# undef CRIT
32#endif
33#define CRIT(...) EINA_LOG_DOM_CRIT(_evas_engine_directfb_log_dom, __VA_ARGS__)
34
35typedef struct _DirectFB_Engine_Image_Entry DirectFB_Engine_Image_Entry;
36struct _DirectFB_Engine_Image_Entry
37{
38 Engine_Image_Entry cache_entry;
39 IDirectFBSurface *surface;
40
41 struct
42 {
43 Eina_Bool engine_surface : 1;
44 Eina_Bool is_locked : 1;
45 } flags;
46};
47
48typedef struct _Render_Engine Render_Engine;
49struct _Render_Engine
50{
51 DirectFB_Engine_Image_Entry *screen_image;
52 const struct Evas_Engine_DirectFB_Spec *spec;
53 IDirectFB *dfb;
54
55 Evas_Cache_Engine_Image *cache;
56
57 Tilebuf *tb;
58 Tilebuf_Rect *rects;
59 Eina_Inlist *cur_rect;
60
61 DFBRegion *update_regions;
62 unsigned int update_regions_count;
63 unsigned int update_regions_limit;
64
65 Eina_Bool end : 1;
66};
67
68int _dfb_surface_set_color_from_context(IDirectFBSurface *surface, RGBA_Draw_Context *dc);
69void _dfb_polygon_draw(IDirectFBSurface *surface, RGBA_Draw_Context *dc, Eina_Inlist *points, int x, int y);
70
71#endif