aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/evas/src/modules/engines/software_8_x11/Evas_Engine_Software_8_X11.h
blob: fac3d8e71dc476cfe9ad6c65c0c6ff149c1e5ec9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#ifndef _EVAS_ENGINE_SOFTWARE_8_X11_H
#define _EVAS_ENGINE_SOFTWARE_8_X11_H

#include <xcb/xcb.h>

typedef struct _Evas_Engine_Info_Software_8_X11              Evas_Engine_Info_Software_8_X11;

struct _Evas_Engine_Info_Software_8_X11
{
   /* PRIVATE - don't mess with this baby or evas will poke its tongue out */
   /* at you and make nasty noises */
   Evas_Engine_Info magic;

   /* engine specific data & parameters it needs to set up */
   struct {
      xcb_connection_t *connection;
      xcb_drawable_t drawable;
      xcb_gcontext_t gc;
      xcb_screen_t *screen;

      unsigned int mask;
      void        *visual;
      unsigned int colormap;
      int          depth;
      int          rotation;

      int          alloc_grayscale    : 1;
      int          debug              : 1;
      int          shape_dither       : 1;
      int          destination_alpha  : 1;
      int          track_mask_changes : 1;
   } info;

   /* non-blocking or blocking mode */
   Evas_Engine_Render_Mode render_mode;
};

#endif