1 /+
2  +  D bindings copyright:
3  +  Copyright © 2015 Rémi Thebault
4  +/
5 /+
6  +      File generated by wayland-scanner-d v1.0.0:
7  +  /home/remi/dev/wayland-scanner-d/wayland-scanner-d -m wayland.client.ifaces  \
8  +      --mode client --ifaces --ifaces_priv_mod wayland.client.priv.ifaces -o  \
9  +      ./src/wayland/client/ifaces.d
10  +
11  +  Do not edit!
12  +/
13 /+
14  +  Protocol copyright:
15  +  Copyright © 2008-2011 Kristian Høgsberg
16  +  Copyright © 2010-2011 Intel Corporation
17  +  Copyright © 2012-2013 Collabora, Ltd.
18  +
19  +  Permission is hereby granted, free of charge, to any person
20  +  obtaining a copy of this software and associated documentation files
21  +  (the "Software"), to deal in the Software without restriction,
22  +  including without limitation the rights to use, copy, modify, merge,
23  +  publish, distribute, sublicense, and/or sell copies of the Software,
24  +  and to permit persons to whom the Software is furnished to do so,
25  +  subject to the following conditions:
26  +
27  +  The above copyright notice and this permission notice (including the
28  +  next paragraph) shall be included in all copies or substantial
29  +  portions of the Software.
30  +
31  +  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
32  +  EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
33  +  MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
34  +  NONINFRINGEMENT.  IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS
35  +  BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
36  +  ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
37  +  CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
38  +  SOFTWARE.
39  +/
40 module wayland.client.ifaces;
41 
42 import wayland.client.util;
43 import wayland.client.opaque_types;
44 
45 version (Dynamic) {
46 
47     private {
48         __gshared wl_interface *wl_display_if_ptr;
49         __gshared wl_interface *wl_registry_if_ptr;
50         __gshared wl_interface *wl_callback_if_ptr;
51         __gshared wl_interface *wl_compositor_if_ptr;
52         __gshared wl_interface *wl_shm_pool_if_ptr;
53         __gshared wl_interface *wl_shm_if_ptr;
54         __gshared wl_interface *wl_buffer_if_ptr;
55         __gshared wl_interface *wl_data_offer_if_ptr;
56         __gshared wl_interface *wl_data_source_if_ptr;
57         __gshared wl_interface *wl_data_device_if_ptr;
58         __gshared wl_interface *wl_data_device_manager_if_ptr;
59         __gshared wl_interface *wl_shell_if_ptr;
60         __gshared wl_interface *wl_shell_surface_if_ptr;
61         __gshared wl_interface *wl_surface_if_ptr;
62         __gshared wl_interface *wl_seat_if_ptr;
63         __gshared wl_interface *wl_pointer_if_ptr;
64         __gshared wl_interface *wl_keyboard_if_ptr;
65         __gshared wl_interface *wl_touch_if_ptr;
66         __gshared wl_interface *wl_output_if_ptr;
67         __gshared wl_interface *wl_region_if_ptr;
68         __gshared wl_interface *wl_subcompositor_if_ptr;
69         __gshared wl_interface *wl_subsurface_if_ptr;
70     }
71 
72     package {
73         import derelict.util.loader;
74 
75         class WaylandClientLoader : SharedLibLoader {
76             this (string libName) {
77                 super(libName);
78             }
79             protected override void loadSymbols() {
80                 wl_display_if_ptr = cast(wl_interface*) loadSymbol("wl_display_interface");
81                 wl_registry_if_ptr = cast(wl_interface*) loadSymbol("wl_registry_interface");
82                 wl_callback_if_ptr = cast(wl_interface*) loadSymbol("wl_callback_interface");
83                 wl_compositor_if_ptr = cast(wl_interface*) loadSymbol("wl_compositor_interface");
84                 wl_shm_pool_if_ptr = cast(wl_interface*) loadSymbol("wl_shm_pool_interface");
85                 wl_shm_if_ptr = cast(wl_interface*) loadSymbol("wl_shm_interface");
86                 wl_buffer_if_ptr = cast(wl_interface*) loadSymbol("wl_buffer_interface");
87                 wl_data_offer_if_ptr = cast(wl_interface*) loadSymbol("wl_data_offer_interface");
88                 wl_data_source_if_ptr = cast(wl_interface*) loadSymbol("wl_data_source_interface");
89                 wl_data_device_if_ptr = cast(wl_interface*) loadSymbol("wl_data_device_interface");
90                 wl_data_device_manager_if_ptr = cast(wl_interface*) loadSymbol("wl_data_device_manager_interface");
91                 wl_shell_if_ptr = cast(wl_interface*) loadSymbol("wl_shell_interface");
92                 wl_shell_surface_if_ptr = cast(wl_interface*) loadSymbol("wl_shell_surface_interface");
93                 wl_surface_if_ptr = cast(wl_interface*) loadSymbol("wl_surface_interface");
94                 wl_seat_if_ptr = cast(wl_interface*) loadSymbol("wl_seat_interface");
95                 wl_pointer_if_ptr = cast(wl_interface*) loadSymbol("wl_pointer_interface");
96                 wl_keyboard_if_ptr = cast(wl_interface*) loadSymbol("wl_keyboard_interface");
97                 wl_touch_if_ptr = cast(wl_interface*) loadSymbol("wl_touch_interface");
98                 wl_output_if_ptr = cast(wl_interface*) loadSymbol("wl_output_interface");
99                 wl_region_if_ptr = cast(wl_interface*) loadSymbol("wl_region_interface");
100                 wl_subcompositor_if_ptr = cast(wl_interface*) loadSymbol("wl_subcompositor_interface");
101                 wl_subsurface_if_ptr = cast(wl_interface*) loadSymbol("wl_subsurface_interface");
102             }
103         }
104     }
105 
106     @property wl_interface *wl_display_interface() {
107         return wl_display_if_ptr;
108     }
109     @property wl_interface *wl_registry_interface() {
110         return wl_registry_if_ptr;
111     }
112     @property wl_interface *wl_callback_interface() {
113         return wl_callback_if_ptr;
114     }
115     @property wl_interface *wl_compositor_interface() {
116         return wl_compositor_if_ptr;
117     }
118     @property wl_interface *wl_shm_pool_interface() {
119         return wl_shm_pool_if_ptr;
120     }
121     @property wl_interface *wl_shm_interface() {
122         return wl_shm_if_ptr;
123     }
124     @property wl_interface *wl_buffer_interface() {
125         return wl_buffer_if_ptr;
126     }
127     @property wl_interface *wl_data_offer_interface() {
128         return wl_data_offer_if_ptr;
129     }
130     @property wl_interface *wl_data_source_interface() {
131         return wl_data_source_if_ptr;
132     }
133     @property wl_interface *wl_data_device_interface() {
134         return wl_data_device_if_ptr;
135     }
136     @property wl_interface *wl_data_device_manager_interface() {
137         return wl_data_device_manager_if_ptr;
138     }
139     @property wl_interface *wl_shell_interface() {
140         return wl_shell_if_ptr;
141     }
142     @property wl_interface *wl_shell_surface_interface() {
143         return wl_shell_surface_if_ptr;
144     }
145     @property wl_interface *wl_surface_interface() {
146         return wl_surface_if_ptr;
147     }
148     @property wl_interface *wl_seat_interface() {
149         return wl_seat_if_ptr;
150     }
151     @property wl_interface *wl_pointer_interface() {
152         return wl_pointer_if_ptr;
153     }
154     @property wl_interface *wl_keyboard_interface() {
155         return wl_keyboard_if_ptr;
156     }
157     @property wl_interface *wl_touch_interface() {
158         return wl_touch_if_ptr;
159     }
160     @property wl_interface *wl_output_interface() {
161         return wl_output_if_ptr;
162     }
163     @property wl_interface *wl_region_interface() {
164         return wl_region_if_ptr;
165     }
166     @property wl_interface *wl_subcompositor_interface() {
167         return wl_subcompositor_if_ptr;
168     }
169     @property wl_interface *wl_subsurface_interface() {
170         return wl_subsurface_if_ptr;
171     }
172 
173 }
174 else {
175 
176     import priv = wayland.client.priv.ifaces;
177 
178     @property wl_interface *wl_display_interface() {
179         return &priv.wl_display_interface;
180     }
181     @property wl_interface *wl_registry_interface() {
182         return &priv.wl_registry_interface;
183     }
184     @property wl_interface *wl_callback_interface() {
185         return &priv.wl_callback_interface;
186     }
187     @property wl_interface *wl_compositor_interface() {
188         return &priv.wl_compositor_interface;
189     }
190     @property wl_interface *wl_shm_pool_interface() {
191         return &priv.wl_shm_pool_interface;
192     }
193     @property wl_interface *wl_shm_interface() {
194         return &priv.wl_shm_interface;
195     }
196     @property wl_interface *wl_buffer_interface() {
197         return &priv.wl_buffer_interface;
198     }
199     @property wl_interface *wl_data_offer_interface() {
200         return &priv.wl_data_offer_interface;
201     }
202     @property wl_interface *wl_data_source_interface() {
203         return &priv.wl_data_source_interface;
204     }
205     @property wl_interface *wl_data_device_interface() {
206         return &priv.wl_data_device_interface;
207     }
208     @property wl_interface *wl_data_device_manager_interface() {
209         return &priv.wl_data_device_manager_interface;
210     }
211     @property wl_interface *wl_shell_interface() {
212         return &priv.wl_shell_interface;
213     }
214     @property wl_interface *wl_shell_surface_interface() {
215         return &priv.wl_shell_surface_interface;
216     }
217     @property wl_interface *wl_surface_interface() {
218         return &priv.wl_surface_interface;
219     }
220     @property wl_interface *wl_seat_interface() {
221         return &priv.wl_seat_interface;
222     }
223     @property wl_interface *wl_pointer_interface() {
224         return &priv.wl_pointer_interface;
225     }
226     @property wl_interface *wl_keyboard_interface() {
227         return &priv.wl_keyboard_interface;
228     }
229     @property wl_interface *wl_touch_interface() {
230         return &priv.wl_touch_interface;
231     }
232     @property wl_interface *wl_output_interface() {
233         return &priv.wl_output_interface;
234     }
235     @property wl_interface *wl_region_interface() {
236         return &priv.wl_region_interface;
237     }
238     @property wl_interface *wl_subcompositor_interface() {
239         return &priv.wl_subcompositor_interface;
240     }
241     @property wl_interface *wl_subsurface_interface() {
242         return &priv.wl_subsurface_interface;
243     }
244 
245 }