diff options
Diffstat (limited to 'tests/data/example-code.c')
-rw-r--r-- | tests/data/example-code.c | 505 |
1 files changed, 505 insertions, 0 deletions
diff --git a/tests/data/example-code.c b/tests/data/example-code.c new file mode 100644 index 0000000..7dea253 --- /dev/null +++ b/tests/data/example-code.c @@ -0,0 +1,505 @@ +/* SCANNER TEST */ + +/* + * Copyright © 2008-2011 Kristian Høgsberg + * Copyright © 2010-2011 Intel Corporation + * Copyright © 2012-2013 Collabora, Ltd. + * + * Permission is hereby granted, free of charge, to any person + * obtaining a copy of this software and associated documentation files + * (the "Software"), to deal in the Software without restriction, + * including without limitation the rights to use, copy, modify, merge, + * publish, distribute, sublicense, and/or sell copies of the Software, + * and to permit persons to whom the Software is furnished to do so, + * subject to the following conditions: + * + * The above copyright notice and this permission notice (including the + * next paragraph) shall be included in all copies or substantial + * portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF + * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS + * BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN + * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +#include <stdlib.h> +#include <stdint.h> +#include "wayland-util.h" + +extern const struct wl_interface wl_buffer_interface; +extern const struct wl_interface wl_callback_interface; +extern const struct wl_interface wl_data_device_interface; +extern const struct wl_interface wl_data_offer_interface; +extern const struct wl_interface wl_data_source_interface; +extern const struct wl_interface wl_keyboard_interface; +extern const struct wl_interface wl_output_interface; +extern const struct wl_interface wl_pointer_interface; +extern const struct wl_interface wl_region_interface; +extern const struct wl_interface wl_registry_interface; +extern const struct wl_interface wl_seat_interface; +extern const struct wl_interface wl_shell_surface_interface; +extern const struct wl_interface wl_shm_pool_interface; +extern const struct wl_interface wl_subsurface_interface; +extern const struct wl_interface wl_surface_interface; +extern const struct wl_interface wl_touch_interface; + +static const struct wl_interface *types[] = { + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + NULL, + &wl_callback_interface, + &wl_registry_interface, + &wl_surface_interface, + &wl_region_interface, + &wl_buffer_interface, + NULL, + NULL, + NULL, + NULL, + NULL, + &wl_shm_pool_interface, + NULL, + NULL, + &wl_data_source_interface, + &wl_surface_interface, + &wl_surface_interface, + NULL, + &wl_data_source_interface, + NULL, + &wl_data_offer_interface, + NULL, + &wl_surface_interface, + NULL, + NULL, + &wl_data_offer_interface, + &wl_data_offer_interface, + &wl_data_source_interface, + &wl_data_device_interface, + &wl_seat_interface, + &wl_shell_surface_interface, + &wl_surface_interface, + &wl_seat_interface, + NULL, + &wl_seat_interface, + NULL, + NULL, + &wl_surface_interface, + NULL, + NULL, + NULL, + NULL, + NULL, + &wl_output_interface, + &wl_seat_interface, + NULL, + &wl_surface_interface, + NULL, + NULL, + NULL, + &wl_output_interface, + &wl_buffer_interface, + NULL, + NULL, + &wl_callback_interface, + &wl_region_interface, + &wl_region_interface, + &wl_output_interface, + &wl_output_interface, + &wl_pointer_interface, + &wl_keyboard_interface, + &wl_touch_interface, + NULL, + &wl_surface_interface, + NULL, + NULL, + NULL, + &wl_surface_interface, + NULL, + NULL, + NULL, + &wl_surface_interface, + NULL, + &wl_surface_interface, + NULL, + NULL, + &wl_surface_interface, + NULL, + NULL, + &wl_surface_interface, + NULL, + NULL, + NULL, + &wl_subsurface_interface, + &wl_surface_interface, + &wl_surface_interface, + &wl_surface_interface, + &wl_surface_interface, +}; + +static const struct wl_message wl_display_requests[] = { + { "sync", "n", types + 8 }, + { "get_registry", "n", types + 9 }, +}; + +static const struct wl_message wl_display_events[] = { + { "error", "ous", types + 0 }, + { "delete_id", "u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_display_interface = { + "wl_display", 1, + 2, wl_display_requests, + 2, wl_display_events, +}; + +static const struct wl_message wl_registry_requests[] = { + { "bind", "usun", types + 0 }, +}; + +static const struct wl_message wl_registry_events[] = { + { "global", "usu", types + 0 }, + { "global_remove", "u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_registry_interface = { + "wl_registry", 1, + 1, wl_registry_requests, + 2, wl_registry_events, +}; + +static const struct wl_message wl_callback_events[] = { + { "done", "u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_callback_interface = { + "wl_callback", 1, + 0, NULL, + 1, wl_callback_events, +}; + +static const struct wl_message wl_compositor_requests[] = { + { "create_surface", "n", types + 10 }, + { "create_region", "n", types + 11 }, +}; + +WL_EXPORT const struct wl_interface wl_compositor_interface = { + "wl_compositor", 4, + 2, wl_compositor_requests, + 0, NULL, +}; + +static const struct wl_message wl_shm_pool_requests[] = { + { "create_buffer", "niiiiu", types + 12 }, + { "destroy", "", types + 0 }, + { "resize", "i", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_shm_pool_interface = { + "wl_shm_pool", 1, + 3, wl_shm_pool_requests, + 0, NULL, +}; + +static const struct wl_message wl_shm_requests[] = { + { "create_pool", "nhi", types + 18 }, +}; + +static const struct wl_message wl_shm_events[] = { + { "format", "u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_shm_interface = { + "wl_shm", 1, + 1, wl_shm_requests, + 1, wl_shm_events, +}; + +static const struct wl_message wl_buffer_requests[] = { + { "destroy", "", types + 0 }, +}; + +static const struct wl_message wl_buffer_events[] = { + { "release", "", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_buffer_interface = { + "wl_buffer", 1, + 1, wl_buffer_requests, + 1, wl_buffer_events, +}; + +static const struct wl_message wl_data_offer_requests[] = { + { "accept", "u?s", types + 0 }, + { "receive", "sh", types + 0 }, + { "destroy", "", types + 0 }, + { "finish", "3", types + 0 }, + { "set_actions", "3uu", types + 0 }, +}; + +static const struct wl_message wl_data_offer_events[] = { + { "offer", "s", types + 0 }, + { "source_actions", "3u", types + 0 }, + { "action", "3u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_data_offer_interface = { + "wl_data_offer", 3, + 5, wl_data_offer_requests, + 3, wl_data_offer_events, +}; + +static const struct wl_message wl_data_source_requests[] = { + { "offer", "s", types + 0 }, + { "destroy", "", types + 0 }, + { "set_actions", "3u", types + 0 }, +}; + +static const struct wl_message wl_data_source_events[] = { + { "target", "?s", types + 0 }, + { "send", "sh", types + 0 }, + { "cancelled", "", types + 0 }, + { "dnd_drop_performed", "3", types + 0 }, + { "dnd_finished", "3", types + 0 }, + { "action", "3u", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_data_source_interface = { + "wl_data_source", 3, + 3, wl_data_source_requests, + 6, wl_data_source_events, +}; + +static const struct wl_message wl_data_device_requests[] = { + { "start_drag", "?oo?ou", types + 21 }, + { "set_selection", "?ou", types + 25 }, + { "release", "2", types + 0 }, +}; + +static const struct wl_message wl_data_device_events[] = { + { "data_offer", "n", types + 27 }, + { "enter", "uoff?o", types + 28 }, + { "leave", "", types + 0 }, + { "motion", "uff", types + 0 }, + { "drop", "", types + 0 }, + { "selection", "?o", types + 33 }, +}; + +WL_EXPORT const struct wl_interface wl_data_device_interface = { + "wl_data_device", 3, + 3, wl_data_device_requests, + 6, wl_data_device_events, +}; + +static const struct wl_message wl_data_device_manager_requests[] = { + { "create_data_source", "n", types + 34 }, + { "get_data_device", "no", types + 35 }, +}; + +WL_EXPORT const struct wl_interface wl_data_device_manager_interface = { + "wl_data_device_manager", 3, + 2, wl_data_device_manager_requests, + 0, NULL, +}; + +static const struct wl_message wl_shell_requests[] = { + { "get_shell_surface", "no", types + 37 }, +}; + +WL_EXPORT const struct wl_interface wl_shell_interface = { + "wl_shell", 1, + 1, wl_shell_requests, + 0, NULL, +}; + +static const struct wl_message wl_shell_surface_requests[] = { + { "pong", "u", types + 0 }, + { "move", "ou", types + 39 }, + { "resize", "ouu", types + 41 }, + { "set_toplevel", "", types + 0 }, + { "set_transient", "oiiu", types + 44 }, + { "set_fullscreen", "uu?o", types + 48 }, + { "set_popup", "ouoiiu", types + 51 }, + { "set_maximized", "?o", types + 57 }, + { "set_title", "s", types + 0 }, + { "set_class", "s", types + 0 }, +}; + +static const struct wl_message wl_shell_surface_events[] = { + { "ping", "u", types + 0 }, + { "configure", "uii", types + 0 }, + { "popup_done", "", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_shell_surface_interface = { + "wl_shell_surface", 1, + 10, wl_shell_surface_requests, + 3, wl_shell_surface_events, +}; + +static const struct wl_message wl_surface_requests[] = { + { "destroy", "", types + 0 }, + { "attach", "?oii", types + 58 }, + { "damage", "iiii", types + 0 }, + { "frame", "n", types + 61 }, + { "set_opaque_region", "?o", types + 62 }, + { "set_input_region", "?o", types + 63 }, + { "commit", "", types + 0 }, + { "set_buffer_transform", "2i", types + 0 }, + { "set_buffer_scale", "3i", types + 0 }, + { "damage_buffer", "4iiii", types + 0 }, +}; + +static const struct wl_message wl_surface_events[] = { + { "enter", "o", types + 64 }, + { "leave", "o", types + 65 }, +}; + +WL_EXPORT const struct wl_interface wl_surface_interface = { + "wl_surface", 4, + 10, wl_surface_requests, + 2, wl_surface_events, +}; + +static const struct wl_message wl_seat_requests[] = { + { "get_pointer", "n", types + 66 }, + { "get_keyboard", "n", types + 67 }, + { "get_touch", "n", types + 68 }, + { "release", "5", types + 0 }, +}; + +static const struct wl_message wl_seat_events[] = { + { "capabilities", "u", types + 0 }, + { "name", "2s", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_seat_interface = { + "wl_seat", 5, + 4, wl_seat_requests, + 2, wl_seat_events, +}; + +static const struct wl_message wl_pointer_requests[] = { + { "set_cursor", "u?oii", types + 69 }, + { "release", "3", types + 0 }, +}; + +static const struct wl_message wl_pointer_events[] = { + { "enter", "uoff", types + 73 }, + { "leave", "uo", types + 77 }, + { "motion", "uff", types + 0 }, + { "button", "uuuu", types + 0 }, + { "axis", "uuf", types + 0 }, + { "frame", "5", types + 0 }, + { "axis_source", "5u", types + 0 }, + { "axis_stop", "5uu", types + 0 }, + { "axis_discrete", "5ui", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_pointer_interface = { + "wl_pointer", 5, + 2, wl_pointer_requests, + 9, wl_pointer_events, +}; + +static const struct wl_message wl_keyboard_requests[] = { + { "release", "3", types + 0 }, +}; + +static const struct wl_message wl_keyboard_events[] = { + { "keymap", "uhu", types + 0 }, + { "enter", "uoa", types + 79 }, + { "leave", "uo", types + 82 }, + { "key", "uuuu", types + 0 }, + { "modifiers", "uuuuu", types + 0 }, + { "repeat_info", "4ii", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_keyboard_interface = { + "wl_keyboard", 5, + 1, wl_keyboard_requests, + 6, wl_keyboard_events, +}; + +static const struct wl_message wl_touch_requests[] = { + { "release", "3", types + 0 }, +}; + +static const struct wl_message wl_touch_events[] = { + { "down", "uuoiff", types + 84 }, + { "up", "uui", types + 0 }, + { "motion", "uiff", types + 0 }, + { "frame", "", types + 0 }, + { "cancel", "", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_touch_interface = { + "wl_touch", 5, + 1, wl_touch_requests, + 5, wl_touch_events, +}; + +static const struct wl_message wl_output_requests[] = { + { "release", "3", types + 0 }, +}; + +static const struct wl_message wl_output_events[] = { + { "geometry", "iiiiissi", types + 0 }, + { "mode", "uiii", types + 0 }, + { "done", "2", types + 0 }, + { "scale", "2i", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_output_interface = { + "wl_output", 3, + 1, wl_output_requests, + 4, wl_output_events, +}; + +static const struct wl_message wl_region_requests[] = { + { "destroy", "", types + 0 }, + { "add", "iiii", types + 0 }, + { "subtract", "iiii", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_region_interface = { + "wl_region", 1, + 3, wl_region_requests, + 0, NULL, +}; + +static const struct wl_message wl_subcompositor_requests[] = { + { "destroy", "", types + 0 }, + { "get_subsurface", "noo", types + 90 }, +}; + +WL_EXPORT const struct wl_interface wl_subcompositor_interface = { + "wl_subcompositor", 1, + 2, wl_subcompositor_requests, + 0, NULL, +}; + +static const struct wl_message wl_subsurface_requests[] = { + { "destroy", "", types + 0 }, + { "set_position", "ii", types + 0 }, + { "place_above", "o", types + 93 }, + { "place_below", "o", types + 94 }, + { "set_sync", "", types + 0 }, + { "set_desync", "", types + 0 }, +}; + +WL_EXPORT const struct wl_interface wl_subsurface_interface = { + "wl_subsurface", 1, + 6, wl_subsurface_requests, + 0, NULL, +}; + |