move around - flatter.
[profile/ivi/evas.git] / src / modules / engines / software_sdl / evas_engine.h
1 #ifndef EVAS_ENGINE_SDL_H
2 #define EVAS_ENGINE_SDL_H
3
4 #include "evas_common.h"
5 #include "evas_private.h"
6 #include "Evas_Engine_SDL.h"
7
8 typedef struct _SDL_Engine_Image_Entry SDL_Engine_Image_Entry;
9 struct _SDL_Engine_Image_Entry
10 {
11    Engine_Image_Entry            cache_entry;
12
13    SDL_Surface                  *surface;
14
15    struct
16    {
17      unsigned int                engine_surface : 1;
18    } flags;
19 };
20
21 typedef struct _Render_Engine Render_Engine;
22 struct _Render_Engine
23 {
24    SDL_Engine_Image_Entry       *rgba_engine_image;
25
26    Tilebuf                      *tb;
27    Tilebuf_Rect                 *rects;
28    Evas_Object_List             *cur_rect;
29
30    Evas_Cache_Engine_Image      *cache;
31
32    SDL_Rect                     *update_rects;
33    int                           update_rects_count;
34    int                           update_rects_limit;
35
36    struct
37    {
38      unsigned int               fullscreen : 1;
39      unsigned int               noframe : 1;
40      unsigned int               alpha : 1;
41      unsigned int               hwsurface : 1;
42      unsigned int               end : 1;
43    } flags;
44 };
45
46 #endif