Subversion Repositories Kolibri OS

Rev

Rev 6115 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6115 Rev 6137
Line 7... Line 7...
7
#include "EGL/egl.h"
7
#include "EGL/egl.h"
8
#include "EGL/eglext.h"
8
#include "EGL/eglext.h"
9
#include "EGL/eglmesaext.h"
9
#include "EGL/eglmesaext.h"
10
#include "GL/gl.h"
10
#include "GL/gl.h"
Line -... Line 11...
-
 
11
 
-
 
12
enum wl_drm_format {
-
 
13
    WL_DRM_FORMAT_C8 = 0x20203843,
-
 
14
    WL_DRM_FORMAT_RGB332 = 0x38424752,
-
 
15
    WL_DRM_FORMAT_BGR233 = 0x38524742,
-
 
16
    WL_DRM_FORMAT_XRGB4444 = 0x32315258,
-
 
17
    WL_DRM_FORMAT_XBGR4444 = 0x32314258,
-
 
18
    WL_DRM_FORMAT_RGBX4444 = 0x32315852,
-
 
19
    WL_DRM_FORMAT_BGRX4444 = 0x32315842,
-
 
20
    WL_DRM_FORMAT_ARGB4444 = 0x32315241,
-
 
21
    WL_DRM_FORMAT_ABGR4444 = 0x32314241,
-
 
22
    WL_DRM_FORMAT_RGBA4444 = 0x32314152,
-
 
23
    WL_DRM_FORMAT_BGRA4444 = 0x32314142,
-
 
24
    WL_DRM_FORMAT_XRGB1555 = 0x35315258,
-
 
25
    WL_DRM_FORMAT_XBGR1555 = 0x35314258,
-
 
26
    WL_DRM_FORMAT_RGBX5551 = 0x35315852,
-
 
27
    WL_DRM_FORMAT_BGRX5551 = 0x35315842,
-
 
28
    WL_DRM_FORMAT_ARGB1555 = 0x35315241,
-
 
29
    WL_DRM_FORMAT_ABGR1555 = 0x35314241,
-
 
30
    WL_DRM_FORMAT_RGBA5551 = 0x35314152,
-
 
31
    WL_DRM_FORMAT_BGRA5551 = 0x35314142,
-
 
32
    WL_DRM_FORMAT_RGB565 = 0x36314752,
-
 
33
    WL_DRM_FORMAT_BGR565 = 0x36314742,
-
 
34
    WL_DRM_FORMAT_RGB888 = 0x34324752,
-
 
35
    WL_DRM_FORMAT_BGR888 = 0x34324742,
-
 
36
    WL_DRM_FORMAT_XRGB8888 = 0x34325258,
-
 
37
    WL_DRM_FORMAT_XBGR8888 = 0x34324258,
-
 
38
    WL_DRM_FORMAT_RGBX8888 = 0x34325852,
-
 
39
    WL_DRM_FORMAT_BGRX8888 = 0x34325842,
-
 
40
    WL_DRM_FORMAT_ARGB8888 = 0x34325241,
-
 
41
    WL_DRM_FORMAT_ABGR8888 = 0x34324241,
-
 
42
    WL_DRM_FORMAT_RGBA8888 = 0x34324152,
-
 
43
    WL_DRM_FORMAT_BGRA8888 = 0x34324142,
-
 
44
    WL_DRM_FORMAT_XRGB2101010 = 0x30335258,
-
 
45
    WL_DRM_FORMAT_XBGR2101010 = 0x30334258,
-
 
46
    WL_DRM_FORMAT_RGBX1010102 = 0x30335852,
-
 
47
    WL_DRM_FORMAT_BGRX1010102 = 0x30335842,
-
 
48
    WL_DRM_FORMAT_ARGB2101010 = 0x30335241,
-
 
49
    WL_DRM_FORMAT_ABGR2101010 = 0x30334241,
-
 
50
    WL_DRM_FORMAT_RGBA1010102 = 0x30334152,
-
 
51
    WL_DRM_FORMAT_BGRA1010102 = 0x30334142,
-
 
52
    WL_DRM_FORMAT_YUYV = 0x56595559,
-
 
53
    WL_DRM_FORMAT_YVYU = 0x55595659,
-
 
54
    WL_DRM_FORMAT_UYVY = 0x59565955,
-
 
55
    WL_DRM_FORMAT_VYUY = 0x59555956,
-
 
56
    WL_DRM_FORMAT_AYUV = 0x56555941,
-
 
57
    WL_DRM_FORMAT_NV12 = 0x3231564e,
-
 
58
    WL_DRM_FORMAT_NV21 = 0x3132564e,
-
 
59
    WL_DRM_FORMAT_NV16 = 0x3631564e,
-
 
60
    WL_DRM_FORMAT_NV61 = 0x3136564e,
-
 
61
    WL_DRM_FORMAT_YUV410 = 0x39565559,
-
 
62
    WL_DRM_FORMAT_YVU410 = 0x39555659,
-
 
63
    WL_DRM_FORMAT_YUV411 = 0x31315559,
-
 
64
    WL_DRM_FORMAT_YVU411 = 0x31315659,
-
 
65
    WL_DRM_FORMAT_YUV420 = 0x32315559,
-
 
66
    WL_DRM_FORMAT_YVU420 = 0x32315659,
-
 
67
    WL_DRM_FORMAT_YUV422 = 0x36315559,
-
 
68
    WL_DRM_FORMAT_YVU422 = 0x36315659,
-
 
69
    WL_DRM_FORMAT_YUV444 = 0x34325559,
-
 
70
    WL_DRM_FORMAT_YVU444 = 0x34325659,
-
 
71
};
11
 
72
 
12
struct bitmap
73
struct bitmap
13
{
74
{
14
    uint32_t    width;
75
    uint32_t    width;
15
    uint32_t    height;
76
    uint32_t    height;
Line 37... Line 98...
37
{
98
{
38
    TEX_SCREEN = 0,
99
    TEX_SCREEN = 0,
39
    TEX_MASK   = 1
100
    TEX_MASK   = 1
40
};
101
};
Line -... Line 102...
-
 
102
 
-
 
103
struct shader
-
 
104
{
-
 
105
    GLuint blit_prog;
-
 
106
    GLint sampler0;             /* rgba or y texture */
-
 
107
    GLint sampler1;             /* u or uv   texture */
-
 
108
    GLint sampler2;             /* v texture         */
-
 
109
    GLint sm_mask;              /* alpha texture     */
-
 
110
};
41
 
111
 
42
struct render
112
struct render
43
{
113
{
44
    int fd;
114
    int fd;
45
    EGLDisplay dpy;
115
    EGLDisplay dpy;
Line 54... Line 124...
54
    GLuint framebuffer;
124
    GLuint framebuffer;
55
    EGLImageKHR screen;
125
    EGLImageKHR screen;
56
    struct bitmap mask;
126
    struct bitmap mask;
Line 57... Line 127...
57
 
127
 
-
 
128
    int    mask_size;
-
 
129
    struct shader shader_rgba;
Line 58... Line -...
58
    int    mask_size;
-
 
59
 
-
 
60
    GLuint blit_prog;
130
    struct shader shader_y_uv;
61
    GLint sampler, sm_mask;
131
 
Line 62... Line 132...
62
    float vertices[8],tc_src[8];
132
    float vertices[8],tc_src[8];
63
};
133
};