0ff49d6a76267e3678631c433e0a2c33fece90e0
[mesa.git] / docs / WL_bind_wayland_display.spec
1 Name
2
3 WL_bind_wayland_display
4
5 Name Strings
6
7 EGL_WL_bind_wayland_display
8
9 Contact
10
11 Kristian Høgsberg <krh@bitplanet.net>
12 Benjamin Franzke <benjaminfranzke@googlemail.com>
13
14 Status
15
16 Proposal
17
18 Version
19
20 Version 1, March 1, 2011
21
22 Number
23
24 EGL Extension #not assigned
25
26 Dependencies
27
28 Reguires EGL 1.4 or later. This extension is written against the
29 wording of the EGL 1.4 specification.
30
31 EGL_KHR_base_image is required.
32
33 Overview
34
35 This extension provides entry points for binding and unbinding the
36 wl_display of a Wayland compositor to an EGLDisplay. Binding a
37 wl_display means that the EGL implementation should provide one or
38 more interfaces in the Wayland protocol to allow clients to create
39 wl_buffer objects. On the server side, this extension also
40 provides a new target for eglCreateImageKHR, to create an EGLImage
41 from a wl_buffer
42
43 Adding a implementation specific wayland interface, allows the
44 EGL implementation to define specific wayland requests and events,
45 needed for buffer sharing in a EGL wayland platform.
46
47 IP Status
48
49 Open-source; freely implementable.
50
51 New Procedures and Functions
52
53 EGLBoolean eglBindWaylandDisplayWL(EGLDisplay dpy,
54 struct wl_display *display);
55
56 EGLBoolean eglUnbindWaylandDisplayWL(EGLDisplay dpy,
57 struct wl_display *display);
58
59 New Tokens
60
61 Accepted as <target> in eglCreateImageKHR
62
63 EGL_WAYLAND_BUFFER_WL 0x31D5
64
65 Additions to the EGL 1.4 Specification:
66
67 To bind a server side wl_display to an EGLDisplay, call
68
69 EGLBoolean eglBindWaylandDisplayWL(EGLDisplay dpy,
70 struct wl_display *display);
71
72 To unbind a server side wl_display from an EGLDisplay, call
73
74 EGLBoolean eglUnbindWaylandDisplayWL(EGLDisplay dpy,
75 struct wl_display *display);
76
77 eglBindWaylandDisplayWL returns EGL_FALSE when there is already a
78 wl_display bound to EGLDisplay otherwise EGL_TRUE.
79
80 eglUnbindWaylandDisplayWL returns EGL_FALSE when there is no
81 wl_display bound to the EGLDisplay currently otherwise EGL_TRUE.
82
83 Import a wl_buffer by calling eglCreateImageKHR with
84 wl_buffer as EGLClientBuffer, EGL_WAYLAND_BUFFER_WL as the target,
85 and an empty attribute_list.
86
87 Issues
88
89 Revision History
90
91 Version 1, March 1, 2011
92 Initial draft (Benjamin Franzke)