move around - flatter.
[profile/ivi/evas.git] / src / modules / engines / software_x11 / Evas_Engine_Software_X11.h
1 #ifndef _EVAS_ENGINE_SOFTWARE_X11_H
2 #define _EVAS_ENGINE_SOFTWARE_X11_H
3
4 #include <X11/Xlib.h>
5
6 typedef struct _Evas_Engine_Info_Software_X11              Evas_Engine_Info_Software_X11;
7
8 struct _Evas_Engine_Info_Software_X11
9 {
10    /* PRIVATE - don't mess with this baby or evas will poke its tongue out */
11    /* at you and make nasty noises */
12    Evas_Engine_Info magic;
13
14    /* engine specific data & parameters it needs to set up */
15    struct {
16       Display  *display;
17       Drawable  drawable;
18       Pixmap    mask;
19       Visual   *visual;
20       Colormap  colormap;
21       int       depth;
22       int       rotation;
23
24       int       alloc_grayscale : 1;
25       int       debug : 1;
26       int       shape_dither : 1;
27       int       destination_alpha : 1;
28       int       track_mask_changes : 1;
29
30       int       alloc_colors_max;
31    } info;
32    /* engine specific function calls to query stuff about the destination */
33    struct {
34       Visual *  (*best_visual_get)   (Display *disp, int screen);
35       Colormap  (*best_colormap_get) (Display *disp, int screen);
36       int       (*best_depth_get)    (Display *disp, int screen);
37    } func;
38    
39    int mask_changed;
40 };
41 #endif
42
43