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