xref: /aosp_15_r20/external/wayland/egl/wayland-egl-core.h (revision 84e872a0dc482bffdb63672969dd03a827d67c73)
1*84e872a0SLloyd Pique /*
2*84e872a0SLloyd Pique  * Copyright © 2011 Kristian Høgsberg
3*84e872a0SLloyd Pique  * Copyright © 2011 Benjamin Franzke
4*84e872a0SLloyd Pique  *
5*84e872a0SLloyd Pique  * Permission is hereby granted, free of charge, to any person obtaining
6*84e872a0SLloyd Pique  * a copy of this software and associated documentation files (the
7*84e872a0SLloyd Pique  * "Software"), to deal in the Software without restriction, including
8*84e872a0SLloyd Pique  * without limitation the rights to use, copy, modify, merge, publish,
9*84e872a0SLloyd Pique  * distribute, sublicense, and/or sell copies of the Software, and to
10*84e872a0SLloyd Pique  * permit persons to whom the Software is furnished to do so, subject to
11*84e872a0SLloyd Pique  * the following conditions:
12*84e872a0SLloyd Pique  *
13*84e872a0SLloyd Pique  * The above copyright notice and this permission notice (including the
14*84e872a0SLloyd Pique  * next paragraph) shall be included in all copies or substantial
15*84e872a0SLloyd Pique  * portions of the Software.
16*84e872a0SLloyd Pique  *
17*84e872a0SLloyd Pique  * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
18*84e872a0SLloyd Pique  * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
19*84e872a0SLloyd Pique  * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
20*84e872a0SLloyd Pique  * NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
21*84e872a0SLloyd Pique  * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
22*84e872a0SLloyd Pique  * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
23*84e872a0SLloyd Pique  * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
24*84e872a0SLloyd Pique  * SOFTWARE.
25*84e872a0SLloyd Pique  */
26*84e872a0SLloyd Pique 
27*84e872a0SLloyd Pique #ifndef WAYLAND_EGL_CORE_H
28*84e872a0SLloyd Pique #define WAYLAND_EGL_CORE_H
29*84e872a0SLloyd Pique 
30*84e872a0SLloyd Pique #ifdef  __cplusplus
31*84e872a0SLloyd Pique extern "C" {
32*84e872a0SLloyd Pique #endif
33*84e872a0SLloyd Pique 
34*84e872a0SLloyd Pique #define WL_EGL_PLATFORM 1
35*84e872a0SLloyd Pique 
36*84e872a0SLloyd Pique struct wl_egl_window;
37*84e872a0SLloyd Pique struct wl_surface;
38*84e872a0SLloyd Pique 
39*84e872a0SLloyd Pique struct wl_egl_window *
40*84e872a0SLloyd Pique wl_egl_window_create(struct wl_surface *surface,
41*84e872a0SLloyd Pique 		     int width, int height);
42*84e872a0SLloyd Pique 
43*84e872a0SLloyd Pique void
44*84e872a0SLloyd Pique wl_egl_window_destroy(struct wl_egl_window *egl_window);
45*84e872a0SLloyd Pique 
46*84e872a0SLloyd Pique void
47*84e872a0SLloyd Pique wl_egl_window_resize(struct wl_egl_window *egl_window,
48*84e872a0SLloyd Pique 		     int width, int height,
49*84e872a0SLloyd Pique 		     int dx, int dy);
50*84e872a0SLloyd Pique 
51*84e872a0SLloyd Pique void
52*84e872a0SLloyd Pique wl_egl_window_get_attached_size(struct wl_egl_window *egl_window,
53*84e872a0SLloyd Pique 				int *width, int *height);
54*84e872a0SLloyd Pique 
55*84e872a0SLloyd Pique #ifdef  __cplusplus
56*84e872a0SLloyd Pique }
57*84e872a0SLloyd Pique #endif
58*84e872a0SLloyd Pique 
59*84e872a0SLloyd Pique #endif
60