summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Michael <cp.michael@samsung.com>2013-02-27 13:47:33 +0000
committerChristopher Michael <cp.michael@samsung.com>2013-02-27 13:47:33 +0000
commit84c96d566acfcf634f6ce4bb7edd98188e9b17b3 (patch)
tree4d0e07314a57513fa8534ee2f7b672c791234a13
parentb2e0c9efd9a86b864102a4c18560ccc264fe52a8 (diff)
Add initial engine header file.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
-rw-r--r--src/modules/evas/engines/wayland_egl/evas_engine.h71
1 files changed, 71 insertions, 0 deletions
diff --git a/src/modules/evas/engines/wayland_egl/evas_engine.h b/src/modules/evas/engines/wayland_egl/evas_engine.h
new file mode 100644
index 0000000000..6c5caf1176
--- /dev/null
+++ b/src/modules/evas/engines/wayland_egl/evas_engine.h
@@ -0,0 +1,71 @@
1#ifndef EVAS_ENGINE_H
2# define EVAS_ENGINE_H
3
4#include "config.h"
5#include "evas_common.h"
6#include "evas_private.h"
7#include "evas_gl_common.h"
8#include "Evas.h"
9#include "Evas_Engine_Wayland_Egl.h"
10
11#include <EGL/egl.h>
12#include <wayland-egl.h>
13
14extern int _evas_engine_wl_egl_log_dom;
15#ifdef ERR
16# undef ERR
17#endif
18#define ERR(...) EINA_LOG_DOM_ERR(_evas_engine_wl_egl_log_dom, __VA_ARGS__)
19
20#ifdef DBG
21# undef DBG
22#endif
23#define DBG(...) EINA_LOG_DOM_DBG(_evas_engine_wl_egl_log_dom, __VA_ARGS__)
24
25#ifdef INF
26# undef INF
27#endif
28#define INF(...) EINA_LOG_DOM_INFO(_evas_engine_wl_egl_log_dom, __VA_ARGS__)
29
30#ifdef WRN
31# undef WRN
32#endif
33#define WRN(...) EINA_LOG_DOM_WARN(_evas_engine_wl_egl_log_dom, __VA_ARGS__)
34
35#ifdef CRIT
36# undef CRIT
37#endif
38#define CRIT(...) EINA_LOG_DOM_CRIT(_evas_engine_wl_egl_log_dom, __VA_ARGS__)
39
40typedef struct _Evas_GL_Wl_Window Evas_GL_Wl_Window;
41
42struct _Evas_GL_Wl_Window
43{
44 struct wl_display *disp;
45 struct wl_surface *surf;
46 struct wl_egl_window *win;
47 Evas_Coord w, h;
48 Eina_Bool alpha : 1;
49 int rotation;
50 Evas_Engine_GL_Context *gl_context;
51 Eina_Bool drawn : 1;
52 Eina_Bool surf : 1;
53 struct
54 {
55 EGLContext context[1];
56 EGLSurface surface[1];
57 EGLConfig config;
58 EGLDisplay disp;
59 } egl;
60};
61
62Evas_GL_Wl_Window *eng_window_new(struct wl_display *disp,
63 struct wl_surface *surface, int screen,
64 int depth, int w, int h, int indirect,
65 int alpha, int rot);
66void eng_window_free(Evas_GL_Wl_Window *gw);
67void eng_window_use(Evas_GL_Wl_Window *gw);
68void eng_window_unsurf(Evas_GL_Wl_Window *gw);
69void eng_window_resurf(Evas_GL_Wl_Window *gw);
70
71#endif