move around - flatter.
[profile/ivi/evas.git] / src / modules / engines / buffer / Evas_Engine_Buffer.h
1 #ifndef _EVAS_ENGINE_BUFFER_H
2 #define _EVAS_ENGINE_BUFFER_H
3
4 #define EVAS_ENGINE_BUFFER_DEPTH_ARGB32 0
5 #define EVAS_ENGINE_BUFFER_DEPTH_BGRA32 1
6 #define EVAS_ENGINE_BUFFER_DEPTH_RGB24  2
7 #define EVAS_ENGINE_BUFFER_DEPTH_BGR24  3
8 #define EVAS_ENGINE_BUFFER_DEPTH_RGB32  4
9
10 typedef struct _Evas_Engine_Info_Buffer Evas_Engine_Info_Buffer;
11
12 struct _Evas_Engine_Info_Buffer
13 {
14    /* PRIVATE - don't mess with this baby or evas will poke its tongue out */
15    /* at you and make nasty noises */
16    Evas_Engine_Info magic;
17
18    struct {
19       int   depth_type;
20
21       void *dest_buffer;
22       int   dest_buffer_row_bytes;
23
24       char  use_color_key : 1;
25       int   alpha_threshold;
26       int   color_key_r;
27       int   color_key_g;
28       int   color_key_b;
29       struct {
30          void * (*new_update_region) (int x, int y, int w, int h, int *row_bytes);
31          void   (*free_update_region) (int x, int y, int w, int h, void *data);
32       } func;
33    } info;
34 };
35 #endif
36
37