summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGatis Paeglis <gatis.paeglis@digia.com>2013-04-02 17:25:19 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2013-05-07 22:43:14 +0200
commit9c1d62cc95ed2579fa25d83901c7a1aa315aa2d3 (patch)
treee209717db152edc4ab4a10c75e6c2d5caca0b1f2
parent2122e731abdb619249df89642c0800640b2fa428 (diff)
Add xcb-xkb to 3rd party libs
1) -qt-xcb a) Use xkb from the 3rd party libs. As it is done for the other xcb dependencies when qt configure with -qt-xcb. 2) -system-xcb (default) a) If xkb found then use xkb from the system. (Currenly xkb is not enabled by default when configuring libxcb library). b) If xkb can't be found on the system then keyboard state will be updated from X11 core events. Change-Id: I7c3dbce6daa2cec52067cd5af80f19040233a0db Reviewed-by: Samuel Rødal <samuel.rodal@digia.com>
-rw-r--r--config.tests/qpa/xcb-xkb/xcb-xkb.cpp60
-rw-r--r--config.tests/qpa/xcb-xkb/xcb-xkb.pro5
-rwxr-xr-xconfigure10
-rw-r--r--src/3rdparty/xcb/README1
-rw-r--r--src/3rdparty/xcb/include/xcb/xkb.h14871
-rw-r--r--src/3rdparty/xcb/libxcb/xkb.c22021
-rw-r--r--src/3rdparty/xcb/libxcb/xkb.patch172
-rw-r--r--src/plugins/platforms/xcb/xcb-plugin.pro1
-rw-r--r--src/plugins/platforms/xcb/xcb-static/xcb-static.pro3
9 files changed, 37143 insertions, 1 deletions
diff --git a/config.tests/qpa/xcb-xkb/xcb-xkb.cpp b/config.tests/qpa/xcb-xkb/xcb-xkb.cpp
new file mode 100644
index 0000000000..524cfde71f
--- /dev/null
+++ b/config.tests/qpa/xcb-xkb/xcb-xkb.cpp
@@ -0,0 +1,60 @@
+/****************************************************************************
+**
+** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the config.tests of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include <xcb/xcb.h>
+
+// This is needed to make Qt compile together with XKB. xkb.h is using a variable
+// which is called 'explicit', this is a reserved keyword in c++ */
+#define explicit dont_use_cxx_explicit
+#include <xcb/xkb.h>
+#undef explicit
+
+int main(int, char **)
+{
+ int primaryScreen = 0;
+
+ xcb_connection_t *connection = xcb_connect("", &primaryScreen);
+
+ // This won't compile unless libxcb >= 1.5 which defines XCB_ATOM_PRIMARY.
+ int xcbAtomPrimary = XCB_ATOM_PRIMARY;
+
+ return 0;
+}
diff --git a/config.tests/qpa/xcb-xkb/xcb-xkb.pro b/config.tests/qpa/xcb-xkb/xcb-xkb.pro
new file mode 100644
index 0000000000..a684a869d3
--- /dev/null
+++ b/config.tests/qpa/xcb-xkb/xcb-xkb.pro
@@ -0,0 +1,5 @@
+SOURCES = xcb-xkb.cpp
+CONFIG -= qt
+
+LIBS += -lxcb -lxcb-xkb
+
diff --git a/configure b/configure
index 3cc52b5541..ab5e7ecbb0 100755
--- a/configure
+++ b/configure
@@ -5170,6 +5170,16 @@ if [ "$CFG_XCB" != "no" ]; then
XCB_PACKAGES="xcb xcb-shm xcb-sync xcb-xfixes xcb-randr xcb-image xcb-keysyms xcb-icccm"
QMAKE_CFLAGS_XCB="`$PKG_CONFIG --cflags $XCB_PACKAGES 2>/dev/null`"
QMAKE_LIBS_XCB="`$PKG_CONFIG --libs $XCB_PACKAGES 2>/dev/null`"
+ # for xcb-xkb tests
+ QMAKE_CFLAGS_XKB="`$PKG_CONFIG --cflags xcb xcb-xkb 2>/dev/null`"
+ QMAKE_LIBS_XKB="`$PKG_CONFIG --libs xcb xcb-xkb 2>/dev/null`"
+ fi
+
+ if compileTest qpa/xcb-xkb "xcb-xkb" $QMAKE_CFLAGS_XKB $QMAKE_LIBS_XKB; then
+ CFG_XKB=yes
+ else
+ CFG_XKB=no
+ QMakeVar add DEFINES QT_NO_XKB
fi
if compileTest qpa/xcb-syslibs "xcb-syslibs" $QMAKE_CFLAGS_XCB $QMAKE_LIBS_XCB; then
diff --git a/src/3rdparty/xcb/README b/src/3rdparty/xcb/README
index 0a66dafd03..4d275ef5a8 100644
--- a/src/3rdparty/xcb/README
+++ b/src/3rdparty/xcb/README
@@ -1,6 +1,7 @@
Contains the header and sources files from selected xcb libraries:
libxcb-1.5 together with xcb-proto-1.6 (sync, xfixes, randr sources)
+ libxcb-1.8.1 together with xcb-proto-1.8 (xkb sources)
libxcb-util-image-0.3.9
libxcb-util-keysyms-0.3.9
libxcb-util-renderutil-0.3.8
diff --git a/src/3rdparty/xcb/include/xcb/xkb.h b/src/3rdparty/xcb/include/xcb/xkb.h
new file mode 100644
index 0000000000..44b0a8d1ae
--- /dev/null
+++ b/src/3rdparty/xcb/include/xcb/xkb.h
@@ -0,0 +1,14871 @@
+/*
+ * This file generated automatically from xkb.xml by c_client.py.
+ * Edit at your peril.
+ */
+
+/**
+ * @defgroup XCB_xkb_API XCB xkb API
+ * @brief xkb XCB Protocol Implementation.
+ * @{
+ **/
+
+#ifndef __XKB_H
+#define __XKB_H
+
+#include "xcb.h"
+#include "xproto.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#define XCB_XKB_MAJOR_VERSION 1
+#define XCB_XKB_MINOR_VERSION 0
+
+extern xcb_extension_t xcb_xkb_id;
+
+typedef enum xcb_xkb_const_t {
+ XCB_XKB_CONST_MAX_LEGAL_KEY_CODE = 255,
+ XCB_XKB_CONST_PER_KEY_BIT_ARRAY_SIZE = 32,
+ XCB_XKB_CONST_KEY_NAME_LENGTH = 4
+} xcb_xkb_const_t;
+
+typedef enum xcb_xkb_event_type_t {
+ XCB_XKB_EVENT_TYPE_NEW_KEYBOARD_NOTIFY = 1,
+ XCB_XKB_EVENT_TYPE_MAP_NOTIFY = 2,
+ XCB_XKB_EVENT_TYPE_STATE_NOTIFY = 4,
+ XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY = 8,
+ XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY = 16,
+ XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY = 32,
+ XCB_XKB_EVENT_TYPE_NAMES_NOTIFY = 64,
+ XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY = 128,
+ XCB_XKB_EVENT_TYPE_BELL_NOTIFY = 256,
+ XCB_XKB_EVENT_TYPE_ACTION_MESSAGE = 512,
+ XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY = 1024,
+ XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY = 2048
+} xcb_xkb_event_type_t;
+
+typedef enum xcb_xkb_nkn_detail_t {
+ XCB_XKB_NKN_DETAIL_KEYCODES = 1,
+ XCB_XKB_NKN_DETAIL_GEOMETRY = 2,
+ XCB_XKB_NKN_DETAIL_DEVICE_ID = 4
+} xcb_xkb_nkn_detail_t;
+
+typedef enum xcb_xkb_axn_detail_t {
+ XCB_XKB_AXN_DETAIL_SK_PRESS = 1,
+ XCB_XKB_AXN_DETAIL_SK_ACCEPT = 2,
+ XCB_XKB_AXN_DETAIL_SK_REJECT = 4,
+ XCB_XKB_AXN_DETAIL_SK_RELEASE = 8,
+ XCB_XKB_AXN_DETAIL_BK_ACCEPT = 16,
+ XCB_XKB_AXN_DETAIL_BK_REJECT = 32,
+ XCB_XKB_AXN_DETAIL_AXK_WARNING = 64
+} xcb_xkb_axn_detail_t;
+
+typedef enum xcb_xkb_map_part_t {
+ XCB_XKB_MAP_PART_KEY_TYPES = 1,
+ XCB_XKB_MAP_PART_KEY_SYMS = 2,
+ XCB_XKB_MAP_PART_MODIFIER_MAP = 4,
+ XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS = 8,
+ XCB_XKB_MAP_PART_KEY_ACTIONS = 16,
+ XCB_XKB_MAP_PART_KEY_BEHAVIORS = 32,
+ XCB_XKB_MAP_PART_VIRTUAL_MODS = 64,
+ XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP = 128
+} xcb_xkb_map_part_t;
+
+typedef enum xcb_xkb_set_map_flags_t {
+ XCB_XKB_SET_MAP_FLAGS_RESIZE_TYPES = 1,
+ XCB_XKB_SET_MAP_FLAGS_RECOMPUTE_ACTIONS = 2
+} xcb_xkb_set_map_flags_t;
+
+typedef enum xcb_xkb_state_part_t {
+ XCB_XKB_STATE_PART_MODIFIER_STATE = 1,
+ XCB_XKB_STATE_PART_MODIFIER_BASE = 2,
+ XCB_XKB_STATE_PART_MODIFIER_LATCH = 4,
+ XCB_XKB_STATE_PART_MODIFIER_LOCK = 8,
+ XCB_XKB_STATE_PART_GROUP_STATE = 16,
+ XCB_XKB_STATE_PART_GROUP_BASE = 32,
+ XCB_XKB_STATE_PART_GROUP_LATCH = 64,
+ XCB_XKB_STATE_PART_GROUP_LOCK = 128,
+ XCB_XKB_STATE_PART_COMPAT_STATE = 256,
+ XCB_XKB_STATE_PART_GRAB_MODS = 512,
+ XCB_XKB_STATE_PART_COMPAT_GRAB_MODS = 1024,
+ XCB_XKB_STATE_PART_LOOKUP_MODS = 2048,
+ XCB_XKB_STATE_PART_COMPAT_LOOKUP_MODS = 4096,
+ XCB_XKB_STATE_PART_POINTER_BUTTONS = 8192
+} xcb_xkb_state_part_t;
+
+typedef enum xcb_xkb_bool_ctrl_t {
+ XCB_XKB_BOOL_CTRL_REPEAT_KEYS = 1,
+ XCB_XKB_BOOL_CTRL_SLOW_KEYS = 2,
+ XCB_XKB_BOOL_CTRL_BOUNCE_KEYS = 4,
+ XCB_XKB_BOOL_CTRL_STICKY_KEYS = 8,
+ XCB_XKB_BOOL_CTRL_MOUSE_KEYS = 16,
+ XCB_XKB_BOOL_CTRL_MOUSE_KEYS_ACCEL = 32,
+ XCB_XKB_BOOL_CTRL_ACCESS_X_KEYS = 64,
+ XCB_XKB_BOOL_CTRL_ACCESS_X_TIMEOUT_MASK = 128,
+ XCB_XKB_BOOL_CTRL_ACCESS_X_FEEDBACK_MASK = 256,
+ XCB_XKB_BOOL_CTRL_AUDIBLE_BELL_MASK = 512,
+ XCB_XKB_BOOL_CTRL_OVERLAY_1_MASK = 1024,
+ XCB_XKB_BOOL_CTRL_OVERLAY_2_MASK = 2048,
+ XCB_XKB_BOOL_CTRL_IGNORE_GROUP_LOCK_MASK = 4096
+} xcb_xkb_bool_ctrl_t;
+
+typedef enum xcb_xkb_control_t {
+ XCB_XKB_CONTROL_GROUPS_WRAP = 134217728,
+ XCB_XKB_CONTROL_INTERNAL_MODS = 268435456,
+ XCB_XKB_CONTROL_IGNORE_LOCK_MODS = 536870912,
+ XCB_XKB_CONTROL_PER_KEY_REPEAT = 1073741824,
+ XCB_XKB_CONTROL_CONTROLS_ENABLED = 2147483648
+} xcb_xkb_control_t;
+
+typedef enum xcb_xkb_axfb_opt_t {
+ XCB_XKB_AXFB_OPT_SK_PRESS_FB = 1,
+ XCB_XKB_AXFB_OPT_SK_ACCEPT_FB = 2,
+ XCB_XKB_AXFB_OPT_FEATURE_FB = 4,
+ XCB_XKB_AXFB_OPT_SLOW_WARN_FB = 8,
+ XCB_XKB_AXFB_OPT_INDICATOR_FB = 16,
+ XCB_XKB_AXFB_OPT_STICKY_KEYS_FB = 32,
+ XCB_XKB_AXFB_OPT_SK_RELEASE_FB = 64,
+ XCB_XKB_AXFB_OPT_SK_REJECT_FB = 128,
+ XCB_XKB_AXFB_OPT_BK_REJECT_FB = 256,
+ XCB_XKB_AXFB_OPT_DUMB_BELL = 512
+} xcb_xkb_axfb_opt_t;
+
+typedef enum xcb_xkb_axsk_opt_t {
+ XCB_XKB_AXSK_OPT_TWO_KEYS = 64,
+ XCB_XKB_AXSK_OPT_LATCH_TO_LOCK = 128
+} xcb_xkb_axsk_opt_t;
+
+/**
+ * @brief xcb_xkb_ax_option_t
+ **/
+typedef union xcb_xkb_ax_option_t {
+ uint16_t fbopt; /**< */
+ uint16_t skopt; /**< */
+} xcb_xkb_ax_option_t;
+
+/**
+ * @brief xcb_xkb_ax_option_iterator_t
+ **/
+typedef struct xcb_xkb_ax_option_iterator_t {
+ xcb_xkb_ax_option_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_ax_option_iterator_t;
+
+typedef uint16_t xcb_xkb_device_spec_t;
+
+/**
+ * @brief xcb_xkb_device_spec_iterator_t
+ **/
+typedef struct xcb_xkb_device_spec_iterator_t {
+ xcb_xkb_device_spec_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_device_spec_iterator_t;
+
+typedef enum xcb_xkb_led_class_result_t {
+ XCB_XKB_LED_CLASS_RESULT_KBD_FEEDBACK_CLASS = 0,
+ XCB_XKB_LED_CLASS_RESULT_LED_FEEDBACK_CLASS = 4
+} xcb_xkb_led_class_result_t;
+
+typedef enum xcb_xkb_led_class_t {
+ XCB_XKB_LED_CLASS_DFLT_XI_CLASS = 768,
+ XCB_XKB_LED_CLASS_ALL_XI_CLASSES = 1280
+} xcb_xkb_led_class_t;
+
+typedef uint16_t xcb_xkb_led_class_spec_t;
+
+/**
+ * @brief xcb_xkb_led_class_spec_iterator_t
+ **/
+typedef struct xcb_xkb_led_class_spec_iterator_t {
+ xcb_xkb_led_class_spec_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_led_class_spec_iterator_t;
+
+typedef enum xcb_xkb_bell_class_result_t {
+ XCB_XKB_BELL_CLASS_RESULT_KBD_FEEDBACK_CLASS = 0,
+ XCB_XKB_BELL_CLASS_RESULT_BELL_FEEDBACK_CLASS = 5
+} xcb_xkb_bell_class_result_t;
+
+typedef enum xcb_xkb_bell_class_t {
+ XCB_XKB_BELL_CLASS_DFLT_XI_CLASS = 768
+} xcb_xkb_bell_class_t;
+
+typedef uint16_t xcb_xkb_bell_class_spec_t;
+
+/**
+ * @brief xcb_xkb_bell_class_spec_iterator_t
+ **/
+typedef struct xcb_xkb_bell_class_spec_iterator_t {
+ xcb_xkb_bell_class_spec_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_bell_class_spec_iterator_t;
+
+typedef enum xcb_xkb_id_t {
+ XCB_XKB_ID_USE_CORE_KBD = 256,
+ XCB_XKB_ID_USE_CORE_PTR = 512,
+ XCB_XKB_ID_DFLT_XI_CLASS = 768,
+ XCB_XKB_ID_DFLT_XI_ID = 1024,
+ XCB_XKB_ID_ALL_XI_CLASS = 1280,
+ XCB_XKB_ID_ALL_XI_ID = 1536,
+ XCB_XKB_ID_XI_NONE = 65280
+} xcb_xkb_id_t;
+
+typedef uint16_t xcb_xkb_id_spec_t;
+
+/**
+ * @brief xcb_xkb_id_spec_iterator_t
+ **/
+typedef struct xcb_xkb_id_spec_iterator_t {
+ xcb_xkb_id_spec_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_id_spec_iterator_t;
+
+typedef enum xcb_xkb_group_t {
+ XCB_XKB_GROUP_1 = 0,
+ XCB_XKB_GROUP_2 = 1,
+ XCB_XKB_GROUP_3 = 2,
+ XCB_XKB_GROUP_4 = 3
+} xcb_xkb_group_t;
+
+typedef enum xcb_xkb_groups_t {
+ XCB_XKB_GROUPS_ANY = 254,
+ XCB_XKB_GROUPS_ALL = 255
+} xcb_xkb_groups_t;
+
+typedef enum xcb_xkb_set_of_group_t {
+ XCB_XKB_SET_OF_GROUP_GROUP_1 = 1,
+ XCB_XKB_SET_OF_GROUP_GROUP_2 = 2,
+ XCB_XKB_SET_OF_GROUP_GROUP_3 = 4,
+ XCB_XKB_SET_OF_GROUP_GROUP_4 = 8
+} xcb_xkb_set_of_group_t;
+
+typedef enum xcb_xkb_set_of_groups_t {
+ XCB_XKB_SET_OF_GROUPS_ANY = 128
+} xcb_xkb_set_of_groups_t;
+
+typedef enum xcb_xkb_groups_wrap_t {
+ XCB_XKB_GROUPS_WRAP_WRAP_INTO_RANGE = 0,
+ XCB_XKB_GROUPS_WRAP_CLAMP_INTO_RANGE = 64,
+ XCB_XKB_GROUPS_WRAP_REDIRECT_INTO_RANGE = 128
+} xcb_xkb_groups_wrap_t;
+
+typedef enum xcb_xkb_v_mods_high_t {
+ XCB_XKB_V_MODS_HIGH_15 = 128,
+ XCB_XKB_V_MODS_HIGH_14 = 64,
+ XCB_XKB_V_MODS_HIGH_13 = 32,
+ XCB_XKB_V_MODS_HIGH_12 = 16,
+ XCB_XKB_V_MODS_HIGH_11 = 8,
+ XCB_XKB_V_MODS_HIGH_10 = 4,
+ XCB_XKB_V_MODS_HIGH_9 = 2,
+ XCB_XKB_V_MODS_HIGH_8 = 1
+} xcb_xkb_v_mods_high_t;
+
+typedef enum xcb_xkb_v_mods_low_t {
+ XCB_XKB_V_MODS_LOW_7 = 128,
+ XCB_XKB_V_MODS_LOW_6 = 64,
+ XCB_XKB_V_MODS_LOW_5 = 32,
+ XCB_XKB_V_MODS_LOW_4 = 16,
+ XCB_XKB_V_MODS_LOW_3 = 8,
+ XCB_XKB_V_MODS_LOW_2 = 4,
+ XCB_XKB_V_MODS_LOW_1 = 2,
+ XCB_XKB_V_MODS_LOW_0 = 1
+} xcb_xkb_v_mods_low_t;
+
+typedef enum xcb_xkb_v_mod_t {
+ XCB_XKB_V_MOD_15 = 32768,
+ XCB_XKB_V_MOD_14 = 16384,
+ XCB_XKB_V_MOD_13 = 8192,
+ XCB_XKB_V_MOD_12 = 4096,
+ XCB_XKB_V_MOD_11 = 2048,
+ XCB_XKB_V_MOD_10 = 1024,
+ XCB_XKB_V_MOD_9 = 512,
+ XCB_XKB_V_MOD_8 = 256,
+ XCB_XKB_V_MOD_7 = 128,
+ XCB_XKB_V_MOD_6 = 64,
+ XCB_XKB_V_MOD_5 = 32,
+ XCB_XKB_V_MOD_4 = 16,
+ XCB_XKB_V_MOD_3 = 8,
+ XCB_XKB_V_MOD_2 = 4,
+ XCB_XKB_V_MOD_1 = 2,
+ XCB_XKB_V_MOD_0 = 1
+} xcb_xkb_v_mod_t;
+
+typedef enum xcb_xkb_explicit_t {
+ XCB_XKB_EXPLICIT_V_MOD_MAP = 128,
+ XCB_XKB_EXPLICIT_BEHAVIOR = 64,
+ XCB_XKB_EXPLICIT_AUTO_REPEAT = 32,
+ XCB_XKB_EXPLICIT_INTERPRET = 16,
+ XCB_XKB_EXPLICIT_KEY_TYPE_4 = 8,
+ XCB_XKB_EXPLICIT_KEY_TYPE_3 = 4,
+ XCB_XKB_EXPLICIT_KEY_TYPE_2 = 2,
+ XCB_XKB_EXPLICIT_KEY_TYPE_1 = 1
+} xcb_xkb_explicit_t;
+
+typedef enum xcb_xkb_sym_interpret_t {
+ XCB_XKB_SYM_INTERPRET_NONE_OF = 0,
+ XCB_XKB_SYM_INTERPRET_ANY_OF_OR_NONE = 1,
+ XCB_XKB_SYM_INTERPRET_ANY_OF = 2,
+ XCB_XKB_SYM_INTERPRET_ALL_OF = 3,
+ XCB_XKB_SYM_INTERPRET_EXACTLY = 4
+} xcb_xkb_sym_interpret_t;
+
+typedef enum xcb_xkb_sym_interp_match_t {
+ XCB_XKB_SYM_INTERP_MATCH_LEVEL_ONE_ONLY = 128,
+ XCB_XKB_SYM_INTERP_MATCH_OP_MASK = 127
+} xcb_xkb_sym_interp_match_t;
+
+typedef enum xcb_xkb_im_flag_t {
+ XCB_XKB_IM_FLAG_NO_EXPLICIT = 128,
+ XCB_XKB_IM_FLAG_NO_AUTOMATIC = 64,
+ XCB_XKB_IM_FLAG_LED_DRIVES_KB = 32
+} xcb_xkb_im_flag_t;
+
+typedef enum xcb_xkb_im_mods_which_t {
+ XCB_XKB_IM_MODS_WHICH_USE_COMPAT = 16,
+ XCB_XKB_IM_MODS_WHICH_USE_EFFECTIVE = 8,
+ XCB_XKB_IM_MODS_WHICH_USE_LOCKED = 4,
+ XCB_XKB_IM_MODS_WHICH_USE_LATCHED = 2,
+ XCB_XKB_IM_MODS_WHICH_USE_BASE = 1
+} xcb_xkb_im_mods_which_t;
+
+typedef enum xcb_xkb_im_groups_which_t {
+ XCB_XKB_IM_GROUPS_WHICH_USE_COMPAT = 16,
+ XCB_XKB_IM_GROUPS_WHICH_USE_EFFECTIVE = 8,
+ XCB_XKB_IM_GROUPS_WHICH_USE_LOCKED = 4,
+ XCB_XKB_IM_GROUPS_WHICH_USE_LATCHED = 2,
+ XCB_XKB_IM_GROUPS_WHICH_USE_BASE = 1
+} xcb_xkb_im_groups_which_t;
+
+/**
+ * @brief xcb_xkb_indicator_map_t
+ **/
+typedef struct xcb_xkb_indicator_map_t {
+ uint8_t flags; /**< */
+ uint8_t whichGroups; /**< */
+ uint8_t groups; /**< */
+ uint8_t whichMods; /**< */
+ uint8_t mods; /**< */
+ uint8_t realMods; /**< */
+ uint16_t vmods; /**< */
+ uint32_t ctrls; /**< */
+} xcb_xkb_indicator_map_t;
+
+/**
+ * @brief xcb_xkb_indicator_map_iterator_t
+ **/
+typedef struct xcb_xkb_indicator_map_iterator_t {
+ xcb_xkb_indicator_map_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_indicator_map_iterator_t;
+
+typedef enum xcb_xkb_cm_detail_t {
+ XCB_XKB_CM_DETAIL_SYM_INTERP = 1,
+ XCB_XKB_CM_DETAIL_GROUP_COMPAT = 2
+} xcb_xkb_cm_detail_t;
+
+typedef enum xcb_xkb_name_detail_t {
+ XCB_XKB_NAME_DETAIL_KEYCODES = 1,
+ XCB_XKB_NAME_DETAIL_GEOMETRY = 2,
+ XCB_XKB_NAME_DETAIL_SYMBOLS = 4,
+ XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS = 8,
+ XCB_XKB_NAME_DETAIL_TYPES = 16,
+ XCB_XKB_NAME_DETAIL_COMPAT = 32,
+ XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES = 64,
+ XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES = 128,
+ XCB_XKB_NAME_DETAIL_INDICATOR_NAMES = 256,
+ XCB_XKB_NAME_DETAIL_KEY_NAMES = 512,
+ XCB_XKB_NAME_DETAIL_KEY_ALIASES = 1024,
+ XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES = 2048,
+ XCB_XKB_NAME_DETAIL_GROUP_NAMES = 4096,
+ XCB_XKB_NAME_DETAIL_RG_NAMES = 8192
+} xcb_xkb_name_detail_t;
+
+typedef enum xcb_xkb_gbn_detail_t {
+ XCB_XKB_GBN_DETAIL_TYPES = 1,
+ XCB_XKB_GBN_DETAIL_COMPAT_MAP = 2,
+ XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS = 4,
+ XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS = 8,
+ XCB_XKB_GBN_DETAIL_INDICATOR_MAPS = 16,
+ XCB_XKB_GBN_DETAIL_KEY_NAMES = 32,
+ XCB_XKB_GBN_DETAIL_GEOMETRY = 64,
+ XCB_XKB_GBN_DETAIL_OTHER_NAMES = 128
+} xcb_xkb_gbn_detail_t;
+
+typedef enum xcb_xkb_xi_feature_t {
+ XCB_XKB_XI_FEATURE_KEYBOARDS = 1,
+ XCB_XKB_XI_FEATURE_BUTTON_ACTIONS = 2,
+ XCB_XKB_XI_FEATURE_INDICATOR_NAMES = 4,
+ XCB_XKB_XI_FEATURE_INDICATOR_MAPS = 8,
+ XCB_XKB_XI_FEATURE_INDICATOR_STATE = 16
+} xcb_xkb_xi_feature_t;
+
+typedef enum xcb_xkb_per_client_flag_t {
+ XCB_XKB_PER_CLIENT_FLAG_DETECTABLE_AUTO_REPEAT = 1,
+ XCB_XKB_PER_CLIENT_FLAG_GRABS_USE_XKB_STATE = 2,
+ XCB_XKB_PER_CLIENT_FLAG_AUTO_RESET_CONTROLS = 4,
+ XCB_XKB_PER_CLIENT_FLAG_LOOKUP_STATE_WHEN_GRABBED = 8,
+ XCB_XKB_PER_CLIENT_FLAG_SEND_EVENT_USES_XKB_STATE = 16
+} xcb_xkb_per_client_flag_t;
+
+/**
+ * @brief xcb_xkb_mod_def_t
+ **/
+typedef struct xcb_xkb_mod_def_t {
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ uint16_t vmods; /**< */
+} xcb_xkb_mod_def_t;
+
+/**
+ * @brief xcb_xkb_mod_def_iterator_t
+ **/
+typedef struct xcb_xkb_mod_def_iterator_t {
+ xcb_xkb_mod_def_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_mod_def_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_name_t
+ **/
+typedef struct xcb_xkb_key_name_t {
+ uint8_t name[4]; /**< */
+} xcb_xkb_key_name_t;
+
+/**
+ * @brief xcb_xkb_key_name_iterator_t
+ **/
+typedef struct xcb_xkb_key_name_iterator_t {
+ xcb_xkb_key_name_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_name_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_alias_t
+ **/
+typedef struct xcb_xkb_key_alias_t {
+ uint8_t real[4]; /**< */
+ uint8_t alias[4]; /**< */
+} xcb_xkb_key_alias_t;
+
+/**
+ * @brief xcb_xkb_key_alias_iterator_t
+ **/
+typedef struct xcb_xkb_key_alias_iterator_t {
+ xcb_xkb_key_alias_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_alias_iterator_t;
+
+/**
+ * @brief xcb_xkb_counted_string_8_t
+ **/
+typedef struct xcb_xkb_counted_string_8_t {
+ uint8_t length; /**< */
+} xcb_xkb_counted_string_8_t;
+
+/**
+ * @brief xcb_xkb_counted_string_8_iterator_t
+ **/
+typedef struct xcb_xkb_counted_string_8_iterator_t {
+ xcb_xkb_counted_string_8_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_counted_string_8_iterator_t;
+
+/**
+ * @brief xcb_xkb_counted_string_16_t
+ **/
+typedef struct xcb_xkb_counted_string_16_t {
+ uint16_t length; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_counted_string_16_t;
+
+/**
+ * @brief xcb_xkb_counted_string_16_iterator_t
+ **/
+typedef struct xcb_xkb_counted_string_16_iterator_t {
+ xcb_xkb_counted_string_16_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_counted_string_16_iterator_t;
+
+/**
+ * @brief xcb_xkb_kt_map_entry_t
+ **/
+typedef struct xcb_xkb_kt_map_entry_t {
+ uint8_t active; /**< */
+ uint8_t level; /**< */
+ uint8_t mods_mask; /**< */
+ uint8_t mods_mods; /**< */
+ uint16_t mods_vmods; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_kt_map_entry_t;
+
+/**
+ * @brief xcb_xkb_kt_map_entry_iterator_t
+ **/
+typedef struct xcb_xkb_kt_map_entry_iterator_t {
+ xcb_xkb_kt_map_entry_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_kt_map_entry_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_type_t
+ **/
+typedef struct xcb_xkb_key_type_t {
+ uint8_t mods_mask; /**< */
+ uint8_t mods_mods; /**< */
+ uint16_t mods_vmods; /**< */
+ uint8_t numLevels; /**< */
+ uint8_t nMapEntries; /**< */
+ uint8_t hasPreserve; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_key_type_t;
+
+/**
+ * @brief xcb_xkb_key_type_iterator_t
+ **/
+typedef struct xcb_xkb_key_type_iterator_t {
+ xcb_xkb_key_type_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_type_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_sym_map_t
+ **/
+typedef struct xcb_xkb_key_sym_map_t {
+ uint8_t kt_index[4]; /**< */
+ uint8_t groupInfo; /**< */
+ uint8_t width; /**< */
+ uint16_t nSyms; /**< */
+} xcb_xkb_key_sym_map_t;
+
+/**
+ * @brief xcb_xkb_key_sym_map_iterator_t
+ **/
+typedef struct xcb_xkb_key_sym_map_iterator_t {
+ xcb_xkb_key_sym_map_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_sym_map_iterator_t;
+
+/**
+ * @brief xcb_xkb_common_behavior_t
+ **/
+typedef struct xcb_xkb_common_behavior_t {
+ uint8_t type; /**< */
+ uint8_t data; /**< */
+} xcb_xkb_common_behavior_t;
+
+/**
+ * @brief xcb_xkb_common_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_common_behavior_iterator_t {
+ xcb_xkb_common_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_common_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_default_behavior_t
+ **/
+typedef struct xcb_xkb_default_behavior_t {
+ uint8_t type; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_default_behavior_t;
+
+/**
+ * @brief xcb_xkb_default_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_default_behavior_iterator_t {
+ xcb_xkb_default_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_default_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_lock_behavior_t
+ **/
+typedef struct xcb_xkb_lock_behavior_t {
+ uint8_t type; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_lock_behavior_t;
+
+/**
+ * @brief xcb_xkb_lock_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_lock_behavior_iterator_t {
+ xcb_xkb_lock_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_lock_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_radio_group_behavior_t
+ **/
+typedef struct xcb_xkb_radio_group_behavior_t {
+ uint8_t type; /**< */
+ uint8_t group; /**< */
+} xcb_xkb_radio_group_behavior_t;
+
+/**
+ * @brief xcb_xkb_radio_group_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_radio_group_behavior_iterator_t {
+ xcb_xkb_radio_group_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_radio_group_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_overlay_1_behavior_t
+ **/
+typedef struct xcb_xkb_overlay_1_behavior_t {
+ uint8_t type; /**< */
+ xcb_keycode_t key; /**< */
+} xcb_xkb_overlay_1_behavior_t;
+
+/**
+ * @brief xcb_xkb_overlay_1_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_overlay_1_behavior_iterator_t {
+ xcb_xkb_overlay_1_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_overlay_1_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_overlay_2_behavior_t
+ **/
+typedef struct xcb_xkb_overlay_2_behavior_t {
+ uint8_t type; /**< */
+ uint8_t key; /**< */
+} xcb_xkb_overlay_2_behavior_t;
+
+/**
+ * @brief xcb_xkb_overlay_2_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_overlay_2_behavior_iterator_t {
+ xcb_xkb_overlay_2_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_overlay_2_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_permament_lock_behavior_t
+ **/
+typedef struct xcb_xkb_permament_lock_behavior_t {
+ uint8_t type; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_permament_lock_behavior_t;
+
+/**
+ * @brief xcb_xkb_permament_lock_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_permament_lock_behavior_iterator_t {
+ xcb_xkb_permament_lock_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_permament_lock_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_permament_radio_group_behavior_t
+ **/
+typedef struct xcb_xkb_permament_radio_group_behavior_t {
+ uint8_t type; /**< */
+ uint8_t group; /**< */
+} xcb_xkb_permament_radio_group_behavior_t;
+
+/**
+ * @brief xcb_xkb_permament_radio_group_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_permament_radio_group_behavior_iterator_t {
+ xcb_xkb_permament_radio_group_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_permament_radio_group_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_permament_overlay_1_behavior_t
+ **/
+typedef struct xcb_xkb_permament_overlay_1_behavior_t {
+ uint8_t type; /**< */
+ xcb_keycode_t key; /**< */
+} xcb_xkb_permament_overlay_1_behavior_t;
+
+/**
+ * @brief xcb_xkb_permament_overlay_1_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_permament_overlay_1_behavior_iterator_t {
+ xcb_xkb_permament_overlay_1_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_permament_overlay_1_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_permament_overlay_2_behavior_t
+ **/
+typedef struct xcb_xkb_permament_overlay_2_behavior_t {
+ uint8_t type; /**< */
+ uint8_t key; /**< */
+} xcb_xkb_permament_overlay_2_behavior_t;
+
+/**
+ * @brief xcb_xkb_permament_overlay_2_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_permament_overlay_2_behavior_iterator_t {
+ xcb_xkb_permament_overlay_2_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_permament_overlay_2_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_behavior_t
+ **/
+typedef union xcb_xkb_behavior_t {
+ xcb_xkb_common_behavior_t common; /**< */
+ xcb_xkb_default_behavior_t _default; /**< */
+ xcb_xkb_lock_behavior_t lock; /**< */
+ xcb_xkb_radio_group_behavior_t radioGroup; /**< */
+ xcb_xkb_overlay_1_behavior_t overlay1; /**< */
+ xcb_xkb_overlay_2_behavior_t overlay2; /**< */
+ xcb_xkb_permament_lock_behavior_t permamentLock; /**< */
+ xcb_xkb_permament_radio_group_behavior_t permamentRadioGroup; /**< */
+ xcb_xkb_permament_overlay_1_behavior_t permamentOverlay1; /**< */
+ xcb_xkb_permament_overlay_2_behavior_t permamentOverlay2; /**< */
+ uint8_t type; /**< */
+} xcb_xkb_behavior_t;
+
+/**
+ * @brief xcb_xkb_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_behavior_iterator_t {
+ xcb_xkb_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_behavior_iterator_t;
+
+typedef enum xcb_xkb_behavior_type_t {
+ XCB_XKB_BEHAVIOR_TYPE_DEFAULT = 0,
+ XCB_XKB_BEHAVIOR_TYPE_LOCK = 1,
+ XCB_XKB_BEHAVIOR_TYPE_RADIO_GROUP = 2,
+ XCB_XKB_BEHAVIOR_TYPE_OVERLAY_1 = 3,
+ XCB_XKB_BEHAVIOR_TYPE_OVERLAY_2 = 4,
+ XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_LOCK = 129,
+ XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_RADIO_GROUP = 130,
+ XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_1 = 131,
+ XCB_XKB_BEHAVIOR_TYPE_PERMAMENT_OVERLAY_2 = 132
+} xcb_xkb_behavior_type_t;
+
+/**
+ * @brief xcb_xkb_set_behavior_t
+ **/
+typedef struct xcb_xkb_set_behavior_t {
+ xcb_keycode_t keycode; /**< */
+ xcb_xkb_behavior_t behavior; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_set_behavior_t;
+
+/**
+ * @brief xcb_xkb_set_behavior_iterator_t
+ **/
+typedef struct xcb_xkb_set_behavior_iterator_t {
+ xcb_xkb_set_behavior_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_set_behavior_iterator_t;
+
+/**
+ * @brief xcb_xkb_set_explicit_t
+ **/
+typedef struct xcb_xkb_set_explicit_t {
+ xcb_keycode_t keycode; /**< */
+ uint8_t explicit; /**< */
+} xcb_xkb_set_explicit_t;
+
+/**
+ * @brief xcb_xkb_set_explicit_iterator_t
+ **/
+typedef struct xcb_xkb_set_explicit_iterator_t {
+ xcb_xkb_set_explicit_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_set_explicit_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_mod_map_t
+ **/
+typedef struct xcb_xkb_key_mod_map_t {
+ xcb_keycode_t keycode; /**< */
+ uint8_t mods; /**< */
+} xcb_xkb_key_mod_map_t;
+
+/**
+ * @brief xcb_xkb_key_mod_map_iterator_t
+ **/
+typedef struct xcb_xkb_key_mod_map_iterator_t {
+ xcb_xkb_key_mod_map_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_mod_map_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_v_mod_map_t
+ **/
+typedef struct xcb_xkb_key_v_mod_map_t {
+ xcb_keycode_t keycode; /**< */
+ uint8_t pad0; /**< */
+ uint16_t vmods; /**< */
+} xcb_xkb_key_v_mod_map_t;
+
+/**
+ * @brief xcb_xkb_key_v_mod_map_iterator_t
+ **/
+typedef struct xcb_xkb_key_v_mod_map_iterator_t {
+ xcb_xkb_key_v_mod_map_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_v_mod_map_iterator_t;
+
+/**
+ * @brief xcb_xkb_kt_set_map_entry_t
+ **/
+typedef struct xcb_xkb_kt_set_map_entry_t {
+ uint8_t level; /**< */
+ uint8_t realMods; /**< */
+ uint16_t virtualMods; /**< */
+} xcb_xkb_kt_set_map_entry_t;
+
+/**
+ * @brief xcb_xkb_kt_set_map_entry_iterator_t
+ **/
+typedef struct xcb_xkb_kt_set_map_entry_iterator_t {
+ xcb_xkb_kt_set_map_entry_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_kt_set_map_entry_iterator_t;
+
+/**
+ * @brief xcb_xkb_set_key_type_t
+ **/
+typedef struct xcb_xkb_set_key_type_t {
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ uint16_t virtualMods; /**< */
+ uint8_t numLevels; /**< */
+ uint8_t nMapEntries; /**< */
+ uint8_t preserve; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_set_key_type_t;
+
+/**
+ * @brief xcb_xkb_set_key_type_iterator_t
+ **/
+typedef struct xcb_xkb_set_key_type_iterator_t {
+ xcb_xkb_set_key_type_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_set_key_type_iterator_t;
+
+typedef char xcb_xkb_string8_t;
+
+/**
+ * @brief xcb_xkb_string8_iterator_t
+ **/
+typedef struct xcb_xkb_string8_iterator_t {
+ xcb_xkb_string8_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_string8_iterator_t;
+
+/**
+ * @brief xcb_xkb_property_t
+ **/
+typedef struct xcb_xkb_property_t {
+ uint16_t nameLength; /**< */
+ uint16_t valueLength; /**< */
+} xcb_xkb_property_t;
+
+/**
+ * @brief xcb_xkb_property_iterator_t
+ **/
+typedef struct xcb_xkb_property_iterator_t {
+ xcb_xkb_property_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_property_iterator_t;
+
+/**
+ * @brief xcb_xkb_outline_t
+ **/
+typedef struct xcb_xkb_outline_t {
+ uint8_t nPoints; /**< */
+ uint8_t cornerRadius; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_outline_t;
+
+/**
+ * @brief xcb_xkb_outline_iterator_t
+ **/
+typedef struct xcb_xkb_outline_iterator_t {
+ xcb_xkb_outline_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_outline_iterator_t;
+
+/**
+ * @brief xcb_xkb_shape_t
+ **/
+typedef struct xcb_xkb_shape_t {
+ xcb_atom_t name; /**< */
+ uint8_t nOutlines; /**< */
+ uint8_t primaryNdx; /**< */
+ uint8_t approxNdx; /**< */
+ uint8_t pad0; /**< */
+} xcb_xkb_shape_t;
+
+/**
+ * @brief xcb_xkb_shape_iterator_t
+ **/
+typedef struct xcb_xkb_shape_iterator_t {
+ xcb_xkb_shape_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_shape_iterator_t;
+
+/**
+ * @brief xcb_xkb_key_t
+ **/
+typedef struct xcb_xkb_key_t {
+ xcb_xkb_string8_t name[4]; /**< */
+ int16_t gap; /**< */
+ uint8_t shapeNdx; /**< */
+ uint8_t colorNdx; /**< */
+} xcb_xkb_key_t;
+
+/**
+ * @brief xcb_xkb_key_iterator_t
+ **/
+typedef struct xcb_xkb_key_iterator_t {
+ xcb_xkb_key_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_key_iterator_t;
+
+/**
+ * @brief xcb_xkb_overlay_key_t
+ **/
+typedef struct xcb_xkb_overlay_key_t {
+ xcb_xkb_string8_t over[4]; /**< */
+ xcb_xkb_string8_t under[4]; /**< */
+} xcb_xkb_overlay_key_t;
+
+/**
+ * @brief xcb_xkb_overlay_key_iterator_t
+ **/
+typedef struct xcb_xkb_overlay_key_iterator_t {
+ xcb_xkb_overlay_key_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_overlay_key_iterator_t;
+
+/**
+ * @brief xcb_xkb_overlay_row_t
+ **/
+typedef struct xcb_xkb_overlay_row_t {
+ uint8_t rowUnder; /**< */
+ uint8_t nKeys; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_overlay_row_t;
+
+/**
+ * @brief xcb_xkb_overlay_row_iterator_t
+ **/
+typedef struct xcb_xkb_overlay_row_iterator_t {
+ xcb_xkb_overlay_row_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_overlay_row_iterator_t;
+
+/**
+ * @brief xcb_xkb_overlay_t
+ **/
+typedef struct xcb_xkb_overlay_t {
+ xcb_atom_t name; /**< */
+ uint8_t nRows; /**< */
+ uint8_t pad0[3]; /**< */
+} xcb_xkb_overlay_t;
+
+/**
+ * @brief xcb_xkb_overlay_iterator_t
+ **/
+typedef struct xcb_xkb_overlay_iterator_t {
+ xcb_xkb_overlay_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_overlay_iterator_t;
+
+/**
+ * @brief xcb_xkb_row_t
+ **/
+typedef struct xcb_xkb_row_t {
+ int16_t top; /**< */
+ int16_t left; /**< */
+ uint8_t nKeys; /**< */
+ uint8_t vertical; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_row_t;
+
+/**
+ * @brief xcb_xkb_row_iterator_t
+ **/
+typedef struct xcb_xkb_row_iterator_t {
+ xcb_xkb_row_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_row_iterator_t;
+
+typedef enum xcb_xkb_doodad_type_t {
+ XCB_XKB_DOODAD_TYPE_OUTLINE = 1,
+ XCB_XKB_DOODAD_TYPE_SOLID = 2,
+ XCB_XKB_DOODAD_TYPE_TEXT = 3,
+ XCB_XKB_DOODAD_TYPE_INDICATOR = 4,
+ XCB_XKB_DOODAD_TYPE_LOGO = 5
+} xcb_xkb_doodad_type_t;
+
+/**
+ * @brief xcb_xkb_common_doodad_t
+ **/
+typedef struct xcb_xkb_common_doodad_t {
+ xcb_atom_t name; /**< */
+ uint8_t type; /**< */
+ uint8_t priority; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ int16_t angle; /**< */
+} xcb_xkb_common_doodad_t;
+
+/**
+ * @brief xcb_xkb_common_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_common_doodad_iterator_t {
+ xcb_xkb_common_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_common_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_shape_doodad_t
+ **/
+typedef struct xcb_xkb_shape_doodad_t {
+ xcb_atom_t name; /**< */
+ uint8_t type; /**< */
+ uint8_t priority; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ int16_t angle; /**< */
+ uint8_t colorNdx; /**< */
+ uint8_t shapeNdx; /**< */
+ uint8_t pad0[6]; /**< */
+} xcb_xkb_shape_doodad_t;
+
+/**
+ * @brief xcb_xkb_shape_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_shape_doodad_iterator_t {
+ xcb_xkb_shape_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_shape_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_text_doodad_t
+ **/
+typedef struct xcb_xkb_text_doodad_t {
+ xcb_atom_t name; /**< */
+ uint8_t type; /**< */
+ uint8_t priority; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ int16_t angle; /**< */
+ uint16_t width; /**< */
+ uint16_t height; /**< */
+ uint8_t colorNdx; /**< */
+ uint8_t pad0[3]; /**< */
+} xcb_xkb_text_doodad_t;
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_text
+ **
+ ** @param const xcb_xkb_text_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_text_doodad_text (const xcb_xkb_text_doodad_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_font
+ **
+ ** @param const xcb_xkb_text_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_text_doodad_font (const xcb_xkb_text_doodad_t *R /**< */);
+
+/**
+ * @brief xcb_xkb_text_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_text_doodad_iterator_t {
+ xcb_xkb_text_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_text_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_indicator_doodad_t
+ **/
+typedef struct xcb_xkb_indicator_doodad_t {
+ xcb_atom_t name; /**< */
+ uint8_t type; /**< */
+ uint8_t priority; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ int16_t angle; /**< */
+ uint8_t shapeNdx; /**< */
+ uint8_t onColorNdx; /**< */
+ uint8_t offColorNdx; /**< */
+ uint8_t pad0[5]; /**< */
+} xcb_xkb_indicator_doodad_t;
+
+/**
+ * @brief xcb_xkb_indicator_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_indicator_doodad_iterator_t {
+ xcb_xkb_indicator_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_indicator_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_logo_doodad_t
+ **/
+typedef struct xcb_xkb_logo_doodad_t {
+ xcb_atom_t name; /**< */
+ uint8_t type; /**< */
+ uint8_t priority; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ int16_t angle; /**< */
+ uint8_t colorNdx; /**< */
+ uint8_t shapeNdx; /**< */
+ uint8_t pad0[6]; /**< */
+} xcb_xkb_logo_doodad_t;
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_logo_doodad_logo_name
+ **
+ ** @param const xcb_xkb_logo_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_logo_doodad_logo_name (const xcb_xkb_logo_doodad_t *R /**< */);
+
+/**
+ * @brief xcb_xkb_logo_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_logo_doodad_iterator_t {
+ xcb_xkb_logo_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_logo_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_doodad_t
+ **/
+typedef union xcb_xkb_doodad_t {
+ xcb_xkb_common_doodad_t common; /**< */
+ xcb_xkb_shape_doodad_t shape; /**< */
+ xcb_xkb_text_doodad_t *text; /**< */
+ xcb_xkb_indicator_doodad_t indicator; /**< */
+ xcb_xkb_logo_doodad_t *logo; /**< */
+} xcb_xkb_doodad_t;
+
+/**
+ * @brief xcb_xkb_doodad_iterator_t
+ **/
+typedef struct xcb_xkb_doodad_iterator_t {
+ xcb_xkb_doodad_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_doodad_iterator_t;
+
+/**
+ * @brief xcb_xkb_section_t
+ **/
+typedef struct xcb_xkb_section_t {
+ xcb_atom_t name; /**< */
+ int16_t top; /**< */
+ int16_t left; /**< */
+ uint16_t width; /**< */
+ uint16_t height; /**< */
+ int16_t angle; /**< */
+ uint8_t priority; /**< */
+ uint8_t nRows; /**< */
+ uint8_t nDoodads; /**< */
+ uint8_t nOverlays; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_section_t;
+
+/**
+ * @brief xcb_xkb_section_iterator_t
+ **/
+typedef struct xcb_xkb_section_iterator_t {
+ xcb_xkb_section_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_section_iterator_t;
+
+/**
+ * @brief xcb_xkb_listing_t
+ **/
+typedef struct xcb_xkb_listing_t {
+ uint16_t flags; /**< */
+ uint16_t length; /**< */
+} xcb_xkb_listing_t;
+
+/**
+ * @brief xcb_xkb_listing_iterator_t
+ **/
+typedef struct xcb_xkb_listing_iterator_t {
+ xcb_xkb_listing_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_listing_iterator_t;
+
+/**
+ * @brief xcb_xkb_device_led_info_t
+ **/
+typedef struct xcb_xkb_device_led_info_t {
+ xcb_xkb_led_class_spec_t ledClass; /**< */
+ xcb_xkb_id_spec_t ledID; /**< */
+ uint32_t namesPresent; /**< */
+ uint32_t mapsPresent; /**< */
+ uint32_t physIndicators; /**< */
+ uint32_t state; /**< */
+} xcb_xkb_device_led_info_t;
+
+/**
+ * @brief xcb_xkb_device_led_info_iterator_t
+ **/
+typedef struct xcb_xkb_device_led_info_iterator_t {
+ xcb_xkb_device_led_info_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_device_led_info_iterator_t;
+
+typedef enum xcb_xkb_error_t {
+ XCB_XKB_ERROR_BAD_DEVICE = 255,
+ XCB_XKB_ERROR_BAD_CLASS = 254,
+ XCB_XKB_ERROR_BAD_ID = 253
+} xcb_xkb_error_t;
+
+/** Opcode for xcb_xkb_keyboard. */
+#define XCB_XKB_KEYBOARD 0
+
+/**
+ * @brief xcb_xkb_keyboard_error_t
+ **/
+typedef struct xcb_xkb_keyboard_error_t {
+ uint8_t response_type; /**< */
+ uint8_t error_code; /**< */
+ uint16_t sequence; /**< */
+ uint32_t value; /**< */
+ uint16_t minorOpcode; /**< */
+ uint8_t majorOpcode; /**< */
+ uint8_t pad0[21]; /**< */
+} xcb_xkb_keyboard_error_t;
+
+typedef enum xcb_xkb_sa_t {
+ XCB_XKB_SA_CLEAR_LOCKS = 1,
+ XCB_XKB_SA_LATCH_TO_LOCK = 2,
+ XCB_XKB_SA_USE_MOD_MAP_MODS = 4,
+ XCB_XKB_SA_GROUP_ABSOLUTE = 4
+} xcb_xkb_sa_t;
+
+typedef enum xcb_xkb_sa_type_t {
+ XCB_XKB_SA_TYPE_NO_ACTION = 0,
+ XCB_XKB_SA_TYPE_SET_MODS = 1,
+ XCB_XKB_SA_TYPE_LATCH_MODS = 2,
+ XCB_XKB_SA_TYPE_LOCK_MODS = 3,
+ XCB_XKB_SA_TYPE_SET_GROUP = 4,
+ XCB_XKB_SA_TYPE_LATCH_GROUP = 5,
+ XCB_XKB_SA_TYPE_LOCK_GROUP = 6,
+ XCB_XKB_SA_TYPE_MOVE_PTR = 7,
+ XCB_XKB_SA_TYPE_PTR_BTN = 8,
+ XCB_XKB_SA_TYPE_LOCK_PTR_BTN = 9,
+ XCB_XKB_SA_TYPE_SET_PTR_DFLT = 10,
+ XCB_XKB_SA_TYPE_ISO_LOCK = 11,
+ XCB_XKB_SA_TYPE_TERMINATE = 12,
+ XCB_XKB_SA_TYPE_SWITCH_SCREEN = 13,
+ XCB_XKB_SA_TYPE_SET_CONTROLS = 14,
+ XCB_XKB_SA_TYPE_LOCK_CONTROLS = 15,
+ XCB_XKB_SA_TYPE_ACTION_MESSAGE = 16,
+ XCB_XKB_SA_TYPE_REDIRECT_KEY = 17,
+ XCB_XKB_SA_TYPE_DEVICE_BTN = 18,
+ XCB_XKB_SA_TYPE_LOCK_DEVICE_BTN = 19,
+ XCB_XKB_SA_TYPE_DEVICE_VALUATOR = 20
+} xcb_xkb_sa_type_t;
+
+/**
+ * @brief xcb_xkb_sa_no_action_t
+ **/
+typedef struct xcb_xkb_sa_no_action_t {
+ uint8_t type; /**< */
+ uint8_t pad0[7]; /**< */
+} xcb_xkb_sa_no_action_t;
+
+/**
+ * @brief xcb_xkb_sa_no_action_iterator_t
+ **/
+typedef struct xcb_xkb_sa_no_action_iterator_t {
+ xcb_xkb_sa_no_action_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_no_action_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_set_mods_t
+ **/
+typedef struct xcb_xkb_sa_set_mods_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ uint8_t vmodsHigh; /**< */
+ uint8_t vmodsLow; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_sa_set_mods_t;
+
+/**
+ * @brief xcb_xkb_sa_set_mods_iterator_t
+ **/
+typedef struct xcb_xkb_sa_set_mods_iterator_t {
+ xcb_xkb_sa_set_mods_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_set_mods_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_latch_mods_t
+ **/
+typedef struct xcb_xkb_sa_latch_mods_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ uint8_t vmodsHigh; /**< */
+ uint8_t vmodsLow; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_sa_latch_mods_t;
+
+/**
+ * @brief xcb_xkb_sa_latch_mods_iterator_t
+ **/
+typedef struct xcb_xkb_sa_latch_mods_iterator_t {
+ xcb_xkb_sa_latch_mods_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_latch_mods_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_mods_t
+ **/
+typedef struct xcb_xkb_sa_lock_mods_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ uint8_t vmodsHigh; /**< */
+ uint8_t vmodsLow; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_sa_lock_mods_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_mods_iterator_t
+ **/
+typedef struct xcb_xkb_sa_lock_mods_iterator_t {
+ xcb_xkb_sa_lock_mods_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_lock_mods_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_set_group_t
+ **/
+typedef struct xcb_xkb_sa_set_group_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ int8_t group; /**< */
+ uint8_t pad0[5]; /**< */
+} xcb_xkb_sa_set_group_t;
+
+/**
+ * @brief xcb_xkb_sa_set_group_iterator_t
+ **/
+typedef struct xcb_xkb_sa_set_group_iterator_t {
+ xcb_xkb_sa_set_group_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_set_group_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_latch_group_t
+ **/
+typedef struct xcb_xkb_sa_latch_group_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ int8_t group; /**< */
+ uint8_t pad0[5]; /**< */
+} xcb_xkb_sa_latch_group_t;
+
+/**
+ * @brief xcb_xkb_sa_latch_group_iterator_t
+ **/
+typedef struct xcb_xkb_sa_latch_group_iterator_t {
+ xcb_xkb_sa_latch_group_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_latch_group_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_group_t
+ **/
+typedef struct xcb_xkb_sa_lock_group_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ int8_t group; /**< */
+ uint8_t pad0[5]; /**< */
+} xcb_xkb_sa_lock_group_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_group_iterator_t
+ **/
+typedef struct xcb_xkb_sa_lock_group_iterator_t {
+ xcb_xkb_sa_lock_group_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_lock_group_iterator_t;
+
+typedef enum xcb_xkb_sa_move_ptr_flag_t {
+ XCB_XKB_SA_MOVE_PTR_FLAG_NO_ACCELERATION = 1,
+ XCB_XKB_SA_MOVE_PTR_FLAG_MOVE_ABSOLUTE_X = 2,
+ XCB_XKB_SA_MOVE_PTR_FLAG_MOVE_ABSOLUTE_Y = 4
+} xcb_xkb_sa_move_ptr_flag_t;
+
+/**
+ * @brief xcb_xkb_sa_move_ptr_t
+ **/
+typedef struct xcb_xkb_sa_move_ptr_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ int8_t xHigh; /**< */
+ uint8_t xLow; /**< */
+ int8_t yHigh; /**< */
+ uint8_t yLow; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_sa_move_ptr_t;
+
+/**
+ * @brief xcb_xkb_sa_move_ptr_iterator_t
+ **/
+typedef struct xcb_xkb_sa_move_ptr_iterator_t {
+ xcb_xkb_sa_move_ptr_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_move_ptr_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_ptr_btn_t
+ **/
+typedef struct xcb_xkb_sa_ptr_btn_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t count; /**< */
+ uint8_t button; /**< */
+ uint8_t pad0[4]; /**< */
+} xcb_xkb_sa_ptr_btn_t;
+
+/**
+ * @brief xcb_xkb_sa_ptr_btn_iterator_t
+ **/
+typedef struct xcb_xkb_sa_ptr_btn_iterator_t {
+ xcb_xkb_sa_ptr_btn_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_ptr_btn_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_ptr_btn_t
+ **/
+typedef struct xcb_xkb_sa_lock_ptr_btn_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t pad0; /**< */
+ uint8_t button; /**< */
+ uint8_t pad1[4]; /**< */
+} xcb_xkb_sa_lock_ptr_btn_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_ptr_btn_iterator_t
+ **/
+typedef struct xcb_xkb_sa_lock_ptr_btn_iterator_t {
+ xcb_xkb_sa_lock_ptr_btn_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_lock_ptr_btn_iterator_t;
+
+typedef enum xcb_xkb_sa_set_ptr_dflt_flag_t {
+ XCB_XKB_SA_SET_PTR_DFLT_FLAG_DFLT_BTN_ABSOLUTE = 2,
+ XCB_XKB_SA_SET_PTR_DFLT_FLAG_AFFECT_DFLT_BUTTON = 1
+} xcb_xkb_sa_set_ptr_dflt_flag_t;
+
+/**
+ * @brief xcb_xkb_sa_set_ptr_dflt_t
+ **/
+typedef struct xcb_xkb_sa_set_ptr_dflt_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t affect; /**< */
+ int8_t value; /**< */
+ uint8_t pad0[4]; /**< */
+} xcb_xkb_sa_set_ptr_dflt_t;
+
+/**
+ * @brief xcb_xkb_sa_set_ptr_dflt_iterator_t
+ **/
+typedef struct xcb_xkb_sa_set_ptr_dflt_iterator_t {
+ xcb_xkb_sa_set_ptr_dflt_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_set_ptr_dflt_iterator_t;
+
+typedef enum xcb_xkb_sa_iso_lock_flag_t {
+ XCB_XKB_SA_ISO_LOCK_FLAG_NO_LOCK = 1,
+ XCB_XKB_SA_ISO_LOCK_FLAG_NO_UNLOCK = 2,
+ XCB_XKB_SA_ISO_LOCK_FLAG_USE_MOD_MAP_MODS = 4,
+ XCB_XKB_SA_ISO_LOCK_FLAG_GROUP_ABSOLUTE = 4,
+ XCB_XKB_SA_ISO_LOCK_FLAG_ISO_DFLT_IS_GROUP = 8
+} xcb_xkb_sa_iso_lock_flag_t;
+
+typedef enum xcb_xkb_sa_iso_lock_no_affect_t {
+ XCB_XKB_SA_ISO_LOCK_NO_AFFECT_CTRLS = 8,
+ XCB_XKB_SA_ISO_LOCK_NO_AFFECT_PTR = 16,
+ XCB_XKB_SA_ISO_LOCK_NO_AFFECT_GROUP = 32,
+ XCB_XKB_SA_ISO_LOCK_NO_AFFECT_MODS = 64
+} xcb_xkb_sa_iso_lock_no_affect_t;
+
+/**
+ * @brief xcb_xkb_sa_iso_lock_t
+ **/
+typedef struct xcb_xkb_sa_iso_lock_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t mask; /**< */
+ uint8_t realMods; /**< */
+ int8_t group; /**< */
+ uint8_t affect; /**< */
+ uint8_t vmodsHigh; /**< */
+ uint8_t vmodsLow; /**< */
+} xcb_xkb_sa_iso_lock_t;
+
+/**
+ * @brief xcb_xkb_sa_iso_lock_iterator_t
+ **/
+typedef struct xcb_xkb_sa_iso_lock_iterator_t {
+ xcb_xkb_sa_iso_lock_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_iso_lock_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_terminate_t
+ **/
+typedef struct xcb_xkb_sa_terminate_t {
+ uint8_t type; /**< */
+ uint8_t pad0[7]; /**< */
+} xcb_xkb_sa_terminate_t;
+
+/**
+ * @brief xcb_xkb_sa_terminate_iterator_t
+ **/
+typedef struct xcb_xkb_sa_terminate_iterator_t {
+ xcb_xkb_sa_terminate_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_terminate_iterator_t;
+
+typedef enum xcb_xkb_switch_screen_flag_t {
+ XCB_XKB_SWITCH_SCREEN_FLAG_APPLICATION = 1,
+ XCB_XKB_SWITCH_SCREEN_FLAG_ABSOLUTE = 4
+} xcb_xkb_switch_screen_flag_t;
+
+/**
+ * @brief xcb_xkb_sa_switch_screen_t
+ **/
+typedef struct xcb_xkb_sa_switch_screen_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ int8_t newScreen; /**< */
+ uint8_t pad0[5]; /**< */
+} xcb_xkb_sa_switch_screen_t;
+
+/**
+ * @brief xcb_xkb_sa_switch_screen_iterator_t
+ **/
+typedef struct xcb_xkb_sa_switch_screen_iterator_t {
+ xcb_xkb_sa_switch_screen_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_switch_screen_iterator_t;
+
+typedef enum xcb_xkb_bool_ctrls_high_t {
+ XCB_XKB_BOOL_CTRLS_HIGH_ACCESS_X_FEEDBACK = 1,
+ XCB_XKB_BOOL_CTRLS_HIGH_AUDIBLE_BELL = 2,
+ XCB_XKB_BOOL_CTRLS_HIGH_OVERLAY_1 = 4,
+ XCB_XKB_BOOL_CTRLS_HIGH_OVERLAY_2 = 8,
+ XCB_XKB_BOOL_CTRLS_HIGH_IGNORE_GROUP_LOCK = 16
+} xcb_xkb_bool_ctrls_high_t;
+
+typedef enum xcb_xkb_bool_ctrls_low_t {
+ XCB_XKB_BOOL_CTRLS_LOW_REPEAT_KEYS = 1,
+ XCB_XKB_BOOL_CTRLS_LOW_SLOW_KEYS = 2,
+ XCB_XKB_BOOL_CTRLS_LOW_BOUNCE_KEYS = 4,
+ XCB_XKB_BOOL_CTRLS_LOW_STICKY_KEYS = 8,
+ XCB_XKB_BOOL_CTRLS_LOW_MOUSE_KEYS = 16,
+ XCB_XKB_BOOL_CTRLS_LOW_MOUSE_KEYS_ACCEL = 32,
+ XCB_XKB_BOOL_CTRLS_LOW_ACCESS_X_KEYS = 64,
+ XCB_XKB_BOOL_CTRLS_LOW_ACCESS_X_TIMEOUT = 128
+} xcb_xkb_bool_ctrls_low_t;
+
+/**
+ * @brief xcb_xkb_sa_set_controls_t
+ **/
+typedef struct xcb_xkb_sa_set_controls_t {
+ uint8_t type; /**< */
+ uint8_t pad0[3]; /**< */
+ uint8_t boolCtrlsHigh; /**< */
+ uint8_t boolCtrlsLow; /**< */
+ uint8_t pad1[2]; /**< */
+} xcb_xkb_sa_set_controls_t;
+
+/**
+ * @brief xcb_xkb_sa_set_controls_iterator_t
+ **/
+typedef struct xcb_xkb_sa_set_controls_iterator_t {
+ xcb_xkb_sa_set_controls_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_set_controls_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_controls_t
+ **/
+typedef struct xcb_xkb_sa_lock_controls_t {
+ uint8_t type; /**< */
+ uint8_t pad0[3]; /**< */
+ uint8_t boolCtrlsHigh; /**< */
+ uint8_t boolCtrlsLow; /**< */
+ uint8_t pad1[2]; /**< */
+} xcb_xkb_sa_lock_controls_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_controls_iterator_t
+ **/
+typedef struct xcb_xkb_sa_lock_controls_iterator_t {
+ xcb_xkb_sa_lock_controls_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_lock_controls_iterator_t;
+
+typedef enum xcb_xkb_action_message_flag_t {
+ XCB_XKB_ACTION_MESSAGE_FLAG_ON_PRESS = 1,
+ XCB_XKB_ACTION_MESSAGE_FLAG_ON_RELEASE = 2,
+ XCB_XKB_ACTION_MESSAGE_FLAG_GEN_KEY_EVENT = 4
+} xcb_xkb_action_message_flag_t;
+
+/**
+ * @brief xcb_xkb_sa_action_message_t
+ **/
+typedef struct xcb_xkb_sa_action_message_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t message[6]; /**< */
+} xcb_xkb_sa_action_message_t;
+
+/**
+ * @brief xcb_xkb_sa_action_message_iterator_t
+ **/
+typedef struct xcb_xkb_sa_action_message_iterator_t {
+ xcb_xkb_sa_action_message_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_action_message_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_redirect_key_t
+ **/
+typedef struct xcb_xkb_sa_redirect_key_t {
+ uint8_t type; /**< */
+ xcb_keycode_t newkey; /**< */
+ uint8_t mask; /**< */
+ uint8_t realModifiers; /**< */
+ uint8_t vmodsMaskHigh; /**< */
+ uint8_t vmodsMaskLow; /**< */
+ uint8_t vmodsHigh; /**< */
+ uint8_t vmodsLow; /**< */
+} xcb_xkb_sa_redirect_key_t;
+
+/**
+ * @brief xcb_xkb_sa_redirect_key_iterator_t
+ **/
+typedef struct xcb_xkb_sa_redirect_key_iterator_t {
+ xcb_xkb_sa_redirect_key_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_redirect_key_iterator_t;
+
+/**
+ * @brief xcb_xkb_sa_device_btn_t
+ **/
+typedef struct xcb_xkb_sa_device_btn_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t count; /**< */
+ uint8_t button; /**< */
+ uint8_t device; /**< */
+ uint8_t pad0[3]; /**< */
+} xcb_xkb_sa_device_btn_t;
+
+/**
+ * @brief xcb_xkb_sa_device_btn_iterator_t
+ **/
+typedef struct xcb_xkb_sa_device_btn_iterator_t {
+ xcb_xkb_sa_device_btn_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_device_btn_iterator_t;
+
+typedef enum xcb_xkb_lock_device_flags_t {
+ XCB_XKB_LOCK_DEVICE_FLAGS_NO_LOCK = 1,
+ XCB_XKB_LOCK_DEVICE_FLAGS_NO_UNLOCK = 2
+} xcb_xkb_lock_device_flags_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_device_btn_t
+ **/
+typedef struct xcb_xkb_sa_lock_device_btn_t {
+ uint8_t type; /**< */
+ uint8_t flags; /**< */
+ uint8_t pad0; /**< */
+ uint8_t button; /**< */
+ uint8_t device; /**< */
+} xcb_xkb_sa_lock_device_btn_t;
+
+/**
+ * @brief xcb_xkb_sa_lock_device_btn_iterator_t
+ **/
+typedef struct xcb_xkb_sa_lock_device_btn_iterator_t {
+ xcb_xkb_sa_lock_device_btn_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_lock_device_btn_iterator_t;
+
+typedef enum xcb_xkb_sa_val_what_t {
+ XCB_XKB_SA_VAL_WHAT_IGNORE_VAL = 0,
+ XCB_XKB_SA_VAL_WHAT_SET_VAL_MIN = 1,
+ XCB_XKB_SA_VAL_WHAT_SET_VAL_CENTER = 2,
+ XCB_XKB_SA_VAL_WHAT_SET_VAL_MAX = 3,
+ XCB_XKB_SA_VAL_WHAT_SET_VAL_RELATIVE = 4,
+ XCB_XKB_SA_VAL_WHAT_SET_VAL_ABSOLUTE = 5
+} xcb_xkb_sa_val_what_t;
+
+/**
+ * @brief xcb_xkb_sa_device_valuator_t
+ **/
+typedef struct xcb_xkb_sa_device_valuator_t {
+ uint8_t type; /**< */
+ uint8_t device; /**< */
+ uint8_t val1what; /**< */
+ uint8_t val1index; /**< */
+ uint8_t val1value; /**< */
+ uint8_t val2what; /**< */
+ uint8_t val2index; /**< */
+ uint8_t val2value; /**< */
+} xcb_xkb_sa_device_valuator_t;
+
+/**
+ * @brief xcb_xkb_sa_device_valuator_iterator_t
+ **/
+typedef struct xcb_xkb_sa_device_valuator_iterator_t {
+ xcb_xkb_sa_device_valuator_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_sa_device_valuator_iterator_t;
+
+/**
+ * @brief xcb_xkb_action_t
+ **/
+typedef union xcb_xkb_action_t {
+ xcb_xkb_sa_no_action_t noaction; /**< */
+ xcb_xkb_sa_set_mods_t setmods; /**< */
+ xcb_xkb_sa_latch_mods_t latchmods; /**< */
+ xcb_xkb_sa_lock_mods_t lockmods; /**< */
+ xcb_xkb_sa_set_group_t setgroup; /**< */
+ xcb_xkb_sa_latch_group_t latchgroup; /**< */
+ xcb_xkb_sa_lock_group_t lockgroup; /**< */
+ xcb_xkb_sa_move_ptr_t moveptr; /**< */
+ xcb_xkb_sa_ptr_btn_t ptrbtn; /**< */
+ xcb_xkb_sa_lock_ptr_btn_t lockptrbtn; /**< */
+ xcb_xkb_sa_set_ptr_dflt_t setptrdflt; /**< */
+ xcb_xkb_sa_iso_lock_t isolock; /**< */
+ xcb_xkb_sa_terminate_t terminate; /**< */
+ xcb_xkb_sa_switch_screen_t switchscreen; /**< */
+ xcb_xkb_sa_set_controls_t setcontrols; /**< */
+ xcb_xkb_sa_lock_controls_t lockcontrols; /**< */
+ xcb_xkb_sa_action_message_t message; /**< */
+ xcb_xkb_sa_redirect_key_t redirect; /**< */
+ xcb_xkb_sa_device_btn_t devbtn; /**< */
+ xcb_xkb_sa_lock_device_btn_t lockdevbtn; /**< */
+ xcb_xkb_sa_device_valuator_t devval; /**< */
+ uint8_t type; /**< */
+} xcb_xkb_action_t;
+
+/**
+ * @brief xcb_xkb_action_iterator_t
+ **/
+typedef struct xcb_xkb_action_iterator_t {
+ xcb_xkb_action_t *data; /**< */
+ int rem; /**< */
+ int index; /**< */
+} xcb_xkb_action_iterator_t;
+
+/**
+ * @brief xcb_xkb_use_extension_cookie_t
+ **/
+typedef struct xcb_xkb_use_extension_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_use_extension_cookie_t;
+
+/** Opcode for xcb_xkb_use_extension. */
+#define XCB_XKB_USE_EXTENSION 0
+
+/**
+ * @brief xcb_xkb_use_extension_request_t
+ **/
+typedef struct xcb_xkb_use_extension_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ uint16_t wantedMajor; /**< */
+ uint16_t wantedMinor; /**< */
+} xcb_xkb_use_extension_request_t;
+
+/**
+ * @brief xcb_xkb_use_extension_reply_t
+ **/
+typedef struct xcb_xkb_use_extension_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t supported; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint16_t serverMajor; /**< */
+ uint16_t serverMinor; /**< */
+ uint8_t pad0[20]; /**< */
+} xcb_xkb_use_extension_reply_t;
+
+/**
+ * @brief xcb_xkb_select_events_details_t
+ **/
+typedef struct xcb_xkb_select_events_details_t {
+ uint16_t affectNewKeyboard; /**< */
+ uint16_t newKeyboardDetails; /**< */
+ uint16_t affectState; /**< */
+ uint16_t stateDetails; /**< */
+ uint32_t affectCtrls; /**< */
+ uint32_t ctrlDetails; /**< */
+ uint32_t affectIndicatorState; /**< */
+ uint32_t indicatorStateDetails; /**< */
+ uint32_t affectIndicatorMap; /**< */
+ uint32_t indicatorMapDetails; /**< */
+ uint16_t affectNames; /**< */
+ uint16_t namesDetails; /**< */
+ uint8_t affectCompat; /**< */
+ uint8_t compatDetails; /**< */
+ uint8_t affectBell; /**< */
+ uint8_t bellDetails; /**< */
+ uint8_t affectMsgDetails; /**< */
+ uint8_t msgDetails; /**< */
+ uint16_t affectAccessX; /**< */
+ uint16_t accessXDetails; /**< */
+ uint16_t affectExtDev; /**< */
+ uint16_t extdevDetails; /**< */
+} xcb_xkb_select_events_details_t;
+
+/** Opcode for xcb_xkb_select_events. */
+#define XCB_XKB_SELECT_EVENTS 1
+
+/**
+ * @brief xcb_xkb_select_events_request_t
+ **/
+typedef struct xcb_xkb_select_events_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t affectWhich; /**< */
+ uint16_t clear; /**< */
+ uint16_t selectAll; /**< */
+ uint16_t affectMap; /**< */
+ uint16_t map; /**< */
+} xcb_xkb_select_events_request_t;
+
+/** Opcode for xcb_xkb_bell. */
+#define XCB_XKB_BELL 3
+
+/**
+ * @brief xcb_xkb_bell_request_t
+ **/
+typedef struct xcb_xkb_bell_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ xcb_xkb_bell_class_spec_t bellClass; /**< */
+ xcb_xkb_id_spec_t bellID; /**< */
+ int8_t percent; /**< */
+ uint8_t forceSound; /**< */
+ uint8_t eventOnly; /**< */
+ uint8_t pad0; /**< */
+ int16_t pitch; /**< */
+ int16_t duration; /**< */
+ uint8_t pad1[2]; /**< */
+ xcb_atom_t name; /**< */
+ xcb_window_t window; /**< */
+} xcb_xkb_bell_request_t;
+
+/**
+ * @brief xcb_xkb_get_state_cookie_t
+ **/
+typedef struct xcb_xkb_get_state_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_state_cookie_t;
+
+/** Opcode for xcb_xkb_get_state. */
+#define XCB_XKB_GET_STATE 4
+
+/**
+ * @brief xcb_xkb_get_state_request_t
+ **/
+typedef struct xcb_xkb_get_state_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_get_state_request_t;
+
+/**
+ * @brief xcb_xkb_get_state_reply_t
+ **/
+typedef struct xcb_xkb_get_state_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint8_t mods; /**< */
+ uint8_t baseMods; /**< */
+ uint8_t latchedMods; /**< */
+ uint8_t lockedMods; /**< */
+ uint8_t group; /**< */
+ uint8_t lockedGroup; /**< */
+ int16_t baseGroup; /**< */
+ int16_t latchedGroup; /**< */
+ uint8_t compatState; /**< */
+ uint8_t grabMods; /**< */
+ uint8_t compatGrabMods; /**< */
+ uint8_t lookupMods; /**< */
+ uint8_t compatLookupMods; /**< */
+ uint8_t pad0; /**< */
+ uint16_t ptrBtnState; /**< */
+ uint8_t pad1[6]; /**< */
+} xcb_xkb_get_state_reply_t;
+
+/** Opcode for xcb_xkb_latch_lock_state. */
+#define XCB_XKB_LATCH_LOCK_STATE 5
+
+/**
+ * @brief xcb_xkb_latch_lock_state_request_t
+ **/
+typedef struct xcb_xkb_latch_lock_state_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t affectModLocks; /**< */
+ uint8_t modLocks; /**< */
+ uint8_t lockGroup; /**< */
+ uint8_t groupLock; /**< */
+ uint8_t affectModLatches; /**< */
+ uint8_t pad0; /**< */
+ uint8_t latchGroup; /**< */
+ uint16_t groupLatch; /**< */
+} xcb_xkb_latch_lock_state_request_t;
+
+/**
+ * @brief xcb_xkb_get_controls_cookie_t
+ **/
+typedef struct xcb_xkb_get_controls_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_controls_cookie_t;
+
+/** Opcode for xcb_xkb_get_controls. */
+#define XCB_XKB_GET_CONTROLS 6
+
+/**
+ * @brief xcb_xkb_get_controls_request_t
+ **/
+typedef struct xcb_xkb_get_controls_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_get_controls_request_t;
+
+/**
+ * @brief xcb_xkb_get_controls_reply_t
+ **/
+typedef struct xcb_xkb_get_controls_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint8_t mouseKeysDfltBtn; /**< */
+ uint8_t numGroups; /**< */
+ uint8_t groupsWrap; /**< */
+ uint8_t internalModsMask; /**< */
+ uint8_t ignoreLockModsMask; /**< */
+ uint8_t internalModsRealMods; /**< */
+ uint8_t ignoreLockModsRealMods; /**< */
+ uint8_t pad0; /**< */
+ uint16_t internalModsVmods; /**< */
+ uint16_t ignoreLockModsVmods; /**< */
+ uint16_t repeatDelay; /**< */
+ uint16_t repeatInterval; /**< */
+ uint16_t slowKeysDelay; /**< */
+ uint16_t debounceDelay; /**< */
+ uint16_t mouseKeysDelay; /**< */
+ uint16_t mouseKeysInterval; /**< */
+ uint16_t mouseKeysTimeToMax; /**< */
+ uint16_t mouseKeysMaxSpeed; /**< */
+ int16_t mouseKeysCurve; /**< */
+ xcb_xkb_ax_option_t accessXOption; /**< */
+ uint16_t accessXTimeout; /**< */
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask; /**< */
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues; /**< */
+ uint8_t pad1[2]; /**< */
+ uint32_t accessXTimeoutMask; /**< */
+ uint32_t accessXTimeoutValues; /**< */
+ uint32_t enabledControls; /**< */
+ uint8_t perKeyRepeat[32]; /**< */
+} xcb_xkb_get_controls_reply_t;
+
+/** Opcode for xcb_xkb_set_controls. */
+#define XCB_XKB_SET_CONTROLS 7
+
+/**
+ * @brief xcb_xkb_set_controls_request_t
+ **/
+typedef struct xcb_xkb_set_controls_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t affectInternalRealMods; /**< */
+ uint8_t internalRealMods; /**< */
+ uint8_t affectIgnoreLockRealMods; /**< */
+ uint8_t ignoreLockRealMods; /**< */
+ uint16_t affectInternalVirtualMods; /**< */
+ uint16_t internalVirtualMods; /**< */
+ uint16_t affectIgnoreLockVirtualMods; /**< */
+ uint16_t ignoreLockVirtualMods; /**< */
+ uint8_t mouseKeysDfltBtn; /**< */
+ uint8_t groupsWrap; /**< */
+ xcb_xkb_ax_option_t accessXOptions; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t affectEnabledControls; /**< */
+ uint32_t enabledControls; /**< */
+ uint32_t changeControls; /**< */
+ uint16_t repeatDelay; /**< */
+ uint16_t repeatInterval; /**< */
+ uint16_t slowKeysDelay; /**< */
+ uint16_t debounceDelay; /**< */
+ uint16_t mouseKeysDelay; /**< */
+ uint16_t mouseKeysInterval; /**< */
+ uint16_t mouseKeysTimeToMax; /**< */
+ uint16_t mouseKeysMaxSpeed; /**< */
+ int16_t mouseKeysCurve; /**< */
+ uint16_t accessXTimeout; /**< */
+ uint32_t accessXTimeoutMask; /**< */
+ uint32_t accessXTimeoutValues; /**< */
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask; /**< */
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues; /**< */
+ uint8_t perKeyRepeat[32]; /**< */
+} xcb_xkb_set_controls_request_t;
+
+/**
+ * @brief xcb_xkb_get_map_cookie_t
+ **/
+typedef struct xcb_xkb_get_map_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_map_cookie_t;
+
+/** Opcode for xcb_xkb_get_map. */
+#define XCB_XKB_GET_MAP 8
+
+/**
+ * @brief xcb_xkb_get_map_request_t
+ **/
+typedef struct xcb_xkb_get_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t full; /**< */
+ uint16_t partial; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint8_t nKeyActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_get_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_map_map_t
+ **/
+typedef struct xcb_xkb_get_map_map_t {
+ xcb_xkb_key_type_t *types_rtrn; /**< */
+ xcb_xkb_key_sym_map_t *syms_rtrn; /**< */
+ uint8_t *acts_rtrn_count; /**< */
+ xcb_xkb_action_t *acts_rtrn_acts; /**< */
+ xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */
+ uint8_t *vmods_rtrn; /**< */
+ xcb_xkb_set_explicit_t *explicit_rtrn; /**< */
+ xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */
+ xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */
+} xcb_xkb_get_map_map_t;
+
+/**
+ * @brief xcb_xkb_get_map_reply_t
+ **/
+typedef struct xcb_xkb_get_map_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ uint16_t present; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t totalTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint16_t totalSyms; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint16_t totalActions; /**< */
+ uint8_t nKeyActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint8_t totalKeyBehaviors; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ uint8_t totalKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ uint8_t totalModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t totalVModMapKeys; /**< */
+ uint8_t pad1; /**< */
+ uint16_t virtualMods; /**< */
+} xcb_xkb_get_map_reply_t;
+
+/**
+ * @brief xcb_xkb_set_map_values_t
+ **/
+typedef struct xcb_xkb_set_map_values_t {
+ xcb_xkb_set_key_type_t *types; /**< */
+ xcb_xkb_key_sym_map_t *syms; /**< */
+ uint8_t *actionsCount; /**< */
+ xcb_xkb_action_t *actions; /**< */
+ xcb_xkb_set_behavior_t *behaviors; /**< */
+ uint8_t *vmods; /**< */
+ xcb_xkb_set_explicit_t *explicit; /**< */
+ xcb_xkb_key_mod_map_t *modmap; /**< */
+ xcb_xkb_key_v_mod_map_t *vmodmap; /**< */
+} xcb_xkb_set_map_values_t;
+
+/** Opcode for xcb_xkb_set_map. */
+#define XCB_XKB_SET_MAP 9
+
+/**
+ * @brief xcb_xkb_set_map_request_t
+ **/
+typedef struct xcb_xkb_set_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t present; /**< */
+ uint16_t flags; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint8_t nKeySyms; /**< */
+ uint16_t totalSyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint8_t nKeyActions; /**< */
+ uint16_t totalActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint8_t totalKeyBehaviors; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ uint8_t totalKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ uint8_t totalModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t totalVModMapKeys; /**< */
+ uint16_t virtualMods; /**< */
+} xcb_xkb_set_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_compat_map_cookie_t
+ **/
+typedef struct xcb_xkb_get_compat_map_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_compat_map_cookie_t;
+
+/** Opcode for xcb_xkb_get_compat_map. */
+#define XCB_XKB_GET_COMPAT_MAP 10
+
+/**
+ * @brief xcb_xkb_get_compat_map_request_t
+ **/
+typedef struct xcb_xkb_get_compat_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t groups; /**< */
+ uint8_t getAllSI; /**< */
+ uint16_t firstSI; /**< */
+ uint16_t nSI; /**< */
+} xcb_xkb_get_compat_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_compat_map_reply_t
+ **/
+typedef struct xcb_xkb_get_compat_map_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint8_t groupsRtrn; /**< */
+ uint8_t pad0; /**< */
+ uint16_t firstSIRtrn; /**< */
+ uint16_t nSIRtrn; /**< */
+ uint16_t nTotalSI; /**< */
+ uint8_t pad1[16]; /**< */
+} xcb_xkb_get_compat_map_reply_t;
+
+/** Opcode for xcb_xkb_set_compat_map. */
+#define XCB_XKB_SET_COMPAT_MAP 11
+
+/**
+ * @brief xcb_xkb_set_compat_map_request_t
+ **/
+typedef struct xcb_xkb_set_compat_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0; /**< */
+ uint8_t recomputeActions; /**< */
+ uint8_t truncateSI; /**< */
+ uint8_t groups; /**< */
+ uint16_t firstSI; /**< */
+ uint16_t nSI; /**< */
+ uint8_t pad1[2]; /**< */
+} xcb_xkb_set_compat_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_indicator_state_cookie_t
+ **/
+typedef struct xcb_xkb_get_indicator_state_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_indicator_state_cookie_t;
+
+/** Opcode for xcb_xkb_get_indicator_state. */
+#define XCB_XKB_GET_INDICATOR_STATE 12
+
+/**
+ * @brief xcb_xkb_get_indicator_state_request_t
+ **/
+typedef struct xcb_xkb_get_indicator_state_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_get_indicator_state_request_t;
+
+/**
+ * @brief xcb_xkb_get_indicator_state_reply_t
+ **/
+typedef struct xcb_xkb_get_indicator_state_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint32_t state; /**< */
+ uint8_t pad0[20]; /**< */
+} xcb_xkb_get_indicator_state_reply_t;
+
+/**
+ * @brief xcb_xkb_get_indicator_map_cookie_t
+ **/
+typedef struct xcb_xkb_get_indicator_map_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_indicator_map_cookie_t;
+
+/** Opcode for xcb_xkb_get_indicator_map. */
+#define XCB_XKB_GET_INDICATOR_MAP 13
+
+/**
+ * @brief xcb_xkb_get_indicator_map_request_t
+ **/
+typedef struct xcb_xkb_get_indicator_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t which; /**< */
+} xcb_xkb_get_indicator_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_indicator_map_reply_t
+ **/
+typedef struct xcb_xkb_get_indicator_map_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint32_t which; /**< */
+ uint32_t realIndicators; /**< */
+ uint8_t nIndicators; /**< */
+ uint8_t pad0[15]; /**< */
+} xcb_xkb_get_indicator_map_reply_t;
+
+/** Opcode for xcb_xkb_set_indicator_map. */
+#define XCB_XKB_SET_INDICATOR_MAP 14
+
+/**
+ * @brief xcb_xkb_set_indicator_map_request_t
+ **/
+typedef struct xcb_xkb_set_indicator_map_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t which; /**< */
+} xcb_xkb_set_indicator_map_request_t;
+
+/**
+ * @brief xcb_xkb_get_named_indicator_cookie_t
+ **/
+typedef struct xcb_xkb_get_named_indicator_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_named_indicator_cookie_t;
+
+/** Opcode for xcb_xkb_get_named_indicator. */
+#define XCB_XKB_GET_NAMED_INDICATOR 15
+
+/**
+ * @brief xcb_xkb_get_named_indicator_request_t
+ **/
+typedef struct xcb_xkb_get_named_indicator_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ xcb_xkb_led_class_spec_t ledClass; /**< */
+ xcb_xkb_id_spec_t ledID; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_atom_t indicator; /**< */
+} xcb_xkb_get_named_indicator_request_t;
+
+/**
+ * @brief xcb_xkb_get_named_indicator_reply_t
+ **/
+typedef struct xcb_xkb_get_named_indicator_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ xcb_atom_t indicator; /**< */
+ uint8_t found; /**< */
+ uint8_t on; /**< */
+ uint8_t realIndicator; /**< */
+ uint8_t ndx; /**< */
+ uint8_t map_flags; /**< */
+ uint8_t map_whichGroups; /**< */
+ uint8_t map_groups; /**< */
+ uint8_t map_whichMods; /**< */
+ uint8_t map_mods; /**< */
+ uint8_t map_realMods; /**< */
+ uint16_t map_vmod; /**< */
+ uint32_t map_ctrls; /**< */
+ uint8_t pad0[3]; /**< */
+} xcb_xkb_get_named_indicator_reply_t;
+
+/** Opcode for xcb_xkb_set_named_indicator. */
+#define XCB_XKB_SET_NAMED_INDICATOR 16
+
+/**
+ * @brief xcb_xkb_set_named_indicator_request_t
+ **/
+typedef struct xcb_xkb_set_named_indicator_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ xcb_xkb_led_class_spec_t ledClass; /**< */
+ xcb_xkb_id_spec_t ledID; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_atom_t indicator; /**< */
+ uint8_t setState; /**< */
+ uint8_t on; /**< */
+ uint8_t setMap; /**< */
+ uint8_t createMap; /**< */
+ uint8_t pad1; /**< */
+ uint8_t map_flags; /**< */
+ uint8_t map_whichGroups; /**< */
+ uint8_t map_groups; /**< */
+ uint8_t map_whichMods; /**< */
+ uint8_t map_realMods; /**< */
+ uint16_t map_vmods; /**< */
+ uint32_t map_ctrls; /**< */
+} xcb_xkb_set_named_indicator_request_t;
+
+/**
+ * @brief xcb_xkb_get_names_cookie_t
+ **/
+typedef struct xcb_xkb_get_names_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_names_cookie_t;
+
+/** Opcode for xcb_xkb_get_names. */
+#define XCB_XKB_GET_NAMES 17
+
+/**
+ * @brief xcb_xkb_get_names_request_t
+ **/
+typedef struct xcb_xkb_get_names_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t which; /**< */
+} xcb_xkb_get_names_request_t;
+
+/**
+ * @brief xcb_xkb_get_names_value_list_t
+ **/
+typedef struct xcb_xkb_get_names_value_list_t {
+ xcb_atom_t keycodesName; /**< */
+ xcb_atom_t geometryName; /**< */
+ xcb_atom_t symbolsName; /**< */
+ xcb_atom_t physSymbolsName; /**< */
+ xcb_atom_t typesName; /**< */
+ xcb_atom_t compatName; /**< */
+ xcb_atom_t *typeNames; /**< */
+ uint8_t *nLevelsPerType; /**< */
+ xcb_atom_t *ktLevelNames; /**< */
+ xcb_atom_t *indicatorNames; /**< */
+ xcb_atom_t *virtualModNames; /**< */
+ xcb_atom_t *groups; /**< */
+ xcb_xkb_key_name_t *keyNames; /**< */
+ xcb_xkb_key_alias_t *keyAliases; /**< */
+ xcb_atom_t *radioGroupNames; /**< */
+} xcb_xkb_get_names_value_list_t;
+
+/**
+ * @brief xcb_xkb_get_names_reply_t
+ **/
+typedef struct xcb_xkb_get_names_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint32_t which; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t groupNames; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_keycode_t firstKey; /**< */
+ uint8_t nKeys; /**< */
+ uint32_t indicators; /**< */
+ uint8_t nRadioGroups; /**< */
+ uint8_t nKeyAliases; /**< */
+ uint16_t nKTLevels; /**< */
+ uint8_t pad0[4]; /**< */
+} xcb_xkb_get_names_reply_t;
+
+/**
+ * @brief xcb_xkb_set_names_values_t
+ **/
+typedef struct xcb_xkb_set_names_values_t {
+ xcb_atom_t keycodesName; /**< */
+ xcb_atom_t geometryName; /**< */
+ xcb_atom_t symbolsName; /**< */
+ xcb_atom_t physSymbolsName; /**< */
+ xcb_atom_t typesName; /**< */
+ xcb_atom_t compatName; /**< */
+ xcb_atom_t *typeNames; /**< */
+ uint8_t *nLevelsPerType; /**< */
+ xcb_atom_t *ktLevelNames; /**< */
+ xcb_atom_t *indicatorNames; /**< */
+ xcb_atom_t *virtualModNames; /**< */
+ xcb_atom_t *groups; /**< */
+ xcb_xkb_key_name_t *keyNames; /**< */
+ xcb_xkb_key_alias_t *keyAliases; /**< */
+ xcb_atom_t *radioGroupNames; /**< */
+} xcb_xkb_set_names_values_t;
+
+/** Opcode for xcb_xkb_set_names. */
+#define XCB_XKB_SET_NAMES 18
+
+/**
+ * @brief xcb_xkb_set_names_request_t
+ **/
+typedef struct xcb_xkb_set_names_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t virtualMods; /**< */
+ uint32_t which; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t firstKTLevelt; /**< */
+ uint8_t nKTLevels; /**< */
+ uint32_t indicators; /**< */
+ uint8_t groupNames; /**< */
+ uint8_t nRadioGroups; /**< */
+ xcb_keycode_t firstKey; /**< */
+ uint8_t nKeys; /**< */
+ uint8_t nKeyAliases; /**< */
+ uint8_t pad0; /**< */
+ uint16_t totalKTLevelNames; /**< */
+} xcb_xkb_set_names_request_t;
+
+/**
+ * @brief xcb_xkb_get_geometry_cookie_t
+ **/
+typedef struct xcb_xkb_get_geometry_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_geometry_cookie_t;
+
+/** Opcode for xcb_xkb_get_geometry. */
+#define XCB_XKB_GET_GEOMETRY 19
+
+/**
+ * @brief xcb_xkb_get_geometry_request_t
+ **/
+typedef struct xcb_xkb_get_geometry_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_atom_t name; /**< */
+} xcb_xkb_get_geometry_request_t;
+
+/**
+ * @brief xcb_xkb_get_geometry_reply_t
+ **/
+typedef struct xcb_xkb_get_geometry_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ xcb_atom_t name; /**< */
+ uint8_t found; /**< */
+ uint8_t pad0; /**< */
+ uint16_t widthMM; /**< */
+ uint16_t heightMM; /**< */
+ uint16_t nProperties; /**< */
+ uint16_t nColors; /**< */
+ uint16_t nShapes; /**< */
+ uint16_t nSections; /**< */
+ uint16_t nDoodads; /**< */
+ uint16_t nKeyAliases; /**< */
+ uint8_t baseColorNdx; /**< */
+ uint8_t labelColorNdx; /**< */
+} xcb_xkb_get_geometry_reply_t;
+
+/** Opcode for xcb_xkb_set_geometry. */
+#define XCB_XKB_SET_GEOMETRY 20
+
+/**
+ * @brief xcb_xkb_set_geometry_request_t
+ **/
+typedef struct xcb_xkb_set_geometry_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t nShapes; /**< */
+ uint8_t nSections; /**< */
+ xcb_atom_t name; /**< */
+ uint16_t widthMM; /**< */
+ uint16_t heightMM; /**< */
+ uint16_t nProperties; /**< */
+ uint16_t nColors; /**< */
+ uint16_t nDoodads; /**< */
+ uint16_t nKeyAliases; /**< */
+ uint8_t baseColorNdx; /**< */
+ uint8_t labelColorNdx; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_set_geometry_request_t;
+
+/**
+ * @brief xcb_xkb_per_client_flags_cookie_t
+ **/
+typedef struct xcb_xkb_per_client_flags_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_per_client_flags_cookie_t;
+
+/** Opcode for xcb_xkb_per_client_flags. */
+#define XCB_XKB_PER_CLIENT_FLAGS 21
+
+/**
+ * @brief xcb_xkb_per_client_flags_request_t
+ **/
+typedef struct xcb_xkb_per_client_flags_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t change; /**< */
+ uint32_t value; /**< */
+ uint32_t ctrlsToChange; /**< */
+ uint32_t autoCtrls; /**< */
+ uint32_t autoCtrlsValues; /**< */
+} xcb_xkb_per_client_flags_request_t;
+
+/**
+ * @brief xcb_xkb_per_client_flags_reply_t
+ **/
+typedef struct xcb_xkb_per_client_flags_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint32_t supported; /**< */
+ uint32_t value; /**< */
+ uint32_t autoCtrls; /**< */
+ uint32_t autoCtrlsValues; /**< */
+ uint8_t pad0[8]; /**< */
+} xcb_xkb_per_client_flags_reply_t;
+
+/**
+ * @brief xcb_xkb_list_components_cookie_t
+ **/
+typedef struct xcb_xkb_list_components_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_list_components_cookie_t;
+
+/** Opcode for xcb_xkb_list_components. */
+#define XCB_XKB_LIST_COMPONENTS 22
+
+/**
+ * @brief xcb_xkb_list_components_request_t
+ **/
+typedef struct xcb_xkb_list_components_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t maxNames; /**< */
+ uint8_t keymapsSpecLen; /**< */
+ uint8_t keycodesSpecLen; /**< */
+ uint8_t typesSpecLen; /**< */
+ uint8_t compatMapSpecLen; /**< */
+ uint8_t symbolsSpecLen; /**< */
+ uint8_t geometrySpecLen; /**< */
+} xcb_xkb_list_components_request_t;
+
+/**
+ * @brief xcb_xkb_list_components_reply_t
+ **/
+typedef struct xcb_xkb_list_components_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint16_t nKeymaps; /**< */
+ uint16_t nKeycodes; /**< */
+ uint16_t nTypes; /**< */
+ uint16_t nCompatMaps; /**< */
+ uint16_t nSymbols; /**< */
+ uint16_t nGeometries; /**< */
+ uint16_t extra; /**< */
+ uint8_t pad0[10]; /**< */
+} xcb_xkb_list_components_reply_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_cookie_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_kbd_by_name_cookie_t;
+
+/** Opcode for xcb_xkb_get_kbd_by_name. */
+#define XCB_XKB_GET_KBD_BY_NAME 23
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_request_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t need; /**< */
+ uint16_t want; /**< */
+ uint8_t load; /**< */
+ uint8_t pad0; /**< */
+ uint8_t keymapsSpecLen; /**< */
+ uint8_t keycodesSpecLen; /**< */
+ uint8_t typesSpecLen; /**< */
+ uint8_t compatMapSpecLen; /**< */
+ uint8_t symbolsSpecLen; /**< */
+ uint8_t geometrySpecLen; /**< */
+} xcb_xkb_get_kbd_by_name_request_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_types_map_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_types_map_t {
+ xcb_xkb_key_type_t *types_rtrn; /**< */
+ xcb_xkb_key_sym_map_t *syms_rtrn; /**< */
+ uint8_t *acts_rtrn_count; /**< */
+ xcb_xkb_action_t *acts_rtrn_acts; /**< */
+ xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */
+ uint8_t *vmods_rtrn; /**< */
+ xcb_xkb_set_explicit_t *explicit_rtrn; /**< */
+ xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */
+ xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */
+} xcb_xkb_get_kbd_by_name_replies_types_map_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t {
+ xcb_xkb_key_type_t *types_rtrn; /**< */
+ xcb_xkb_key_sym_map_t *syms_rtrn; /**< */
+ uint8_t *acts_rtrn_count; /**< */
+ xcb_xkb_action_t *acts_rtrn_acts; /**< */
+ xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */
+ uint8_t *vmods_rtrn; /**< */
+ xcb_xkb_set_explicit_t *explicit_rtrn; /**< */
+ xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */
+ xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */
+} xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t {
+ xcb_xkb_key_type_t *types_rtrn; /**< */
+ xcb_xkb_key_sym_map_t *syms_rtrn; /**< */
+ uint8_t *acts_rtrn_count; /**< */
+ xcb_xkb_action_t *acts_rtrn_acts; /**< */
+ xcb_xkb_set_behavior_t *behaviors_rtrn; /**< */
+ uint8_t *vmods_rtrn; /**< */
+ xcb_xkb_set_explicit_t *explicit_rtrn; /**< */
+ xcb_xkb_key_mod_map_t *modmap_rtrn; /**< */
+ xcb_xkb_key_v_mod_map_t *vmodmap_rtrn; /**< */
+} xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t {
+ xcb_atom_t keycodesName; /**< */
+ xcb_atom_t geometryName; /**< */
+ xcb_atom_t symbolsName; /**< */
+ xcb_atom_t physSymbolsName; /**< */
+ xcb_atom_t typesName; /**< */
+ xcb_atom_t compatName; /**< */
+ xcb_atom_t *typeNames; /**< */
+ uint8_t *nLevelsPerType; /**< */
+ xcb_atom_t *ktLevelNames; /**< */
+ xcb_atom_t *indicatorNames; /**< */
+ xcb_atom_t *virtualModNames; /**< */
+ xcb_atom_t *groups; /**< */
+ xcb_xkb_key_name_t *keyNames; /**< */
+ xcb_xkb_key_alias_t *keyAliases; /**< */
+ xcb_atom_t *radioGroupNames; /**< */
+} xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t {
+ xcb_atom_t keycodesName; /**< */
+ xcb_atom_t geometryName; /**< */
+ xcb_atom_t symbolsName; /**< */
+ xcb_atom_t physSymbolsName; /**< */
+ xcb_atom_t typesName; /**< */
+ xcb_atom_t compatName; /**< */
+ xcb_atom_t *typeNames; /**< */
+ uint8_t *nLevelsPerType; /**< */
+ xcb_atom_t *ktLevelNames; /**< */
+ xcb_atom_t *indicatorNames; /**< */
+ xcb_atom_t *virtualModNames; /**< */
+ xcb_atom_t *groups; /**< */
+ xcb_xkb_key_name_t *keyNames; /**< */
+ xcb_xkb_key_alias_t *keyAliases; /**< */
+ xcb_atom_t *radioGroupNames; /**< */
+} xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t;
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_replies_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_replies_t {
+ struct _types {
+ uint8_t getmap_type; /**< */
+ uint8_t typeDeviceID; /**< */
+ uint16_t getmap_sequence; /**< */
+ uint32_t getmap_length; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_keycode_t typeMinKeyCode; /**< */
+ xcb_keycode_t typeMaxKeyCode; /**< */
+ uint16_t present; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t totalTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint16_t totalSyms; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint16_t totalActions; /**< */
+ uint8_t nKeyActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint8_t totalKeyBehaviors; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ uint8_t totalKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ uint8_t totalModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t totalVModMapKeys; /**< */
+ uint8_t pad1; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_xkb_get_kbd_by_name_replies_types_map_t map; /**< */
+ } types;
+ struct _compat_map {
+ uint8_t compatDeviceID; /**< */
+ uint8_t groupsRtrn; /**< */
+ uint8_t pad0; /**< */
+ uint16_t firstSIRtrn; /**< */
+ uint16_t nSIRtrn; /**< */
+ uint16_t nTotalSI; /**< */
+ uint8_t pad1[16]; /**< */
+ uint8_t *si_rtrn; /**< */
+ xcb_xkb_mod_def_t *group_rtrn; /**< */
+ } compat_map;
+ struct _client_symbols {
+ uint8_t clientDeviceID; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_keycode_t clientMinKeyCode; /**< */
+ xcb_keycode_t clientMaxKeyCode; /**< */
+ uint16_t present; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t totalTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint16_t totalSyms; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint16_t totalActions; /**< */
+ uint8_t nKeyActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint8_t totalKeyBehaviors; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ uint8_t totalKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ uint8_t totalModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t totalVModMapKeys; /**< */
+ uint8_t pad1; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t map; /**< */
+ } client_symbols;
+ struct _server_symbols {
+ uint8_t serverDeviceID; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_keycode_t serverMinKeyCode; /**< */
+ xcb_keycode_t serverMaxKeyCode; /**< */
+ uint16_t present; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t totalTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint16_t totalSyms; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAction; /**< */
+ uint16_t totalActions; /**< */
+ uint8_t nKeyActions; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehaviors; /**< */
+ uint8_t totalKeyBehaviors; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ uint8_t totalKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ uint8_t totalModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint8_t totalVModMapKeys; /**< */
+ uint8_t pad1; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t map; /**< */
+ } server_symbols;
+ struct _indicator_maps {
+ uint8_t indicatorDeviceID; /**< */
+ uint32_t which; /**< */
+ uint32_t realIndicators; /**< */
+ uint8_t nIndicators; /**< */
+ uint8_t pad0[15]; /**< */
+ xcb_xkb_indicator_map_t *maps; /**< */
+ } indicator_maps;
+ struct _key_names {
+ uint8_t keyDeviceID; /**< */
+ uint32_t which; /**< */
+ xcb_keycode_t keyMinKeyCode; /**< */
+ xcb_keycode_t keyMaxKeyCode; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t groupNames; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_keycode_t firstKey; /**< */
+ uint8_t nKeys; /**< */
+ uint32_t indicators; /**< */
+ uint8_t nRadioGroups; /**< */
+ uint8_t nKeyAliases; /**< */
+ uint16_t nKTLevels; /**< */
+ uint8_t pad0[4]; /**< */
+ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t valueList; /**< */
+ } key_names;
+ struct _other_names {
+ uint8_t otherDeviceID; /**< */
+ uint32_t which; /**< */
+ xcb_keycode_t otherMinKeyCode; /**< */
+ xcb_keycode_t otherMaxKeyCode; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t groupNames; /**< */
+ uint16_t virtualMods; /**< */
+ xcb_keycode_t firstKey; /**< */
+ uint8_t nKeys; /**< */
+ uint32_t indicators; /**< */
+ uint8_t nRadioGroups; /**< */
+ uint8_t nKeyAliases; /**< */
+ uint16_t nKTLevels; /**< */
+ uint8_t pad0[4]; /**< */
+ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t valueList; /**< */
+ } other_names;
+ struct _geometry {
+ uint8_t geometryDeviceID; /**< */
+ xcb_atom_t name; /**< */
+ uint8_t geometryFound; /**< */
+ uint8_t pad0; /**< */
+ uint16_t widthMM; /**< */
+ uint16_t heightMM; /**< */
+ uint16_t nProperties; /**< */
+ uint16_t nColors; /**< */
+ uint16_t nShapes; /**< */
+ uint16_t nSections; /**< */
+ uint16_t nDoodads; /**< */
+ uint16_t nKeyAliases; /**< */
+ uint8_t baseColorNdx; /**< */
+ uint8_t labelColorNdx; /**< */
+ xcb_xkb_counted_string_16_t *labelFont; /**< */
+ xcb_xkb_property_t *properties; /**< */
+ xcb_xkb_counted_string_16_t *colors; /**< */
+ xcb_xkb_shape_t *shapes; /**< */
+ xcb_xkb_section_t *sections; /**< */
+ xcb_xkb_doodad_t *doodads; /**< */
+ xcb_xkb_key_alias_t *keyAliases; /**< */
+ } geometry;
+} xcb_xkb_get_kbd_by_name_replies_t;
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_types_map_t * xcb_xkb_get_kbd_by_name_replies_types_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_types_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_types_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+/**
+ * @brief xcb_xkb_get_kbd_by_name_reply_t
+ **/
+typedef struct xcb_xkb_get_kbd_by_name_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ uint8_t loaded; /**< */
+ uint8_t newKeyboard; /**< */
+ uint16_t found; /**< */
+ uint16_t reported; /**< */
+ uint8_t pad0[16]; /**< */
+} xcb_xkb_get_kbd_by_name_reply_t;
+
+/**
+ * @brief xcb_xkb_get_device_info_cookie_t
+ **/
+typedef struct xcb_xkb_get_device_info_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_get_device_info_cookie_t;
+
+/** Opcode for xcb_xkb_get_device_info. */
+#define XCB_XKB_GET_DEVICE_INFO 24
+
+/**
+ * @brief xcb_xkb_get_device_info_request_t
+ **/
+typedef struct xcb_xkb_get_device_info_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint16_t wanted; /**< */
+ uint8_t allButtons; /**< */
+ uint8_t firstButton; /**< */
+ uint8_t nButtons; /**< */
+ uint8_t pad0; /**< */
+ xcb_xkb_led_class_spec_t ledClass; /**< */
+ xcb_xkb_id_spec_t ledID; /**< */
+} xcb_xkb_get_device_info_request_t;
+
+/**
+ * @brief xcb_xkb_get_device_info_reply_t
+ **/
+typedef struct xcb_xkb_get_device_info_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t deviceID; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint16_t present; /**< */
+ uint16_t supported; /**< */
+ uint16_t unsupported; /**< */
+ uint16_t nDeviceLedFBs; /**< */
+ uint8_t firstBtnWanted; /**< */
+ uint8_t nBtnsWanted; /**< */
+ uint8_t firstBtnRtrn; /**< */
+ uint8_t nBtnsRtrn; /**< */
+ uint8_t totalBtns; /**< */
+ uint8_t hasOwnState; /**< */
+ uint16_t dfltKbdFB; /**< */
+ uint16_t dfltLedFB; /**< */
+ uint8_t pad0[2]; /**< */
+ xcb_atom_t devType; /**< */
+ uint16_t nameLen; /**< */
+} xcb_xkb_get_device_info_reply_t;
+
+/** Opcode for xcb_xkb_set_device_info. */
+#define XCB_XKB_SET_DEVICE_INFO 25
+
+/**
+ * @brief xcb_xkb_set_device_info_request_t
+ **/
+typedef struct xcb_xkb_set_device_info_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ xcb_xkb_device_spec_t deviceSpec; /**< */
+ uint8_t firstBtn; /**< */
+ uint8_t nBtns; /**< */
+ uint16_t change; /**< */
+ uint16_t nDeviceLedFBs; /**< */
+} xcb_xkb_set_device_info_request_t;
+
+/**
+ * @brief xcb_xkb_set_debugging_flags_cookie_t
+ **/
+typedef struct xcb_xkb_set_debugging_flags_cookie_t {
+ unsigned int sequence; /**< */
+} xcb_xkb_set_debugging_flags_cookie_t;
+
+/** Opcode for xcb_xkb_set_debugging_flags. */
+#define XCB_XKB_SET_DEBUGGING_FLAGS 101
+
+/**
+ * @brief xcb_xkb_set_debugging_flags_request_t
+ **/
+typedef struct xcb_xkb_set_debugging_flags_request_t {
+ uint8_t major_opcode; /**< */
+ uint8_t minor_opcode; /**< */
+ uint16_t length; /**< */
+ uint16_t msgLength; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t affectFlags; /**< */
+ uint32_t flags; /**< */
+ uint32_t affectCtrls; /**< */
+ uint32_t ctrls; /**< */
+} xcb_xkb_set_debugging_flags_request_t;
+
+/**
+ * @brief xcb_xkb_set_debugging_flags_reply_t
+ **/
+typedef struct xcb_xkb_set_debugging_flags_reply_t {
+ uint8_t response_type; /**< */
+ uint8_t pad0; /**< */
+ uint16_t sequence; /**< */
+ uint32_t length; /**< */
+ uint32_t currentFlags; /**< */
+ uint32_t currentCtrls; /**< */
+ uint32_t supportedFlags; /**< */
+ uint32_t supportedCtrls; /**< */
+ uint8_t pad1[8]; /**< */
+} xcb_xkb_set_debugging_flags_reply_t;
+
+/** Opcode for xcb_xkb_new_keyboard_notify. */
+#define XCB_XKB_NEW_KEYBOARD_NOTIFY 0
+
+/**
+ * @brief xcb_xkb_new_keyboard_notify_event_t
+ **/
+typedef struct xcb_xkb_new_keyboard_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t oldDeviceID; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ xcb_keycode_t oldMinKeyCode; /**< */
+ xcb_keycode_t oldMaxKeyCode; /**< */
+ uint8_t requestMajor; /**< */
+ uint8_t requestMinor; /**< */
+ uint16_t changed; /**< */
+ uint8_t pad0[14]; /**< */
+} xcb_xkb_new_keyboard_notify_event_t;
+
+/** Opcode for xcb_xkb_map_notify. */
+#define XCB_XKB_MAP_NOTIFY 1
+
+/**
+ * @brief xcb_xkb_map_notify_event_t
+ **/
+typedef struct xcb_xkb_map_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t ptrBtnActions; /**< */
+ uint16_t changed; /**< */
+ xcb_keycode_t minKeyCode; /**< */
+ xcb_keycode_t maxKeyCode; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ xcb_keycode_t firstKeySym; /**< */
+ uint8_t nKeySyms; /**< */
+ xcb_keycode_t firstKeyAct; /**< */
+ uint8_t nKeyActs; /**< */
+ xcb_keycode_t firstKeyBehavior; /**< */
+ uint8_t nKeyBehavior; /**< */
+ xcb_keycode_t firstKeyExplicit; /**< */
+ uint8_t nKeyExplicit; /**< */
+ xcb_keycode_t firstModMapKey; /**< */
+ uint8_t nModMapKeys; /**< */
+ xcb_keycode_t firstVModMapKey; /**< */
+ uint8_t nVModMapKeys; /**< */
+ uint16_t virtualMods; /**< */
+ uint8_t pad0[2]; /**< */
+} xcb_xkb_map_notify_event_t;
+
+/** Opcode for xcb_xkb_state_notify. */
+#define XCB_XKB_STATE_NOTIFY 2
+
+/**
+ * @brief xcb_xkb_state_notify_event_t
+ **/
+typedef struct xcb_xkb_state_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t mods; /**< */
+ uint8_t baseMods; /**< */
+ uint8_t latchedMods; /**< */
+ uint8_t lockedMods; /**< */
+ uint8_t group; /**< */
+ int16_t baseGroup; /**< */
+ int16_t latchedGroup; /**< */
+ uint8_t lockedGroup; /**< */
+ uint8_t compatState; /**< */
+ uint8_t grabMods; /**< */
+ uint8_t compatGrabMods; /**< */
+ uint8_t lookupMods; /**< */
+ uint8_t compatLoockupMods; /**< */
+ uint16_t ptrBtnState; /**< */
+ uint16_t changed; /**< */
+ xcb_keycode_t keycode; /**< */
+ uint8_t eventType; /**< */
+ uint8_t requestMajor; /**< */
+ uint8_t requestMinor; /**< */
+} xcb_xkb_state_notify_event_t;
+
+/** Opcode for xcb_xkb_controls_notify. */
+#define XCB_XKB_CONTROLS_NOTIFY 3
+
+/**
+ * @brief xcb_xkb_controls_notify_event_t
+ **/
+typedef struct xcb_xkb_controls_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t numGroups; /**< */
+ uint8_t pad0[2]; /**< */
+ uint32_t changedControls; /**< */
+ uint32_t enabledControls; /**< */
+ uint32_t enabledControlChanges; /**< */
+ xcb_keycode_t keycode; /**< */
+ uint8_t eventType; /**< */
+ uint8_t requestMajor; /**< */
+ uint8_t requestMinor; /**< */
+ uint8_t pad1[4]; /**< */
+} xcb_xkb_controls_notify_event_t;
+
+/** Opcode for xcb_xkb_indicator_state_notify. */
+#define XCB_XKB_INDICATOR_STATE_NOTIFY 4
+
+/**
+ * @brief xcb_xkb_indicator_state_notify_event_t
+ **/
+typedef struct xcb_xkb_indicator_state_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t pad0[3]; /**< */
+ uint32_t state; /**< */
+ uint32_t stateChanged; /**< */
+ uint8_t pad1[12]; /**< */
+} xcb_xkb_indicator_state_notify_event_t;
+
+/** Opcode for xcb_xkb_indicator_map_notify. */
+#define XCB_XKB_INDICATOR_MAP_NOTIFY 5
+
+/**
+ * @brief xcb_xkb_indicator_map_notify_event_t
+ **/
+typedef struct xcb_xkb_indicator_map_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t pad0[3]; /**< */
+ uint32_t state; /**< */
+ uint32_t mapChanged; /**< */
+ uint8_t pad1[12]; /**< */
+} xcb_xkb_indicator_map_notify_event_t;
+
+/** Opcode for xcb_xkb_names_notify. */
+#define XCB_XKB_NAMES_NOTIFY 6
+
+/**
+ * @brief xcb_xkb_names_notify_event_t
+ **/
+typedef struct xcb_xkb_names_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t pad0; /**< */
+ uint16_t changed; /**< */
+ uint8_t firstType; /**< */
+ uint8_t nTypes; /**< */
+ uint8_t firstLevelName; /**< */
+ uint8_t nLevelNames; /**< */
+ uint8_t pad1; /**< */
+ uint8_t nRadioGroups; /**< */
+ uint8_t nKeyAliases; /**< */
+ uint8_t changedGroupNames; /**< */
+ uint16_t changedVirtualMods; /**< */
+ xcb_keycode_t firstKey; /**< */
+ uint8_t nKeys; /**< */
+ uint32_t changedIndicators; /**< */
+ uint8_t pad2[4]; /**< */
+} xcb_xkb_names_notify_event_t;
+
+/** Opcode for xcb_xkb_compat_map_notify. */
+#define XCB_XKB_COMPAT_MAP_NOTIFY 7
+
+/**
+ * @brief xcb_xkb_compat_map_notify_event_t
+ **/
+typedef struct xcb_xkb_compat_map_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t changedGroups; /**< */
+ uint16_t firstSI; /**< */
+ uint16_t nSI; /**< */
+ uint16_t nTotalSI; /**< */
+ uint8_t pad0[16]; /**< */
+} xcb_xkb_compat_map_notify_event_t;
+
+/** Opcode for xcb_xkb_bell_notify. */
+#define XCB_XKB_BELL_NOTIFY 8
+
+/**
+ * @brief xcb_xkb_bell_notify_event_t
+ **/
+typedef struct xcb_xkb_bell_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t bellClass; /**< */
+ uint8_t bellID; /**< */
+ uint8_t percent; /**< */
+ uint16_t pitch; /**< */
+ uint16_t duration; /**< */
+ xcb_atom_t name; /**< */
+ xcb_window_t window; /**< */
+ uint8_t eventOnly; /**< */
+ uint8_t pad0[7]; /**< */
+} xcb_xkb_bell_notify_event_t;
+
+/** Opcode for xcb_xkb_action_message. */
+#define XCB_XKB_ACTION_MESSAGE 9
+
+/**
+ * @brief xcb_xkb_action_message_event_t
+ **/
+typedef struct xcb_xkb_action_message_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ xcb_keycode_t keycode; /**< */
+ uint8_t press; /**< */
+ uint8_t keyEventFollows; /**< */
+ uint8_t mods; /**< */
+ uint8_t group; /**< */
+ xcb_xkb_string8_t message[8]; /**< */
+ uint8_t pad0[10]; /**< */
+} xcb_xkb_action_message_event_t;
+
+/** Opcode for xcb_xkb_access_x_notify. */
+#define XCB_XKB_ACCESS_X_NOTIFY 10
+
+/**
+ * @brief xcb_xkb_access_x_notify_event_t
+ **/
+typedef struct xcb_xkb_access_x_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ xcb_keycode_t keycode; /**< */
+ uint16_t detailt; /**< */
+ uint16_t slowKeysDelay; /**< */
+ uint16_t debounceDelay; /**< */
+ uint8_t pad0[16]; /**< */
+} xcb_xkb_access_x_notify_event_t;
+
+/** Opcode for xcb_xkb_extension_device_notify. */
+#define XCB_XKB_EXTENSION_DEVICE_NOTIFY 11
+
+/**
+ * @brief xcb_xkb_extension_device_notify_event_t
+ **/
+typedef struct xcb_xkb_extension_device_notify_event_t {
+ uint8_t response_type; /**< */
+ uint8_t xkbType; /**< */
+ uint16_t sequence; /**< */
+ xcb_timestamp_t time; /**< */
+ uint8_t deviceID; /**< */
+ uint8_t pad0; /**< */
+ uint16_t reason; /**< */
+ uint16_t ledClass; /**< */
+ uint8_t ledID; /**< */
+ uint32_t ledsDefined; /**< */
+ uint32_t ledState; /**< */
+ uint8_t firstButton; /**< */
+ uint8_t nButtons; /**< */
+ uint16_t supported; /**< */
+ uint16_t unsupported; /**< */
+ uint8_t pad1[2]; /**< */
+} xcb_xkb_extension_device_notify_event_t;
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_ax_option_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_ax_option_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_ax_option_next
+ **
+ ** @param xcb_xkb_ax_option_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_ax_option_next (xcb_xkb_ax_option_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_ax_option_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_ax_option_end
+ **
+ ** @param xcb_xkb_ax_option_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_ax_option_end (xcb_xkb_ax_option_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_device_spec_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_device_spec_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_device_spec_next
+ **
+ ** @param xcb_xkb_device_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_device_spec_next (xcb_xkb_device_spec_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_device_spec_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_spec_end
+ **
+ ** @param xcb_xkb_device_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_spec_end (xcb_xkb_device_spec_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_led_class_spec_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_led_class_spec_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_led_class_spec_next
+ **
+ ** @param xcb_xkb_led_class_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_led_class_spec_next (xcb_xkb_led_class_spec_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_led_class_spec_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_led_class_spec_end
+ **
+ ** @param xcb_xkb_led_class_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_led_class_spec_end (xcb_xkb_led_class_spec_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_bell_class_spec_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_bell_class_spec_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_bell_class_spec_next
+ **
+ ** @param xcb_xkb_bell_class_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_bell_class_spec_next (xcb_xkb_bell_class_spec_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_bell_class_spec_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_bell_class_spec_end
+ **
+ ** @param xcb_xkb_bell_class_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_bell_class_spec_end (xcb_xkb_bell_class_spec_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_id_spec_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_id_spec_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_id_spec_next
+ **
+ ** @param xcb_xkb_id_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_id_spec_next (xcb_xkb_id_spec_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_id_spec_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_id_spec_end
+ **
+ ** @param xcb_xkb_id_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_id_spec_end (xcb_xkb_id_spec_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_indicator_map_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_indicator_map_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_indicator_map_next
+ **
+ ** @param xcb_xkb_indicator_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_indicator_map_next (xcb_xkb_indicator_map_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_indicator_map_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_indicator_map_end
+ **
+ ** @param xcb_xkb_indicator_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_indicator_map_end (xcb_xkb_indicator_map_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_mod_def_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_mod_def_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_mod_def_next
+ **
+ ** @param xcb_xkb_mod_def_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_mod_def_next (xcb_xkb_mod_def_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_mod_def_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_mod_def_end
+ **
+ ** @param xcb_xkb_mod_def_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_mod_def_end (xcb_xkb_mod_def_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_name_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_name_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_name_next
+ **
+ ** @param xcb_xkb_key_name_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_name_next (xcb_xkb_key_name_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_name_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_name_end
+ **
+ ** @param xcb_xkb_key_name_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_name_end (xcb_xkb_key_name_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_alias_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_alias_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_alias_next
+ **
+ ** @param xcb_xkb_key_alias_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_alias_next (xcb_xkb_key_alias_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_alias_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_alias_end
+ **
+ ** @param xcb_xkb_key_alias_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_alias_end (xcb_xkb_key_alias_iterator_t i /**< */);
+
+int
+xcb_xkb_counted_string_8_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_8_string
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_8_string (const xcb_xkb_counted_string_8_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_counted_string_8_string_length
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_counted_string_8_string_length (const xcb_xkb_counted_string_8_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_8_string_end
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_8_string_end (const xcb_xkb_counted_string_8_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_counted_string_8_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_counted_string_8_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_counted_string_8_next
+ **
+ ** @param xcb_xkb_counted_string_8_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_counted_string_8_next (xcb_xkb_counted_string_8_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_counted_string_8_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_8_end
+ **
+ ** @param xcb_xkb_counted_string_8_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_8_end (xcb_xkb_counted_string_8_iterator_t i /**< */);
+
+int
+xcb_xkb_counted_string_16_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_16_string
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_16_string (const xcb_xkb_counted_string_16_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_counted_string_16_string_length
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_counted_string_16_string_length (const xcb_xkb_counted_string_16_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_16_string_end
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_16_string_end (const xcb_xkb_counted_string_16_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_16_pad_0
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_16_pad_0 (const xcb_xkb_counted_string_16_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_counted_string_16_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_counted_string_16_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_counted_string_16_next
+ **
+ ** @param xcb_xkb_counted_string_16_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_counted_string_16_next (xcb_xkb_counted_string_16_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_counted_string_16_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_16_end
+ **
+ ** @param xcb_xkb_counted_string_16_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_16_end (xcb_xkb_counted_string_16_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_kt_map_entry_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_kt_map_entry_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_kt_map_entry_next
+ **
+ ** @param xcb_xkb_kt_map_entry_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_kt_map_entry_next (xcb_xkb_kt_map_entry_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_kt_map_entry_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_kt_map_entry_end
+ **
+ ** @param xcb_xkb_kt_map_entry_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_kt_map_entry_end (xcb_xkb_kt_map_entry_iterator_t i /**< */);
+
+int
+xcb_xkb_key_type_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_map_entry_t * xcb_xkb_key_type_map
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_kt_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_map_entry_t *
+xcb_xkb_key_type_map (const xcb_xkb_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_type_map_length
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_type_map_length (const xcb_xkb_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_map_entry_iterator_t xcb_xkb_key_type_map_iterator
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_kt_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_map_entry_iterator_t
+xcb_xkb_key_type_map_iterator (const xcb_xkb_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_key_type_preserve
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_key_type_preserve (const xcb_xkb_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_type_preserve_length
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_type_preserve_length (const xcb_xkb_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_key_type_preserve_iterator
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_key_type_preserve_iterator (const xcb_xkb_key_type_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_type_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_type_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_type_next
+ **
+ ** @param xcb_xkb_key_type_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_type_next (xcb_xkb_key_type_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_type_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_type_end
+ **
+ ** @param xcb_xkb_key_type_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_type_end (xcb_xkb_key_type_iterator_t i /**< */);
+
+int
+xcb_xkb_key_sym_map_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_keysym_t * xcb_xkb_key_sym_map_syms
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns xcb_keysym_t *
+ **
+ *****************************************************************************/
+
+xcb_keysym_t *
+xcb_xkb_key_sym_map_syms (const xcb_xkb_key_sym_map_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_sym_map_syms_length
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_sym_map_syms_length (const xcb_xkb_key_sym_map_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_sym_map_syms_end
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_sym_map_syms_end (const xcb_xkb_key_sym_map_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_sym_map_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_sym_map_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_sym_map_next
+ **
+ ** @param xcb_xkb_key_sym_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_sym_map_next (xcb_xkb_key_sym_map_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_sym_map_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_sym_map_end
+ **
+ ** @param xcb_xkb_key_sym_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_sym_map_end (xcb_xkb_key_sym_map_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_common_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_common_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_common_behavior_next
+ **
+ ** @param xcb_xkb_common_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_common_behavior_next (xcb_xkb_common_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_common_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_common_behavior_end
+ **
+ ** @param xcb_xkb_common_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_common_behavior_end (xcb_xkb_common_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_default_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_default_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_default_behavior_next
+ **
+ ** @param xcb_xkb_default_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_default_behavior_next (xcb_xkb_default_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_default_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_default_behavior_end
+ **
+ ** @param xcb_xkb_default_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_default_behavior_end (xcb_xkb_default_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_lock_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_lock_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_lock_behavior_next
+ **
+ ** @param xcb_xkb_lock_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_lock_behavior_next (xcb_xkb_lock_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_lock_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_lock_behavior_end
+ **
+ ** @param xcb_xkb_lock_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_lock_behavior_end (xcb_xkb_lock_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_radio_group_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_radio_group_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_radio_group_behavior_next
+ **
+ ** @param xcb_xkb_radio_group_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_radio_group_behavior_next (xcb_xkb_radio_group_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_radio_group_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_radio_group_behavior_end
+ **
+ ** @param xcb_xkb_radio_group_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_radio_group_behavior_end (xcb_xkb_radio_group_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_overlay_1_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_overlay_1_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_1_behavior_next
+ **
+ ** @param xcb_xkb_overlay_1_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_1_behavior_next (xcb_xkb_overlay_1_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_overlay_1_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_1_behavior_end
+ **
+ ** @param xcb_xkb_overlay_1_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_1_behavior_end (xcb_xkb_overlay_1_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_overlay_2_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_overlay_2_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_2_behavior_next
+ **
+ ** @param xcb_xkb_overlay_2_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_2_behavior_next (xcb_xkb_overlay_2_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_overlay_2_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_2_behavior_end
+ **
+ ** @param xcb_xkb_overlay_2_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_2_behavior_end (xcb_xkb_overlay_2_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_permament_lock_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_permament_lock_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_lock_behavior_next
+ **
+ ** @param xcb_xkb_permament_lock_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_lock_behavior_next (xcb_xkb_permament_lock_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_permament_lock_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_lock_behavior_end
+ **
+ ** @param xcb_xkb_permament_lock_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_lock_behavior_end (xcb_xkb_permament_lock_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_permament_radio_group_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_permament_radio_group_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_radio_group_behavior_next
+ **
+ ** @param xcb_xkb_permament_radio_group_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_radio_group_behavior_next (xcb_xkb_permament_radio_group_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_permament_radio_group_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_radio_group_behavior_end
+ **
+ ** @param xcb_xkb_permament_radio_group_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_radio_group_behavior_end (xcb_xkb_permament_radio_group_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_permament_overlay_1_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_permament_overlay_1_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_overlay_1_behavior_next
+ **
+ ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_overlay_1_behavior_next (xcb_xkb_permament_overlay_1_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_permament_overlay_1_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_overlay_1_behavior_end
+ **
+ ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_overlay_1_behavior_end (xcb_xkb_permament_overlay_1_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_permament_overlay_2_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_permament_overlay_2_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_overlay_2_behavior_next
+ **
+ ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_overlay_2_behavior_next (xcb_xkb_permament_overlay_2_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_permament_overlay_2_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_overlay_2_behavior_end
+ **
+ ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_overlay_2_behavior_end (xcb_xkb_permament_overlay_2_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_behavior_next
+ **
+ ** @param xcb_xkb_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_behavior_next (xcb_xkb_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_behavior_end
+ **
+ ** @param xcb_xkb_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_behavior_end (xcb_xkb_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_set_behavior_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_set_behavior_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_behavior_next
+ **
+ ** @param xcb_xkb_set_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_behavior_next (xcb_xkb_set_behavior_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_set_behavior_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_behavior_end
+ **
+ ** @param xcb_xkb_set_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_behavior_end (xcb_xkb_set_behavior_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_set_explicit_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_set_explicit_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_explicit_next
+ **
+ ** @param xcb_xkb_set_explicit_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_explicit_next (xcb_xkb_set_explicit_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_set_explicit_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_explicit_end
+ **
+ ** @param xcb_xkb_set_explicit_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_explicit_end (xcb_xkb_set_explicit_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_mod_map_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_mod_map_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_mod_map_next
+ **
+ ** @param xcb_xkb_key_mod_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_mod_map_next (xcb_xkb_key_mod_map_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_mod_map_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_mod_map_end
+ **
+ ** @param xcb_xkb_key_mod_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_mod_map_end (xcb_xkb_key_mod_map_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_v_mod_map_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_v_mod_map_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_v_mod_map_next
+ **
+ ** @param xcb_xkb_key_v_mod_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_v_mod_map_next (xcb_xkb_key_v_mod_map_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_v_mod_map_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_v_mod_map_end
+ **
+ ** @param xcb_xkb_key_v_mod_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_v_mod_map_end (xcb_xkb_key_v_mod_map_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_kt_set_map_entry_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_kt_set_map_entry_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_kt_set_map_entry_next
+ **
+ ** @param xcb_xkb_kt_set_map_entry_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_kt_set_map_entry_next (xcb_xkb_kt_set_map_entry_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_kt_set_map_entry_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_kt_set_map_entry_end
+ **
+ ** @param xcb_xkb_kt_set_map_entry_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_kt_set_map_entry_end (xcb_xkb_kt_set_map_entry_iterator_t i /**< */);
+
+int
+xcb_xkb_set_key_type_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_entries
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_t *
+xcb_xkb_set_key_type_entries (const xcb_xkb_set_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_key_type_entries_length
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_key_type_entries_length (const xcb_xkb_set_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_entries_iterator
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_iterator_t
+xcb_xkb_set_key_type_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_preserve_entries
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_t *
+xcb_xkb_set_key_type_preserve_entries (const xcb_xkb_set_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_key_type_preserve_entries_length
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_key_type_preserve_entries_length (const xcb_xkb_set_key_type_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_preserve_entries_iterator
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_iterator_t
+xcb_xkb_set_key_type_preserve_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_set_key_type_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_set_key_type_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_key_type_next
+ **
+ ** @param xcb_xkb_set_key_type_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_key_type_next (xcb_xkb_set_key_type_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_set_key_type_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_key_type_end
+ **
+ ** @param xcb_xkb_set_key_type_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_key_type_end (xcb_xkb_set_key_type_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_string8_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_string8_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_string8_next
+ **
+ ** @param xcb_xkb_string8_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_string8_next (xcb_xkb_string8_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_string8_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_string8_end
+ **
+ ** @param xcb_xkb_string8_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_string8_end (xcb_xkb_string8_iterator_t i /**< */);
+
+int
+xcb_xkb_property_serialize (void **_buffer /**< */,
+ const xcb_xkb_property_t *_aux /**< */,
+ const xcb_xkb_string8_t *name /**< */,
+ const xcb_xkb_string8_t *value /**< */);
+
+int
+xcb_xkb_property_unserialize (const void *_buffer /**< */,
+ xcb_xkb_property_t **_aux /**< */);
+
+int
+xcb_xkb_property_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_property_name
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_property_name (const xcb_xkb_property_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_property_name_length
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_property_name_length (const xcb_xkb_property_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_name_end
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_name_end (const xcb_xkb_property_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_property_value
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_property_value (const xcb_xkb_property_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_property_value_length
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_property_value_length (const xcb_xkb_property_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_value_end
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_value_end (const xcb_xkb_property_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_property_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_property_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_property_next
+ **
+ ** @param xcb_xkb_property_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_property_next (xcb_xkb_property_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_property_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_end
+ **
+ ** @param xcb_xkb_property_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_end (xcb_xkb_property_iterator_t i /**< */);
+
+int
+xcb_xkb_outline_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_point_t * xcb_xkb_outline_points
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns xcb_point_t *
+ **
+ *****************************************************************************/
+
+xcb_point_t *
+xcb_xkb_outline_points (const xcb_xkb_outline_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_outline_points_length
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_outline_points_length (const xcb_xkb_outline_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_point_iterator_t xcb_xkb_outline_points_iterator
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns xcb_point_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_point_iterator_t
+xcb_xkb_outline_points_iterator (const xcb_xkb_outline_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_outline_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_outline_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_outline_next
+ **
+ ** @param xcb_xkb_outline_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_outline_next (xcb_xkb_outline_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_outline_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_outline_end
+ **
+ ** @param xcb_xkb_outline_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_outline_end (xcb_xkb_outline_iterator_t i /**< */);
+
+int
+xcb_xkb_shape_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_shape_outlines_length
+ **
+ ** @param const xcb_xkb_shape_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_shape_outlines_length (const xcb_xkb_shape_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_outline_iterator_t xcb_xkb_shape_outlines_iterator
+ **
+ ** @param const xcb_xkb_shape_t *R
+ ** @returns xcb_xkb_outline_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_outline_iterator_t
+xcb_xkb_shape_outlines_iterator (const xcb_xkb_shape_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_shape_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_shape_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_shape_next
+ **
+ ** @param xcb_xkb_shape_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_shape_next (xcb_xkb_shape_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_shape_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_shape_end
+ **
+ ** @param xcb_xkb_shape_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_shape_end (xcb_xkb_shape_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_key_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_key_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_next
+ **
+ ** @param xcb_xkb_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_next (xcb_xkb_key_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_key_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_end
+ **
+ ** @param xcb_xkb_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_end (xcb_xkb_key_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_overlay_key_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_overlay_key_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_key_next
+ **
+ ** @param xcb_xkb_overlay_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_key_next (xcb_xkb_overlay_key_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_overlay_key_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_key_end
+ **
+ ** @param xcb_xkb_overlay_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_key_end (xcb_xkb_overlay_key_iterator_t i /**< */);
+
+int
+xcb_xkb_overlay_row_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_key_t * xcb_xkb_overlay_row_keys
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns xcb_xkb_overlay_key_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_key_t *
+xcb_xkb_overlay_row_keys (const xcb_xkb_overlay_row_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_overlay_row_keys_length
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_overlay_row_keys_length (const xcb_xkb_overlay_row_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_key_iterator_t xcb_xkb_overlay_row_keys_iterator
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns xcb_xkb_overlay_key_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_key_iterator_t
+xcb_xkb_overlay_row_keys_iterator (const xcb_xkb_overlay_row_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_overlay_row_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_overlay_row_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_row_next
+ **
+ ** @param xcb_xkb_overlay_row_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_row_next (xcb_xkb_overlay_row_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_overlay_row_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_row_end
+ **
+ ** @param xcb_xkb_overlay_row_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_row_end (xcb_xkb_overlay_row_iterator_t i /**< */);
+
+int
+xcb_xkb_overlay_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_overlay_rows_length
+ **
+ ** @param const xcb_xkb_overlay_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_overlay_rows_length (const xcb_xkb_overlay_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_row_iterator_t xcb_xkb_overlay_rows_iterator
+ **
+ ** @param const xcb_xkb_overlay_t *R
+ ** @returns xcb_xkb_overlay_row_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_row_iterator_t
+xcb_xkb_overlay_rows_iterator (const xcb_xkb_overlay_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_overlay_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_overlay_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_next
+ **
+ ** @param xcb_xkb_overlay_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_next (xcb_xkb_overlay_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_overlay_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_end
+ **
+ ** @param xcb_xkb_overlay_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_end (xcb_xkb_overlay_iterator_t i /**< */);
+
+int
+xcb_xkb_row_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_t * xcb_xkb_row_keys
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns xcb_xkb_key_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_t *
+xcb_xkb_row_keys (const xcb_xkb_row_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_row_keys_length
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_row_keys_length (const xcb_xkb_row_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_iterator_t xcb_xkb_row_keys_iterator
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns xcb_xkb_key_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_iterator_t
+xcb_xkb_row_keys_iterator (const xcb_xkb_row_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_row_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_row_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_row_next
+ **
+ ** @param xcb_xkb_row_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_row_next (xcb_xkb_row_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_row_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_row_end
+ **
+ ** @param xcb_xkb_row_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_row_end (xcb_xkb_row_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_common_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_common_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_common_doodad_next
+ **
+ ** @param xcb_xkb_common_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_common_doodad_next (xcb_xkb_common_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_common_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_common_doodad_end
+ **
+ ** @param xcb_xkb_common_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_common_doodad_end (xcb_xkb_common_doodad_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_shape_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_shape_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_shape_doodad_next
+ **
+ ** @param xcb_xkb_shape_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_shape_doodad_next (xcb_xkb_shape_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_shape_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_shape_doodad_end
+ **
+ ** @param xcb_xkb_shape_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_shape_doodad_end (xcb_xkb_shape_doodad_iterator_t i /**< */);
+
+int
+xcb_xkb_text_doodad_sizeof (const void *_buffer /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_text_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_text_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_text_doodad_next
+ **
+ ** @param xcb_xkb_text_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_text_doodad_next (xcb_xkb_text_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_text_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_text_doodad_end
+ **
+ ** @param xcb_xkb_text_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_text_doodad_end (xcb_xkb_text_doodad_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_indicator_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_indicator_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_indicator_doodad_next
+ **
+ ** @param xcb_xkb_indicator_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_indicator_doodad_next (xcb_xkb_indicator_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_indicator_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_indicator_doodad_end
+ **
+ ** @param xcb_xkb_indicator_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_indicator_doodad_end (xcb_xkb_indicator_doodad_iterator_t i /**< */);
+
+int
+xcb_xkb_logo_doodad_sizeof (const void *_buffer /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_logo_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_logo_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_logo_doodad_next
+ **
+ ** @param xcb_xkb_logo_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_logo_doodad_next (xcb_xkb_logo_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_logo_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_logo_doodad_end
+ **
+ ** @param xcb_xkb_logo_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_logo_doodad_end (xcb_xkb_logo_doodad_iterator_t i /**< */);
+
+int
+xcb_xkb_doodad_sizeof (const void *_buffer /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_doodad_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_doodad_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_doodad_next
+ **
+ ** @param xcb_xkb_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_doodad_next (xcb_xkb_doodad_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_doodad_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_doodad_end
+ **
+ ** @param xcb_xkb_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_doodad_end (xcb_xkb_doodad_iterator_t i /**< */);
+
+int
+xcb_xkb_section_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_rows_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_rows_length (const xcb_xkb_section_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_row_iterator_t xcb_xkb_section_rows_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_row_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_row_iterator_t
+xcb_xkb_section_rows_iterator (const xcb_xkb_section_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_doodads_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_doodads_length (const xcb_xkb_section_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_section_doodads_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_section_doodads_iterator (const xcb_xkb_section_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_overlays_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_overlays_length (const xcb_xkb_section_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_iterator_t xcb_xkb_section_overlays_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_overlay_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_iterator_t
+xcb_xkb_section_overlays_iterator (const xcb_xkb_section_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_section_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_section_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_section_next
+ **
+ ** @param xcb_xkb_section_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_section_next (xcb_xkb_section_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_section_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_section_end
+ **
+ ** @param xcb_xkb_section_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_section_end (xcb_xkb_section_iterator_t i /**< */);
+
+int
+xcb_xkb_listing_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_listing_string
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_listing_string (const xcb_xkb_listing_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_listing_string_length
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_listing_string_length (const xcb_xkb_listing_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_listing_string_end
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_listing_string_end (const xcb_xkb_listing_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_listing_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_listing_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_listing_next
+ **
+ ** @param xcb_xkb_listing_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_listing_next (xcb_xkb_listing_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_listing_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_listing_end
+ **
+ ** @param xcb_xkb_listing_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_listing_end (xcb_xkb_listing_iterator_t i /**< */);
+
+int
+xcb_xkb_device_led_info_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_device_led_info_names
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_device_led_info_names (const xcb_xkb_device_led_info_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_device_led_info_names_length
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_device_led_info_names_length (const xcb_xkb_device_led_info_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_led_info_names_end
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_led_info_names_end (const xcb_xkb_device_led_info_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_device_led_info_maps
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_device_led_info_maps (const xcb_xkb_device_led_info_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_device_led_info_maps_length
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_device_led_info_maps_length (const xcb_xkb_device_led_info_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_device_led_info_maps_iterator
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_device_led_info_maps_iterator (const xcb_xkb_device_led_info_t *R /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_device_led_info_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_device_led_info_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_device_led_info_next
+ **
+ ** @param xcb_xkb_device_led_info_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_device_led_info_next (xcb_xkb_device_led_info_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_device_led_info_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_led_info_end
+ **
+ ** @param xcb_xkb_device_led_info_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_led_info_end (xcb_xkb_device_led_info_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_no_action_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_no_action_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_no_action_next
+ **
+ ** @param xcb_xkb_sa_no_action_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_no_action_next (xcb_xkb_sa_no_action_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_no_action_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_no_action_end
+ **
+ ** @param xcb_xkb_sa_no_action_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_no_action_end (xcb_xkb_sa_no_action_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_set_mods_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_set_mods_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_mods_next
+ **
+ ** @param xcb_xkb_sa_set_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_mods_next (xcb_xkb_sa_set_mods_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_set_mods_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_mods_end
+ **
+ ** @param xcb_xkb_sa_set_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_mods_end (xcb_xkb_sa_set_mods_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_latch_mods_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_latch_mods_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_latch_mods_next
+ **
+ ** @param xcb_xkb_sa_latch_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_latch_mods_next (xcb_xkb_sa_latch_mods_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_latch_mods_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_latch_mods_end
+ **
+ ** @param xcb_xkb_sa_latch_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_latch_mods_end (xcb_xkb_sa_latch_mods_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_lock_mods_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_lock_mods_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_mods_next
+ **
+ ** @param xcb_xkb_sa_lock_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_mods_next (xcb_xkb_sa_lock_mods_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_lock_mods_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_mods_end
+ **
+ ** @param xcb_xkb_sa_lock_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_mods_end (xcb_xkb_sa_lock_mods_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_set_group_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_set_group_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_group_next
+ **
+ ** @param xcb_xkb_sa_set_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_group_next (xcb_xkb_sa_set_group_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_set_group_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_group_end
+ **
+ ** @param xcb_xkb_sa_set_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_group_end (xcb_xkb_sa_set_group_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_latch_group_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_latch_group_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_latch_group_next
+ **
+ ** @param xcb_xkb_sa_latch_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_latch_group_next (xcb_xkb_sa_latch_group_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_latch_group_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_latch_group_end
+ **
+ ** @param xcb_xkb_sa_latch_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_latch_group_end (xcb_xkb_sa_latch_group_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_lock_group_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_lock_group_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_group_next
+ **
+ ** @param xcb_xkb_sa_lock_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_group_next (xcb_xkb_sa_lock_group_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_lock_group_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_group_end
+ **
+ ** @param xcb_xkb_sa_lock_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_group_end (xcb_xkb_sa_lock_group_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_move_ptr_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_move_ptr_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_move_ptr_next
+ **
+ ** @param xcb_xkb_sa_move_ptr_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_move_ptr_next (xcb_xkb_sa_move_ptr_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_move_ptr_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_move_ptr_end
+ **
+ ** @param xcb_xkb_sa_move_ptr_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_move_ptr_end (xcb_xkb_sa_move_ptr_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_ptr_btn_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_ptr_btn_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_ptr_btn_next
+ **
+ ** @param xcb_xkb_sa_ptr_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_ptr_btn_next (xcb_xkb_sa_ptr_btn_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_ptr_btn_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_ptr_btn_end
+ **
+ ** @param xcb_xkb_sa_ptr_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_ptr_btn_end (xcb_xkb_sa_ptr_btn_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_lock_ptr_btn_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_lock_ptr_btn_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_ptr_btn_next
+ **
+ ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_ptr_btn_next (xcb_xkb_sa_lock_ptr_btn_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_lock_ptr_btn_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_ptr_btn_end
+ **
+ ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_ptr_btn_end (xcb_xkb_sa_lock_ptr_btn_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_set_ptr_dflt_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_set_ptr_dflt_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_ptr_dflt_next
+ **
+ ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_ptr_dflt_next (xcb_xkb_sa_set_ptr_dflt_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_set_ptr_dflt_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_ptr_dflt_end
+ **
+ ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_ptr_dflt_end (xcb_xkb_sa_set_ptr_dflt_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_iso_lock_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_iso_lock_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_iso_lock_next
+ **
+ ** @param xcb_xkb_sa_iso_lock_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_iso_lock_next (xcb_xkb_sa_iso_lock_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_iso_lock_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_iso_lock_end
+ **
+ ** @param xcb_xkb_sa_iso_lock_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_iso_lock_end (xcb_xkb_sa_iso_lock_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_terminate_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_terminate_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_terminate_next
+ **
+ ** @param xcb_xkb_sa_terminate_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_terminate_next (xcb_xkb_sa_terminate_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_terminate_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_terminate_end
+ **
+ ** @param xcb_xkb_sa_terminate_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_terminate_end (xcb_xkb_sa_terminate_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_switch_screen_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_switch_screen_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_switch_screen_next
+ **
+ ** @param xcb_xkb_sa_switch_screen_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_switch_screen_next (xcb_xkb_sa_switch_screen_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_switch_screen_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_switch_screen_end
+ **
+ ** @param xcb_xkb_sa_switch_screen_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_switch_screen_end (xcb_xkb_sa_switch_screen_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_set_controls_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_set_controls_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_controls_next
+ **
+ ** @param xcb_xkb_sa_set_controls_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_controls_next (xcb_xkb_sa_set_controls_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_set_controls_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_controls_end
+ **
+ ** @param xcb_xkb_sa_set_controls_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_controls_end (xcb_xkb_sa_set_controls_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_lock_controls_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_lock_controls_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_controls_next
+ **
+ ** @param xcb_xkb_sa_lock_controls_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_controls_next (xcb_xkb_sa_lock_controls_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_lock_controls_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_controls_end
+ **
+ ** @param xcb_xkb_sa_lock_controls_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_controls_end (xcb_xkb_sa_lock_controls_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_action_message_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_action_message_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_action_message_next
+ **
+ ** @param xcb_xkb_sa_action_message_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_action_message_next (xcb_xkb_sa_action_message_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_action_message_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_action_message_end
+ **
+ ** @param xcb_xkb_sa_action_message_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_action_message_end (xcb_xkb_sa_action_message_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_redirect_key_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_redirect_key_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_redirect_key_next
+ **
+ ** @param xcb_xkb_sa_redirect_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_redirect_key_next (xcb_xkb_sa_redirect_key_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_redirect_key_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_redirect_key_end
+ **
+ ** @param xcb_xkb_sa_redirect_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_redirect_key_end (xcb_xkb_sa_redirect_key_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_device_btn_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_device_btn_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_device_btn_next
+ **
+ ** @param xcb_xkb_sa_device_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_device_btn_next (xcb_xkb_sa_device_btn_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_device_btn_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_device_btn_end
+ **
+ ** @param xcb_xkb_sa_device_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_device_btn_end (xcb_xkb_sa_device_btn_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_lock_device_btn_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_lock_device_btn_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_device_btn_next
+ **
+ ** @param xcb_xkb_sa_lock_device_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_device_btn_next (xcb_xkb_sa_lock_device_btn_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_lock_device_btn_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_device_btn_end
+ **
+ ** @param xcb_xkb_sa_lock_device_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_device_btn_end (xcb_xkb_sa_lock_device_btn_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_sa_device_valuator_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_sa_device_valuator_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_device_valuator_next
+ **
+ ** @param xcb_xkb_sa_device_valuator_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_device_valuator_next (xcb_xkb_sa_device_valuator_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_sa_device_valuator_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_device_valuator_end
+ **
+ ** @param xcb_xkb_sa_device_valuator_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_device_valuator_end (xcb_xkb_sa_device_valuator_iterator_t i /**< */);
+
+/**
+ * Get the next element of the iterator
+ * @param i Pointer to a xcb_xkb_action_iterator_t
+ *
+ * Get the next element in the iterator. The member rem is
+ * decreased by one. The member data points to the next
+ * element. The member index is increased by sizeof(xcb_xkb_action_t)
+ */
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_action_next
+ **
+ ** @param xcb_xkb_action_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_action_next (xcb_xkb_action_iterator_t *i /**< */);
+
+/**
+ * Return the iterator pointing to the last element
+ * @param i An xcb_xkb_action_iterator_t
+ * @return The iterator pointing to the last element
+ *
+ * Set the current element in the iterator to the last element.
+ * The member rem is set to 0. The member data points to the
+ * last element.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_action_end
+ **
+ ** @param xcb_xkb_action_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_action_end (xcb_xkb_action_iterator_t i /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t wantedMajor
+ ** @param uint16_t wantedMinor
+ ** @returns xcb_xkb_use_extension_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_cookie_t
+xcb_xkb_use_extension (xcb_connection_t *c /**< */,
+ uint16_t wantedMajor /**< */,
+ uint16_t wantedMinor /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t wantedMajor
+ ** @param uint16_t wantedMinor
+ ** @returns xcb_xkb_use_extension_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_cookie_t
+xcb_xkb_use_extension_unchecked (xcb_connection_t *c /**< */,
+ uint16_t wantedMajor /**< */,
+ uint16_t wantedMinor /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_use_extension_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_reply_t * xcb_xkb_use_extension_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_use_extension_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_use_extension_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_reply_t *
+xcb_xkb_use_extension_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_use_extension_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_select_events_details_serialize (void **_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ const xcb_xkb_select_events_details_t *_aux /**< */);
+
+int
+xcb_xkb_select_events_details_unpack (const void *_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ xcb_xkb_select_events_details_t *_aux /**< */);
+
+int
+xcb_xkb_select_events_details_sizeof (const void *_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const void *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const void *details /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const void *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const void *details /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const xcb_xkb_select_events_details_t *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const xcb_xkb_select_events_details_t *details /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const xcb_xkb_select_events_details_t *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const xcb_xkb_select_events_details_t *details /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_bell_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_bell_class_spec_t bellClass
+ ** @param xcb_xkb_id_spec_t bellID
+ ** @param int8_t percent
+ ** @param uint8_t forceSound
+ ** @param uint8_t eventOnly
+ ** @param int16_t pitch
+ ** @param int16_t duration
+ ** @param xcb_atom_t name
+ ** @param xcb_window_t window
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_bell_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_bell_class_spec_t bellClass /**< */,
+ xcb_xkb_id_spec_t bellID /**< */,
+ int8_t percent /**< */,
+ uint8_t forceSound /**< */,
+ uint8_t eventOnly /**< */,
+ int16_t pitch /**< */,
+ int16_t duration /**< */,
+ xcb_atom_t name /**< */,
+ xcb_window_t window /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_bell
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_bell_class_spec_t bellClass
+ ** @param xcb_xkb_id_spec_t bellID
+ ** @param int8_t percent
+ ** @param uint8_t forceSound
+ ** @param uint8_t eventOnly
+ ** @param int16_t pitch
+ ** @param int16_t duration
+ ** @param xcb_atom_t name
+ ** @param xcb_window_t window
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_bell (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_bell_class_spec_t bellClass /**< */,
+ xcb_xkb_id_spec_t bellID /**< */,
+ int8_t percent /**< */,
+ uint8_t forceSound /**< */,
+ uint8_t eventOnly /**< */,
+ int16_t pitch /**< */,
+ int16_t duration /**< */,
+ xcb_atom_t name /**< */,
+ xcb_window_t window /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_cookie_t
+xcb_xkb_get_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_cookie_t
+xcb_xkb_get_state_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_state_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_reply_t * xcb_xkb_get_state_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_state_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_state_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_reply_t *
+xcb_xkb_get_state_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_state_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_latch_lock_state_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectModLocks
+ ** @param uint8_t modLocks
+ ** @param uint8_t lockGroup
+ ** @param uint8_t groupLock
+ ** @param uint8_t affectModLatches
+ ** @param uint8_t latchGroup
+ ** @param uint16_t groupLatch
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_latch_lock_state_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectModLocks /**< */,
+ uint8_t modLocks /**< */,
+ uint8_t lockGroup /**< */,
+ uint8_t groupLock /**< */,
+ uint8_t affectModLatches /**< */,
+ uint8_t latchGroup /**< */,
+ uint16_t groupLatch /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_latch_lock_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectModLocks
+ ** @param uint8_t modLocks
+ ** @param uint8_t lockGroup
+ ** @param uint8_t groupLock
+ ** @param uint8_t affectModLatches
+ ** @param uint8_t latchGroup
+ ** @param uint16_t groupLatch
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_latch_lock_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectModLocks /**< */,
+ uint8_t modLocks /**< */,
+ uint8_t lockGroup /**< */,
+ uint8_t groupLock /**< */,
+ uint8_t affectModLatches /**< */,
+ uint8_t latchGroup /**< */,
+ uint16_t groupLatch /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_controls_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_cookie_t
+xcb_xkb_get_controls (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_controls_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_cookie_t
+xcb_xkb_get_controls_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_controls_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_reply_t * xcb_xkb_get_controls_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_controls_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_controls_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_reply_t *
+xcb_xkb_get_controls_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_controls_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_controls_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectInternalRealMods
+ ** @param uint8_t internalRealMods
+ ** @param uint8_t affectIgnoreLockRealMods
+ ** @param uint8_t ignoreLockRealMods
+ ** @param uint16_t affectInternalVirtualMods
+ ** @param uint16_t internalVirtualMods
+ ** @param uint16_t affectIgnoreLockVirtualMods
+ ** @param uint16_t ignoreLockVirtualMods
+ ** @param uint8_t mouseKeysDfltBtn
+ ** @param uint8_t groupsWrap
+ ** @param xcb_xkb_ax_option_t accessXOptions
+ ** @param uint32_t affectEnabledControls
+ ** @param uint32_t enabledControls
+ ** @param uint32_t changeControls
+ ** @param uint16_t repeatDelay
+ ** @param uint16_t repeatInterval
+ ** @param uint16_t slowKeysDelay
+ ** @param uint16_t debounceDelay
+ ** @param uint16_t mouseKeysDelay
+ ** @param uint16_t mouseKeysInterval
+ ** @param uint16_t mouseKeysTimeToMax
+ ** @param uint16_t mouseKeysMaxSpeed
+ ** @param int16_t mouseKeysCurve
+ ** @param uint16_t accessXTimeout
+ ** @param uint32_t accessXTimeoutMask
+ ** @param uint32_t accessXTimeoutValues
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues
+ ** @param const uint8_t *perKeyRepeat
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_controls_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectInternalRealMods /**< */,
+ uint8_t internalRealMods /**< */,
+ uint8_t affectIgnoreLockRealMods /**< */,
+ uint8_t ignoreLockRealMods /**< */,
+ uint16_t affectInternalVirtualMods /**< */,
+ uint16_t internalVirtualMods /**< */,
+ uint16_t affectIgnoreLockVirtualMods /**< */,
+ uint16_t ignoreLockVirtualMods /**< */,
+ uint8_t mouseKeysDfltBtn /**< */,
+ uint8_t groupsWrap /**< */,
+ xcb_xkb_ax_option_t accessXOptions /**< */,
+ uint32_t affectEnabledControls /**< */,
+ uint32_t enabledControls /**< */,
+ uint32_t changeControls /**< */,
+ uint16_t repeatDelay /**< */,
+ uint16_t repeatInterval /**< */,
+ uint16_t slowKeysDelay /**< */,
+ uint16_t debounceDelay /**< */,
+ uint16_t mouseKeysDelay /**< */,
+ uint16_t mouseKeysInterval /**< */,
+ uint16_t mouseKeysTimeToMax /**< */,
+ uint16_t mouseKeysMaxSpeed /**< */,
+ int16_t mouseKeysCurve /**< */,
+ uint16_t accessXTimeout /**< */,
+ uint32_t accessXTimeoutMask /**< */,
+ uint32_t accessXTimeoutValues /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */,
+ const uint8_t *perKeyRepeat /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_controls
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectInternalRealMods
+ ** @param uint8_t internalRealMods
+ ** @param uint8_t affectIgnoreLockRealMods
+ ** @param uint8_t ignoreLockRealMods
+ ** @param uint16_t affectInternalVirtualMods
+ ** @param uint16_t internalVirtualMods
+ ** @param uint16_t affectIgnoreLockVirtualMods
+ ** @param uint16_t ignoreLockVirtualMods
+ ** @param uint8_t mouseKeysDfltBtn
+ ** @param uint8_t groupsWrap
+ ** @param xcb_xkb_ax_option_t accessXOptions
+ ** @param uint32_t affectEnabledControls
+ ** @param uint32_t enabledControls
+ ** @param uint32_t changeControls
+ ** @param uint16_t repeatDelay
+ ** @param uint16_t repeatInterval
+ ** @param uint16_t slowKeysDelay
+ ** @param uint16_t debounceDelay
+ ** @param uint16_t mouseKeysDelay
+ ** @param uint16_t mouseKeysInterval
+ ** @param uint16_t mouseKeysTimeToMax
+ ** @param uint16_t mouseKeysMaxSpeed
+ ** @param int16_t mouseKeysCurve
+ ** @param uint16_t accessXTimeout
+ ** @param uint32_t accessXTimeoutMask
+ ** @param uint32_t accessXTimeoutValues
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues
+ ** @param const uint8_t *perKeyRepeat
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_controls (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectInternalRealMods /**< */,
+ uint8_t internalRealMods /**< */,
+ uint8_t affectIgnoreLockRealMods /**< */,
+ uint8_t ignoreLockRealMods /**< */,
+ uint16_t affectInternalVirtualMods /**< */,
+ uint16_t internalVirtualMods /**< */,
+ uint16_t affectIgnoreLockVirtualMods /**< */,
+ uint16_t ignoreLockVirtualMods /**< */,
+ uint8_t mouseKeysDfltBtn /**< */,
+ uint8_t groupsWrap /**< */,
+ xcb_xkb_ax_option_t accessXOptions /**< */,
+ uint32_t affectEnabledControls /**< */,
+ uint32_t enabledControls /**< */,
+ uint32_t changeControls /**< */,
+ uint16_t repeatDelay /**< */,
+ uint16_t repeatInterval /**< */,
+ uint16_t slowKeysDelay /**< */,
+ uint16_t debounceDelay /**< */,
+ uint16_t mouseKeysDelay /**< */,
+ uint16_t mouseKeysInterval /**< */,
+ uint16_t mouseKeysTimeToMax /**< */,
+ uint16_t mouseKeysMaxSpeed /**< */,
+ int16_t mouseKeysCurve /**< */,
+ uint16_t accessXTimeout /**< */,
+ uint32_t accessXTimeoutMask /**< */,
+ uint32_t accessXTimeoutValues /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */,
+ const uint8_t *perKeyRepeat /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_types_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_map_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_map_map_types_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_syms_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_map_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_map_map_syms_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_map_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_map_map_acts_rtrn_count (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_acts_rtrn_count_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_map_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_map_map_acts_rtrn_count_end (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_map_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_map_map_acts_rtrn_acts (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_acts_rtrn_acts_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_map_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_map_map_acts_rtrn_acts_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_map_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_map_map_behaviors_rtrn (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_behaviors_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_map_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_map_map_behaviors_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_map_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_map_map_vmods_rtrn (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_vmods_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_map_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_map_map_vmods_rtrn_end (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_map_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_map_map_explicit_rtrn (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_explicit_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_map_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_map_map_explicit_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_map_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_map_map_modmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_modmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_map_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_map_map_modmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_map_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_map_map_vmodmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_vmodmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_map_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_map_map_vmodmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */);
+
+int
+xcb_xkb_get_map_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_map_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_map_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_map_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_map_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t full
+ ** @param uint16_t partial
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint16_t virtualMods
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @returns xcb_xkb_get_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_cookie_t
+xcb_xkb_get_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t full /**< */,
+ uint16_t partial /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint16_t virtualMods /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t full
+ ** @param uint16_t partial
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint16_t virtualMods
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @returns xcb_xkb_get_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_cookie_t
+xcb_xkb_get_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t full /**< */,
+ uint16_t partial /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint16_t virtualMods /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_map_t * xcb_xkb_get_map_map
+ **
+ ** @param const xcb_xkb_get_map_reply_t *R
+ ** @returns xcb_xkb_get_map_map_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_map_map (const xcb_xkb_get_map_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_map_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_reply_t * xcb_xkb_get_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_reply_t *
+xcb_xkb_get_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_types_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_types_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_key_type_iterator_t xcb_xkb_set_map_values_types_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_key_type_iterator_t
+xcb_xkb_set_map_values_types_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_syms_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_syms_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_set_map_values_syms_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_set_map_values_syms_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_map_values_actions_count
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_map_values_actions_count (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_actions_count_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_actions_count_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_map_values_actions_count_end
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_map_values_actions_count_end (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_set_map_values_actions
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_set_map_values_actions (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_actions_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_actions_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_set_map_values_actions_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_set_map_values_actions_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_set_map_values_behaviors
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_set_map_values_behaviors (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_behaviors_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_behaviors_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_set_map_values_behaviors_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_set_map_values_behaviors_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_map_values_vmods
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_map_values_vmods (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_vmods_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_vmods_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_map_values_vmods_end
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_map_values_vmods_end (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_set_map_values_explicit
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_set_map_values_explicit (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_explicit_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_explicit_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_set_map_values_explicit_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_set_map_values_explicit_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_set_map_values_modmap
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_set_map_values_modmap (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_modmap_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_modmap_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_set_map_values_modmap_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_set_map_values_modmap_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_set_map_values_vmodmap
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_set_map_values_vmodmap (const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_vmodmap_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_vmodmap_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_set_map_values_vmodmap_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_set_map_values_vmodmap_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */);
+
+int
+xcb_xkb_set_map_values_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_set_map_values_t *_aux /**< */);
+
+int
+xcb_xkb_set_map_values_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_set_map_values_t *_aux /**< */);
+
+int
+xcb_xkb_set_map_values_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const void *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const void *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const xcb_xkb_set_map_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const xcb_xkb_set_map_values_t *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const xcb_xkb_set_map_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const xcb_xkb_set_map_values_t *values /**< */);
+
+int
+xcb_xkb_get_compat_map_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t groups
+ ** @param uint8_t getAllSI
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @returns xcb_xkb_get_compat_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_cookie_t
+xcb_xkb_get_compat_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t groups /**< */,
+ uint8_t getAllSI /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t groups
+ ** @param uint8_t getAllSI
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @returns xcb_xkb_get_compat_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_cookie_t
+xcb_xkb_get_compat_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t groups /**< */,
+ uint8_t getAllSI /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_compat_map_si_rtrn
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_compat_map_si_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_compat_map_si_rtrn_length
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_compat_map_si_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_compat_map_si_rtrn_end
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_compat_map_si_rtrn_end (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_get_compat_map_group_rtrn
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_get_compat_map_group_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_compat_map_group_rtrn_length
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_compat_map_group_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_compat_map_group_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_get_compat_map_group_rtrn_iterator (const xcb_xkb_get_compat_map_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_compat_map_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_reply_t * xcb_xkb_get_compat_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_compat_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_compat_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_reply_t *
+xcb_xkb_get_compat_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_compat_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_set_compat_map_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_compat_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t recomputeActions
+ ** @param uint8_t truncateSI
+ ** @param uint8_t groups
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @param const uint8_t *si
+ ** @param const xcb_xkb_mod_def_t *groupMaps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_compat_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t recomputeActions /**< */,
+ uint8_t truncateSI /**< */,
+ uint8_t groups /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */,
+ const uint8_t *si /**< */,
+ const xcb_xkb_mod_def_t *groupMaps /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_compat_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t recomputeActions
+ ** @param uint8_t truncateSI
+ ** @param uint8_t groups
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @param const uint8_t *si
+ ** @param const xcb_xkb_mod_def_t *groupMaps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_compat_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t recomputeActions /**< */,
+ uint8_t truncateSI /**< */,
+ uint8_t groups /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */,
+ const uint8_t *si /**< */,
+ const xcb_xkb_mod_def_t *groupMaps /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_indicator_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_cookie_t
+xcb_xkb_get_indicator_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_indicator_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_cookie_t
+xcb_xkb_get_indicator_state_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_indicator_state_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_reply_t * xcb_xkb_get_indicator_state_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_indicator_state_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_indicator_state_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_reply_t *
+xcb_xkb_get_indicator_state_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_indicator_state_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_get_indicator_map_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_indicator_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_cookie_t
+xcb_xkb_get_indicator_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_indicator_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_cookie_t
+xcb_xkb_get_indicator_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_get_indicator_map_maps
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_get_indicator_map_maps (const xcb_xkb_get_indicator_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_indicator_map_maps_length
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_indicator_map_maps_length (const xcb_xkb_get_indicator_map_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_indicator_map_maps_iterator
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_get_indicator_map_maps_iterator (const xcb_xkb_get_indicator_map_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_indicator_map_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_reply_t * xcb_xkb_get_indicator_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_indicator_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_indicator_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_reply_t *
+xcb_xkb_get_indicator_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_indicator_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_set_indicator_map_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_indicator_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @param const xcb_xkb_indicator_map_t *maps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_indicator_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_indicator_map_t *maps /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_indicator_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @param const xcb_xkb_indicator_map_t *maps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_indicator_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_indicator_map_t *maps /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @returns xcb_xkb_get_named_indicator_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_cookie_t
+xcb_xkb_get_named_indicator (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @returns xcb_xkb_get_named_indicator_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_cookie_t
+xcb_xkb_get_named_indicator_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_named_indicator_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_reply_t * xcb_xkb_get_named_indicator_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_named_indicator_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_named_indicator_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_reply_t *
+xcb_xkb_get_named_indicator_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_named_indicator_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_named_indicator_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @param uint8_t setState
+ ** @param uint8_t on
+ ** @param uint8_t setMap
+ ** @param uint8_t createMap
+ ** @param uint8_t map_flags
+ ** @param uint8_t map_whichGroups
+ ** @param uint8_t map_groups
+ ** @param uint8_t map_whichMods
+ ** @param uint8_t map_realMods
+ ** @param uint16_t map_vmods
+ ** @param uint32_t map_ctrls
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_named_indicator_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */,
+ uint8_t setState /**< */,
+ uint8_t on /**< */,
+ uint8_t setMap /**< */,
+ uint8_t createMap /**< */,
+ uint8_t map_flags /**< */,
+ uint8_t map_whichGroups /**< */,
+ uint8_t map_groups /**< */,
+ uint8_t map_whichMods /**< */,
+ uint8_t map_realMods /**< */,
+ uint16_t map_vmods /**< */,
+ uint32_t map_ctrls /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_named_indicator
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @param uint8_t setState
+ ** @param uint8_t on
+ ** @param uint8_t setMap
+ ** @param uint8_t createMap
+ ** @param uint8_t map_flags
+ ** @param uint8_t map_whichGroups
+ ** @param uint8_t map_groups
+ ** @param uint8_t map_whichMods
+ ** @param uint8_t map_realMods
+ ** @param uint16_t map_vmods
+ ** @param uint32_t map_ctrls
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_named_indicator (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */,
+ uint8_t setState /**< */,
+ uint8_t on /**< */,
+ uint8_t setMap /**< */,
+ uint8_t createMap /**< */,
+ uint8_t map_flags /**< */,
+ uint8_t map_whichGroups /**< */,
+ uint8_t map_groups /**< */,
+ uint8_t map_whichMods /**< */,
+ uint8_t map_realMods /**< */,
+ uint16_t map_vmods /**< */,
+ uint32_t map_ctrls /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_type_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_type_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_type_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_names_value_list_n_levels_per_type (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_n_levels_per_type_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_n_levels_per_type_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_kt_level_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_kt_level_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_kt_level_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_indicator_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_indicator_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_indicator_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_virtual_mod_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_virtual_mod_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_virtual_mod_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_groups (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_groups_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_groups_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_names_value_list_key_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_key_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_names_value_list_key_names_iterator (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_names_value_list_key_aliases (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_key_aliases_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_names_value_list_key_aliases_iterator (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_radio_group_names (const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_radio_group_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_radio_group_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */);
+
+int
+xcb_xkb_get_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_names_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_cookie_t
+xcb_xkb_get_names (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_names_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_cookie_t
+xcb_xkb_get_names_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_value_list_t * xcb_xkb_get_names_value_list
+ **
+ ** @param const xcb_xkb_get_names_reply_t *R
+ ** @returns xcb_xkb_get_names_value_list_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_names_value_list (const xcb_xkb_get_names_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_names_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_reply_t * xcb_xkb_get_names_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_names_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_names_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_reply_t *
+xcb_xkb_get_names_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_names_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_type_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_type_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_type_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_type_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_type_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_type_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_names_values_n_levels_per_type
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_names_values_n_levels_per_type (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_n_levels_per_type_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_n_levels_per_type_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_kt_level_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_kt_level_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_kt_level_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_kt_level_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_kt_level_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_kt_level_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_indicator_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_indicator_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_indicator_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_indicator_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_indicator_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_indicator_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_virtual_mod_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_virtual_mod_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_virtual_mod_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_virtual_mod_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_groups
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_groups (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_groups_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_groups_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_groups_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_groups_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_set_names_values_key_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_set_names_values_key_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_key_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_key_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_set_names_values_key_names_iterator
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_set_names_values_key_names_iterator (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_set_names_values_key_aliases
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_set_names_values_key_aliases (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_key_aliases_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_key_aliases_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_set_names_values_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_set_names_values_key_aliases_iterator (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_radio_group_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_radio_group_names (const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_radio_group_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_radio_group_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_radio_group_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_radio_group_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */);
+
+int
+xcb_xkb_set_names_values_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_set_names_values_t *_aux /**< */);
+
+int
+xcb_xkb_set_names_values_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_set_names_values_t *_aux /**< */);
+
+int
+xcb_xkb_set_names_values_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const void *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const void *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const xcb_xkb_set_names_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const xcb_xkb_set_names_values_t *values /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const xcb_xkb_set_names_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const xcb_xkb_set_names_values_t *values /**< */);
+
+int
+xcb_xkb_get_geometry_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_atom_t name
+ ** @returns xcb_xkb_get_geometry_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_cookie_t
+xcb_xkb_get_geometry (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_atom_t name /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_atom_t name
+ ** @returns xcb_xkb_get_geometry_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_cookie_t
+xcb_xkb_get_geometry_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_atom_t name /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_get_geometry_label_font
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_get_geometry_label_font (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_properties_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_properties_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_property_iterator_t xcb_xkb_get_geometry_properties_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_property_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_property_iterator_t
+xcb_xkb_get_geometry_properties_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_colors_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_colors_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_geometry_colors_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_counted_string_16_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_iterator_t
+xcb_xkb_get_geometry_colors_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_shapes_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_shapes_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_shape_iterator_t xcb_xkb_get_geometry_shapes_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_shape_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_shape_iterator_t
+xcb_xkb_get_geometry_shapes_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_sections_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_sections_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_section_iterator_t xcb_xkb_get_geometry_sections_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_section_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_section_iterator_t
+xcb_xkb_get_geometry_sections_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_doodads_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_doodads_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_get_geometry_doodads_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_get_geometry_doodads_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_geometry_key_aliases
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_geometry_key_aliases (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_key_aliases_length (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_geometry_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_geometry_key_aliases_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_geometry_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_reply_t * xcb_xkb_get_geometry_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_geometry_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_geometry_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_reply_t *
+xcb_xkb_get_geometry_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_geometry_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_set_geometry_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_geometry_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t nShapes
+ ** @param uint8_t nSections
+ ** @param xcb_atom_t name
+ ** @param uint16_t widthMM
+ ** @param uint16_t heightMM
+ ** @param uint16_t nProperties
+ ** @param uint16_t nColors
+ ** @param uint16_t nDoodads
+ ** @param uint16_t nKeyAliases
+ ** @param uint8_t baseColorNdx
+ ** @param uint8_t labelColorNdx
+ ** @param xcb_xkb_counted_string_16_t *labelFont
+ ** @param const xcb_xkb_property_t *properties
+ ** @param const xcb_xkb_counted_string_16_t *colors
+ ** @param const xcb_xkb_shape_t *shapes
+ ** @param const xcb_xkb_section_t *sections
+ ** @param const xcb_xkb_doodad_t *doodads
+ ** @param const xcb_xkb_key_alias_t *keyAliases
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_geometry_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t nShapes /**< */,
+ uint8_t nSections /**< */,
+ xcb_atom_t name /**< */,
+ uint16_t widthMM /**< */,
+ uint16_t heightMM /**< */,
+ uint16_t nProperties /**< */,
+ uint16_t nColors /**< */,
+ uint16_t nDoodads /**< */,
+ uint16_t nKeyAliases /**< */,
+ uint8_t baseColorNdx /**< */,
+ uint8_t labelColorNdx /**< */,
+ xcb_xkb_counted_string_16_t *labelFont /**< */,
+ const xcb_xkb_property_t *properties /**< */,
+ const xcb_xkb_counted_string_16_t *colors /**< */,
+ const xcb_xkb_shape_t *shapes /**< */,
+ const xcb_xkb_section_t *sections /**< */,
+ const xcb_xkb_doodad_t *doodads /**< */,
+ const xcb_xkb_key_alias_t *keyAliases /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_geometry
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t nShapes
+ ** @param uint8_t nSections
+ ** @param xcb_atom_t name
+ ** @param uint16_t widthMM
+ ** @param uint16_t heightMM
+ ** @param uint16_t nProperties
+ ** @param uint16_t nColors
+ ** @param uint16_t nDoodads
+ ** @param uint16_t nKeyAliases
+ ** @param uint8_t baseColorNdx
+ ** @param uint8_t labelColorNdx
+ ** @param xcb_xkb_counted_string_16_t *labelFont
+ ** @param const xcb_xkb_property_t *properties
+ ** @param const xcb_xkb_counted_string_16_t *colors
+ ** @param const xcb_xkb_shape_t *shapes
+ ** @param const xcb_xkb_section_t *sections
+ ** @param const xcb_xkb_doodad_t *doodads
+ ** @param const xcb_xkb_key_alias_t *keyAliases
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_geometry (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t nShapes /**< */,
+ uint8_t nSections /**< */,
+ xcb_atom_t name /**< */,
+ uint16_t widthMM /**< */,
+ uint16_t heightMM /**< */,
+ uint16_t nProperties /**< */,
+ uint16_t nColors /**< */,
+ uint16_t nDoodads /**< */,
+ uint16_t nKeyAliases /**< */,
+ uint8_t baseColorNdx /**< */,
+ uint8_t labelColorNdx /**< */,
+ xcb_xkb_counted_string_16_t *labelFont /**< */,
+ const xcb_xkb_property_t *properties /**< */,
+ const xcb_xkb_counted_string_16_t *colors /**< */,
+ const xcb_xkb_shape_t *shapes /**< */,
+ const xcb_xkb_section_t *sections /**< */,
+ const xcb_xkb_doodad_t *doodads /**< */,
+ const xcb_xkb_key_alias_t *keyAliases /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t change
+ ** @param uint32_t value
+ ** @param uint32_t ctrlsToChange
+ ** @param uint32_t autoCtrls
+ ** @param uint32_t autoCtrlsValues
+ ** @returns xcb_xkb_per_client_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_cookie_t
+xcb_xkb_per_client_flags (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t change /**< */,
+ uint32_t value /**< */,
+ uint32_t ctrlsToChange /**< */,
+ uint32_t autoCtrls /**< */,
+ uint32_t autoCtrlsValues /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t change
+ ** @param uint32_t value
+ ** @param uint32_t ctrlsToChange
+ ** @param uint32_t autoCtrls
+ ** @param uint32_t autoCtrlsValues
+ ** @returns xcb_xkb_per_client_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_cookie_t
+xcb_xkb_per_client_flags_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t change /**< */,
+ uint32_t value /**< */,
+ uint32_t ctrlsToChange /**< */,
+ uint32_t autoCtrls /**< */,
+ uint32_t autoCtrlsValues /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_per_client_flags_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_reply_t * xcb_xkb_per_client_flags_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_per_client_flags_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_per_client_flags_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_reply_t *
+xcb_xkb_per_client_flags_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_per_client_flags_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_list_components_serialize (void **_buffer /**< */,
+ const xcb_xkb_list_components_request_t *_aux /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+int
+xcb_xkb_list_components_unserialize (const void *_buffer /**< */,
+ xcb_xkb_list_components_request_t **_aux /**< */);
+
+int
+xcb_xkb_list_components_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t maxNames
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_list_components_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_cookie_t
+xcb_xkb_list_components (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t maxNames /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t maxNames
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_list_components_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_cookie_t
+xcb_xkb_list_components_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t maxNames /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_keymaps_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_keymaps_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keymaps_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_keymaps_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_keycodes_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_keycodes_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keycodes_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_keycodes_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_types_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_types_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_types_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_types_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_compat_maps_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_compat_maps_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_compat_maps_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_compat_maps_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_symbols_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_symbols_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_symbols_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_symbols_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_geometries_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_geometries_length (const xcb_xkb_list_components_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_geometries_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_geometries_iterator (const xcb_xkb_list_components_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_list_components_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_reply_t * xcb_xkb_list_components_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_list_components_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_list_components_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_reply_t *
+xcb_xkb_list_components_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_list_components_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_serialize (void **_buffer /**< */,
+ const xcb_xkb_get_kbd_by_name_request_t *_aux /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_unserialize (const void *_buffer /**< */,
+ xcb_xkb_get_kbd_by_name_request_t **_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_sizeof (const void *_buffer /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */);
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_get_kbd_by_name_replies_geometry_label_font
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_get_kbd_by_name_replies_geometry_label_font (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_properties_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_properties_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_property_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_property_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_property_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_colors_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_colors_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_counted_string_16_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_shape_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_shape_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_shape_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_sections_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_sections_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_section_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_section_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_section_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_serialize (void **_buffer /**< */,
+ uint16_t reported /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_unpack (const void *_buffer /**< */,
+ uint16_t reported /**< */,
+ xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */);
+
+int
+xcb_xkb_get_kbd_by_name_replies_sizeof (const void *_buffer /**< */,
+ uint16_t reported /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t need
+ ** @param uint16_t want
+ ** @param uint8_t load
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_get_kbd_by_name_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_cookie_t
+xcb_xkb_get_kbd_by_name (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t need /**< */,
+ uint16_t want /**< */,
+ uint8_t load /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t need
+ ** @param uint16_t want
+ ** @param uint8_t load
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_get_kbd_by_name_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_cookie_t
+xcb_xkb_get_kbd_by_name_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t need /**< */,
+ uint16_t want /**< */,
+ uint8_t load /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_t * xcb_xkb_get_kbd_by_name_replies
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_reply_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_kbd_by_name_replies (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_kbd_by_name_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_reply_t * xcb_xkb_get_kbd_by_name_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_kbd_by_name_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_kbd_by_name_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_reply_t *
+xcb_xkb_get_kbd_by_name_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_kbd_by_name_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_get_device_info_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t wanted
+ ** @param uint8_t allButtons
+ ** @param uint8_t firstButton
+ ** @param uint8_t nButtons
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @returns xcb_xkb_get_device_info_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_cookie_t
+xcb_xkb_get_device_info (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t wanted /**< */,
+ uint8_t allButtons /**< */,
+ uint8_t firstButton /**< */,
+ uint8_t nButtons /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t wanted
+ ** @param uint8_t allButtons
+ ** @param uint8_t firstButton
+ ** @param uint8_t nButtons
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @returns xcb_xkb_get_device_info_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_cookie_t
+xcb_xkb_get_device_info_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t wanted /**< */,
+ uint8_t allButtons /**< */,
+ uint8_t firstButton /**< */,
+ uint8_t nButtons /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_get_device_info_name
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_get_device_info_name (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_name_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_name_length (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_device_info_name_end
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_device_info_name_end (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_device_info_btn_actions
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_device_info_btn_actions (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_btn_actions_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_btn_actions_length (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_device_info_btn_actions_iterator
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_device_info_btn_actions_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_leds_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_leds_length (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_device_led_info_iterator_t xcb_xkb_get_device_info_leds_iterator
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_device_led_info_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_device_led_info_iterator_t
+xcb_xkb_get_device_info_leds_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_get_device_info_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_reply_t * xcb_xkb_get_device_info_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_device_info_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_device_info_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_reply_t *
+xcb_xkb_get_device_info_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_device_info_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+int
+xcb_xkb_set_device_info_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will not cause
+ * a reply to be generated. Any returned error will be
+ * saved for handling by xcb_request_check().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_device_info_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t firstBtn
+ ** @param uint8_t nBtns
+ ** @param uint16_t change
+ ** @param uint16_t nDeviceLedFBs
+ ** @param const xcb_xkb_action_t *btnActions
+ ** @param const xcb_xkb_device_led_info_t *leds
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_device_info_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t firstBtn /**< */,
+ uint8_t nBtns /**< */,
+ uint16_t change /**< */,
+ uint16_t nDeviceLedFBs /**< */,
+ const xcb_xkb_action_t *btnActions /**< */,
+ const xcb_xkb_device_led_info_t *leds /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_device_info
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t firstBtn
+ ** @param uint8_t nBtns
+ ** @param uint16_t change
+ ** @param uint16_t nDeviceLedFBs
+ ** @param const xcb_xkb_action_t *btnActions
+ ** @param const xcb_xkb_device_led_info_t *leds
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_device_info (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t firstBtn /**< */,
+ uint8_t nBtns /**< */,
+ uint16_t change /**< */,
+ uint16_t nDeviceLedFBs /**< */,
+ const xcb_xkb_action_t *btnActions /**< */,
+ const xcb_xkb_device_led_info_t *leds /**< */);
+
+int
+xcb_xkb_set_debugging_flags_sizeof (const void *_buffer /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t msgLength
+ ** @param uint32_t affectFlags
+ ** @param uint32_t flags
+ ** @param uint32_t affectCtrls
+ ** @param uint32_t ctrls
+ ** @param const xcb_xkb_string8_t *message
+ ** @returns xcb_xkb_set_debugging_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_cookie_t
+xcb_xkb_set_debugging_flags (xcb_connection_t *c /**< */,
+ uint16_t msgLength /**< */,
+ uint32_t affectFlags /**< */,
+ uint32_t flags /**< */,
+ uint32_t affectCtrls /**< */,
+ uint32_t ctrls /**< */,
+ const xcb_xkb_string8_t *message /**< */);
+
+/**
+ * Delivers a request to the X server
+ * @param c The connection
+ * @return A cookie
+ *
+ * Delivers a request to the X server.
+ *
+ * This form can be used only if the request will cause
+ * a reply to be generated. Any returned error will be
+ * placed in the event queue.
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t msgLength
+ ** @param uint32_t affectFlags
+ ** @param uint32_t flags
+ ** @param uint32_t affectCtrls
+ ** @param uint32_t ctrls
+ ** @param const xcb_xkb_string8_t *message
+ ** @returns xcb_xkb_set_debugging_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_cookie_t
+xcb_xkb_set_debugging_flags_unchecked (xcb_connection_t *c /**< */,
+ uint16_t msgLength /**< */,
+ uint32_t affectFlags /**< */,
+ uint32_t flags /**< */,
+ uint32_t affectCtrls /**< */,
+ uint32_t ctrls /**< */,
+ const xcb_xkb_string8_t *message /**< */);
+
+/**
+ * Return the reply
+ * @param c The connection
+ * @param cookie The cookie
+ * @param e The xcb_generic_error_t supplied
+ *
+ * Returns the reply of the request asked by
+ *
+ * The parameter @p e supplied to this function must be NULL if
+ * xcb_xkb_set_debugging_flags_unchecked(). is used.
+ * Otherwise, it stores the error if any.
+ *
+ * The returned value must be freed by the caller using free().
+ */
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_reply_t * xcb_xkb_set_debugging_flags_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_set_debugging_flags_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_set_debugging_flags_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_reply_t *
+xcb_xkb_set_debugging_flags_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_set_debugging_flags_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */);
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+
+/**
+ * @}
+ */
diff --git a/src/3rdparty/xcb/libxcb/xkb.c b/src/3rdparty/xcb/libxcb/xkb.c
new file mode 100644
index 0000000000..3e07d6df84
--- /dev/null
+++ b/src/3rdparty/xcb/libxcb/xkb.c
@@ -0,0 +1,22021 @@
+/*
+ * This file generated automatically from xkb.xml by c_client.py.
+ * Edit at your peril.
+ */
+
+#include <stdlib.h>
+#include <string.h>
+#include <assert.h>
+#include <stddef.h> /* for offsetof() */
+#include "xcbext.h"
+#include "xkb.h"
+
+#define ALIGNOF(type) offsetof(struct { char dummy; type member; }, member)
+#include "xproto.h"
+
+xcb_extension_t xcb_xkb_id = { "XKEYBOARD", 0 };
+
+int qt_xcb_sumof(uint8_t *list, int len)
+{
+ int i, s = 0;
+ for(i=0; i<len; i++) {
+ s += *list;
+ list++;
+ }
+ return s;
+}
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_ax_option_next
+ **
+ ** @param xcb_xkb_ax_option_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_ax_option_next (xcb_xkb_ax_option_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_ax_option_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_ax_option_end
+ **
+ ** @param xcb_xkb_ax_option_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_ax_option_end (xcb_xkb_ax_option_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_device_spec_next
+ **
+ ** @param xcb_xkb_device_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_device_spec_next (xcb_xkb_device_spec_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_device_spec_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_spec_end
+ **
+ ** @param xcb_xkb_device_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_spec_end (xcb_xkb_device_spec_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_led_class_spec_next
+ **
+ ** @param xcb_xkb_led_class_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_led_class_spec_next (xcb_xkb_led_class_spec_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_led_class_spec_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_led_class_spec_end
+ **
+ ** @param xcb_xkb_led_class_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_led_class_spec_end (xcb_xkb_led_class_spec_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_bell_class_spec_next
+ **
+ ** @param xcb_xkb_bell_class_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_bell_class_spec_next (xcb_xkb_bell_class_spec_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_bell_class_spec_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_bell_class_spec_end
+ **
+ ** @param xcb_xkb_bell_class_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_bell_class_spec_end (xcb_xkb_bell_class_spec_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_id_spec_next
+ **
+ ** @param xcb_xkb_id_spec_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_id_spec_next (xcb_xkb_id_spec_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_id_spec_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_id_spec_end
+ **
+ ** @param xcb_xkb_id_spec_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_id_spec_end (xcb_xkb_id_spec_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_indicator_map_next
+ **
+ ** @param xcb_xkb_indicator_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_indicator_map_next (xcb_xkb_indicator_map_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_indicator_map_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_indicator_map_end
+ **
+ ** @param xcb_xkb_indicator_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_indicator_map_end (xcb_xkb_indicator_map_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_mod_def_next
+ **
+ ** @param xcb_xkb_mod_def_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_mod_def_next (xcb_xkb_mod_def_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_mod_def_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_mod_def_end
+ **
+ ** @param xcb_xkb_mod_def_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_mod_def_end (xcb_xkb_mod_def_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_name_next
+ **
+ ** @param xcb_xkb_key_name_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_name_next (xcb_xkb_key_name_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_key_name_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_name_end
+ **
+ ** @param xcb_xkb_key_name_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_name_end (xcb_xkb_key_name_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_alias_next
+ **
+ ** @param xcb_xkb_key_alias_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_alias_next (xcb_xkb_key_alias_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_key_alias_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_alias_end
+ **
+ ** @param xcb_xkb_key_alias_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_alias_end (xcb_xkb_key_alias_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_counted_string_8_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_counted_string_8_t *_aux = (xcb_xkb_counted_string_8_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_counted_string_8_t);
+ xcb_tmp += xcb_block_len;
+ /* string */
+ xcb_block_len += _aux->length * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_8_string
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_8_string (const xcb_xkb_counted_string_8_t *R /**< */)
+{
+ return (uint8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_counted_string_8_string_length
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_counted_string_8_string_length (const xcb_xkb_counted_string_8_t *R /**< */)
+{
+ return R->length;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_8_string_end
+ **
+ ** @param const xcb_xkb_counted_string_8_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_8_string_end (const xcb_xkb_counted_string_8_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((uint8_t *) (R + 1)) + (R->length);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_counted_string_8_next
+ **
+ ** @param xcb_xkb_counted_string_8_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_counted_string_8_next (xcb_xkb_counted_string_8_iterator_t *i /**< */)
+{
+ xcb_xkb_counted_string_8_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_counted_string_8_t *)(((char *)R) + xcb_xkb_counted_string_8_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_counted_string_8_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_8_end
+ **
+ ** @param xcb_xkb_counted_string_8_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_8_end (xcb_xkb_counted_string_8_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_counted_string_8_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_counted_string_16_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_counted_string_16_t *_aux = (xcb_xkb_counted_string_16_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_counted_string_16_t);
+ xcb_tmp += xcb_block_len;
+ /* string */
+ xcb_block_len += _aux->length * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_16_string
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_16_string (const xcb_xkb_counted_string_16_t *R /**< */)
+{
+ return (uint8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_counted_string_16_string_length
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_counted_string_16_string_length (const xcb_xkb_counted_string_16_t *R /**< */)
+{
+ return R->length;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_16_string_end
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_16_string_end (const xcb_xkb_counted_string_16_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((uint8_t *) (R + 1)) + (R->length);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_counted_string_16_pad_0
+ **
+ ** @param const xcb_xkb_counted_string_16_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_counted_string_16_pad_0 (const xcb_xkb_counted_string_16_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(R);
+ return (uint8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint8_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_counted_string_16_next
+ **
+ ** @param xcb_xkb_counted_string_16_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_counted_string_16_next (xcb_xkb_counted_string_16_iterator_t *i /**< */)
+{
+ xcb_xkb_counted_string_16_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_counted_string_16_t *)(((char *)R) + xcb_xkb_counted_string_16_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_counted_string_16_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_counted_string_16_end
+ **
+ ** @param xcb_xkb_counted_string_16_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_counted_string_16_end (xcb_xkb_counted_string_16_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_counted_string_16_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_kt_map_entry_next
+ **
+ ** @param xcb_xkb_kt_map_entry_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_kt_map_entry_next (xcb_xkb_kt_map_entry_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_kt_map_entry_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_kt_map_entry_end
+ **
+ ** @param xcb_xkb_kt_map_entry_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_kt_map_entry_end (xcb_xkb_kt_map_entry_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_key_type_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_key_type_t *_aux = (xcb_xkb_key_type_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_key_type_t);
+ xcb_tmp += xcb_block_len;
+ /* map */
+ xcb_block_len += _aux->nMapEntries * sizeof(xcb_xkb_kt_map_entry_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_kt_map_entry_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* preserve */
+ xcb_block_len += (_aux->hasPreserve * _aux->nMapEntries) * sizeof(xcb_xkb_mod_def_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_map_entry_t * xcb_xkb_key_type_map
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_kt_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_map_entry_t *
+xcb_xkb_key_type_map (const xcb_xkb_key_type_t *R /**< */)
+{
+ return (xcb_xkb_kt_map_entry_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_type_map_length
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_type_map_length (const xcb_xkb_key_type_t *R /**< */)
+{
+ return R->nMapEntries;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_map_entry_iterator_t xcb_xkb_key_type_map_iterator
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_kt_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_map_entry_iterator_t
+xcb_xkb_key_type_map_iterator (const xcb_xkb_key_type_t *R /**< */)
+{
+ xcb_xkb_kt_map_entry_iterator_t i;
+ i.data = (xcb_xkb_kt_map_entry_t *) (R + 1);
+ i.rem = R->nMapEntries;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_key_type_preserve
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_key_type_preserve (const xcb_xkb_key_type_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_kt_map_entry_end(xcb_xkb_key_type_map_iterator(R));
+ return (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_type_preserve_length
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_type_preserve_length (const xcb_xkb_key_type_t *R /**< */)
+{
+ return (R->hasPreserve * R->nMapEntries);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_key_type_preserve_iterator
+ **
+ ** @param const xcb_xkb_key_type_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_key_type_preserve_iterator (const xcb_xkb_key_type_t *R /**< */)
+{
+ xcb_xkb_mod_def_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_kt_map_entry_end(xcb_xkb_key_type_map_iterator(R));
+ i.data = (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index));
+ i.rem = (R->hasPreserve * R->nMapEntries);
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_type_next
+ **
+ ** @param xcb_xkb_key_type_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_type_next (xcb_xkb_key_type_iterator_t *i /**< */)
+{
+ xcb_xkb_key_type_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_key_type_t *)(((char *)R) + xcb_xkb_key_type_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_key_type_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_type_end
+ **
+ ** @param xcb_xkb_key_type_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_type_end (xcb_xkb_key_type_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_key_type_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_key_sym_map_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_key_sym_map_t *_aux = (xcb_xkb_key_sym_map_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_key_sym_map_t);
+ xcb_tmp += xcb_block_len;
+ /* syms */
+ xcb_block_len += _aux->nSyms * sizeof(xcb_keysym_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_keysym_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_keysym_t * xcb_xkb_key_sym_map_syms
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns xcb_keysym_t *
+ **
+ *****************************************************************************/
+
+xcb_keysym_t *
+xcb_xkb_key_sym_map_syms (const xcb_xkb_key_sym_map_t *R /**< */)
+{
+ return (xcb_keysym_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_key_sym_map_syms_length
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_key_sym_map_syms_length (const xcb_xkb_key_sym_map_t *R /**< */)
+{
+ return R->nSyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_sym_map_syms_end
+ **
+ ** @param const xcb_xkb_key_sym_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_sym_map_syms_end (const xcb_xkb_key_sym_map_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((xcb_keysym_t *) (R + 1)) + (R->nSyms);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_sym_map_next
+ **
+ ** @param xcb_xkb_key_sym_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_sym_map_next (xcb_xkb_key_sym_map_iterator_t *i /**< */)
+{
+ xcb_xkb_key_sym_map_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_key_sym_map_t *)(((char *)R) + xcb_xkb_key_sym_map_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_key_sym_map_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_sym_map_end
+ **
+ ** @param xcb_xkb_key_sym_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_sym_map_end (xcb_xkb_key_sym_map_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_key_sym_map_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_common_behavior_next
+ **
+ ** @param xcb_xkb_common_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_common_behavior_next (xcb_xkb_common_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_common_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_common_behavior_end
+ **
+ ** @param xcb_xkb_common_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_common_behavior_end (xcb_xkb_common_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_default_behavior_next
+ **
+ ** @param xcb_xkb_default_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_default_behavior_next (xcb_xkb_default_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_default_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_default_behavior_end
+ **
+ ** @param xcb_xkb_default_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_default_behavior_end (xcb_xkb_default_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_lock_behavior_next
+ **
+ ** @param xcb_xkb_lock_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_lock_behavior_next (xcb_xkb_lock_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_lock_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_lock_behavior_end
+ **
+ ** @param xcb_xkb_lock_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_lock_behavior_end (xcb_xkb_lock_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_radio_group_behavior_next
+ **
+ ** @param xcb_xkb_radio_group_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_radio_group_behavior_next (xcb_xkb_radio_group_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_radio_group_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_radio_group_behavior_end
+ **
+ ** @param xcb_xkb_radio_group_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_radio_group_behavior_end (xcb_xkb_radio_group_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_1_behavior_next
+ **
+ ** @param xcb_xkb_overlay_1_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_1_behavior_next (xcb_xkb_overlay_1_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_overlay_1_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_1_behavior_end
+ **
+ ** @param xcb_xkb_overlay_1_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_1_behavior_end (xcb_xkb_overlay_1_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_2_behavior_next
+ **
+ ** @param xcb_xkb_overlay_2_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_2_behavior_next (xcb_xkb_overlay_2_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_overlay_2_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_2_behavior_end
+ **
+ ** @param xcb_xkb_overlay_2_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_2_behavior_end (xcb_xkb_overlay_2_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_lock_behavior_next
+ **
+ ** @param xcb_xkb_permament_lock_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_lock_behavior_next (xcb_xkb_permament_lock_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_permament_lock_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_lock_behavior_end
+ **
+ ** @param xcb_xkb_permament_lock_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_lock_behavior_end (xcb_xkb_permament_lock_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_radio_group_behavior_next
+ **
+ ** @param xcb_xkb_permament_radio_group_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_radio_group_behavior_next (xcb_xkb_permament_radio_group_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_permament_radio_group_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_radio_group_behavior_end
+ **
+ ** @param xcb_xkb_permament_radio_group_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_radio_group_behavior_end (xcb_xkb_permament_radio_group_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_overlay_1_behavior_next
+ **
+ ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_overlay_1_behavior_next (xcb_xkb_permament_overlay_1_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_permament_overlay_1_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_overlay_1_behavior_end
+ **
+ ** @param xcb_xkb_permament_overlay_1_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_overlay_1_behavior_end (xcb_xkb_permament_overlay_1_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_permament_overlay_2_behavior_next
+ **
+ ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_permament_overlay_2_behavior_next (xcb_xkb_permament_overlay_2_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_permament_overlay_2_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_permament_overlay_2_behavior_end
+ **
+ ** @param xcb_xkb_permament_overlay_2_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_permament_overlay_2_behavior_end (xcb_xkb_permament_overlay_2_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_behavior_next
+ **
+ ** @param xcb_xkb_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_behavior_next (xcb_xkb_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_behavior_end
+ **
+ ** @param xcb_xkb_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_behavior_end (xcb_xkb_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_behavior_next
+ **
+ ** @param xcb_xkb_set_behavior_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_behavior_next (xcb_xkb_set_behavior_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_set_behavior_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_behavior_end
+ **
+ ** @param xcb_xkb_set_behavior_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_behavior_end (xcb_xkb_set_behavior_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_explicit_next
+ **
+ ** @param xcb_xkb_set_explicit_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_explicit_next (xcb_xkb_set_explicit_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_set_explicit_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_explicit_end
+ **
+ ** @param xcb_xkb_set_explicit_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_explicit_end (xcb_xkb_set_explicit_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_mod_map_next
+ **
+ ** @param xcb_xkb_key_mod_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_mod_map_next (xcb_xkb_key_mod_map_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_key_mod_map_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_mod_map_end
+ **
+ ** @param xcb_xkb_key_mod_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_mod_map_end (xcb_xkb_key_mod_map_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_v_mod_map_next
+ **
+ ** @param xcb_xkb_key_v_mod_map_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_v_mod_map_next (xcb_xkb_key_v_mod_map_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_key_v_mod_map_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_v_mod_map_end
+ **
+ ** @param xcb_xkb_key_v_mod_map_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_v_mod_map_end (xcb_xkb_key_v_mod_map_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_kt_set_map_entry_next
+ **
+ ** @param xcb_xkb_kt_set_map_entry_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_kt_set_map_entry_next (xcb_xkb_kt_set_map_entry_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_kt_set_map_entry_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_kt_set_map_entry_end
+ **
+ ** @param xcb_xkb_kt_set_map_entry_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_kt_set_map_entry_end (xcb_xkb_kt_set_map_entry_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_set_key_type_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_key_type_t *_aux = (xcb_xkb_set_key_type_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_set_key_type_t);
+ xcb_tmp += xcb_block_len;
+ /* entries */
+ xcb_block_len += _aux->nMapEntries * sizeof(xcb_xkb_kt_set_map_entry_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_kt_set_map_entry_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* preserve_entries */
+ xcb_block_len += (_aux->preserve * _aux->nMapEntries) * sizeof(xcb_xkb_kt_set_map_entry_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_kt_set_map_entry_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_entries
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_t *
+xcb_xkb_set_key_type_entries (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ return (xcb_xkb_kt_set_map_entry_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_key_type_entries_length
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_key_type_entries_length (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ return R->nMapEntries;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_entries_iterator
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_iterator_t
+xcb_xkb_set_key_type_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ xcb_xkb_kt_set_map_entry_iterator_t i;
+ i.data = (xcb_xkb_kt_set_map_entry_t *) (R + 1);
+ i.rem = R->nMapEntries;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_t * xcb_xkb_set_key_type_preserve_entries
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_t *
+xcb_xkb_set_key_type_preserve_entries (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_kt_set_map_entry_end(xcb_xkb_set_key_type_entries_iterator(R));
+ return (xcb_xkb_kt_set_map_entry_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_kt_set_map_entry_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_key_type_preserve_entries_length
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_key_type_preserve_entries_length (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ return (R->preserve * R->nMapEntries);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_kt_set_map_entry_iterator_t xcb_xkb_set_key_type_preserve_entries_iterator
+ **
+ ** @param const xcb_xkb_set_key_type_t *R
+ ** @returns xcb_xkb_kt_set_map_entry_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_kt_set_map_entry_iterator_t
+xcb_xkb_set_key_type_preserve_entries_iterator (const xcb_xkb_set_key_type_t *R /**< */)
+{
+ xcb_xkb_kt_set_map_entry_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_kt_set_map_entry_end(xcb_xkb_set_key_type_entries_iterator(R));
+ i.data = (xcb_xkb_kt_set_map_entry_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_kt_set_map_entry_t, prev.index));
+ i.rem = (R->preserve * R->nMapEntries);
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_set_key_type_next
+ **
+ ** @param xcb_xkb_set_key_type_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_set_key_type_next (xcb_xkb_set_key_type_iterator_t *i /**< */)
+{
+ xcb_xkb_set_key_type_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_set_key_type_t *)(((char *)R) + xcb_xkb_set_key_type_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_set_key_type_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_key_type_end
+ **
+ ** @param xcb_xkb_set_key_type_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_key_type_end (xcb_xkb_set_key_type_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_set_key_type_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_string8_next
+ **
+ ** @param xcb_xkb_string8_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_string8_next (xcb_xkb_string8_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_string8_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_string8_end
+ **
+ ** @param xcb_xkb_string8_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_string8_end (xcb_xkb_string8_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_property_serialize (void **_buffer /**< */,
+ const xcb_xkb_property_t *_aux /**< */,
+ const xcb_xkb_string8_t *name /**< */,
+ const xcb_xkb_string8_t *value /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[5];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ /* xcb_xkb_property_t.nameLength */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->nameLength;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* name */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) name;
+ xcb_block_len += _aux->nameLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->nameLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_property_t.valueLength */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->valueLength;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* value */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) value;
+ xcb_block_len += _aux->valueLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->valueLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_property_unserialize (const void *_buffer /**< */,
+ xcb_xkb_property_t **_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ xcb_xkb_property_t xcb_out;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ xcb_xkb_string8_t *name;
+ int name_len;
+ xcb_xkb_string8_t *value;
+ int value_len;
+
+ /* xcb_xkb_property_t.nameLength */
+ xcb_out.nameLength = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* name */
+ name = (xcb_xkb_string8_t *)xcb_tmp;
+ name_len = xcb_out.nameLength * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += name_len;
+ xcb_tmp += name_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_property_t.valueLength */
+ xcb_out.valueLength = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* value */
+ value = (xcb_xkb_string8_t *)xcb_tmp;
+ value_len = xcb_out.valueLength * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += value_len;
+ xcb_tmp += value_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == _aux)
+ return xcb_buffer_len;
+
+ if (NULL == *_aux) {
+ /* allocate memory */
+ *_aux = malloc(xcb_buffer_len);
+ }
+
+ xcb_tmp = ((char *)*_aux)+xcb_buffer_len;
+ xcb_tmp -= value_len;
+ memmove(xcb_tmp, value, value_len);
+ xcb_tmp -= name_len;
+ memmove(xcb_tmp, name, name_len);
+ **_aux = xcb_out;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_property_sizeof (const void *_buffer /**< */)
+{
+ return xcb_xkb_property_unserialize(_buffer, NULL);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_property_name
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_property_name (const xcb_xkb_property_t *R /**< */)
+{
+ return (xcb_xkb_string8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_property_name_length
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_property_name_length (const xcb_xkb_property_t *R /**< */)
+{
+ return R->nameLength;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_name_end
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_name_end (const xcb_xkb_property_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->nameLength);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_property_value
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_property_value (const xcb_xkb_property_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_property_name_end(R);
+ return (xcb_xkb_string8_t *) ((char *) prev.data + XCB_TYPE_PAD(uint16_t, prev.index) + 2);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_property_value_length
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_property_value_length (const xcb_xkb_property_t *R /**< */)
+{
+ return R->valueLength;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_value_end
+ **
+ ** @param const xcb_xkb_property_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_value_end (const xcb_xkb_property_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ xcb_generic_iterator_t child = xcb_xkb_property_name_end(R);
+ i.data = ((xcb_xkb_string8_t *) child.data) + (R->valueLength);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_property_next
+ **
+ ** @param xcb_xkb_property_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_property_next (xcb_xkb_property_iterator_t *i /**< */)
+{
+ xcb_xkb_property_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_property_t *)(((char *)R) + xcb_xkb_property_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_property_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_property_end
+ **
+ ** @param xcb_xkb_property_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_property_end (xcb_xkb_property_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_property_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_outline_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_outline_t *_aux = (xcb_xkb_outline_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_outline_t);
+ xcb_tmp += xcb_block_len;
+ /* points */
+ xcb_block_len += _aux->nPoints * sizeof(xcb_point_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_point_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_point_t * xcb_xkb_outline_points
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns xcb_point_t *
+ **
+ *****************************************************************************/
+
+xcb_point_t *
+xcb_xkb_outline_points (const xcb_xkb_outline_t *R /**< */)
+{
+ return (xcb_point_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_outline_points_length
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_outline_points_length (const xcb_xkb_outline_t *R /**< */)
+{
+ return R->nPoints;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_point_iterator_t xcb_xkb_outline_points_iterator
+ **
+ ** @param const xcb_xkb_outline_t *R
+ ** @returns xcb_point_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_point_iterator_t
+xcb_xkb_outline_points_iterator (const xcb_xkb_outline_t *R /**< */)
+{
+ xcb_point_iterator_t i;
+ i.data = (xcb_point_t *) (R + 1);
+ i.rem = R->nPoints;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_outline_next
+ **
+ ** @param xcb_xkb_outline_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_outline_next (xcb_xkb_outline_iterator_t *i /**< */)
+{
+ xcb_xkb_outline_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_outline_t *)(((char *)R) + xcb_xkb_outline_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_outline_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_outline_end
+ **
+ ** @param xcb_xkb_outline_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_outline_end (xcb_xkb_outline_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_outline_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_shape_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_shape_t *_aux = (xcb_xkb_shape_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_shape_t);
+ xcb_tmp += xcb_block_len;
+ /* outlines */
+ for(i=0; i<_aux->nOutlines; i++) {
+ xcb_tmp_len = xcb_xkb_outline_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_outline_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_shape_outlines_length
+ **
+ ** @param const xcb_xkb_shape_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_shape_outlines_length (const xcb_xkb_shape_t *R /**< */)
+{
+ return R->nOutlines;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_outline_iterator_t xcb_xkb_shape_outlines_iterator
+ **
+ ** @param const xcb_xkb_shape_t *R
+ ** @returns xcb_xkb_outline_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_outline_iterator_t
+xcb_xkb_shape_outlines_iterator (const xcb_xkb_shape_t *R /**< */)
+{
+ xcb_xkb_outline_iterator_t i;
+ i.data = (xcb_xkb_outline_t *) (R + 1);
+ i.rem = R->nOutlines;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_shape_next
+ **
+ ** @param xcb_xkb_shape_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_shape_next (xcb_xkb_shape_iterator_t *i /**< */)
+{
+ xcb_xkb_shape_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_shape_t *)(((char *)R) + xcb_xkb_shape_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_shape_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_shape_end
+ **
+ ** @param xcb_xkb_shape_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_shape_end (xcb_xkb_shape_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_shape_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_key_next
+ **
+ ** @param xcb_xkb_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_key_next (xcb_xkb_key_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_key_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_key_end
+ **
+ ** @param xcb_xkb_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_key_end (xcb_xkb_key_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_key_next
+ **
+ ** @param xcb_xkb_overlay_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_key_next (xcb_xkb_overlay_key_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_overlay_key_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_key_end
+ **
+ ** @param xcb_xkb_overlay_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_key_end (xcb_xkb_overlay_key_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_overlay_row_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_overlay_row_t *_aux = (xcb_xkb_overlay_row_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_overlay_row_t);
+ xcb_tmp += xcb_block_len;
+ /* keys */
+ xcb_block_len += _aux->nKeys * sizeof(xcb_xkb_overlay_key_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_overlay_key_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_key_t * xcb_xkb_overlay_row_keys
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns xcb_xkb_overlay_key_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_key_t *
+xcb_xkb_overlay_row_keys (const xcb_xkb_overlay_row_t *R /**< */)
+{
+ return (xcb_xkb_overlay_key_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_overlay_row_keys_length
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_overlay_row_keys_length (const xcb_xkb_overlay_row_t *R /**< */)
+{
+ return R->nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_key_iterator_t xcb_xkb_overlay_row_keys_iterator
+ **
+ ** @param const xcb_xkb_overlay_row_t *R
+ ** @returns xcb_xkb_overlay_key_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_key_iterator_t
+xcb_xkb_overlay_row_keys_iterator (const xcb_xkb_overlay_row_t *R /**< */)
+{
+ xcb_xkb_overlay_key_iterator_t i;
+ i.data = (xcb_xkb_overlay_key_t *) (R + 1);
+ i.rem = R->nKeys;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_row_next
+ **
+ ** @param xcb_xkb_overlay_row_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_row_next (xcb_xkb_overlay_row_iterator_t *i /**< */)
+{
+ xcb_xkb_overlay_row_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_overlay_row_t *)(((char *)R) + xcb_xkb_overlay_row_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_overlay_row_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_row_end
+ **
+ ** @param xcb_xkb_overlay_row_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_row_end (xcb_xkb_overlay_row_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_overlay_row_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_overlay_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_overlay_t *_aux = (xcb_xkb_overlay_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_overlay_t);
+ xcb_tmp += xcb_block_len;
+ /* rows */
+ for(i=0; i<_aux->nRows; i++) {
+ xcb_tmp_len = xcb_xkb_overlay_row_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_overlay_row_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_overlay_rows_length
+ **
+ ** @param const xcb_xkb_overlay_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_overlay_rows_length (const xcb_xkb_overlay_t *R /**< */)
+{
+ return R->nRows;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_row_iterator_t xcb_xkb_overlay_rows_iterator
+ **
+ ** @param const xcb_xkb_overlay_t *R
+ ** @returns xcb_xkb_overlay_row_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_row_iterator_t
+xcb_xkb_overlay_rows_iterator (const xcb_xkb_overlay_t *R /**< */)
+{
+ xcb_xkb_overlay_row_iterator_t i;
+ i.data = (xcb_xkb_overlay_row_t *) (R + 1);
+ i.rem = R->nRows;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_overlay_next
+ **
+ ** @param xcb_xkb_overlay_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_overlay_next (xcb_xkb_overlay_iterator_t *i /**< */)
+{
+ xcb_xkb_overlay_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_overlay_t *)(((char *)R) + xcb_xkb_overlay_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_overlay_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_overlay_end
+ **
+ ** @param xcb_xkb_overlay_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_overlay_end (xcb_xkb_overlay_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_overlay_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_row_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_row_t *_aux = (xcb_xkb_row_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_row_t);
+ xcb_tmp += xcb_block_len;
+ /* keys */
+ xcb_block_len += _aux->nKeys * sizeof(xcb_xkb_key_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_t * xcb_xkb_row_keys
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns xcb_xkb_key_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_t *
+xcb_xkb_row_keys (const xcb_xkb_row_t *R /**< */)
+{
+ return (xcb_xkb_key_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_row_keys_length
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_row_keys_length (const xcb_xkb_row_t *R /**< */)
+{
+ return R->nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_iterator_t xcb_xkb_row_keys_iterator
+ **
+ ** @param const xcb_xkb_row_t *R
+ ** @returns xcb_xkb_key_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_iterator_t
+xcb_xkb_row_keys_iterator (const xcb_xkb_row_t *R /**< */)
+{
+ xcb_xkb_key_iterator_t i;
+ i.data = (xcb_xkb_key_t *) (R + 1);
+ i.rem = R->nKeys;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_row_next
+ **
+ ** @param xcb_xkb_row_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_row_next (xcb_xkb_row_iterator_t *i /**< */)
+{
+ xcb_xkb_row_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_row_t *)(((char *)R) + xcb_xkb_row_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_row_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_row_end
+ **
+ ** @param xcb_xkb_row_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_row_end (xcb_xkb_row_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_row_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_common_doodad_next
+ **
+ ** @param xcb_xkb_common_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_common_doodad_next (xcb_xkb_common_doodad_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_common_doodad_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_common_doodad_end
+ **
+ ** @param xcb_xkb_common_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_common_doodad_end (xcb_xkb_common_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_shape_doodad_next
+ **
+ ** @param xcb_xkb_shape_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_shape_doodad_next (xcb_xkb_shape_doodad_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_shape_doodad_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_shape_doodad_end
+ **
+ ** @param xcb_xkb_shape_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_shape_doodad_end (xcb_xkb_shape_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_text_doodad_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_text_doodad_t);
+ xcb_tmp += xcb_block_len;
+ /* text */
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* font */
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_text
+ **
+ ** @param const xcb_xkb_text_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_text_doodad_text (const xcb_xkb_text_doodad_t *R /**< */)
+{
+ return (xcb_xkb_counted_string_16_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_text_doodad_font
+ **
+ ** @param const xcb_xkb_text_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_text_doodad_font (const xcb_xkb_text_doodad_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(xcb_xkb_text_doodad_text(R));
+ return (xcb_xkb_counted_string_16_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_counted_string_16_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_text_doodad_next
+ **
+ ** @param xcb_xkb_text_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_text_doodad_next (xcb_xkb_text_doodad_iterator_t *i /**< */)
+{
+ xcb_xkb_text_doodad_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_text_doodad_t *)(((char *)R) + xcb_xkb_text_doodad_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_text_doodad_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_text_doodad_end
+ **
+ ** @param xcb_xkb_text_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_text_doodad_end (xcb_xkb_text_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_text_doodad_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_indicator_doodad_next
+ **
+ ** @param xcb_xkb_indicator_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_indicator_doodad_next (xcb_xkb_indicator_doodad_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_indicator_doodad_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_indicator_doodad_end
+ **
+ ** @param xcb_xkb_indicator_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_indicator_doodad_end (xcb_xkb_indicator_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+int
+xcb_xkb_logo_doodad_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_logo_doodad_t);
+ xcb_tmp += xcb_block_len;
+ /* logoName */
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_logo_doodad_logo_name
+ **
+ ** @param const xcb_xkb_logo_doodad_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_logo_doodad_logo_name (const xcb_xkb_logo_doodad_t *R /**< */)
+{
+ return (xcb_xkb_counted_string_16_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_logo_doodad_next
+ **
+ ** @param xcb_xkb_logo_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_logo_doodad_next (xcb_xkb_logo_doodad_iterator_t *i /**< */)
+{
+ xcb_xkb_logo_doodad_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_logo_doodad_t *)(((char *)R) + xcb_xkb_logo_doodad_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_logo_doodad_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_logo_doodad_end
+ **
+ ** @param xcb_xkb_logo_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_logo_doodad_end (xcb_xkb_logo_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_logo_doodad_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_doodad_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_doodad_t);
+ xcb_tmp += xcb_block_len;
+ /* text */
+ xcb_block_len += xcb_xkb_text_doodad_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_text_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* logo */
+ xcb_block_len += xcb_xkb_logo_doodad_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_logo_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_doodad_next
+ **
+ ** @param xcb_xkb_doodad_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_doodad_next (xcb_xkb_doodad_iterator_t *i /**< */)
+{
+ xcb_xkb_doodad_t *R = i->data;
+ /* FIXME - determine the size of the union xcb_xkb_doodad_t */
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_doodad_end
+ **
+ ** @param xcb_xkb_doodad_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_doodad_end (xcb_xkb_doodad_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_doodad_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_section_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_section_t *_aux = (xcb_xkb_section_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_section_t);
+ xcb_tmp += xcb_block_len;
+ /* rows */
+ for(i=0; i<_aux->nRows; i++) {
+ xcb_tmp_len = xcb_xkb_row_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_row_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* doodads */
+ for(i=0; i<_aux->nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* overlays */
+ for(i=0; i<_aux->nOverlays; i++) {
+ xcb_tmp_len = xcb_xkb_overlay_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_overlay_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_rows_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_rows_length (const xcb_xkb_section_t *R /**< */)
+{
+ return R->nRows;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_row_iterator_t xcb_xkb_section_rows_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_row_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_row_iterator_t
+xcb_xkb_section_rows_iterator (const xcb_xkb_section_t *R /**< */)
+{
+ xcb_xkb_row_iterator_t i;
+ i.data = (xcb_xkb_row_t *) (R + 1);
+ i.rem = R->nRows;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_doodads_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_doodads_length (const xcb_xkb_section_t *R /**< */)
+{
+ return R->nDoodads;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_section_doodads_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_section_doodads_iterator (const xcb_xkb_section_t *R /**< */)
+{
+ xcb_xkb_doodad_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_row_end(xcb_xkb_section_rows_iterator(R));
+ i.data = (xcb_xkb_doodad_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_doodad_t, prev.index));
+ i.rem = R->nDoodads;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_section_overlays_length
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_section_overlays_length (const xcb_xkb_section_t *R /**< */)
+{
+ return R->nOverlays;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_overlay_iterator_t xcb_xkb_section_overlays_iterator
+ **
+ ** @param const xcb_xkb_section_t *R
+ ** @returns xcb_xkb_overlay_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_overlay_iterator_t
+xcb_xkb_section_overlays_iterator (const xcb_xkb_section_t *R /**< */)
+{
+ xcb_xkb_overlay_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_section_doodads_iterator(R));
+ i.data = (xcb_xkb_overlay_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_overlay_t, prev.index));
+ i.rem = R->nOverlays;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_section_next
+ **
+ ** @param xcb_xkb_section_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_section_next (xcb_xkb_section_iterator_t *i /**< */)
+{
+ xcb_xkb_section_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_section_t *)(((char *)R) + xcb_xkb_section_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_section_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_section_end
+ **
+ ** @param xcb_xkb_section_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_section_end (xcb_xkb_section_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_section_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_listing_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_listing_t *_aux = (xcb_xkb_listing_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_listing_t);
+ xcb_tmp += xcb_block_len;
+ /* string */
+ xcb_block_len += _aux->length * sizeof(xcb_xkb_string8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_listing_string
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_listing_string (const xcb_xkb_listing_t *R /**< */)
+{
+ return (xcb_xkb_string8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_listing_string_length
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_listing_string_length (const xcb_xkb_listing_t *R /**< */)
+{
+ return R->length;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_listing_string_end
+ **
+ ** @param const xcb_xkb_listing_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_listing_string_end (const xcb_xkb_listing_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->length);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_listing_next
+ **
+ ** @param xcb_xkb_listing_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_listing_next (xcb_xkb_listing_iterator_t *i /**< */)
+{
+ xcb_xkb_listing_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_listing_t *)(((char *)R) + xcb_xkb_listing_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_listing_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_listing_end
+ **
+ ** @param xcb_xkb_listing_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_listing_end (xcb_xkb_listing_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_listing_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+int
+xcb_xkb_device_led_info_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_device_led_info_t *_aux = (xcb_xkb_device_led_info_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_device_led_info_t);
+ xcb_tmp += xcb_block_len;
+ /* names */
+ xcb_block_len += xcb_popcount(_aux->namesPresent) * sizeof(uint32_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* maps */
+ xcb_block_len += xcb_popcount(_aux->mapsPresent) * sizeof(xcb_xkb_indicator_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_device_led_info_names
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_device_led_info_names (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ return (xcb_atom_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_device_led_info_names_length
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_device_led_info_names_length (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ return xcb_popcount(R->namesPresent);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_led_info_names_end
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_led_info_names_end (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((xcb_atom_t *) (R + 1)) + (xcb_popcount(R->namesPresent));
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_device_led_info_maps
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_device_led_info_maps (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_device_led_info_names_end(R);
+ return (xcb_xkb_indicator_map_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_indicator_map_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_device_led_info_maps_length
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_device_led_info_maps_length (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ return xcb_popcount(R->mapsPresent);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_device_led_info_maps_iterator
+ **
+ ** @param const xcb_xkb_device_led_info_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_device_led_info_maps_iterator (const xcb_xkb_device_led_info_t *R /**< */)
+{
+ xcb_xkb_indicator_map_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_device_led_info_names_end(R);
+ i.data = (xcb_xkb_indicator_map_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_indicator_map_t, prev.index));
+ i.rem = xcb_popcount(R->mapsPresent);
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_device_led_info_next
+ **
+ ** @param xcb_xkb_device_led_info_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_device_led_info_next (xcb_xkb_device_led_info_iterator_t *i /**< */)
+{
+ xcb_xkb_device_led_info_t *R = i->data;
+ xcb_generic_iterator_t child;
+ child.data = (xcb_xkb_device_led_info_t *)(((char *)R) + xcb_xkb_device_led_info_sizeof(R));
+ i->index = (char *) child.data - (char *) i->data;
+ --i->rem;
+ i->data = (xcb_xkb_device_led_info_t *) child.data;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_device_led_info_end
+ **
+ ** @param xcb_xkb_device_led_info_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_device_led_info_end (xcb_xkb_device_led_info_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ while(i.rem > 0)
+ xcb_xkb_device_led_info_next(&i);
+ ret.data = i.data;
+ ret.rem = i.rem;
+ ret.index = i.index;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_no_action_next
+ **
+ ** @param xcb_xkb_sa_no_action_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_no_action_next (xcb_xkb_sa_no_action_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_no_action_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_no_action_end
+ **
+ ** @param xcb_xkb_sa_no_action_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_no_action_end (xcb_xkb_sa_no_action_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_mods_next
+ **
+ ** @param xcb_xkb_sa_set_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_mods_next (xcb_xkb_sa_set_mods_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_set_mods_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_mods_end
+ **
+ ** @param xcb_xkb_sa_set_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_mods_end (xcb_xkb_sa_set_mods_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_latch_mods_next
+ **
+ ** @param xcb_xkb_sa_latch_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_latch_mods_next (xcb_xkb_sa_latch_mods_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_latch_mods_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_latch_mods_end
+ **
+ ** @param xcb_xkb_sa_latch_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_latch_mods_end (xcb_xkb_sa_latch_mods_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_mods_next
+ **
+ ** @param xcb_xkb_sa_lock_mods_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_mods_next (xcb_xkb_sa_lock_mods_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_lock_mods_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_mods_end
+ **
+ ** @param xcb_xkb_sa_lock_mods_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_mods_end (xcb_xkb_sa_lock_mods_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_group_next
+ **
+ ** @param xcb_xkb_sa_set_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_group_next (xcb_xkb_sa_set_group_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_set_group_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_group_end
+ **
+ ** @param xcb_xkb_sa_set_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_group_end (xcb_xkb_sa_set_group_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_latch_group_next
+ **
+ ** @param xcb_xkb_sa_latch_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_latch_group_next (xcb_xkb_sa_latch_group_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_latch_group_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_latch_group_end
+ **
+ ** @param xcb_xkb_sa_latch_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_latch_group_end (xcb_xkb_sa_latch_group_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_group_next
+ **
+ ** @param xcb_xkb_sa_lock_group_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_group_next (xcb_xkb_sa_lock_group_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_lock_group_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_group_end
+ **
+ ** @param xcb_xkb_sa_lock_group_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_group_end (xcb_xkb_sa_lock_group_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_move_ptr_next
+ **
+ ** @param xcb_xkb_sa_move_ptr_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_move_ptr_next (xcb_xkb_sa_move_ptr_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_move_ptr_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_move_ptr_end
+ **
+ ** @param xcb_xkb_sa_move_ptr_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_move_ptr_end (xcb_xkb_sa_move_ptr_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_ptr_btn_next
+ **
+ ** @param xcb_xkb_sa_ptr_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_ptr_btn_next (xcb_xkb_sa_ptr_btn_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_ptr_btn_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_ptr_btn_end
+ **
+ ** @param xcb_xkb_sa_ptr_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_ptr_btn_end (xcb_xkb_sa_ptr_btn_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_ptr_btn_next
+ **
+ ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_ptr_btn_next (xcb_xkb_sa_lock_ptr_btn_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_lock_ptr_btn_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_ptr_btn_end
+ **
+ ** @param xcb_xkb_sa_lock_ptr_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_ptr_btn_end (xcb_xkb_sa_lock_ptr_btn_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_ptr_dflt_next
+ **
+ ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_ptr_dflt_next (xcb_xkb_sa_set_ptr_dflt_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_set_ptr_dflt_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_ptr_dflt_end
+ **
+ ** @param xcb_xkb_sa_set_ptr_dflt_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_ptr_dflt_end (xcb_xkb_sa_set_ptr_dflt_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_iso_lock_next
+ **
+ ** @param xcb_xkb_sa_iso_lock_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_iso_lock_next (xcb_xkb_sa_iso_lock_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_iso_lock_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_iso_lock_end
+ **
+ ** @param xcb_xkb_sa_iso_lock_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_iso_lock_end (xcb_xkb_sa_iso_lock_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_terminate_next
+ **
+ ** @param xcb_xkb_sa_terminate_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_terminate_next (xcb_xkb_sa_terminate_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_terminate_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_terminate_end
+ **
+ ** @param xcb_xkb_sa_terminate_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_terminate_end (xcb_xkb_sa_terminate_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_switch_screen_next
+ **
+ ** @param xcb_xkb_sa_switch_screen_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_switch_screen_next (xcb_xkb_sa_switch_screen_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_switch_screen_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_switch_screen_end
+ **
+ ** @param xcb_xkb_sa_switch_screen_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_switch_screen_end (xcb_xkb_sa_switch_screen_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_set_controls_next
+ **
+ ** @param xcb_xkb_sa_set_controls_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_set_controls_next (xcb_xkb_sa_set_controls_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_set_controls_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_set_controls_end
+ **
+ ** @param xcb_xkb_sa_set_controls_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_set_controls_end (xcb_xkb_sa_set_controls_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_controls_next
+ **
+ ** @param xcb_xkb_sa_lock_controls_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_controls_next (xcb_xkb_sa_lock_controls_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_lock_controls_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_controls_end
+ **
+ ** @param xcb_xkb_sa_lock_controls_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_controls_end (xcb_xkb_sa_lock_controls_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_action_message_next
+ **
+ ** @param xcb_xkb_sa_action_message_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_action_message_next (xcb_xkb_sa_action_message_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_action_message_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_action_message_end
+ **
+ ** @param xcb_xkb_sa_action_message_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_action_message_end (xcb_xkb_sa_action_message_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_redirect_key_next
+ **
+ ** @param xcb_xkb_sa_redirect_key_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_redirect_key_next (xcb_xkb_sa_redirect_key_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_redirect_key_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_redirect_key_end
+ **
+ ** @param xcb_xkb_sa_redirect_key_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_redirect_key_end (xcb_xkb_sa_redirect_key_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_device_btn_next
+ **
+ ** @param xcb_xkb_sa_device_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_device_btn_next (xcb_xkb_sa_device_btn_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_device_btn_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_device_btn_end
+ **
+ ** @param xcb_xkb_sa_device_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_device_btn_end (xcb_xkb_sa_device_btn_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_lock_device_btn_next
+ **
+ ** @param xcb_xkb_sa_lock_device_btn_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_lock_device_btn_next (xcb_xkb_sa_lock_device_btn_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_lock_device_btn_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_lock_device_btn_end
+ **
+ ** @param xcb_xkb_sa_lock_device_btn_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_lock_device_btn_end (xcb_xkb_sa_lock_device_btn_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_sa_device_valuator_next
+ **
+ ** @param xcb_xkb_sa_device_valuator_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_sa_device_valuator_next (xcb_xkb_sa_device_valuator_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_sa_device_valuator_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_sa_device_valuator_end
+ **
+ ** @param xcb_xkb_sa_device_valuator_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_sa_device_valuator_end (xcb_xkb_sa_device_valuator_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** void xcb_xkb_action_next
+ **
+ ** @param xcb_xkb_action_iterator_t *i
+ ** @returns void
+ **
+ *****************************************************************************/
+
+void
+xcb_xkb_action_next (xcb_xkb_action_iterator_t *i /**< */)
+{
+ --i->rem;
+ ++i->data;
+ i->index += sizeof(xcb_xkb_action_t);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_action_end
+ **
+ ** @param xcb_xkb_action_iterator_t i
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_action_end (xcb_xkb_action_iterator_t i /**< */)
+{
+ xcb_generic_iterator_t ret;
+ ret.data = i.data + i.rem;
+ ret.index = i.index + ((char *) ret.data - (char *) i.data);
+ ret.rem = 0;
+ return ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t wantedMajor
+ ** @param uint16_t wantedMinor
+ ** @returns xcb_xkb_use_extension_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_cookie_t
+xcb_xkb_use_extension (xcb_connection_t *c /**< */,
+ uint16_t wantedMajor /**< */,
+ uint16_t wantedMinor /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_USE_EXTENSION,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_use_extension_cookie_t xcb_ret;
+ xcb_xkb_use_extension_request_t xcb_out;
+
+ xcb_out.wantedMajor = wantedMajor;
+ xcb_out.wantedMinor = wantedMinor;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_cookie_t xcb_xkb_use_extension_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t wantedMajor
+ ** @param uint16_t wantedMinor
+ ** @returns xcb_xkb_use_extension_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_cookie_t
+xcb_xkb_use_extension_unchecked (xcb_connection_t *c /**< */,
+ uint16_t wantedMajor /**< */,
+ uint16_t wantedMinor /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_USE_EXTENSION,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_use_extension_cookie_t xcb_ret;
+ xcb_xkb_use_extension_request_t xcb_out;
+
+ xcb_out.wantedMajor = wantedMajor;
+ xcb_out.wantedMinor = wantedMinor;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_use_extension_reply_t * xcb_xkb_use_extension_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_use_extension_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_use_extension_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_use_extension_reply_t *
+xcb_xkb_use_extension_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_use_extension_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_use_extension_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_select_events_details_serialize (void **_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ const xcb_xkb_select_events_details_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[23];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NEW_KEYBOARD_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectNewKeyboard */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectNewKeyboard;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.newKeyboardDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->newKeyboardDetails;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_STATE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectState */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectState;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.stateDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->stateDetails;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectCtrls */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectCtrls;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.ctrlDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->ctrlDetails;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectIndicatorState */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectIndicatorState;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.indicatorStateDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicatorStateDetails;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectIndicatorMap */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectIndicatorMap;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.indicatorMapDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicatorMapDetails;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NAMES_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectNames;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.namesDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->namesDetails;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectCompat */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectCompat;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.compatDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatDetails;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_BELL_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectBell */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectBell;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.bellDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->bellDetails;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACTION_MESSAGE) {
+ /* xcb_xkb_select_events_details_t.affectMsgDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectMsgDetails;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.msgDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->msgDetails;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectAccessX */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectAccessX;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.accessXDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->accessXDetails;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectExtDev */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->affectExtDev;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.extdevDetails */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->extdevDetails;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_select_events_details_unpack (const void *_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ xcb_xkb_select_events_details_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NEW_KEYBOARD_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectNewKeyboard */
+ _aux->affectNewKeyboard = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.newKeyboardDetails */
+ _aux->newKeyboardDetails = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_STATE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectState */
+ _aux->affectState = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.stateDetails */
+ _aux->stateDetails = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_CONTROLS_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectCtrls */
+ _aux->affectCtrls = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.ctrlDetails */
+ _aux->ctrlDetails = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_STATE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectIndicatorState */
+ _aux->affectIndicatorState = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.indicatorStateDetails */
+ _aux->indicatorStateDetails = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_INDICATOR_MAP_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectIndicatorMap */
+ _aux->affectIndicatorMap = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_select_events_details_t.indicatorMapDetails */
+ _aux->indicatorMapDetails = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_NAMES_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectNames */
+ _aux->affectNames = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.namesDetails */
+ _aux->namesDetails = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_COMPAT_MAP_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectCompat */
+ _aux->affectCompat = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.compatDetails */
+ _aux->compatDetails = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_BELL_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectBell */
+ _aux->affectBell = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.bellDetails */
+ _aux->bellDetails = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACTION_MESSAGE) {
+ /* xcb_xkb_select_events_details_t.affectMsgDetails */
+ _aux->affectMsgDetails = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_select_events_details_t.msgDetails */
+ _aux->msgDetails = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_ACCESS_X_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectAccessX */
+ _aux->affectAccessX = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.accessXDetails */
+ _aux->accessXDetails = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ if((affectWhich & ((~clear) & (~selectAll))) & XCB_XKB_EVENT_TYPE_EXTENSION_DEVICE_NOTIFY) {
+ /* xcb_xkb_select_events_details_t.affectExtDev */
+ _aux->affectExtDev = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_select_events_details_t.extdevDetails */
+ _aux->extdevDetails = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_select_events_details_sizeof (const void *_buffer /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */)
+{
+ xcb_xkb_select_events_details_t _aux;
+ return xcb_xkb_select_events_details_unpack(_buffer, affectWhich, clear, selectAll, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const void *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const void *details /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SELECT_EVENTS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_select_events_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectWhich = affectWhich;
+ xcb_out.clear = clear;
+ xcb_out.selectAll = selectAll;
+ xcb_out.affectMap = affectMap;
+ xcb_out.map = map;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_select_events_details_t details */
+ xcb_parts[4].iov_base = (char *) details;
+ xcb_parts[4].iov_len =
+ xcb_xkb_select_events_details_sizeof (details, affectWhich, clear, selectAll);
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const void *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const void *details /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SELECT_EVENTS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_select_events_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectWhich = affectWhich;
+ xcb_out.clear = clear;
+ xcb_out.selectAll = selectAll;
+ xcb_out.affectMap = affectMap;
+ xcb_out.map = map;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_select_events_details_t details */
+ xcb_parts[4].iov_base = (char *) details;
+ xcb_parts[4].iov_len =
+ xcb_xkb_select_events_details_sizeof (details, affectWhich, clear, selectAll);
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const xcb_xkb_select_events_details_t *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const xcb_xkb_select_events_details_t *details /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SELECT_EVENTS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_select_events_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectWhich = affectWhich;
+ xcb_out.clear = clear;
+ xcb_out.selectAll = selectAll;
+ xcb_out.affectMap = affectMap;
+ xcb_out.map = map;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_select_events_details_t details */
+ xcb_parts[4].iov_len =
+ xcb_xkb_select_events_details_serialize (&xcb_aux0, affectWhich, clear, selectAll, details);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_select_events_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t affectWhich
+ ** @param uint16_t clear
+ ** @param uint16_t selectAll
+ ** @param uint16_t affectMap
+ ** @param uint16_t map
+ ** @param const xcb_xkb_select_events_details_t *details
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_select_events_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t affectWhich /**< */,
+ uint16_t clear /**< */,
+ uint16_t selectAll /**< */,
+ uint16_t affectMap /**< */,
+ uint16_t map /**< */,
+ const xcb_xkb_select_events_details_t *details /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SELECT_EVENTS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_select_events_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectWhich = affectWhich;
+ xcb_out.clear = clear;
+ xcb_out.selectAll = selectAll;
+ xcb_out.affectMap = affectMap;
+ xcb_out.map = map;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_select_events_details_t details */
+ xcb_parts[4].iov_len =
+ xcb_xkb_select_events_details_serialize (&xcb_aux0, affectWhich, clear, selectAll, details);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_bell_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_bell_class_spec_t bellClass
+ ** @param xcb_xkb_id_spec_t bellID
+ ** @param int8_t percent
+ ** @param uint8_t forceSound
+ ** @param uint8_t eventOnly
+ ** @param int16_t pitch
+ ** @param int16_t duration
+ ** @param xcb_atom_t name
+ ** @param xcb_window_t window
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_bell_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_bell_class_spec_t bellClass /**< */,
+ xcb_xkb_id_spec_t bellID /**< */,
+ int8_t percent /**< */,
+ uint8_t forceSound /**< */,
+ uint8_t eventOnly /**< */,
+ int16_t pitch /**< */,
+ int16_t duration /**< */,
+ xcb_atom_t name /**< */,
+ xcb_window_t window /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_BELL,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_bell_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.bellClass = bellClass;
+ xcb_out.bellID = bellID;
+ xcb_out.percent = percent;
+ xcb_out.forceSound = forceSound;
+ xcb_out.eventOnly = eventOnly;
+ xcb_out.pad0 = 0;
+ xcb_out.pitch = pitch;
+ xcb_out.duration = duration;
+ memset(xcb_out.pad1, 0, 2);
+ xcb_out.name = name;
+ xcb_out.window = window;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_bell
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_bell_class_spec_t bellClass
+ ** @param xcb_xkb_id_spec_t bellID
+ ** @param int8_t percent
+ ** @param uint8_t forceSound
+ ** @param uint8_t eventOnly
+ ** @param int16_t pitch
+ ** @param int16_t duration
+ ** @param xcb_atom_t name
+ ** @param xcb_window_t window
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_bell (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_bell_class_spec_t bellClass /**< */,
+ xcb_xkb_id_spec_t bellID /**< */,
+ int8_t percent /**< */,
+ uint8_t forceSound /**< */,
+ uint8_t eventOnly /**< */,
+ int16_t pitch /**< */,
+ int16_t duration /**< */,
+ xcb_atom_t name /**< */,
+ xcb_window_t window /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_BELL,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_bell_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.bellClass = bellClass;
+ xcb_out.bellID = bellID;
+ xcb_out.percent = percent;
+ xcb_out.forceSound = forceSound;
+ xcb_out.eventOnly = eventOnly;
+ xcb_out.pad0 = 0;
+ xcb_out.pitch = pitch;
+ xcb_out.duration = duration;
+ memset(xcb_out.pad1, 0, 2);
+ xcb_out.name = name;
+ xcb_out.window = window;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_cookie_t
+xcb_xkb_get_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_STATE,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_state_cookie_t xcb_ret;
+ xcb_xkb_get_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_cookie_t xcb_xkb_get_state_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_cookie_t
+xcb_xkb_get_state_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_STATE,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_state_cookie_t xcb_ret;
+ xcb_xkb_get_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_state_reply_t * xcb_xkb_get_state_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_state_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_state_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_state_reply_t *
+xcb_xkb_get_state_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_state_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_latch_lock_state_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectModLocks
+ ** @param uint8_t modLocks
+ ** @param uint8_t lockGroup
+ ** @param uint8_t groupLock
+ ** @param uint8_t affectModLatches
+ ** @param uint8_t latchGroup
+ ** @param uint16_t groupLatch
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_latch_lock_state_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectModLocks /**< */,
+ uint8_t modLocks /**< */,
+ uint8_t lockGroup /**< */,
+ uint8_t groupLock /**< */,
+ uint8_t affectModLatches /**< */,
+ uint8_t latchGroup /**< */,
+ uint16_t groupLatch /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_LATCH_LOCK_STATE,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_latch_lock_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectModLocks = affectModLocks;
+ xcb_out.modLocks = modLocks;
+ xcb_out.lockGroup = lockGroup;
+ xcb_out.groupLock = groupLock;
+ xcb_out.affectModLatches = affectModLatches;
+ xcb_out.pad0 = 0;
+ xcb_out.latchGroup = latchGroup;
+ xcb_out.groupLatch = groupLatch;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_latch_lock_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectModLocks
+ ** @param uint8_t modLocks
+ ** @param uint8_t lockGroup
+ ** @param uint8_t groupLock
+ ** @param uint8_t affectModLatches
+ ** @param uint8_t latchGroup
+ ** @param uint16_t groupLatch
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_latch_lock_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectModLocks /**< */,
+ uint8_t modLocks /**< */,
+ uint8_t lockGroup /**< */,
+ uint8_t groupLock /**< */,
+ uint8_t affectModLatches /**< */,
+ uint8_t latchGroup /**< */,
+ uint16_t groupLatch /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_LATCH_LOCK_STATE,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_latch_lock_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectModLocks = affectModLocks;
+ xcb_out.modLocks = modLocks;
+ xcb_out.lockGroup = lockGroup;
+ xcb_out.groupLock = groupLock;
+ xcb_out.affectModLatches = affectModLatches;
+ xcb_out.pad0 = 0;
+ xcb_out.latchGroup = latchGroup;
+ xcb_out.groupLatch = groupLatch;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_controls_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_cookie_t
+xcb_xkb_get_controls (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_CONTROLS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_controls_cookie_t xcb_ret;
+ xcb_xkb_get_controls_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_cookie_t xcb_xkb_get_controls_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_controls_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_cookie_t
+xcb_xkb_get_controls_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_CONTROLS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_controls_cookie_t xcb_ret;
+ xcb_xkb_get_controls_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_controls_reply_t * xcb_xkb_get_controls_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_controls_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_controls_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_controls_reply_t *
+xcb_xkb_get_controls_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_controls_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_controls_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_controls_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectInternalRealMods
+ ** @param uint8_t internalRealMods
+ ** @param uint8_t affectIgnoreLockRealMods
+ ** @param uint8_t ignoreLockRealMods
+ ** @param uint16_t affectInternalVirtualMods
+ ** @param uint16_t internalVirtualMods
+ ** @param uint16_t affectIgnoreLockVirtualMods
+ ** @param uint16_t ignoreLockVirtualMods
+ ** @param uint8_t mouseKeysDfltBtn
+ ** @param uint8_t groupsWrap
+ ** @param xcb_xkb_ax_option_t accessXOptions
+ ** @param uint32_t affectEnabledControls
+ ** @param uint32_t enabledControls
+ ** @param uint32_t changeControls
+ ** @param uint16_t repeatDelay
+ ** @param uint16_t repeatInterval
+ ** @param uint16_t slowKeysDelay
+ ** @param uint16_t debounceDelay
+ ** @param uint16_t mouseKeysDelay
+ ** @param uint16_t mouseKeysInterval
+ ** @param uint16_t mouseKeysTimeToMax
+ ** @param uint16_t mouseKeysMaxSpeed
+ ** @param int16_t mouseKeysCurve
+ ** @param uint16_t accessXTimeout
+ ** @param uint32_t accessXTimeoutMask
+ ** @param uint32_t accessXTimeoutValues
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues
+ ** @param const uint8_t *perKeyRepeat
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_controls_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectInternalRealMods /**< */,
+ uint8_t internalRealMods /**< */,
+ uint8_t affectIgnoreLockRealMods /**< */,
+ uint8_t ignoreLockRealMods /**< */,
+ uint16_t affectInternalVirtualMods /**< */,
+ uint16_t internalVirtualMods /**< */,
+ uint16_t affectIgnoreLockVirtualMods /**< */,
+ uint16_t ignoreLockVirtualMods /**< */,
+ uint8_t mouseKeysDfltBtn /**< */,
+ uint8_t groupsWrap /**< */,
+ xcb_xkb_ax_option_t accessXOptions /**< */,
+ uint32_t affectEnabledControls /**< */,
+ uint32_t enabledControls /**< */,
+ uint32_t changeControls /**< */,
+ uint16_t repeatDelay /**< */,
+ uint16_t repeatInterval /**< */,
+ uint16_t slowKeysDelay /**< */,
+ uint16_t debounceDelay /**< */,
+ uint16_t mouseKeysDelay /**< */,
+ uint16_t mouseKeysInterval /**< */,
+ uint16_t mouseKeysTimeToMax /**< */,
+ uint16_t mouseKeysMaxSpeed /**< */,
+ int16_t mouseKeysCurve /**< */,
+ uint16_t accessXTimeout /**< */,
+ uint32_t accessXTimeoutMask /**< */,
+ uint32_t accessXTimeoutValues /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */,
+ const uint8_t *perKeyRepeat /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_CONTROLS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_controls_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectInternalRealMods = affectInternalRealMods;
+ xcb_out.internalRealMods = internalRealMods;
+ xcb_out.affectIgnoreLockRealMods = affectIgnoreLockRealMods;
+ xcb_out.ignoreLockRealMods = ignoreLockRealMods;
+ xcb_out.affectInternalVirtualMods = affectInternalVirtualMods;
+ xcb_out.internalVirtualMods = internalVirtualMods;
+ xcb_out.affectIgnoreLockVirtualMods = affectIgnoreLockVirtualMods;
+ xcb_out.ignoreLockVirtualMods = ignoreLockVirtualMods;
+ xcb_out.mouseKeysDfltBtn = mouseKeysDfltBtn;
+ xcb_out.groupsWrap = groupsWrap;
+ xcb_out.accessXOptions = accessXOptions;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.affectEnabledControls = affectEnabledControls;
+ xcb_out.enabledControls = enabledControls;
+ xcb_out.changeControls = changeControls;
+ xcb_out.repeatDelay = repeatDelay;
+ xcb_out.repeatInterval = repeatInterval;
+ xcb_out.slowKeysDelay = slowKeysDelay;
+ xcb_out.debounceDelay = debounceDelay;
+ xcb_out.mouseKeysDelay = mouseKeysDelay;
+ xcb_out.mouseKeysInterval = mouseKeysInterval;
+ xcb_out.mouseKeysTimeToMax = mouseKeysTimeToMax;
+ xcb_out.mouseKeysMaxSpeed = mouseKeysMaxSpeed;
+ xcb_out.mouseKeysCurve = mouseKeysCurve;
+ xcb_out.accessXTimeout = accessXTimeout;
+ xcb_out.accessXTimeoutMask = accessXTimeoutMask;
+ xcb_out.accessXTimeoutValues = accessXTimeoutValues;
+ xcb_out.accessXTimeoutOptionsMask = accessXTimeoutOptionsMask;
+ xcb_out.accessXTimeoutOptionsValues = accessXTimeoutOptionsValues;
+ memcpy(xcb_out.perKeyRepeat, perKeyRepeat, 32);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_controls
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t affectInternalRealMods
+ ** @param uint8_t internalRealMods
+ ** @param uint8_t affectIgnoreLockRealMods
+ ** @param uint8_t ignoreLockRealMods
+ ** @param uint16_t affectInternalVirtualMods
+ ** @param uint16_t internalVirtualMods
+ ** @param uint16_t affectIgnoreLockVirtualMods
+ ** @param uint16_t ignoreLockVirtualMods
+ ** @param uint8_t mouseKeysDfltBtn
+ ** @param uint8_t groupsWrap
+ ** @param xcb_xkb_ax_option_t accessXOptions
+ ** @param uint32_t affectEnabledControls
+ ** @param uint32_t enabledControls
+ ** @param uint32_t changeControls
+ ** @param uint16_t repeatDelay
+ ** @param uint16_t repeatInterval
+ ** @param uint16_t slowKeysDelay
+ ** @param uint16_t debounceDelay
+ ** @param uint16_t mouseKeysDelay
+ ** @param uint16_t mouseKeysInterval
+ ** @param uint16_t mouseKeysTimeToMax
+ ** @param uint16_t mouseKeysMaxSpeed
+ ** @param int16_t mouseKeysCurve
+ ** @param uint16_t accessXTimeout
+ ** @param uint32_t accessXTimeoutMask
+ ** @param uint32_t accessXTimeoutValues
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsMask
+ ** @param xcb_xkb_ax_option_t accessXTimeoutOptionsValues
+ ** @param const uint8_t *perKeyRepeat
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_controls (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t affectInternalRealMods /**< */,
+ uint8_t internalRealMods /**< */,
+ uint8_t affectIgnoreLockRealMods /**< */,
+ uint8_t ignoreLockRealMods /**< */,
+ uint16_t affectInternalVirtualMods /**< */,
+ uint16_t internalVirtualMods /**< */,
+ uint16_t affectIgnoreLockVirtualMods /**< */,
+ uint16_t ignoreLockVirtualMods /**< */,
+ uint8_t mouseKeysDfltBtn /**< */,
+ uint8_t groupsWrap /**< */,
+ xcb_xkb_ax_option_t accessXOptions /**< */,
+ uint32_t affectEnabledControls /**< */,
+ uint32_t enabledControls /**< */,
+ uint32_t changeControls /**< */,
+ uint16_t repeatDelay /**< */,
+ uint16_t repeatInterval /**< */,
+ uint16_t slowKeysDelay /**< */,
+ uint16_t debounceDelay /**< */,
+ uint16_t mouseKeysDelay /**< */,
+ uint16_t mouseKeysInterval /**< */,
+ uint16_t mouseKeysTimeToMax /**< */,
+ uint16_t mouseKeysMaxSpeed /**< */,
+ int16_t mouseKeysCurve /**< */,
+ uint16_t accessXTimeout /**< */,
+ uint32_t accessXTimeoutMask /**< */,
+ uint32_t accessXTimeoutValues /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsMask /**< */,
+ xcb_xkb_ax_option_t accessXTimeoutOptionsValues /**< */,
+ const uint8_t *perKeyRepeat /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_CONTROLS,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_controls_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.affectInternalRealMods = affectInternalRealMods;
+ xcb_out.internalRealMods = internalRealMods;
+ xcb_out.affectIgnoreLockRealMods = affectIgnoreLockRealMods;
+ xcb_out.ignoreLockRealMods = ignoreLockRealMods;
+ xcb_out.affectInternalVirtualMods = affectInternalVirtualMods;
+ xcb_out.internalVirtualMods = internalVirtualMods;
+ xcb_out.affectIgnoreLockVirtualMods = affectIgnoreLockVirtualMods;
+ xcb_out.ignoreLockVirtualMods = ignoreLockVirtualMods;
+ xcb_out.mouseKeysDfltBtn = mouseKeysDfltBtn;
+ xcb_out.groupsWrap = groupsWrap;
+ xcb_out.accessXOptions = accessXOptions;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.affectEnabledControls = affectEnabledControls;
+ xcb_out.enabledControls = enabledControls;
+ xcb_out.changeControls = changeControls;
+ xcb_out.repeatDelay = repeatDelay;
+ xcb_out.repeatInterval = repeatInterval;
+ xcb_out.slowKeysDelay = slowKeysDelay;
+ xcb_out.debounceDelay = debounceDelay;
+ xcb_out.mouseKeysDelay = mouseKeysDelay;
+ xcb_out.mouseKeysInterval = mouseKeysInterval;
+ xcb_out.mouseKeysTimeToMax = mouseKeysTimeToMax;
+ xcb_out.mouseKeysMaxSpeed = mouseKeysMaxSpeed;
+ xcb_out.mouseKeysCurve = mouseKeysCurve;
+ xcb_out.accessXTimeout = accessXTimeout;
+ xcb_out.accessXTimeoutMask = accessXTimeoutMask;
+ xcb_out.accessXTimeoutValues = accessXTimeoutValues;
+ xcb_out.accessXTimeoutOptionsMask = accessXTimeoutOptionsMask;
+ xcb_out.accessXTimeoutOptionsValues = accessXTimeoutOptionsValues;
+ memcpy(xcb_out.perKeyRepeat, perKeyRepeat, 32);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_types_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_map_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_map_map_types_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_key_type_iterator_t i;
+ i.data = /* map */ S->types_rtrn;
+ i.rem = R->nTypes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_syms_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->nKeySyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_map_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_map_map_syms_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_key_sym_map_iterator_t i;
+ i.data = /* map */ S->syms_rtrn;
+ i.rem = R->nKeySyms;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_map_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_map_map_acts_rtrn_count (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->acts_rtrn_count;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_acts_rtrn_count_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->nKeyActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_map_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_map_map_acts_rtrn_count_end (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* map */ S->acts_rtrn_count + R->nKeyActions;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_map_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_map_map_acts_rtrn_acts (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->acts_rtrn_acts;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_acts_rtrn_acts_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->totalActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_map_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_map_map_acts_rtrn_acts_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ i.data = /* map */ S->acts_rtrn_acts;
+ i.rem = R->totalActions;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_map_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_map_map_behaviors_rtrn (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->behaviors_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_behaviors_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->totalKeyBehaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_map_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_map_map_behaviors_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_set_behavior_iterator_t i;
+ i.data = /* map */ S->behaviors_rtrn;
+ i.rem = R->totalKeyBehaviors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_map_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_map_map_vmods_rtrn (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->vmods_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_vmods_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->nVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_map_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_map_map_vmods_rtrn_end (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* map */ S->vmods_rtrn + R->nVModMapKeys;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_map_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_map_map_explicit_rtrn (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->explicit_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_explicit_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->totalKeyExplicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_map_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_map_map_explicit_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_set_explicit_iterator_t i;
+ i.data = /* map */ S->explicit_rtrn;
+ i.rem = R->totalKeyExplicit;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_map_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_map_map_modmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->modmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_modmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->totalModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_map_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_map_map_modmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_key_mod_map_iterator_t i;
+ i.data = /* map */ S->modmap_rtrn;
+ i.rem = R->totalModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_map_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_map_map_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_map_map_vmodmap_rtrn (const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return /* map */ S->vmodmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_map_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_map_map_vmodmap_rtrn_length (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ return R->totalVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_map_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_map_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_map_map_vmodmap_rtrn_iterator (const xcb_xkb_get_map_reply_t *R /**< */,
+ const xcb_xkb_get_map_map_t *S /**< */)
+{
+ xcb_xkb_key_v_mod_map_iterator_t i;
+ i.data = /* map */ S->vmodmap_rtrn;
+ i.rem = R->totalVModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_map_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_map_map_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[19];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->types_rtrn;
+ for(i=0; i<nTypes; i++) {
+ xcb_block_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->syms_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->syms_rtrn;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_block_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_count;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_map_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_map_map_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ _aux->types_rtrn = (xcb_xkb_key_type_t *)xcb_tmp;
+ for(i=0; i<nTypes; i++) {
+ xcb_tmp_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ _aux->syms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_tmp_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ _aux->acts_rtrn_count = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ _aux->vmods_rtrn = (uint8_t *)xcb_tmp;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_map_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */)
+{
+ xcb_xkb_get_map_map_t _aux;
+ return xcb_xkb_get_map_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t full
+ ** @param uint16_t partial
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint16_t virtualMods
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @returns xcb_xkb_get_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_cookie_t
+xcb_xkb_get_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t full /**< */,
+ uint16_t partial /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint16_t virtualMods /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_map_cookie_t xcb_ret;
+ xcb_xkb_get_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.full = full;
+ xcb_out.partial = partial;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_cookie_t xcb_xkb_get_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t full
+ ** @param uint16_t partial
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint16_t virtualMods
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @returns xcb_xkb_get_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_cookie_t
+xcb_xkb_get_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t full /**< */,
+ uint16_t partial /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint16_t virtualMods /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_map_cookie_t xcb_ret;
+ xcb_xkb_get_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.full = full;
+ xcb_out.partial = partial;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_map_t * xcb_xkb_get_map_map
+ **
+ ** @param const xcb_xkb_get_map_reply_t *R
+ ** @returns xcb_xkb_get_map_map_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_map_map (const xcb_xkb_get_map_reply_t *R /**< */)
+{
+ return (void *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_map_reply_t * xcb_xkb_get_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_map_reply_t *
+xcb_xkb_get_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_types_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_types_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_key_type_iterator_t xcb_xkb_set_map_values_types_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_key_type_iterator_t
+xcb_xkb_set_map_values_types_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_set_key_type_iterator_t i;
+ i.data = /* values */ S->types;
+ i.rem = R->nTypes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_syms_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_syms_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->nKeySyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_set_map_values_syms_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_set_map_values_syms_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_key_sym_map_iterator_t i;
+ i.data = /* values */ S->syms;
+ i.rem = R->nKeySyms;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_map_values_actions_count
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_map_values_actions_count (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->actionsCount;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_actions_count_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_actions_count_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->nKeyActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_map_values_actions_count_end
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_map_values_actions_count_end (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->actionsCount + R->nKeyActions;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_set_map_values_actions
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_set_map_values_actions (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->actions;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_actions_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_actions_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->totalActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_set_map_values_actions_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_set_map_values_actions_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ i.data = /* values */ S->actions;
+ i.rem = R->totalActions;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_set_map_values_behaviors
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_set_map_values_behaviors (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->behaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_behaviors_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_behaviors_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->totalKeyBehaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_set_map_values_behaviors_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_set_map_values_behaviors_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_set_behavior_iterator_t i;
+ i.data = /* values */ S->behaviors;
+ i.rem = R->totalKeyBehaviors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_map_values_vmods
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_map_values_vmods (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->vmods;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_vmods_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_vmods_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->nVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_map_values_vmods_end
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_map_values_vmods_end (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->vmods + R->nVModMapKeys;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_set_map_values_explicit
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_set_map_values_explicit (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->explicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_explicit_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_explicit_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->totalKeyExplicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_set_map_values_explicit_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_set_map_values_explicit_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_set_explicit_iterator_t i;
+ i.data = /* values */ S->explicit;
+ i.rem = R->totalKeyExplicit;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_set_map_values_modmap
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_set_map_values_modmap (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->modmap;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_modmap_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_modmap_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->totalModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_set_map_values_modmap_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_set_map_values_modmap_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_key_mod_map_iterator_t i;
+ i.data = /* values */ S->modmap;
+ i.rem = R->totalModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_set_map_values_vmodmap
+ **
+ ** @param const xcb_xkb_set_map_values_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_set_map_values_vmodmap (const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return /* values */ S->vmodmap;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_map_values_vmodmap_length
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_map_values_vmodmap_length (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ return R->totalVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_set_map_values_vmodmap_iterator
+ **
+ ** @param const xcb_xkb_set_map_values_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_set_map_values_vmodmap_iterator (const xcb_xkb_set_map_request_t *R /**< */,
+ const xcb_xkb_set_map_values_t *S /**< */)
+{
+ xcb_xkb_key_v_mod_map_iterator_t i;
+ i.data = /* values */ S->vmodmap;
+ i.rem = R->totalVModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_set_map_values_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_set_map_values_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[19];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->types;
+ for(i=0; i<nTypes; i++) {
+ xcb_block_len = xcb_xkb_set_key_type_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->syms;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->syms;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_block_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* actionsCount */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->actionsCount;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* actions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->actions;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_set_map_values_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_set_map_values_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types */
+ _aux->types = (xcb_xkb_set_key_type_t *)xcb_tmp;
+ for(i=0; i<nTypes; i++) {
+ xcb_tmp_len = xcb_xkb_set_key_type_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_set_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms */
+ _aux->syms = (xcb_xkb_key_sym_map_t *)xcb_tmp;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_tmp_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* actionsCount */
+ _aux->actionsCount = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* actions */
+ _aux->actions = (xcb_xkb_action_t *)xcb_tmp;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors */
+ _aux->behaviors = (xcb_xkb_set_behavior_t *)xcb_tmp;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods */
+ _aux->vmods = (uint8_t *)xcb_tmp;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit */
+ _aux->explicit = (xcb_xkb_set_explicit_t *)xcb_tmp;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap */
+ _aux->modmap = (xcb_xkb_key_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap */
+ _aux->vmodmap = (xcb_xkb_key_v_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_set_map_values_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */)
+{
+ xcb_xkb_set_map_values_t _aux;
+ return xcb_xkb_set_map_values_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const void *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.present = present;
+ xcb_out.flags = flags;
+ xcb_out.minKeyCode = minKeyCode;
+ xcb_out.maxKeyCode = maxKeyCode;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.totalSyms = totalSyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.totalActions = totalActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.totalKeyBehaviors = totalKeyBehaviors;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.totalKeyExplicit = totalKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.totalModMapKeys = totalModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ xcb_out.totalVModMapKeys = totalVModMapKeys;
+ xcb_out.virtualMods = virtualMods;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_map_values_t values */
+ xcb_parts[4].iov_base = (char *) values;
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_map_values_sizeof (values, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present);
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const void *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.present = present;
+ xcb_out.flags = flags;
+ xcb_out.minKeyCode = minKeyCode;
+ xcb_out.maxKeyCode = maxKeyCode;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.totalSyms = totalSyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.totalActions = totalActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.totalKeyBehaviors = totalKeyBehaviors;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.totalKeyExplicit = totalKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.totalModMapKeys = totalModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ xcb_out.totalVModMapKeys = totalVModMapKeys;
+ xcb_out.virtualMods = virtualMods;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_map_values_t values */
+ xcb_parts[4].iov_base = (char *) values;
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_map_values_sizeof (values, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present);
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const xcb_xkb_set_map_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const xcb_xkb_set_map_values_t *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_map_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.present = present;
+ xcb_out.flags = flags;
+ xcb_out.minKeyCode = minKeyCode;
+ xcb_out.maxKeyCode = maxKeyCode;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.totalSyms = totalSyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.totalActions = totalActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.totalKeyBehaviors = totalKeyBehaviors;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.totalKeyExplicit = totalKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.totalModMapKeys = totalModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ xcb_out.totalVModMapKeys = totalVModMapKeys;
+ xcb_out.virtualMods = virtualMods;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_map_values_t values */
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_map_values_serialize (&xcb_aux0, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, values);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_map_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t present
+ ** @param uint16_t flags
+ ** @param xcb_keycode_t minKeyCode
+ ** @param xcb_keycode_t maxKeyCode
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param xcb_keycode_t firstKeySym
+ ** @param uint8_t nKeySyms
+ ** @param uint16_t totalSyms
+ ** @param xcb_keycode_t firstKeyAction
+ ** @param uint8_t nKeyActions
+ ** @param uint16_t totalActions
+ ** @param xcb_keycode_t firstKeyBehavior
+ ** @param uint8_t nKeyBehaviors
+ ** @param uint8_t totalKeyBehaviors
+ ** @param xcb_keycode_t firstKeyExplicit
+ ** @param uint8_t nKeyExplicit
+ ** @param uint8_t totalKeyExplicit
+ ** @param xcb_keycode_t firstModMapKey
+ ** @param uint8_t nModMapKeys
+ ** @param uint8_t totalModMapKeys
+ ** @param xcb_keycode_t firstVModMapKey
+ ** @param uint8_t nVModMapKeys
+ ** @param uint8_t totalVModMapKeys
+ ** @param uint16_t virtualMods
+ ** @param const xcb_xkb_set_map_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_map_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t present /**< */,
+ uint16_t flags /**< */,
+ xcb_keycode_t minKeyCode /**< */,
+ xcb_keycode_t maxKeyCode /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ xcb_keycode_t firstKeySym /**< */,
+ uint8_t nKeySyms /**< */,
+ uint16_t totalSyms /**< */,
+ xcb_keycode_t firstKeyAction /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ xcb_keycode_t firstKeyBehavior /**< */,
+ uint8_t nKeyBehaviors /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ xcb_keycode_t firstKeyExplicit /**< */,
+ uint8_t nKeyExplicit /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ xcb_keycode_t firstModMapKey /**< */,
+ uint8_t nModMapKeys /**< */,
+ uint8_t totalModMapKeys /**< */,
+ xcb_keycode_t firstVModMapKey /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t virtualMods /**< */,
+ const xcb_xkb_set_map_values_t *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_map_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.present = present;
+ xcb_out.flags = flags;
+ xcb_out.minKeyCode = minKeyCode;
+ xcb_out.maxKeyCode = maxKeyCode;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKeySym = firstKeySym;
+ xcb_out.nKeySyms = nKeySyms;
+ xcb_out.totalSyms = totalSyms;
+ xcb_out.firstKeyAction = firstKeyAction;
+ xcb_out.nKeyActions = nKeyActions;
+ xcb_out.totalActions = totalActions;
+ xcb_out.firstKeyBehavior = firstKeyBehavior;
+ xcb_out.nKeyBehaviors = nKeyBehaviors;
+ xcb_out.totalKeyBehaviors = totalKeyBehaviors;
+ xcb_out.firstKeyExplicit = firstKeyExplicit;
+ xcb_out.nKeyExplicit = nKeyExplicit;
+ xcb_out.totalKeyExplicit = totalKeyExplicit;
+ xcb_out.firstModMapKey = firstModMapKey;
+ xcb_out.nModMapKeys = nModMapKeys;
+ xcb_out.totalModMapKeys = totalModMapKeys;
+ xcb_out.firstVModMapKey = firstVModMapKey;
+ xcb_out.nVModMapKeys = nVModMapKeys;
+ xcb_out.totalVModMapKeys = totalVModMapKeys;
+ xcb_out.virtualMods = virtualMods;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_map_values_t values */
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_map_values_serialize (&xcb_aux0, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, values);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+int
+xcb_xkb_get_compat_map_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_get_compat_map_reply_t *_aux = (xcb_xkb_get_compat_map_reply_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_get_compat_map_reply_t);
+ xcb_tmp += xcb_block_len;
+ /* si_rtrn */
+ xcb_block_len += (16 * _aux->nSIRtrn) * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* group_rtrn */
+ xcb_block_len += xcb_popcount(_aux->groupsRtrn) * sizeof(xcb_xkb_mod_def_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t groups
+ ** @param uint8_t getAllSI
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @returns xcb_xkb_get_compat_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_cookie_t
+xcb_xkb_get_compat_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t groups /**< */,
+ uint8_t getAllSI /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_COMPAT_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_compat_map_cookie_t xcb_ret;
+ xcb_xkb_get_compat_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.groups = groups;
+ xcb_out.getAllSI = getAllSI;
+ xcb_out.firstSI = firstSI;
+ xcb_out.nSI = nSI;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_cookie_t xcb_xkb_get_compat_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t groups
+ ** @param uint8_t getAllSI
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @returns xcb_xkb_get_compat_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_cookie_t
+xcb_xkb_get_compat_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t groups /**< */,
+ uint8_t getAllSI /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_COMPAT_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_compat_map_cookie_t xcb_ret;
+ xcb_xkb_get_compat_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.groups = groups;
+ xcb_out.getAllSI = getAllSI;
+ xcb_out.firstSI = firstSI;
+ xcb_out.nSI = nSI;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_compat_map_si_rtrn
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_compat_map_si_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ return (uint8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_compat_map_si_rtrn_length
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_compat_map_si_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ return (16 * R->nSIRtrn);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_compat_map_si_rtrn_end
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_compat_map_si_rtrn_end (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((uint8_t *) (R + 1)) + ((16 * R->nSIRtrn));
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_get_compat_map_group_rtrn
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_get_compat_map_group_rtrn (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_get_compat_map_si_rtrn_end(R);
+ return (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_compat_map_group_rtrn_length
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_compat_map_group_rtrn_length (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ return xcb_popcount(R->groupsRtrn);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_compat_map_group_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_compat_map_reply_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_get_compat_map_group_rtrn_iterator (const xcb_xkb_get_compat_map_reply_t *R /**< */)
+{
+ xcb_xkb_mod_def_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_get_compat_map_si_rtrn_end(R);
+ i.data = (xcb_xkb_mod_def_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_mod_def_t, prev.index));
+ i.rem = xcb_popcount(R->groupsRtrn);
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_compat_map_reply_t * xcb_xkb_get_compat_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_compat_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_compat_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_compat_map_reply_t *
+xcb_xkb_get_compat_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_compat_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_compat_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_set_compat_map_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_compat_map_request_t *_aux = (xcb_xkb_set_compat_map_request_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_set_compat_map_request_t);
+ xcb_tmp += xcb_block_len;
+ /* si */
+ xcb_block_len += (16 * _aux->nSI) * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groupMaps */
+ xcb_block_len += xcb_popcount(_aux->groups) * sizeof(xcb_xkb_mod_def_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_compat_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t recomputeActions
+ ** @param uint8_t truncateSI
+ ** @param uint8_t groups
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @param const uint8_t *si
+ ** @param const xcb_xkb_mod_def_t *groupMaps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_compat_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t recomputeActions /**< */,
+ uint8_t truncateSI /**< */,
+ uint8_t groups /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */,
+ const uint8_t *si /**< */,
+ const xcb_xkb_mod_def_t *groupMaps /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 6,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_COMPAT_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[8];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_compat_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.pad0 = 0;
+ xcb_out.recomputeActions = recomputeActions;
+ xcb_out.truncateSI = truncateSI;
+ xcb_out.groups = groups;
+ xcb_out.firstSI = firstSI;
+ xcb_out.nSI = nSI;
+ memset(xcb_out.pad1, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* uint8_t si */
+ xcb_parts[4].iov_base = (char *) si;
+ xcb_parts[4].iov_len = (16 * nSI) * sizeof(uint8_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+ /* xcb_xkb_mod_def_t groupMaps */
+ xcb_parts[6].iov_base = (char *) groupMaps;
+ xcb_parts[6].iov_len = xcb_popcount(groups) * sizeof(xcb_xkb_mod_def_t);
+ xcb_parts[7].iov_base = 0;
+ xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_compat_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t recomputeActions
+ ** @param uint8_t truncateSI
+ ** @param uint8_t groups
+ ** @param uint16_t firstSI
+ ** @param uint16_t nSI
+ ** @param const uint8_t *si
+ ** @param const xcb_xkb_mod_def_t *groupMaps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_compat_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t recomputeActions /**< */,
+ uint8_t truncateSI /**< */,
+ uint8_t groups /**< */,
+ uint16_t firstSI /**< */,
+ uint16_t nSI /**< */,
+ const uint8_t *si /**< */,
+ const xcb_xkb_mod_def_t *groupMaps /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 6,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_COMPAT_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[8];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_compat_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.pad0 = 0;
+ xcb_out.recomputeActions = recomputeActions;
+ xcb_out.truncateSI = truncateSI;
+ xcb_out.groups = groups;
+ xcb_out.firstSI = firstSI;
+ xcb_out.nSI = nSI;
+ memset(xcb_out.pad1, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* uint8_t si */
+ xcb_parts[4].iov_base = (char *) si;
+ xcb_parts[4].iov_len = (16 * nSI) * sizeof(uint8_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+ /* xcb_xkb_mod_def_t groupMaps */
+ xcb_parts[6].iov_base = (char *) groupMaps;
+ xcb_parts[6].iov_len = xcb_popcount(groups) * sizeof(xcb_xkb_mod_def_t);
+ xcb_parts[7].iov_base = 0;
+ xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_indicator_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_cookie_t
+xcb_xkb_get_indicator_state (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_INDICATOR_STATE,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_indicator_state_cookie_t xcb_ret;
+ xcb_xkb_get_indicator_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_cookie_t xcb_xkb_get_indicator_state_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @returns xcb_xkb_get_indicator_state_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_cookie_t
+xcb_xkb_get_indicator_state_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_INDICATOR_STATE,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_indicator_state_cookie_t xcb_ret;
+ xcb_xkb_get_indicator_state_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_state_reply_t * xcb_xkb_get_indicator_state_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_indicator_state_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_indicator_state_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_state_reply_t *
+xcb_xkb_get_indicator_state_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_indicator_state_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_indicator_state_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_get_indicator_map_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_get_indicator_map_reply_t *_aux = (xcb_xkb_get_indicator_map_reply_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_get_indicator_map_reply_t);
+ xcb_tmp += xcb_block_len;
+ /* maps */
+ xcb_block_len += _aux->nIndicators * sizeof(xcb_xkb_indicator_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_indicator_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_cookie_t
+xcb_xkb_get_indicator_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_INDICATOR_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_indicator_map_cookie_t xcb_ret;
+ xcb_xkb_get_indicator_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_cookie_t xcb_xkb_get_indicator_map_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_indicator_map_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_cookie_t
+xcb_xkb_get_indicator_map_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_INDICATOR_MAP,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_indicator_map_cookie_t xcb_ret;
+ xcb_xkb_get_indicator_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_get_indicator_map_maps
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_get_indicator_map_maps (const xcb_xkb_get_indicator_map_reply_t *R /**< */)
+{
+ return (xcb_xkb_indicator_map_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_indicator_map_maps_length
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_indicator_map_maps_length (const xcb_xkb_get_indicator_map_reply_t *R /**< */)
+{
+ return R->nIndicators;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_indicator_map_maps_iterator
+ **
+ ** @param const xcb_xkb_get_indicator_map_reply_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_get_indicator_map_maps_iterator (const xcb_xkb_get_indicator_map_reply_t *R /**< */)
+{
+ xcb_xkb_indicator_map_iterator_t i;
+ i.data = (xcb_xkb_indicator_map_t *) (R + 1);
+ i.rem = R->nIndicators;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_indicator_map_reply_t * xcb_xkb_get_indicator_map_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_indicator_map_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_indicator_map_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_indicator_map_reply_t *
+xcb_xkb_get_indicator_map_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_indicator_map_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_indicator_map_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_set_indicator_map_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_indicator_map_request_t *_aux = (xcb_xkb_set_indicator_map_request_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_set_indicator_map_request_t);
+ xcb_tmp += xcb_block_len;
+ /* maps */
+ xcb_block_len += xcb_popcount(_aux->which) * sizeof(xcb_xkb_indicator_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_indicator_map_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @param const xcb_xkb_indicator_map_t *maps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_indicator_map_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_indicator_map_t *maps /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 4,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_INDICATOR_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[6];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_indicator_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_indicator_map_t maps */
+ xcb_parts[4].iov_base = (char *) maps;
+ xcb_parts[4].iov_len = xcb_popcount(which) * sizeof(xcb_xkb_indicator_map_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_indicator_map
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @param const xcb_xkb_indicator_map_t *maps
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_indicator_map (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_indicator_map_t *maps /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 4,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_INDICATOR_MAP,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[6];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_indicator_map_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_indicator_map_t maps */
+ xcb_parts[4].iov_base = (char *) maps;
+ xcb_parts[4].iov_len = xcb_popcount(which) * sizeof(xcb_xkb_indicator_map_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @returns xcb_xkb_get_named_indicator_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_cookie_t
+xcb_xkb_get_named_indicator (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_NAMED_INDICATOR,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_named_indicator_cookie_t xcb_ret;
+ xcb_xkb_get_named_indicator_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.indicator = indicator;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_cookie_t xcb_xkb_get_named_indicator_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @returns xcb_xkb_get_named_indicator_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_cookie_t
+xcb_xkb_get_named_indicator_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_NAMED_INDICATOR,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_named_indicator_cookie_t xcb_ret;
+ xcb_xkb_get_named_indicator_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.indicator = indicator;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_named_indicator_reply_t * xcb_xkb_get_named_indicator_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_named_indicator_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_named_indicator_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_named_indicator_reply_t *
+xcb_xkb_get_named_indicator_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_named_indicator_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_named_indicator_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_named_indicator_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @param uint8_t setState
+ ** @param uint8_t on
+ ** @param uint8_t setMap
+ ** @param uint8_t createMap
+ ** @param uint8_t map_flags
+ ** @param uint8_t map_whichGroups
+ ** @param uint8_t map_groups
+ ** @param uint8_t map_whichMods
+ ** @param uint8_t map_realMods
+ ** @param uint16_t map_vmods
+ ** @param uint32_t map_ctrls
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_named_indicator_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */,
+ uint8_t setState /**< */,
+ uint8_t on /**< */,
+ uint8_t setMap /**< */,
+ uint8_t createMap /**< */,
+ uint8_t map_flags /**< */,
+ uint8_t map_whichGroups /**< */,
+ uint8_t map_groups /**< */,
+ uint8_t map_whichMods /**< */,
+ uint8_t map_realMods /**< */,
+ uint16_t map_vmods /**< */,
+ uint32_t map_ctrls /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMED_INDICATOR,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_named_indicator_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.indicator = indicator;
+ xcb_out.setState = setState;
+ xcb_out.on = on;
+ xcb_out.setMap = setMap;
+ xcb_out.createMap = createMap;
+ xcb_out.pad1 = 0;
+ xcb_out.map_flags = map_flags;
+ xcb_out.map_whichGroups = map_whichGroups;
+ xcb_out.map_groups = map_groups;
+ xcb_out.map_whichMods = map_whichMods;
+ xcb_out.map_realMods = map_realMods;
+ xcb_out.map_vmods = map_vmods;
+ xcb_out.map_ctrls = map_ctrls;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_named_indicator
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @param xcb_atom_t indicator
+ ** @param uint8_t setState
+ ** @param uint8_t on
+ ** @param uint8_t setMap
+ ** @param uint8_t createMap
+ ** @param uint8_t map_flags
+ ** @param uint8_t map_whichGroups
+ ** @param uint8_t map_groups
+ ** @param uint8_t map_whichMods
+ ** @param uint8_t map_realMods
+ ** @param uint16_t map_vmods
+ ** @param uint32_t map_ctrls
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_named_indicator (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */,
+ xcb_atom_t indicator /**< */,
+ uint8_t setState /**< */,
+ uint8_t on /**< */,
+ uint8_t setMap /**< */,
+ uint8_t createMap /**< */,
+ uint8_t map_flags /**< */,
+ uint8_t map_whichGroups /**< */,
+ uint8_t map_groups /**< */,
+ uint8_t map_whichMods /**< */,
+ uint8_t map_realMods /**< */,
+ uint16_t map_vmods /**< */,
+ uint32_t map_ctrls /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMED_INDICATOR,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_named_indicator_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.indicator = indicator;
+ xcb_out.setState = setState;
+ xcb_out.on = on;
+ xcb_out.setMap = setMap;
+ xcb_out.createMap = createMap;
+ xcb_out.pad1 = 0;
+ xcb_out.map_flags = map_flags;
+ xcb_out.map_whichGroups = map_whichGroups;
+ xcb_out.map_groups = map_groups;
+ xcb_out.map_whichMods = map_whichMods;
+ xcb_out.map_realMods = map_realMods;
+ xcb_out.map_vmods = map_vmods;
+ xcb_out.map_ctrls = map_ctrls;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_type_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->typeNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_type_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_type_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->typeNames + R->nTypes;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_names_value_list_n_levels_per_type (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->nLevelsPerType;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_n_levels_per_type_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_n_levels_per_type_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->nLevelsPerType + R->nTypes;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_kt_level_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->ktLevelNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_kt_level_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return qt_xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_kt_level_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->ktLevelNames + qt_xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_indicator_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->indicatorNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_indicator_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return xcb_popcount(R->indicators);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_indicator_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->indicatorNames + xcb_popcount(R->indicators);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_virtual_mod_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->virtualModNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_virtual_mod_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return xcb_popcount(R->virtualMods);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_virtual_mod_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->virtualModNames + xcb_popcount(R->virtualMods);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_groups (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->groups;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_groups_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return xcb_popcount(R->groupNames);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_groups_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->groups + xcb_popcount(R->groupNames);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_names_value_list_key_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->keyNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_key_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return R->nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_names_value_list_key_names_iterator (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_xkb_key_name_iterator_t i;
+ i.data = /* valueList */ S->keyNames;
+ i.rem = R->nKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_names_value_list_key_aliases (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->keyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_key_aliases_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return R->nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_names_value_list_key_aliases_iterator (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ i.data = /* valueList */ S->keyAliases;
+ i.rem = R->nKeyAliases;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_names_value_list_radio_group_names (const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return /* valueList */ S->radioGroupNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_names_value_list_radio_group_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ return R->nRadioGroups;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_names_value_list_radio_group_names_end (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* valueList */ S->radioGroupNames + R->nRadioGroups;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_names_value_list_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[25];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_names_value_list_t.keycodesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_names_value_list_t.geometryName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_names_value_list_t.symbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_names_value_list_t.physSymbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_names_value_list_t.typesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_names_value_list_t.compatName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType;
+ xcb_block_len += nTypes * sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_names_value_list_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_names_value_list_t.keycodesName */
+ _aux->keycodesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_names_value_list_t.geometryName */
+ _aux->geometryName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_names_value_list_t.symbolsName */
+ _aux->symbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_names_value_list_t.physSymbolsName */
+ _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_names_value_list_t.typesName */
+ _aux->typesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_names_value_list_t.compatName */
+ _aux->compatName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ _aux->typeNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ _aux->nLevelsPerType = (uint8_t *)xcb_tmp;
+ xcb_block_len += nTypes * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ _aux->indicatorNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ _aux->virtualModNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ _aux->groups = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */)
+{
+ xcb_xkb_get_names_value_list_t _aux;
+ return xcb_xkb_get_names_value_list_unpack(_buffer, nTypes, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_names_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_cookie_t
+xcb_xkb_get_names (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_NAMES,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_names_cookie_t xcb_ret;
+ xcb_xkb_get_names_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_cookie_t xcb_xkb_get_names_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t which
+ ** @returns xcb_xkb_get_names_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_cookie_t
+xcb_xkb_get_names_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t which /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_NAMES,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_names_cookie_t xcb_ret;
+ xcb_xkb_get_names_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.which = which;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_value_list_t * xcb_xkb_get_names_value_list
+ **
+ ** @param const xcb_xkb_get_names_reply_t *R
+ ** @returns xcb_xkb_get_names_value_list_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_names_value_list (const xcb_xkb_get_names_reply_t *R /**< */)
+{
+ return (void *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_names_reply_t * xcb_xkb_get_names_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_names_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_names_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_names_reply_t *
+xcb_xkb_get_names_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_names_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_names_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_type_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_type_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->typeNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_type_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_type_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_type_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_type_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->typeNames + R->nTypes;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_set_names_values_n_levels_per_type
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_set_names_values_n_levels_per_type (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->nLevelsPerType;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_n_levels_per_type_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return R->nKTLevels;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_n_levels_per_type_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->nLevelsPerType + R->nKTLevels;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_kt_level_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_kt_level_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->ktLevelNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_kt_level_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_kt_level_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return qt_xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_kt_level_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_kt_level_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->ktLevelNames + qt_xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_indicator_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_indicator_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->indicatorNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_indicator_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_indicator_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return xcb_popcount(R->indicators);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_indicator_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_indicator_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->indicatorNames + xcb_popcount(R->indicators);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_virtual_mod_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_virtual_mod_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->virtualModNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_virtual_mod_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return xcb_popcount(R->virtualMods);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_virtual_mod_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->virtualModNames + xcb_popcount(R->virtualMods);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_groups
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_groups (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->groups;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_groups_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_groups_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return xcb_popcount(R->groupNames);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_groups_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_groups_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->groups + xcb_popcount(R->groupNames);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_set_names_values_key_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_set_names_values_key_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->keyNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_key_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_key_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return R->nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_set_names_values_key_names_iterator
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_set_names_values_key_names_iterator (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_xkb_key_name_iterator_t i;
+ i.data = /* values */ S->keyNames;
+ i.rem = R->nKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_set_names_values_key_aliases
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_set_names_values_key_aliases (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->keyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_key_aliases_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_key_aliases_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return R->nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_set_names_values_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_set_names_values_key_aliases_iterator (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ i.data = /* values */ S->keyAliases;
+ i.rem = R->nKeyAliases;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_set_names_values_radio_group_names
+ **
+ ** @param const xcb_xkb_set_names_values_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_set_names_values_radio_group_names (const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return /* values */ S->radioGroupNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_set_names_values_radio_group_names_length
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_set_names_values_radio_group_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ return R->nRadioGroups;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_set_names_values_radio_group_names_end
+ **
+ ** @param const xcb_xkb_set_names_values_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_set_names_values_radio_group_names_end (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* values */ S->radioGroupNames + R->nRadioGroups;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_set_names_values_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_set_names_values_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[25];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_set_names_values_t.keycodesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_set_names_values_t.geometryName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_set_names_values_t.symbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_set_names_values_t.physSymbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_set_names_values_t.typesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_set_names_values_t.compatName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_set_names_values_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_set_names_values_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_set_names_values_t.keycodesName */
+ _aux->keycodesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_set_names_values_t.geometryName */
+ _aux->geometryName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_set_names_values_t.symbolsName */
+ _aux->symbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_set_names_values_t.physSymbolsName */
+ _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_set_names_values_t.typesName */
+ _aux->typesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_set_names_values_t.compatName */
+ _aux->compatName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ _aux->typeNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ _aux->nLevelsPerType = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ _aux->indicatorNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ _aux->virtualModNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ _aux->groups = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_set_names_values_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */)
+{
+ xcb_xkb_set_names_values_t _aux;
+ return xcb_xkb_set_names_values_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const void *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMES,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_names_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.which = which;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKTLevelt = firstKTLevelt;
+ xcb_out.nKTLevels = nKTLevels;
+ xcb_out.indicators = indicators;
+ xcb_out.groupNames = groupNames;
+ xcb_out.nRadioGroups = nRadioGroups;
+ xcb_out.firstKey = firstKey;
+ xcb_out.nKeys = nKeys;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.pad0 = 0;
+ xcb_out.totalKTLevelNames = totalKTLevelNames;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_names_values_t values */
+ xcb_parts[4].iov_base = (char *) values;
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_names_values_sizeof (values, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which);
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const void *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const void *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMES,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_names_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.which = which;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKTLevelt = firstKTLevelt;
+ xcb_out.nKTLevels = nKTLevels;
+ xcb_out.indicators = indicators;
+ xcb_out.groupNames = groupNames;
+ xcb_out.nRadioGroups = nRadioGroups;
+ xcb_out.firstKey = firstKey;
+ xcb_out.nKeys = nKeys;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.pad0 = 0;
+ xcb_out.totalKTLevelNames = totalKTLevelNames;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_names_values_t values */
+ xcb_parts[4].iov_base = (char *) values;
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_names_values_sizeof (values, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which);
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_aux_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const xcb_xkb_set_names_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_aux_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const xcb_xkb_set_names_values_t *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMES,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_names_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.which = which;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKTLevelt = firstKTLevelt;
+ xcb_out.nKTLevels = nKTLevels;
+ xcb_out.indicators = indicators;
+ xcb_out.groupNames = groupNames;
+ xcb_out.nRadioGroups = nRadioGroups;
+ xcb_out.firstKey = firstKey;
+ xcb_out.nKeys = nKeys;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.pad0 = 0;
+ xcb_out.totalKTLevelNames = totalKTLevelNames;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_names_values_t values */
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_names_values_serialize (&xcb_aux0, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, values);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_names_aux
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t virtualMods
+ ** @param uint32_t which
+ ** @param uint8_t firstType
+ ** @param uint8_t nTypes
+ ** @param uint8_t firstKTLevelt
+ ** @param uint8_t nKTLevels
+ ** @param uint32_t indicators
+ ** @param uint8_t groupNames
+ ** @param uint8_t nRadioGroups
+ ** @param xcb_keycode_t firstKey
+ ** @param uint8_t nKeys
+ ** @param uint8_t nKeyAliases
+ ** @param uint16_t totalKTLevelNames
+ ** @param const xcb_xkb_set_names_values_t *values
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_names_aux (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t virtualMods /**< */,
+ uint32_t which /**< */,
+ uint8_t firstType /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t firstKTLevelt /**< */,
+ uint8_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nRadioGroups /**< */,
+ xcb_keycode_t firstKey /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint16_t totalKTLevelNames /**< */,
+ const xcb_xkb_set_names_values_t *values /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 3,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_NAMES,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[5];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_names_request_t xcb_out;
+ void *xcb_aux0 = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.virtualMods = virtualMods;
+ xcb_out.which = which;
+ xcb_out.firstType = firstType;
+ xcb_out.nTypes = nTypes;
+ xcb_out.firstKTLevelt = firstKTLevelt;
+ xcb_out.nKTLevels = nKTLevels;
+ xcb_out.indicators = indicators;
+ xcb_out.groupNames = groupNames;
+ xcb_out.nRadioGroups = nRadioGroups;
+ xcb_out.firstKey = firstKey;
+ xcb_out.nKeys = nKeys;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.pad0 = 0;
+ xcb_out.totalKTLevelNames = totalKTLevelNames;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_set_names_values_t values */
+ xcb_parts[4].iov_len =
+ xcb_xkb_set_names_values_serialize (&xcb_aux0, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, values);
+ xcb_parts[4].iov_base = xcb_aux0;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ free(xcb_aux0);
+ return xcb_ret;
+}
+
+int
+xcb_xkb_get_geometry_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_get_geometry_reply_t *_aux = (xcb_xkb_get_geometry_reply_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_get_geometry_reply_t);
+ xcb_tmp += xcb_block_len;
+ /* labelFont */
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* properties */
+ for(i=0; i<_aux->nProperties; i++) {
+ xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_property_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* colors */
+ for(i=0; i<_aux->nColors; i++) {
+ xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* shapes */
+ for(i=0; i<_aux->nShapes; i++) {
+ xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_shape_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* sections */
+ for(i=0; i<_aux->nSections; i++) {
+ xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_section_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* doodads */
+ for(i=0; i<_aux->nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_block_len += _aux->nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_atom_t name
+ ** @returns xcb_xkb_get_geometry_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_cookie_t
+xcb_xkb_get_geometry (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_atom_t name /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_GEOMETRY,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_geometry_cookie_t xcb_ret;
+ xcb_xkb_get_geometry_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.name = name;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_cookie_t xcb_xkb_get_geometry_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param xcb_atom_t name
+ ** @returns xcb_xkb_get_geometry_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_cookie_t
+xcb_xkb_get_geometry_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ xcb_atom_t name /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_GEOMETRY,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_geometry_cookie_t xcb_ret;
+ xcb_xkb_get_geometry_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.name = name;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_get_geometry_label_font
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_get_geometry_label_font (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return (xcb_xkb_counted_string_16_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_properties_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_properties_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nProperties;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_property_iterator_t xcb_xkb_get_geometry_properties_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_property_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_property_iterator_t
+xcb_xkb_get_geometry_properties_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_property_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_string_end(xcb_xkb_get_geometry_label_font(R));
+ i.data = (xcb_xkb_property_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_property_t, prev.index));
+ i.rem = R->nProperties;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_colors_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_colors_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nColors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_geometry_colors_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_counted_string_16_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_iterator_t
+xcb_xkb_get_geometry_colors_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_counted_string_16_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_property_end(xcb_xkb_get_geometry_properties_iterator(R));
+ i.data = (xcb_xkb_counted_string_16_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_counted_string_16_t, prev.index));
+ i.rem = R->nColors;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_shapes_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_shapes_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nShapes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_shape_iterator_t xcb_xkb_get_geometry_shapes_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_shape_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_shape_iterator_t
+xcb_xkb_get_geometry_shapes_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_shape_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_counted_string_16_end(xcb_xkb_get_geometry_colors_iterator(R));
+ i.data = (xcb_xkb_shape_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_shape_t, prev.index));
+ i.rem = R->nShapes;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_sections_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_sections_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nSections;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_section_iterator_t xcb_xkb_get_geometry_sections_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_section_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_section_iterator_t
+xcb_xkb_get_geometry_sections_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_section_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_shape_end(xcb_xkb_get_geometry_shapes_iterator(R));
+ i.data = (xcb_xkb_section_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_section_t, prev.index));
+ i.rem = R->nSections;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_doodads_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_doodads_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nDoodads;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_get_geometry_doodads_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_get_geometry_doodads_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_doodad_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_section_end(xcb_xkb_get_geometry_sections_iterator(R));
+ i.data = (xcb_xkb_doodad_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_doodad_t, prev.index));
+ i.rem = R->nDoodads;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_geometry_key_aliases
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_geometry_key_aliases (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_get_geometry_doodads_iterator(R));
+ return (xcb_xkb_key_alias_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_key_alias_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_geometry_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_geometry_key_aliases_length (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ return R->nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_geometry_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_geometry_reply_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_geometry_key_aliases_iterator (const xcb_xkb_get_geometry_reply_t *R /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_doodad_end(xcb_xkb_get_geometry_doodads_iterator(R));
+ i.data = (xcb_xkb_key_alias_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_key_alias_t, prev.index));
+ i.rem = R->nKeyAliases;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_geometry_reply_t * xcb_xkb_get_geometry_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_geometry_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_geometry_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_geometry_reply_t *
+xcb_xkb_get_geometry_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_geometry_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ xcb_xkb_get_geometry_reply_t *reply = (xcb_xkb_get_geometry_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+ int i;
+ xcb_xkb_property_iterator_t properties_iter = xcb_xkb_get_geometry_properties_iterator(reply);
+ int properties_len = xcb_xkb_get_geometry_properties_length(reply);
+ xcb_xkb_property_t *properties_data;
+ /* special cases: transform parts of the reply to match XCB data structures */
+ for(i=0; i<properties_len; i++) {
+ properties_data = properties_iter.data;
+ xcb_xkb_property_unserialize((const void *)properties_data, &properties_data);
+ xcb_xkb_property_next(&properties_iter);
+ }
+ return reply;
+}
+
+int
+xcb_xkb_set_geometry_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_geometry_request_t *_aux = (xcb_xkb_set_geometry_request_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_set_geometry_request_t);
+ xcb_tmp += xcb_block_len;
+ /* labelFont */
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* properties */
+ for(i=0; i<_aux->nProperties; i++) {
+ xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_property_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* colors */
+ for(i=0; i<_aux->nColors; i++) {
+ xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* shapes */
+ for(i=0; i<_aux->nShapes; i++) {
+ xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_shape_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* sections */
+ for(i=0; i<_aux->nSections; i++) {
+ xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_section_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* doodads */
+ for(i=0; i<_aux->nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_block_len += _aux->nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_geometry_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t nShapes
+ ** @param uint8_t nSections
+ ** @param xcb_atom_t name
+ ** @param uint16_t widthMM
+ ** @param uint16_t heightMM
+ ** @param uint16_t nProperties
+ ** @param uint16_t nColors
+ ** @param uint16_t nDoodads
+ ** @param uint16_t nKeyAliases
+ ** @param uint8_t baseColorNdx
+ ** @param uint8_t labelColorNdx
+ ** @param xcb_xkb_counted_string_16_t *labelFont
+ ** @param const xcb_xkb_property_t *properties
+ ** @param const xcb_xkb_counted_string_16_t *colors
+ ** @param const xcb_xkb_shape_t *shapes
+ ** @param const xcb_xkb_section_t *sections
+ ** @param const xcb_xkb_doodad_t *doodads
+ ** @param const xcb_xkb_key_alias_t *keyAliases
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_geometry_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t nShapes /**< */,
+ uint8_t nSections /**< */,
+ xcb_atom_t name /**< */,
+ uint16_t widthMM /**< */,
+ uint16_t heightMM /**< */,
+ uint16_t nProperties /**< */,
+ uint16_t nColors /**< */,
+ uint16_t nDoodads /**< */,
+ uint16_t nKeyAliases /**< */,
+ uint8_t baseColorNdx /**< */,
+ uint8_t labelColorNdx /**< */,
+ xcb_xkb_counted_string_16_t *labelFont /**< */,
+ const xcb_xkb_property_t *properties /**< */,
+ const xcb_xkb_counted_string_16_t *colors /**< */,
+ const xcb_xkb_shape_t *shapes /**< */,
+ const xcb_xkb_section_t *sections /**< */,
+ const xcb_xkb_doodad_t *doodads /**< */,
+ const xcb_xkb_key_alias_t *keyAliases /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 16,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_GEOMETRY,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[18];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_geometry_request_t xcb_out;
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+ char *xcb_tmp;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.nShapes = nShapes;
+ xcb_out.nSections = nSections;
+ xcb_out.name = name;
+ xcb_out.widthMM = widthMM;
+ xcb_out.heightMM = heightMM;
+ xcb_out.nProperties = nProperties;
+ xcb_out.nColors = nColors;
+ xcb_out.nDoodads = nDoodads;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.baseColorNdx = baseColorNdx;
+ xcb_out.labelColorNdx = labelColorNdx;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_counted_string_16_t labelFont */
+ xcb_parts[4].iov_base = (char *) labelFont;
+ xcb_parts[4].iov_len =
+ xcb_xkb_counted_string_16_sizeof (labelFont);
+ /* xcb_xkb_property_t properties */
+ xcb_parts[5].iov_base = (char *) properties;
+ xcb_parts[5].iov_len = 0;
+ xcb_tmp = (char *)properties;
+ for(i=0; i<nProperties; i++) {
+ xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_parts[5].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[6].iov_base = 0;
+ xcb_parts[6].iov_len = -xcb_parts[5].iov_len & 3;
+ /* xcb_xkb_counted_string_16_t colors */
+ xcb_parts[7].iov_base = (char *) colors;
+ xcb_parts[7].iov_len = 0;
+ xcb_tmp = (char *)colors;
+ for(i=0; i<nColors; i++) {
+ xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_parts[7].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[8].iov_base = 0;
+ xcb_parts[8].iov_len = -xcb_parts[7].iov_len & 3;
+ /* xcb_xkb_shape_t shapes */
+ xcb_parts[9].iov_base = (char *) shapes;
+ xcb_parts[9].iov_len = 0;
+ xcb_tmp = (char *)shapes;
+ for(i=0; i<nShapes; i++) {
+ xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_parts[9].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[10].iov_base = 0;
+ xcb_parts[10].iov_len = -xcb_parts[9].iov_len & 3;
+ /* xcb_xkb_section_t sections */
+ xcb_parts[11].iov_base = (char *) sections;
+ xcb_parts[11].iov_len = 0;
+ xcb_tmp = (char *)sections;
+ for(i=0; i<nSections; i++) {
+ xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_parts[11].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[12].iov_base = 0;
+ xcb_parts[12].iov_len = -xcb_parts[11].iov_len & 3;
+ /* xcb_xkb_doodad_t doodads */
+ xcb_parts[13].iov_base = (char *) doodads;
+ xcb_parts[13].iov_len = 0;
+ xcb_tmp = (char *)doodads;
+ for(i=0; i<nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_parts[13].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[14].iov_base = 0;
+ xcb_parts[14].iov_len = -xcb_parts[13].iov_len & 3;
+ /* xcb_xkb_key_alias_t keyAliases */
+ xcb_parts[15].iov_base = (char *) keyAliases;
+ xcb_parts[15].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[16].iov_base = 0;
+ xcb_parts[16].iov_len = -xcb_parts[15].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_geometry
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t nShapes
+ ** @param uint8_t nSections
+ ** @param xcb_atom_t name
+ ** @param uint16_t widthMM
+ ** @param uint16_t heightMM
+ ** @param uint16_t nProperties
+ ** @param uint16_t nColors
+ ** @param uint16_t nDoodads
+ ** @param uint16_t nKeyAliases
+ ** @param uint8_t baseColorNdx
+ ** @param uint8_t labelColorNdx
+ ** @param xcb_xkb_counted_string_16_t *labelFont
+ ** @param const xcb_xkb_property_t *properties
+ ** @param const xcb_xkb_counted_string_16_t *colors
+ ** @param const xcb_xkb_shape_t *shapes
+ ** @param const xcb_xkb_section_t *sections
+ ** @param const xcb_xkb_doodad_t *doodads
+ ** @param const xcb_xkb_key_alias_t *keyAliases
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_geometry (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t nShapes /**< */,
+ uint8_t nSections /**< */,
+ xcb_atom_t name /**< */,
+ uint16_t widthMM /**< */,
+ uint16_t heightMM /**< */,
+ uint16_t nProperties /**< */,
+ uint16_t nColors /**< */,
+ uint16_t nDoodads /**< */,
+ uint16_t nKeyAliases /**< */,
+ uint8_t baseColorNdx /**< */,
+ uint8_t labelColorNdx /**< */,
+ xcb_xkb_counted_string_16_t *labelFont /**< */,
+ const xcb_xkb_property_t *properties /**< */,
+ const xcb_xkb_counted_string_16_t *colors /**< */,
+ const xcb_xkb_shape_t *shapes /**< */,
+ const xcb_xkb_section_t *sections /**< */,
+ const xcb_xkb_doodad_t *doodads /**< */,
+ const xcb_xkb_key_alias_t *keyAliases /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 16,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_GEOMETRY,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[18];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_geometry_request_t xcb_out;
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+ char *xcb_tmp;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.nShapes = nShapes;
+ xcb_out.nSections = nSections;
+ xcb_out.name = name;
+ xcb_out.widthMM = widthMM;
+ xcb_out.heightMM = heightMM;
+ xcb_out.nProperties = nProperties;
+ xcb_out.nColors = nColors;
+ xcb_out.nDoodads = nDoodads;
+ xcb_out.nKeyAliases = nKeyAliases;
+ xcb_out.baseColorNdx = baseColorNdx;
+ xcb_out.labelColorNdx = labelColorNdx;
+ memset(xcb_out.pad0, 0, 2);
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_counted_string_16_t labelFont */
+ xcb_parts[4].iov_base = (char *) labelFont;
+ xcb_parts[4].iov_len =
+ xcb_xkb_counted_string_16_sizeof (labelFont);
+ /* xcb_xkb_property_t properties */
+ xcb_parts[5].iov_base = (char *) properties;
+ xcb_parts[5].iov_len = 0;
+ xcb_tmp = (char *)properties;
+ for(i=0; i<nProperties; i++) {
+ xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_parts[5].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[6].iov_base = 0;
+ xcb_parts[6].iov_len = -xcb_parts[5].iov_len & 3;
+ /* xcb_xkb_counted_string_16_t colors */
+ xcb_parts[7].iov_base = (char *) colors;
+ xcb_parts[7].iov_len = 0;
+ xcb_tmp = (char *)colors;
+ for(i=0; i<nColors; i++) {
+ xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_parts[7].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[8].iov_base = 0;
+ xcb_parts[8].iov_len = -xcb_parts[7].iov_len & 3;
+ /* xcb_xkb_shape_t shapes */
+ xcb_parts[9].iov_base = (char *) shapes;
+ xcb_parts[9].iov_len = 0;
+ xcb_tmp = (char *)shapes;
+ for(i=0; i<nShapes; i++) {
+ xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_parts[9].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[10].iov_base = 0;
+ xcb_parts[10].iov_len = -xcb_parts[9].iov_len & 3;
+ /* xcb_xkb_section_t sections */
+ xcb_parts[11].iov_base = (char *) sections;
+ xcb_parts[11].iov_len = 0;
+ xcb_tmp = (char *)sections;
+ for(i=0; i<nSections; i++) {
+ xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_parts[11].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[12].iov_base = 0;
+ xcb_parts[12].iov_len = -xcb_parts[11].iov_len & 3;
+ /* xcb_xkb_doodad_t doodads */
+ xcb_parts[13].iov_base = (char *) doodads;
+ xcb_parts[13].iov_len = 0;
+ xcb_tmp = (char *)doodads;
+ for(i=0; i<nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_parts[13].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[14].iov_base = 0;
+ xcb_parts[14].iov_len = -xcb_parts[13].iov_len & 3;
+ /* xcb_xkb_key_alias_t keyAliases */
+ xcb_parts[15].iov_base = (char *) keyAliases;
+ xcb_parts[15].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[16].iov_base = 0;
+ xcb_parts[16].iov_len = -xcb_parts[15].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t change
+ ** @param uint32_t value
+ ** @param uint32_t ctrlsToChange
+ ** @param uint32_t autoCtrls
+ ** @param uint32_t autoCtrlsValues
+ ** @returns xcb_xkb_per_client_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_cookie_t
+xcb_xkb_per_client_flags (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t change /**< */,
+ uint32_t value /**< */,
+ uint32_t ctrlsToChange /**< */,
+ uint32_t autoCtrls /**< */,
+ uint32_t autoCtrlsValues /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_PER_CLIENT_FLAGS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_per_client_flags_cookie_t xcb_ret;
+ xcb_xkb_per_client_flags_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.change = change;
+ xcb_out.value = value;
+ xcb_out.ctrlsToChange = ctrlsToChange;
+ xcb_out.autoCtrls = autoCtrls;
+ xcb_out.autoCtrlsValues = autoCtrlsValues;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_cookie_t xcb_xkb_per_client_flags_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint32_t change
+ ** @param uint32_t value
+ ** @param uint32_t ctrlsToChange
+ ** @param uint32_t autoCtrls
+ ** @param uint32_t autoCtrlsValues
+ ** @returns xcb_xkb_per_client_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_cookie_t
+xcb_xkb_per_client_flags_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint32_t change /**< */,
+ uint32_t value /**< */,
+ uint32_t ctrlsToChange /**< */,
+ uint32_t autoCtrls /**< */,
+ uint32_t autoCtrlsValues /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_PER_CLIENT_FLAGS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_per_client_flags_cookie_t xcb_ret;
+ xcb_xkb_per_client_flags_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.change = change;
+ xcb_out.value = value;
+ xcb_out.ctrlsToChange = ctrlsToChange;
+ xcb_out.autoCtrls = autoCtrls;
+ xcb_out.autoCtrlsValues = autoCtrlsValues;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_per_client_flags_reply_t * xcb_xkb_per_client_flags_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_per_client_flags_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_per_client_flags_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_per_client_flags_reply_t *
+xcb_xkb_per_client_flags_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_per_client_flags_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_per_client_flags_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_list_components_serialize (void **_buffer /**< */,
+ const xcb_xkb_list_components_request_t *_aux /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[15];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ /* xcb_xkb_list_components_request_t.deviceSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->deviceSpec;
+ xcb_block_len += sizeof(xcb_xkb_device_spec_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_xkb_device_spec_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t);
+ /* xcb_xkb_list_components_request_t.maxNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->maxNames;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_list_components_request_t.keymapsSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keymapsSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keymapsSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) keymapsSpec;
+ xcb_block_len += _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.keycodesSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keycodesSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) keycodesSpec;
+ xcb_block_len += _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.typesSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* typesSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) typesSpec;
+ xcb_block_len += _aux->typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.compatMapSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatMapSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* compatMapSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) compatMapSpec;
+ xcb_block_len += _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.symbolsSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* symbolsSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) symbolsSpec;
+ xcb_block_len += _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.geometrySpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometrySpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* geometrySpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) geometrySpec;
+ xcb_block_len += _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_list_components_unserialize (const void *_buffer /**< */,
+ xcb_xkb_list_components_request_t **_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ xcb_xkb_list_components_request_t xcb_out;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ xcb_xkb_string8_t *keymapsSpec;
+ int keymapsSpec_len;
+ xcb_xkb_string8_t *keycodesSpec;
+ int keycodesSpec_len;
+ xcb_xkb_string8_t *typesSpec;
+ int typesSpec_len;
+ xcb_xkb_string8_t *compatMapSpec;
+ int compatMapSpec_len;
+ xcb_xkb_string8_t *symbolsSpec;
+ int symbolsSpec_len;
+ xcb_xkb_string8_t *geometrySpec;
+ int geometrySpec_len;
+
+ /* xcb_xkb_list_components_request_t.major_opcode */
+ xcb_out.major_opcode = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_list_components_request_t.minor_opcode */
+ xcb_out.minor_opcode = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_list_components_request_t.length */
+ xcb_out.length = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_list_components_request_t.deviceSpec */
+ xcb_out.deviceSpec = *(xcb_xkb_device_spec_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_xkb_device_spec_t);
+ xcb_tmp += sizeof(xcb_xkb_device_spec_t);
+ xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t);
+ /* xcb_xkb_list_components_request_t.maxNames */
+ xcb_out.maxNames = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_list_components_request_t.keymapsSpecLen */
+ xcb_out.keymapsSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keymapsSpec */
+ keymapsSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ keymapsSpec_len = xcb_out.keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += keymapsSpec_len;
+ xcb_tmp += keymapsSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.keycodesSpecLen */
+ xcb_out.keycodesSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keycodesSpec */
+ keycodesSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ keycodesSpec_len = xcb_out.keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += keycodesSpec_len;
+ xcb_tmp += keycodesSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.typesSpecLen */
+ xcb_out.typesSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* typesSpec */
+ typesSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ typesSpec_len = xcb_out.typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += typesSpec_len;
+ xcb_tmp += typesSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.compatMapSpecLen */
+ xcb_out.compatMapSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* compatMapSpec */
+ compatMapSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ compatMapSpec_len = xcb_out.compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += compatMapSpec_len;
+ xcb_tmp += compatMapSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.symbolsSpecLen */
+ xcb_out.symbolsSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* symbolsSpec */
+ symbolsSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ symbolsSpec_len = xcb_out.symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += symbolsSpec_len;
+ xcb_tmp += symbolsSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_list_components_request_t.geometrySpecLen */
+ xcb_out.geometrySpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* geometrySpec */
+ geometrySpec = (xcb_xkb_string8_t *)xcb_tmp;
+ geometrySpec_len = xcb_out.geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += geometrySpec_len;
+ xcb_tmp += geometrySpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == _aux)
+ return xcb_buffer_len;
+
+ if (NULL == *_aux) {
+ /* allocate memory */
+ *_aux = malloc(xcb_buffer_len);
+ }
+
+ xcb_tmp = ((char *)*_aux)+xcb_buffer_len;
+ xcb_tmp -= geometrySpec_len;
+ memmove(xcb_tmp, geometrySpec, geometrySpec_len);
+ xcb_tmp -= symbolsSpec_len;
+ memmove(xcb_tmp, symbolsSpec, symbolsSpec_len);
+ xcb_tmp -= compatMapSpec_len;
+ memmove(xcb_tmp, compatMapSpec, compatMapSpec_len);
+ xcb_tmp -= typesSpec_len;
+ memmove(xcb_tmp, typesSpec, typesSpec_len);
+ xcb_tmp -= keycodesSpec_len;
+ memmove(xcb_tmp, keycodesSpec, keycodesSpec_len);
+ xcb_tmp -= keymapsSpec_len;
+ memmove(xcb_tmp, keymapsSpec, keymapsSpec_len);
+ **_aux = xcb_out;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_list_components_sizeof (const void *_buffer /**< */)
+{
+ return xcb_xkb_list_components_unserialize(_buffer, NULL);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t maxNames
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_list_components_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_cookie_t
+xcb_xkb_list_components (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t maxNames /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_LIST_COMPONENTS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_list_components_cookie_t xcb_ret;
+ xcb_xkb_list_components_request_t xcb_out;
+ /* in the protocol description, variable size fields are followed by fixed size fields */
+ void *xcb_aux = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.maxNames = maxNames;
+ xcb_out.keymapsSpecLen = keymapsSpecLen;
+ xcb_out.keycodesSpecLen = keycodesSpecLen;
+ xcb_out.typesSpecLen = typesSpecLen;
+ xcb_out.compatMapSpecLen = compatMapSpecLen;
+ xcb_out.symbolsSpecLen = symbolsSpecLen;
+ xcb_out.geometrySpecLen = geometrySpecLen;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t);
+ xcb_parts[3].iov_len = xcb_xkb_list_components_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec);
+ xcb_parts[3].iov_base = (char *) xcb_aux;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ free(xcb_aux);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_cookie_t xcb_xkb_list_components_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t maxNames
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_list_components_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_cookie_t
+xcb_xkb_list_components_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t maxNames /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_LIST_COMPONENTS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_list_components_cookie_t xcb_ret;
+ xcb_xkb_list_components_request_t xcb_out;
+ /* in the protocol description, variable size fields are followed by fixed size fields */
+ void *xcb_aux = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.maxNames = maxNames;
+ xcb_out.keymapsSpecLen = keymapsSpecLen;
+ xcb_out.keycodesSpecLen = keycodesSpecLen;
+ xcb_out.typesSpecLen = typesSpecLen;
+ xcb_out.compatMapSpecLen = compatMapSpecLen;
+ xcb_out.symbolsSpecLen = symbolsSpecLen;
+ xcb_out.geometrySpecLen = geometrySpecLen;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t);
+ xcb_parts[3].iov_len = xcb_xkb_list_components_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec);
+ xcb_parts[3].iov_base = (char *) xcb_aux;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ free(xcb_aux);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_keymaps_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_keymaps_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nKeymaps;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keymaps_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_keymaps_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ i.data = (xcb_xkb_listing_t *) (R + 1);
+ i.rem = R->nKeymaps;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_keycodes_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_keycodes_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nKeycodes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_keycodes_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_keycodes_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_keymaps_iterator(R));
+ i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index));
+ i.rem = R->nKeycodes;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_types_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_types_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_types_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_types_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_keycodes_iterator(R));
+ i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index));
+ i.rem = R->nTypes;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_compat_maps_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_compat_maps_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nCompatMaps;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_compat_maps_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_compat_maps_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_types_iterator(R));
+ i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index));
+ i.rem = R->nCompatMaps;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_symbols_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_symbols_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nSymbols;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_symbols_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_symbols_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_compat_maps_iterator(R));
+ i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index));
+ i.rem = R->nSymbols;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_list_components_geometries_length
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_list_components_geometries_length (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ return R->nGeometries;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_listing_iterator_t xcb_xkb_list_components_geometries_iterator
+ **
+ ** @param const xcb_xkb_list_components_reply_t *R
+ ** @returns xcb_xkb_listing_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_listing_iterator_t
+xcb_xkb_list_components_geometries_iterator (const xcb_xkb_list_components_reply_t *R /**< */)
+{
+ xcb_xkb_listing_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_listing_end(xcb_xkb_list_components_symbols_iterator(R));
+ i.data = (xcb_xkb_listing_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_listing_t, prev.index));
+ i.rem = R->nGeometries;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_list_components_reply_t * xcb_xkb_list_components_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_list_components_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_list_components_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_list_components_reply_t *
+xcb_xkb_list_components_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_list_components_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_list_components_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_get_kbd_by_name_serialize (void **_buffer /**< */,
+ const xcb_xkb_get_kbd_by_name_request_t *_aux /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[18];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ /* xcb_xkb_get_kbd_by_name_request_t.deviceSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->deviceSpec;
+ xcb_block_len += sizeof(xcb_xkb_device_spec_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_xkb_device_spec_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.need */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->need;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.want */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->want;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.load */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->load;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.keymapsSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keymapsSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keymapsSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) keymapsSpec;
+ xcb_block_len += _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.keycodesSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keycodesSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) keycodesSpec;
+ xcb_block_len += _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.typesSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* typesSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) typesSpec;
+ xcb_block_len += _aux->typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.compatMapSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatMapSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* compatMapSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) compatMapSpec;
+ xcb_block_len += _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.symbolsSpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsSpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* symbolsSpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) symbolsSpec;
+ xcb_block_len += _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.geometrySpecLen */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometrySpecLen;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* geometrySpec */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) geometrySpec;
+ xcb_block_len += _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_unserialize (const void *_buffer /**< */,
+ xcb_xkb_get_kbd_by_name_request_t **_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ xcb_xkb_get_kbd_by_name_request_t xcb_out;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ xcb_xkb_string8_t *keymapsSpec;
+ int keymapsSpec_len;
+ xcb_xkb_string8_t *keycodesSpec;
+ int keycodesSpec_len;
+ xcb_xkb_string8_t *typesSpec;
+ int typesSpec_len;
+ xcb_xkb_string8_t *compatMapSpec;
+ int compatMapSpec_len;
+ xcb_xkb_string8_t *symbolsSpec;
+ int symbolsSpec_len;
+ xcb_xkb_string8_t *geometrySpec;
+ int geometrySpec_len;
+
+ /* xcb_xkb_get_kbd_by_name_request_t.major_opcode */
+ xcb_out.major_opcode = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.minor_opcode */
+ xcb_out.minor_opcode = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.length */
+ xcb_out.length = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.deviceSpec */
+ xcb_out.deviceSpec = *(xcb_xkb_device_spec_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_xkb_device_spec_t);
+ xcb_tmp += sizeof(xcb_xkb_device_spec_t);
+ xcb_align_to = ALIGNOF(xcb_xkb_device_spec_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.need */
+ xcb_out.need = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.want */
+ xcb_out.want = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.load */
+ xcb_out.load = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.pad0 */
+ xcb_out.pad0 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.keymapsSpecLen */
+ xcb_out.keymapsSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keymapsSpec */
+ keymapsSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ keymapsSpec_len = xcb_out.keymapsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += keymapsSpec_len;
+ xcb_tmp += keymapsSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.keycodesSpecLen */
+ xcb_out.keycodesSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* keycodesSpec */
+ keycodesSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ keycodesSpec_len = xcb_out.keycodesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += keycodesSpec_len;
+ xcb_tmp += keycodesSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.typesSpecLen */
+ xcb_out.typesSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* typesSpec */
+ typesSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ typesSpec_len = xcb_out.typesSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += typesSpec_len;
+ xcb_tmp += typesSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.compatMapSpecLen */
+ xcb_out.compatMapSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* compatMapSpec */
+ compatMapSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ compatMapSpec_len = xcb_out.compatMapSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += compatMapSpec_len;
+ xcb_tmp += compatMapSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.symbolsSpecLen */
+ xcb_out.symbolsSpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* symbolsSpec */
+ symbolsSpec = (xcb_xkb_string8_t *)xcb_tmp;
+ symbolsSpec_len = xcb_out.symbolsSpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += symbolsSpec_len;
+ xcb_tmp += symbolsSpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* xcb_xkb_get_kbd_by_name_request_t.geometrySpecLen */
+ xcb_out.geometrySpecLen = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* geometrySpec */
+ geometrySpec = (xcb_xkb_string8_t *)xcb_tmp;
+ geometrySpec_len = xcb_out.geometrySpecLen * sizeof(xcb_xkb_string8_t);
+ xcb_block_len += geometrySpec_len;
+ xcb_tmp += geometrySpec_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == _aux)
+ return xcb_buffer_len;
+
+ if (NULL == *_aux) {
+ /* allocate memory */
+ *_aux = malloc(xcb_buffer_len);
+ }
+
+ xcb_tmp = ((char *)*_aux)+xcb_buffer_len;
+ xcb_tmp -= geometrySpec_len;
+ memmove(xcb_tmp, geometrySpec, geometrySpec_len);
+ xcb_tmp -= symbolsSpec_len;
+ memmove(xcb_tmp, symbolsSpec, symbolsSpec_len);
+ xcb_tmp -= compatMapSpec_len;
+ memmove(xcb_tmp, compatMapSpec, compatMapSpec_len);
+ xcb_tmp -= typesSpec_len;
+ memmove(xcb_tmp, typesSpec, typesSpec_len);
+ xcb_tmp -= keycodesSpec_len;
+ memmove(xcb_tmp, keycodesSpec, keycodesSpec_len);
+ xcb_tmp -= keymapsSpec_len;
+ memmove(xcb_tmp, keymapsSpec, keymapsSpec_len);
+ **_aux = xcb_out;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_sizeof (const void *_buffer /**< */)
+{
+ return xcb_xkb_get_kbd_by_name_unserialize(_buffer, NULL);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_type_iterator_t i;
+ i.data = /* replies */ S->types.map.types_rtrn;
+ i.rem = /* replies */ S->types.nTypes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.nKeySyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_sym_map_iterator_t i;
+ i.data = /* replies */ S->types.map.syms_rtrn;
+ i.rem = /* replies */ S->types.nKeySyms;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.acts_rtrn_count;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.nKeyActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->types.map.acts_rtrn_count + /* replies */ S->types.nKeyActions;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.acts_rtrn_acts;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.totalActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ i.data = /* replies */ S->types.map.acts_rtrn_acts;
+ i.rem = /* replies */ S->types.totalActions;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.behaviors_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.totalKeyBehaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_behavior_iterator_t i;
+ i.data = /* replies */ S->types.map.behaviors_rtrn;
+ i.rem = /* replies */ S->types.totalKeyBehaviors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.vmods_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.nVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->types.map.vmods_rtrn + /* replies */ S->types.nVModMapKeys;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.explicit_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.totalKeyExplicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_explicit_iterator_t i;
+ i.data = /* replies */ S->types.map.explicit_rtrn;
+ i.rem = /* replies */ S->types.totalKeyExplicit;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.modmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.totalModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_mod_map_iterator_t i;
+ i.data = /* replies */ S->types.map.modmap_rtrn;
+ i.rem = /* replies */ S->types.totalModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.map.vmodmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->types.totalVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_types_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_types_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_v_mod_map_iterator_t i;
+ i.data = /* replies */ S->types.map.vmodmap_rtrn;
+ i.rem = /* replies */ S->types.totalVModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[19];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->types_rtrn;
+ for(i=0; i<nTypes; i++) {
+ xcb_block_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->syms_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->syms_rtrn;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_block_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_count;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_types_map_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ _aux->types_rtrn = (xcb_xkb_key_type_t *)xcb_tmp;
+ for(i=0; i<nTypes; i++) {
+ xcb_tmp_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ _aux->syms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_tmp_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ _aux->acts_rtrn_count = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ _aux->vmods_rtrn = (uint8_t *)xcb_tmp;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_types_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_types_map_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_types_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_type_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.types_rtrn;
+ i.rem = /* replies */ S->client_symbols.nTypes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.nKeySyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_sym_map_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.syms_rtrn;
+ i.rem = /* replies */ S->client_symbols.nKeySyms;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.acts_rtrn_count;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.nKeyActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.acts_rtrn_count + /* replies */ S->client_symbols.nKeyActions;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.acts_rtrn_acts;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.totalActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.acts_rtrn_acts;
+ i.rem = /* replies */ S->client_symbols.totalActions;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.behaviors_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.totalKeyBehaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_behavior_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.behaviors_rtrn;
+ i.rem = /* replies */ S->client_symbols.totalKeyBehaviors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.vmods_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.nVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.vmods_rtrn + /* replies */ S->client_symbols.nVModMapKeys;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.explicit_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.totalKeyExplicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_explicit_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.explicit_rtrn;
+ i.rem = /* replies */ S->client_symbols.totalKeyExplicit;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.modmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.totalModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_mod_map_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.modmap_rtrn;
+ i.rem = /* replies */ S->client_symbols.totalModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.map.vmodmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->client_symbols.totalVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_v_mod_map_iterator_t i;
+ i.data = /* replies */ S->client_symbols.map.vmodmap_rtrn;
+ i.rem = /* replies */ S->client_symbols.totalVModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[19];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->types_rtrn;
+ for(i=0; i<nTypes; i++) {
+ xcb_block_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->syms_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->syms_rtrn;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_block_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_count;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ _aux->types_rtrn = (xcb_xkb_key_type_t *)xcb_tmp;
+ for(i=0; i<nTypes; i++) {
+ xcb_tmp_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ _aux->syms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_tmp_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ _aux->acts_rtrn_count = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ _aux->vmods_rtrn = (uint8_t *)xcb_tmp;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_type_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_type_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_type_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_types_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_type_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.types_rtrn;
+ i.rem = /* replies */ S->server_symbols.nTypes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.nKeySyms;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_sym_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_sym_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_sym_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_syms_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_sym_map_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.syms_rtrn;
+ i.rem = /* replies */ S->server_symbols.nKeySyms;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.acts_rtrn_count;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.nKeyActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_count_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.acts_rtrn_count + /* replies */ S->server_symbols.nKeyActions;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.acts_rtrn_acts;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.totalActions;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_acts_rtrn_acts_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.acts_rtrn_acts;
+ i.rem = /* replies */ S->server_symbols.totalActions;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_behavior_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.behaviors_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.totalKeyBehaviors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_behavior_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_set_behavior_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_behavior_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_behaviors_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_behavior_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.behaviors_rtrn;
+ i.rem = /* replies */ S->server_symbols.totalKeyBehaviors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.vmods_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.nVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmods_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.vmods_rtrn + /* replies */ S->server_symbols.nVModMapKeys;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_set_explicit_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.explicit_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.totalKeyExplicit;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_explicit_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_set_explicit_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_explicit_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_explicit_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_set_explicit_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.explicit_rtrn;
+ i.rem = /* replies */ S->server_symbols.totalKeyExplicit;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.modmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.totalModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_modmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_mod_map_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.modmap_rtrn;
+ i.rem = /* replies */ S->server_symbols.totalModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_v_mod_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.map.vmodmap_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->server_symbols.totalVModMapKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_v_mod_map_iterator_t xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *R
+ ** @returns xcb_xkb_key_v_mod_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_v_mod_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_vmodmap_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_v_mod_map_iterator_t i;
+ i.data = /* replies */ S->server_symbols.map.vmodmap_rtrn;
+ i.rem = /* replies */ S->server_symbols.totalVModMapKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[19];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->types_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->types_rtrn;
+ for(i=0; i<nTypes; i++) {
+ xcb_block_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->syms_rtrn;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->syms_rtrn;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_block_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_count;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyActions * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->acts_rtrn_acts;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalActions * sizeof(xcb_xkb_action_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->behaviors_rtrn;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmods_rtrn;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->explicit_rtrn;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->modmap_rtrn;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->vmodmap_rtrn;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */,
+ xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(present & XCB_XKB_MAP_PART_KEY_TYPES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* types_rtrn */
+ _aux->types_rtrn = (xcb_xkb_key_type_t *)xcb_tmp;
+ for(i=0; i<nTypes; i++) {
+ xcb_tmp_len = xcb_xkb_key_type_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_type_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_SYMS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* syms_rtrn */
+ _aux->syms_rtrn = (xcb_xkb_key_sym_map_t *)xcb_tmp;
+ for(i=0; i<nKeySyms; i++) {
+ xcb_tmp_len = xcb_xkb_key_sym_map_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_key_sym_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_ACTIONS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_count */
+ _aux->acts_rtrn_count = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKeyActions * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* acts_rtrn_acts */
+ _aux->acts_rtrn_acts = (xcb_xkb_action_t *)xcb_tmp;
+ xcb_block_len += totalActions * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ }
+ if(present & XCB_XKB_MAP_PART_KEY_BEHAVIORS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* behaviors_rtrn */
+ _aux->behaviors_rtrn = (xcb_xkb_set_behavior_t *)xcb_tmp;
+ xcb_block_len += totalKeyBehaviors * sizeof(xcb_xkb_set_behavior_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_behavior_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MODS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmods_rtrn */
+ _aux->vmods_rtrn = (uint8_t *)xcb_tmp;
+ xcb_block_len += nVModMapKeys * sizeof(xcb_keycode_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ }
+ if(present & XCB_XKB_MAP_PART_EXPLICIT_COMPONENTS) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* explicit_rtrn */
+ _aux->explicit_rtrn = (xcb_xkb_set_explicit_t *)xcb_tmp;
+ xcb_block_len += totalKeyExplicit * sizeof(xcb_xkb_set_explicit_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_set_explicit_t);
+ }
+ if(present & XCB_XKB_MAP_PART_MODIFIER_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* modmap_rtrn */
+ _aux->modmap_rtrn = (xcb_xkb_key_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalModMapKeys * sizeof(xcb_xkb_key_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_mod_map_t);
+ }
+ if(present & XCB_XKB_MAP_PART_VIRTUAL_MOD_MAP) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* vmodmap_rtrn */
+ _aux->vmodmap_rtrn = (xcb_xkb_key_v_mod_map_t *)xcb_tmp;
+ xcb_block_len += totalVModMapKeys * sizeof(xcb_xkb_key_v_mod_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_v_mod_map_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint8_t nKeySyms /**< */,
+ uint8_t nKeyActions /**< */,
+ uint16_t totalActions /**< */,
+ uint8_t totalKeyBehaviors /**< */,
+ uint8_t nVModMapKeys /**< */,
+ uint8_t totalKeyExplicit /**< */,
+ uint8_t totalModMapKeys /**< */,
+ uint8_t totalVModMapKeys /**< */,
+ uint16_t present /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack(_buffer, nTypes, nKeySyms, nKeyActions, totalActions, totalKeyBehaviors, nVModMapKeys, totalKeyExplicit, totalModMapKeys, totalVModMapKeys, present, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.typeNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.typeNames + /* replies */ S->key_names.nTypes;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.nLevelsPerType;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.nKTLevels;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.nLevelsPerType + /* replies */ S->key_names.nKTLevels;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.ktLevelNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return qt_xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.ktLevelNames + qt_xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.indicatorNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->key_names.indicators);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.indicatorNames + xcb_popcount(/* replies */ S->key_names.indicators);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.virtualModNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->key_names.virtualMods);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.virtualModNames + xcb_popcount(/* replies */ S->key_names.virtualMods);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.groups;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->key_names.groupNames);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.groups + xcb_popcount(/* replies */ S->key_names.groupNames);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.keyNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_name_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.keyNames;
+ i.rem = /* replies */ S->key_names.nKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.keyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.keyAliases;
+ i.rem = /* replies */ S->key_names.nKeyAliases;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.valueList.radioGroupNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->key_names.nRadioGroups;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->key_names.valueList.radioGroupNames + /* replies */ S->key_names.nRadioGroups;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[25];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.keycodesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.geometryName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.symbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.physSymbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.typesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.compatName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.keycodesName */
+ _aux->keycodesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.geometryName */
+ _aux->geometryName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.symbolsName */
+ _aux->symbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.physSymbolsName */
+ _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.typesName */
+ _aux->typesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t.compatName */
+ _aux->compatName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ _aux->typeNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ _aux->nLevelsPerType = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ _aux->indicatorNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ _aux->virtualModNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ _aux->groups = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.typeNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.nTypes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_type_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.typeNames + /* replies */ S->other_names.nTypes;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.nLevelsPerType;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.nKTLevels;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_n_levels_per_type_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.nLevelsPerType + /* replies */ S->other_names.nKTLevels;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.ktLevelNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return qt_xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.ktLevelNames + qt_xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.indicatorNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->other_names.indicators);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_indicator_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.indicatorNames + xcb_popcount(/* replies */ S->other_names.indicators);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.virtualModNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->other_names.virtualMods);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_virtual_mod_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.virtualModNames + xcb_popcount(/* replies */ S->other_names.virtualMods);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.groups;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->other_names.groupNames);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_groups_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.groups + xcb_popcount(/* replies */ S->other_names.groupNames);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_name_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.keyNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.nKeys;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_name_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_xkb_key_name_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_name_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_names_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_name_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.keyNames;
+ i.rem = /* replies */ S->other_names.nKeys;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.keyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.keyAliases;
+ i.rem = /* replies */ S->other_names.nKeyAliases;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_atom_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_atom_t *
+ **
+ *****************************************************************************/
+
+xcb_atom_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.valueList.radioGroupNames;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->other_names.nRadioGroups;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_radio_group_names_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->other_names.valueList.radioGroupNames + /* replies */ S->other_names.nRadioGroups;
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize (void **_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[25];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.keycodesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->keycodesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.geometryName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometryName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.symbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->symbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.physSymbolsName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->physSymbolsName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.typesName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->typesName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.compatName */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compatName;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->typeNames;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nTypes * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->nLevelsPerType;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKTLevels * sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicatorNames;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->virtualModNames;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->groups;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyNames;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->keyAliases;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[xcb_parts_idx].iov_len = nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->radioGroupNames;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = nRadioGroups * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */,
+ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ if(which & XCB_XKB_NAME_DETAIL_KEYCODES) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.keycodesName */
+ _aux->keycodesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.geometryName */
+ _aux->geometryName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.symbolsName */
+ _aux->symbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_PHYS_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.physSymbolsName */
+ _aux->physSymbolsName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.typesName */
+ _aux->typesName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_COMPAT) {
+ /* xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t.compatName */
+ _aux->compatName = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_TYPE_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* typeNames */
+ _aux->typeNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nTypes * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KT_LEVEL_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* nLevelsPerType */
+ _aux->nLevelsPerType = (uint8_t *)xcb_tmp;
+ xcb_block_len += nKTLevels * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_INDICATOR_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* indicatorNames */
+ _aux->indicatorNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(indicators) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_VIRTUAL_MOD_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* virtualModNames */
+ _aux->virtualModNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(virtualMods) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_GROUP_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* groups */
+ _aux->groups = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(groupNames) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyNames */
+ _aux->keyNames = (xcb_xkb_key_name_t *)xcb_tmp;
+ xcb_block_len += nKeys * sizeof(xcb_xkb_key_name_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_name_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_KEY_ALIASES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ _aux->keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp;
+ xcb_block_len += nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ if(which & XCB_XKB_NAME_DETAIL_RG_NAMES) {
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* radioGroupNames */
+ _aux->radioGroupNames = (xcb_atom_t *)xcb_tmp;
+ xcb_block_len += nRadioGroups * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_sizeof (const void *_buffer /**< */,
+ uint8_t nTypes /**< */,
+ uint16_t nKTLevels /**< */,
+ uint32_t indicators /**< */,
+ uint16_t virtualMods /**< */,
+ uint8_t groupNames /**< */,
+ uint8_t nKeys /**< */,
+ uint8_t nKeyAliases /**< */,
+ uint8_t nRadioGroups /**< */,
+ uint32_t which /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack(_buffer, nTypes, nKTLevels, indicators, virtualMods, groupNames, nKeys, nKeyAliases, nRadioGroups, which, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_types_map_t * xcb_xkb_get_kbd_by_name_replies_types_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_types_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_types_map_t *
+xcb_xkb_get_kbd_by_name_replies_types_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_replies_types_map_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** uint8_t * xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns uint8_t *
+ **
+ *****************************************************************************/
+
+uint8_t *
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->compat_map.si_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return (16 * /* replies */ S->compat_map.nSIRtrn);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_kbd_by_name_replies_compat_map_si_rtrn_end (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = /* replies */ S->compat_map.si_rtrn + (16 * /* replies */ S->compat_map.nSIRtrn);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_t * xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_mod_def_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_t *
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->compat_map.group_rtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return xcb_popcount(/* replies */ S->compat_map.groupsRtrn);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_mod_def_iterator_t xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_mod_def_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_mod_def_iterator_t
+xcb_xkb_get_kbd_by_name_replies_compat_map_group_rtrn_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_mod_def_iterator_t i;
+ i.data = /* replies */ S->compat_map.group_rtrn;
+ i.rem = xcb_popcount(/* replies */ S->compat_map.groupsRtrn);
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_client_symbols_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *
+xcb_xkb_get_kbd_by_name_replies_client_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t * xcb_xkb_get_kbd_by_name_replies_server_symbols_map
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *
+xcb_xkb_get_kbd_by_name_replies_server_symbols_map (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_t * xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_indicator_map_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_t *
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->indicator_maps.maps;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->indicator_maps.nIndicators;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_indicator_map_iterator_t xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_indicator_map_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_indicator_map_iterator_t
+xcb_xkb_get_kbd_by_name_replies_indicator_maps_maps_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_indicator_map_iterator_t i;
+ i.data = /* replies */ S->indicator_maps.maps;
+ i.rem = /* replies */ S->indicator_maps.nIndicators;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_key_names_value_list
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *
+xcb_xkb_get_kbd_by_name_replies_key_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t * xcb_xkb_get_kbd_by_name_replies_other_names_value_list
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *
+xcb_xkb_get_kbd_by_name_replies_other_names_value_list (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_t * xcb_xkb_get_kbd_by_name_replies_geometry_label_font
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_counted_string_16_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_t *
+xcb_xkb_get_kbd_by_name_replies_geometry_label_font (const xcb_xkb_get_kbd_by_name_replies_t *R /**< */)
+{
+ return (xcb_xkb_counted_string_16_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_properties_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_properties_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nProperties;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_property_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_property_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_property_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_properties_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_property_iterator_t i;
+ i.data = /* replies */ S->geometry.properties;
+ i.rem = /* replies */ S->geometry.nProperties;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_colors_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_colors_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nColors;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_counted_string_16_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_counted_string_16_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_counted_string_16_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_colors_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_counted_string_16_iterator_t i;
+ i.data = /* replies */ S->geometry.colors;
+ i.rem = /* replies */ S->geometry.nColors;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_shapes_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nShapes;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_shape_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_shape_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_shape_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_shapes_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_shape_iterator_t i;
+ i.data = /* replies */ S->geometry.shapes;
+ i.rem = /* replies */ S->geometry.nShapes;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_sections_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_sections_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nSections;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_section_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_section_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_section_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_sections_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_section_iterator_t i;
+ i.data = /* replies */ S->geometry.sections;
+ i.rem = /* replies */ S->geometry.nSections;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_doodads_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nDoodads;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_doodad_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_doodad_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_doodad_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_doodads_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_doodad_iterator_t i;
+ i.data = /* replies */ S->geometry.doodads;
+ i.rem = /* replies */ S->geometry.nDoodads;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_t * xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *S
+ ** @returns xcb_xkb_key_alias_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_t *
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases (const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.keyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ return /* replies */ S->geometry.nKeyAliases;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_key_alias_iterator_t xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_replies_t *R
+ ** @returns xcb_xkb_key_alias_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_key_alias_iterator_t
+xcb_xkb_get_kbd_by_name_replies_geometry_key_aliases_iterator (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+{
+ xcb_xkb_key_alias_iterator_t i;
+ i.data = /* replies */ S->geometry.keyAliases;
+ i.rem = /* replies */ S->geometry.nKeyAliases;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_serialize (void **_buffer /**< */,
+ uint16_t reported /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */)
+{
+ char *xcb_out = *_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int xcb_pad = 0;
+ char xcb_pad0[3] = {0, 0, 0};
+ struct iovec xcb_parts[172];
+ unsigned int xcb_parts_idx = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int i;
+ char *xcb_tmp;
+
+ if(reported & XCB_XKB_GBN_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_type */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_type;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_sequence */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_sequence;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_length */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.getmap_length;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*2;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMinKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeMinKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMaxKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.typeMaxKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.present */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.present;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstType;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeySym */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeySym;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalSyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalSyms;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeySyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeySyms;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyAction */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyAction;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalActions;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyActions;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyBehavior */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyBehavior;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstKeyExplicit;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstVModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.firstVModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.nVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.totalVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.pad1 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.virtualMods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->types.virtualMods;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_parts[xcb_parts_idx].iov_base = (char *)0;
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_types_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_types_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_types_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_COMPAT_MAP) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.compatDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.compatDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.groupsRtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.groupsRtrn;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.firstSIRtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.firstSIRtrn;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nSIRtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.nSIRtrn;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nTotalSI */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->compat_map.nTotalSI;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad1 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*16;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*16;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* si_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->compat_map.si_rtrn;
+ xcb_block_len += (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* group_rtrn */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->compat_map.group_rtrn;
+ xcb_block_len += xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*2;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMinKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientMinKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMaxKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.clientMaxKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.present */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.present;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstType;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeySym */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeySym;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalSyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalSyms;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeySyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeySyms;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyAction */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyAction;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalActions;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyActions;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyBehavior */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyBehavior;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstKeyExplicit;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstVModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.firstVModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.nVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.totalVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad1 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.virtualMods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->client_symbols.virtualMods;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_parts[xcb_parts_idx].iov_base = (char *)0;
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_client_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*2;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*2;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMinKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverMinKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMaxKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.serverMaxKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.present */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.present;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstType */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstType;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeySym */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeySym;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalSyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalSyms;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeySyms */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeySyms;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyAction */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyAction;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalActions;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyActions */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyActions;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyBehavior */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyBehavior;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyBehaviors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalKeyBehaviors;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstKeyExplicit;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyExplicit */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalKeyExplicit;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstVModMapKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.firstVModMapKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.nVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalVModMapKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.totalVModMapKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad1 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.virtualMods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->server_symbols.virtualMods;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_parts[xcb_parts_idx].iov_base = (char *)0;
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_server_symbols_map_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_INDICATOR_MAPS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.indicatorDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.indicatorDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.which */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.which;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.realIndicators */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.realIndicators;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.nIndicators */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->indicator_maps.nIndicators;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*15;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*15;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* maps */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->indicator_maps.maps;
+ xcb_block_len += _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_KEY_NAMES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.which */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.which;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMinKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyMinKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMaxKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.keyMaxKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.groupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.groupNames;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.virtualMods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.virtualMods;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.firstKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.firstKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.indicators */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.indicators;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nRadioGroups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nRadioGroups;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKeyAliases;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKTLevels */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->key_names.nKTLevels;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*4;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*4;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* valueList */
+ xcb_parts[xcb_parts_idx].iov_base = (char *)0;
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_OTHER_NAMES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.which */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.which;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMinKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherMinKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMaxKeyCode */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.otherMaxKeyCode;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nTypes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nTypes;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.groupNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.groupNames;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.virtualMods */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.virtualMods;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.firstKey */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.firstKey;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_keycode_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeys */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKeys;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.indicators */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.indicators;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint32_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nRadioGroups */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nRadioGroups;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKeyAliases;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKTLevels */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->other_names.nKTLevels;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_block_len += sizeof(uint8_t)*4;
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t)*4;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* valueList */
+ xcb_parts[xcb_parts_idx].iov_base = (char *)0;
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize(&xcb_parts[xcb_parts_idx].iov_base, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryDeviceID */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.geometryDeviceID;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.name */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.name;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryFound */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.geometryFound;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.pad0 */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &xcb_pad;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.widthMM */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.widthMM;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.heightMM */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.heightMM;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nProperties */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nProperties;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nColors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nColors;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nShapes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nShapes;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nSections */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nSections;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nDoodads */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nDoodads;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nKeyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.nKeyAliases;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint16_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.baseColorNdx */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.baseColorNdx;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.labelColorNdx */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) &_aux->geometry.labelColorNdx;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_parts[xcb_parts_idx].iov_len = sizeof(uint8_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* labelFont */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.labelFont;
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(_aux->geometry.labelFont);
+ xcb_parts[xcb_parts_idx].iov_len = xcb_xkb_counted_string_16_sizeof(_aux->geometry.labelFont);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* properties */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.properties;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->geometry.properties;
+ for(i=0; i<_aux->geometry.nProperties; i++) {
+ xcb_block_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_property_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* colors */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.colors;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->geometry.colors;
+ for(i=0; i<_aux->geometry.nColors; i++) {
+ xcb_block_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* shapes */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.shapes;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->geometry.shapes;
+ for(i=0; i<_aux->geometry.nShapes; i++) {
+ xcb_block_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_shape_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* sections */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.sections;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->geometry.sections;
+ for(i=0; i<_aux->geometry.nSections; i++) {
+ xcb_block_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_section_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* doodads */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.doodads;
+ xcb_parts[xcb_parts_idx].iov_len = 0;
+ xcb_tmp = (char *) _aux->geometry.doodads;
+ for(i=0; i<_aux->geometry.nDoodads; i++) {
+ xcb_block_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_parts[xcb_parts_idx].iov_len += xcb_block_len;
+ }
+ xcb_block_len = xcb_parts[xcb_parts_idx].iov_len;
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->geometry.keyAliases;
+ xcb_block_len += _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts[xcb_parts_idx].iov_len = _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_parts[xcb_parts_idx].iov_base = xcb_pad0;
+ xcb_parts[xcb_parts_idx].iov_len = xcb_pad;
+ xcb_parts_idx++;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ if (NULL == xcb_out) {
+ /* allocate memory */
+ xcb_out = malloc(xcb_buffer_len);
+ *_buffer = xcb_out;
+ }
+
+ xcb_tmp = xcb_out;
+ for(i=0; i<xcb_parts_idx; i++) {
+ if (0 != xcb_parts[i].iov_base && 0 != xcb_parts[i].iov_len)
+ memcpy(xcb_tmp, xcb_parts[i].iov_base, xcb_parts[i].iov_len);
+ if (0 != xcb_parts[i].iov_len)
+ xcb_tmp += xcb_parts[i].iov_len;
+ }
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_unpack (const void *_buffer /**< */,
+ uint16_t reported /**< */,
+ xcb_xkb_get_kbd_by_name_replies_t *_aux /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ if(reported & XCB_XKB_GBN_DETAIL_TYPES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_type */
+ _aux->types.getmap_type = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeDeviceID */
+ _aux->types.typeDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_sequence */
+ _aux->types.getmap_sequence = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.getmap_length */
+ _aux->types.getmap_length = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.pad0 */
+ _aux->types.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->types.pad0[1] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 2;
+ xcb_tmp += sizeof(uint8_t) * 2;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMinKeyCode */
+ _aux->types.typeMinKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.typeMaxKeyCode */
+ _aux->types.typeMaxKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.present */
+ _aux->types.present = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstType */
+ _aux->types.firstType = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nTypes */
+ _aux->types.nTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalTypes */
+ _aux->types.totalTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeySym */
+ _aux->types.firstKeySym = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalSyms */
+ _aux->types.totalSyms = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeySyms */
+ _aux->types.nKeySyms = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyAction */
+ _aux->types.firstKeyAction = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalActions */
+ _aux->types.totalActions = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyActions */
+ _aux->types.nKeyActions = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyBehavior */
+ _aux->types.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyBehaviors */
+ _aux->types.nKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyBehaviors */
+ _aux->types.totalKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstKeyExplicit */
+ _aux->types.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nKeyExplicit */
+ _aux->types.nKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalKeyExplicit */
+ _aux->types.totalKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstModMapKey */
+ _aux->types.firstModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nModMapKeys */
+ _aux->types.nModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalModMapKeys */
+ _aux->types.totalModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.firstVModMapKey */
+ _aux->types.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.nVModMapKeys */
+ _aux->types.nVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.totalVModMapKeys */
+ _aux->types.totalVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.pad1 */
+ _aux->types.pad1 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.types.virtualMods */
+ _aux->types.virtualMods = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_types_map_unpack(xcb_tmp, _aux->types.nTypes, _aux->types.nKeySyms, _aux->types.nKeyActions, _aux->types.totalActions, _aux->types.totalKeyBehaviors, _aux->types.nVModMapKeys, _aux->types.totalKeyExplicit, _aux->types.totalModMapKeys, _aux->types.totalVModMapKeys, _aux->types.present, &_aux->types.map);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_types_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_COMPAT_MAP) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.compatDeviceID */
+ _aux->compat_map.compatDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.groupsRtrn */
+ _aux->compat_map.groupsRtrn = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad0 */
+ _aux->compat_map.pad0 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.firstSIRtrn */
+ _aux->compat_map.firstSIRtrn = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nSIRtrn */
+ _aux->compat_map.nSIRtrn = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.nTotalSI */
+ _aux->compat_map.nTotalSI = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.compat_map.pad1 */
+ _aux->compat_map.pad1[0] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[1] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[2] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[3] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[4] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[5] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[6] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[7] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[8] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[9] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[10] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[11] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[12] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[13] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[14] = *(uint8_t *)xcb_tmp;
+ _aux->compat_map.pad1[15] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 16;
+ xcb_tmp += sizeof(uint8_t) * 16;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* si_rtrn */
+ _aux->compat_map.si_rtrn = (uint8_t *)xcb_tmp;
+ xcb_block_len += (16 * _aux->compat_map.nSIRtrn) * sizeof(uint8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* group_rtrn */
+ _aux->compat_map.group_rtrn = (xcb_xkb_mod_def_t *)xcb_tmp;
+ xcb_block_len += xcb_popcount(_aux->compat_map.groupsRtrn) * sizeof(xcb_xkb_mod_def_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_mod_def_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_CLIENT_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientDeviceID */
+ _aux->client_symbols.clientDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad0 */
+ _aux->client_symbols.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->client_symbols.pad0[1] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 2;
+ xcb_tmp += sizeof(uint8_t) * 2;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMinKeyCode */
+ _aux->client_symbols.clientMinKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.clientMaxKeyCode */
+ _aux->client_symbols.clientMaxKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.present */
+ _aux->client_symbols.present = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstType */
+ _aux->client_symbols.firstType = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nTypes */
+ _aux->client_symbols.nTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalTypes */
+ _aux->client_symbols.totalTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeySym */
+ _aux->client_symbols.firstKeySym = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalSyms */
+ _aux->client_symbols.totalSyms = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeySyms */
+ _aux->client_symbols.nKeySyms = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyAction */
+ _aux->client_symbols.firstKeyAction = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalActions */
+ _aux->client_symbols.totalActions = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyActions */
+ _aux->client_symbols.nKeyActions = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyBehavior */
+ _aux->client_symbols.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyBehaviors */
+ _aux->client_symbols.nKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyBehaviors */
+ _aux->client_symbols.totalKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstKeyExplicit */
+ _aux->client_symbols.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nKeyExplicit */
+ _aux->client_symbols.nKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalKeyExplicit */
+ _aux->client_symbols.totalKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstModMapKey */
+ _aux->client_symbols.firstModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nModMapKeys */
+ _aux->client_symbols.nModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalModMapKeys */
+ _aux->client_symbols.totalModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.firstVModMapKey */
+ _aux->client_symbols.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.nVModMapKeys */
+ _aux->client_symbols.nVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.totalVModMapKeys */
+ _aux->client_symbols.totalVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.pad1 */
+ _aux->client_symbols.pad1 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.client_symbols.virtualMods */
+ _aux->client_symbols.virtualMods = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_client_symbols_map_unpack(xcb_tmp, _aux->client_symbols.nTypes, _aux->client_symbols.nKeySyms, _aux->client_symbols.nKeyActions, _aux->client_symbols.totalActions, _aux->client_symbols.totalKeyBehaviors, _aux->client_symbols.nVModMapKeys, _aux->client_symbols.totalKeyExplicit, _aux->client_symbols.totalModMapKeys, _aux->client_symbols.totalVModMapKeys, _aux->client_symbols.present, &_aux->client_symbols.map);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_client_symbols_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_SERVER_SYMBOLS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverDeviceID */
+ _aux->server_symbols.serverDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad0 */
+ _aux->server_symbols.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->server_symbols.pad0[1] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 2;
+ xcb_tmp += sizeof(uint8_t) * 2;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMinKeyCode */
+ _aux->server_symbols.serverMinKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.serverMaxKeyCode */
+ _aux->server_symbols.serverMaxKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.present */
+ _aux->server_symbols.present = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstType */
+ _aux->server_symbols.firstType = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nTypes */
+ _aux->server_symbols.nTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalTypes */
+ _aux->server_symbols.totalTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeySym */
+ _aux->server_symbols.firstKeySym = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalSyms */
+ _aux->server_symbols.totalSyms = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeySyms */
+ _aux->server_symbols.nKeySyms = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyAction */
+ _aux->server_symbols.firstKeyAction = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalActions */
+ _aux->server_symbols.totalActions = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyActions */
+ _aux->server_symbols.nKeyActions = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyBehavior */
+ _aux->server_symbols.firstKeyBehavior = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyBehaviors */
+ _aux->server_symbols.nKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyBehaviors */
+ _aux->server_symbols.totalKeyBehaviors = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstKeyExplicit */
+ _aux->server_symbols.firstKeyExplicit = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nKeyExplicit */
+ _aux->server_symbols.nKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalKeyExplicit */
+ _aux->server_symbols.totalKeyExplicit = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstModMapKey */
+ _aux->server_symbols.firstModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nModMapKeys */
+ _aux->server_symbols.nModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalModMapKeys */
+ _aux->server_symbols.totalModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.firstVModMapKey */
+ _aux->server_symbols.firstVModMapKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.nVModMapKeys */
+ _aux->server_symbols.nVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.totalVModMapKeys */
+ _aux->server_symbols.totalVModMapKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.pad1 */
+ _aux->server_symbols.pad1 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.server_symbols.virtualMods */
+ _aux->server_symbols.virtualMods = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* map */
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_server_symbols_map_unpack(xcb_tmp, _aux->server_symbols.nTypes, _aux->server_symbols.nKeySyms, _aux->server_symbols.nKeyActions, _aux->server_symbols.totalActions, _aux->server_symbols.totalKeyBehaviors, _aux->server_symbols.nVModMapKeys, _aux->server_symbols.totalKeyExplicit, _aux->server_symbols.totalModMapKeys, _aux->server_symbols.totalVModMapKeys, _aux->server_symbols.present, &_aux->server_symbols.map);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_server_symbols_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_INDICATOR_MAPS) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.indicatorDeviceID */
+ _aux->indicator_maps.indicatorDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.which */
+ _aux->indicator_maps.which = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.realIndicators */
+ _aux->indicator_maps.realIndicators = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.nIndicators */
+ _aux->indicator_maps.nIndicators = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.indicator_maps.pad0 */
+ _aux->indicator_maps.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[1] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[2] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[3] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[4] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[5] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[6] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[7] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[8] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[9] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[10] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[11] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[12] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[13] = *(uint8_t *)xcb_tmp;
+ _aux->indicator_maps.pad0[14] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 15;
+ xcb_tmp += sizeof(uint8_t) * 15;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* maps */
+ _aux->indicator_maps.maps = (xcb_xkb_indicator_map_t *)xcb_tmp;
+ xcb_block_len += _aux->indicator_maps.nIndicators * sizeof(xcb_xkb_indicator_map_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_indicator_map_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_KEY_NAMES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyDeviceID */
+ _aux->key_names.keyDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.which */
+ _aux->key_names.which = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMinKeyCode */
+ _aux->key_names.keyMinKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.keyMaxKeyCode */
+ _aux->key_names.keyMaxKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nTypes */
+ _aux->key_names.nTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.groupNames */
+ _aux->key_names.groupNames = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.virtualMods */
+ _aux->key_names.virtualMods = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.firstKey */
+ _aux->key_names.firstKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeys */
+ _aux->key_names.nKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.indicators */
+ _aux->key_names.indicators = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nRadioGroups */
+ _aux->key_names.nRadioGroups = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKeyAliases */
+ _aux->key_names.nKeyAliases = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.nKTLevels */
+ _aux->key_names.nKTLevels = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.key_names.pad0 */
+ _aux->key_names.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->key_names.pad0[1] = *(uint8_t *)xcb_tmp;
+ _aux->key_names.pad0[2] = *(uint8_t *)xcb_tmp;
+ _aux->key_names.pad0[3] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 4;
+ xcb_tmp += sizeof(uint8_t) * 4;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* valueList */
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack(xcb_tmp, _aux->key_names.nTypes, _aux->key_names.nKTLevels, _aux->key_names.indicators, _aux->key_names.virtualMods, _aux->key_names.groupNames, _aux->key_names.nKeys, _aux->key_names.nKeyAliases, _aux->key_names.nRadioGroups, _aux->key_names.which, &_aux->key_names.valueList);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_key_names_value_list_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_OTHER_NAMES) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherDeviceID */
+ _aux->other_names.otherDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.which */
+ _aux->other_names.which = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMinKeyCode */
+ _aux->other_names.otherMinKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.otherMaxKeyCode */
+ _aux->other_names.otherMaxKeyCode = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nTypes */
+ _aux->other_names.nTypes = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.groupNames */
+ _aux->other_names.groupNames = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.virtualMods */
+ _aux->other_names.virtualMods = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.firstKey */
+ _aux->other_names.firstKey = *(xcb_keycode_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_keycode_t);
+ xcb_tmp += sizeof(xcb_keycode_t);
+ xcb_align_to = ALIGNOF(xcb_keycode_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeys */
+ _aux->other_names.nKeys = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.indicators */
+ _aux->other_names.indicators = *(uint32_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint32_t);
+ xcb_tmp += sizeof(uint32_t);
+ xcb_align_to = ALIGNOF(uint32_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nRadioGroups */
+ _aux->other_names.nRadioGroups = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKeyAliases */
+ _aux->other_names.nKeyAliases = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.nKTLevels */
+ _aux->other_names.nKTLevels = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.other_names.pad0 */
+ _aux->other_names.pad0[0] = *(uint8_t *)xcb_tmp;
+ _aux->other_names.pad0[1] = *(uint8_t *)xcb_tmp;
+ _aux->other_names.pad0[2] = *(uint8_t *)xcb_tmp;
+ _aux->other_names.pad0[3] = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t) * 4;
+ xcb_tmp += sizeof(uint8_t) * 4;
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* valueList */
+ xcb_block_len += xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack(xcb_tmp, _aux->other_names.nTypes, _aux->other_names.nKTLevels, _aux->other_names.indicators, _aux->other_names.virtualMods, _aux->other_names.groupNames, _aux->other_names.nKeys, _aux->other_names.nKeyAliases, _aux->other_names.nRadioGroups, _aux->other_names.which, &_aux->other_names.valueList);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_get_kbd_by_name_replies_other_names_value_list_t);
+ }
+ if(reported & XCB_XKB_GBN_DETAIL_GEOMETRY) {
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryDeviceID */
+ _aux->geometry.geometryDeviceID = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.name */
+ _aux->geometry.name = *(xcb_atom_t *)xcb_tmp;
+ xcb_block_len += sizeof(xcb_atom_t);
+ xcb_tmp += sizeof(xcb_atom_t);
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.geometryFound */
+ _aux->geometry.geometryFound = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.pad0 */
+ _aux->geometry.pad0 = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.widthMM */
+ _aux->geometry.widthMM = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.heightMM */
+ _aux->geometry.heightMM = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nProperties */
+ _aux->geometry.nProperties = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nColors */
+ _aux->geometry.nColors = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nShapes */
+ _aux->geometry.nShapes = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nSections */
+ _aux->geometry.nSections = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nDoodads */
+ _aux->geometry.nDoodads = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.nKeyAliases */
+ _aux->geometry.nKeyAliases = *(uint16_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint16_t);
+ xcb_tmp += sizeof(uint16_t);
+ xcb_align_to = ALIGNOF(uint16_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.baseColorNdx */
+ _aux->geometry.baseColorNdx = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* xcb_xkb_get_kbd_by_name_replies_t.geometry.labelColorNdx */
+ _aux->geometry.labelColorNdx = *(uint8_t *)xcb_tmp;
+ xcb_block_len += sizeof(uint8_t);
+ xcb_tmp += sizeof(uint8_t);
+ xcb_align_to = ALIGNOF(uint8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* labelFont */
+ _aux->geometry.labelFont = (xcb_xkb_counted_string_16_t *)xcb_tmp;
+ xcb_block_len += xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* properties */
+ _aux->geometry.properties = (xcb_xkb_property_t *)xcb_tmp;
+ for(i=0; i<_aux->geometry.nProperties; i++) {
+ xcb_tmp_len = xcb_xkb_property_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_property_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* colors */
+ _aux->geometry.colors = (xcb_xkb_counted_string_16_t *)xcb_tmp;
+ for(i=0; i<_aux->geometry.nColors; i++) {
+ xcb_tmp_len = xcb_xkb_counted_string_16_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_counted_string_16_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* shapes */
+ _aux->geometry.shapes = (xcb_xkb_shape_t *)xcb_tmp;
+ for(i=0; i<_aux->geometry.nShapes; i++) {
+ xcb_tmp_len = xcb_xkb_shape_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_shape_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* sections */
+ _aux->geometry.sections = (xcb_xkb_section_t *)xcb_tmp;
+ for(i=0; i<_aux->geometry.nSections; i++) {
+ xcb_tmp_len = xcb_xkb_section_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_section_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* doodads */
+ _aux->geometry.doodads = (xcb_xkb_doodad_t *)xcb_tmp;
+ for(i=0; i<_aux->geometry.nDoodads; i++) {
+ xcb_tmp_len = xcb_xkb_doodad_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_doodad_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* keyAliases */
+ _aux->geometry.keyAliases = (xcb_xkb_key_alias_t *)xcb_tmp;
+ xcb_block_len += _aux->geometry.nKeyAliases * sizeof(xcb_xkb_key_alias_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_key_alias_t);
+ }
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+int
+xcb_xkb_get_kbd_by_name_replies_sizeof (const void *_buffer /**< */,
+ uint16_t reported /**< */)
+{
+ xcb_xkb_get_kbd_by_name_replies_t _aux;
+ return xcb_xkb_get_kbd_by_name_replies_unpack(_buffer, reported, &_aux);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t need
+ ** @param uint16_t want
+ ** @param uint8_t load
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_get_kbd_by_name_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_cookie_t
+xcb_xkb_get_kbd_by_name (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t need /**< */,
+ uint16_t want /**< */,
+ uint8_t load /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_KBD_BY_NAME,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_kbd_by_name_cookie_t xcb_ret;
+ xcb_xkb_get_kbd_by_name_request_t xcb_out;
+ /* in the protocol description, variable size fields are followed by fixed size fields */
+ void *xcb_aux = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.need = need;
+ xcb_out.want = want;
+ xcb_out.load = load;
+ xcb_out.pad0 = 0;
+ xcb_out.keymapsSpecLen = keymapsSpecLen;
+ xcb_out.keycodesSpecLen = keycodesSpecLen;
+ xcb_out.typesSpecLen = typesSpecLen;
+ xcb_out.compatMapSpecLen = compatMapSpecLen;
+ xcb_out.symbolsSpecLen = symbolsSpecLen;
+ xcb_out.geometrySpecLen = geometrySpecLen;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t);
+ xcb_parts[3].iov_len = xcb_xkb_get_kbd_by_name_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec);
+ xcb_parts[3].iov_base = (char *) xcb_aux;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ free(xcb_aux);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_cookie_t xcb_xkb_get_kbd_by_name_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t need
+ ** @param uint16_t want
+ ** @param uint8_t load
+ ** @param uint8_t keymapsSpecLen
+ ** @param const xcb_xkb_string8_t *keymapsSpec
+ ** @param uint8_t keycodesSpecLen
+ ** @param const xcb_xkb_string8_t *keycodesSpec
+ ** @param uint8_t typesSpecLen
+ ** @param const xcb_xkb_string8_t *typesSpec
+ ** @param uint8_t compatMapSpecLen
+ ** @param const xcb_xkb_string8_t *compatMapSpec
+ ** @param uint8_t symbolsSpecLen
+ ** @param const xcb_xkb_string8_t *symbolsSpec
+ ** @param uint8_t geometrySpecLen
+ ** @param const xcb_xkb_string8_t *geometrySpec
+ ** @returns xcb_xkb_get_kbd_by_name_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_cookie_t
+xcb_xkb_get_kbd_by_name_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t need /**< */,
+ uint16_t want /**< */,
+ uint8_t load /**< */,
+ uint8_t keymapsSpecLen /**< */,
+ const xcb_xkb_string8_t *keymapsSpec /**< */,
+ uint8_t keycodesSpecLen /**< */,
+ const xcb_xkb_string8_t *keycodesSpec /**< */,
+ uint8_t typesSpecLen /**< */,
+ const xcb_xkb_string8_t *typesSpec /**< */,
+ uint8_t compatMapSpecLen /**< */,
+ const xcb_xkb_string8_t *compatMapSpec /**< */,
+ uint8_t symbolsSpecLen /**< */,
+ const xcb_xkb_string8_t *symbolsSpec /**< */,
+ uint8_t geometrySpecLen /**< */,
+ const xcb_xkb_string8_t *geometrySpec /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_KBD_BY_NAME,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_kbd_by_name_cookie_t xcb_ret;
+ xcb_xkb_get_kbd_by_name_request_t xcb_out;
+ /* in the protocol description, variable size fields are followed by fixed size fields */
+ void *xcb_aux = 0;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.need = need;
+ xcb_out.want = want;
+ xcb_out.load = load;
+ xcb_out.pad0 = 0;
+ xcb_out.keymapsSpecLen = keymapsSpecLen;
+ xcb_out.keycodesSpecLen = keycodesSpecLen;
+ xcb_out.typesSpecLen = typesSpecLen;
+ xcb_out.compatMapSpecLen = compatMapSpecLen;
+ xcb_out.symbolsSpecLen = symbolsSpecLen;
+ xcb_out.geometrySpecLen = geometrySpecLen;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = 2*sizeof(uint8_t) + sizeof(uint16_t);
+ xcb_parts[3].iov_len = xcb_xkb_get_kbd_by_name_serialize (&xcb_aux, &xcb_out, keymapsSpec, keycodesSpec, typesSpec, compatMapSpec, symbolsSpec, geometrySpec);
+ xcb_parts[3].iov_base = (char *) xcb_aux;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ free(xcb_aux);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_replies_t * xcb_xkb_get_kbd_by_name_replies
+ **
+ ** @param const xcb_xkb_get_kbd_by_name_reply_t *R
+ ** @returns xcb_xkb_get_kbd_by_name_replies_t *
+ **
+ *****************************************************************************/
+
+void *
+xcb_xkb_get_kbd_by_name_replies (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */)
+{
+ return (void *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_kbd_by_name_reply_t * xcb_xkb_get_kbd_by_name_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_kbd_by_name_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_kbd_by_name_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_kbd_by_name_reply_t *
+xcb_xkb_get_kbd_by_name_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_kbd_by_name_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_kbd_by_name_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_get_device_info_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_get_device_info_reply_t *_aux = (xcb_xkb_get_device_info_reply_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_get_device_info_reply_t);
+ xcb_tmp += xcb_block_len;
+ /* name */
+ xcb_block_len += _aux->nameLen * sizeof(xcb_xkb_string8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* btnActions */
+ xcb_block_len += _aux->nBtnsRtrn * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* leds */
+ for(i=0; i<_aux->nDeviceLedFBs; i++) {
+ xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_device_led_info_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t wanted
+ ** @param uint8_t allButtons
+ ** @param uint8_t firstButton
+ ** @param uint8_t nButtons
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @returns xcb_xkb_get_device_info_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_cookie_t
+xcb_xkb_get_device_info (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t wanted /**< */,
+ uint8_t allButtons /**< */,
+ uint8_t firstButton /**< */,
+ uint8_t nButtons /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_DEVICE_INFO,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_device_info_cookie_t xcb_ret;
+ xcb_xkb_get_device_info_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.wanted = wanted;
+ xcb_out.allButtons = allButtons;
+ xcb_out.firstButton = firstButton;
+ xcb_out.nButtons = nButtons;
+ xcb_out.pad0 = 0;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_cookie_t xcb_xkb_get_device_info_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint16_t wanted
+ ** @param uint8_t allButtons
+ ** @param uint8_t firstButton
+ ** @param uint8_t nButtons
+ ** @param xcb_xkb_led_class_spec_t ledClass
+ ** @param xcb_xkb_id_spec_t ledID
+ ** @returns xcb_xkb_get_device_info_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_cookie_t
+xcb_xkb_get_device_info_unchecked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint16_t wanted /**< */,
+ uint8_t allButtons /**< */,
+ uint8_t firstButton /**< */,
+ uint8_t nButtons /**< */,
+ xcb_xkb_led_class_spec_t ledClass /**< */,
+ xcb_xkb_id_spec_t ledID /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 2,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_GET_DEVICE_INFO,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[4];
+ xcb_xkb_get_device_info_cookie_t xcb_ret;
+ xcb_xkb_get_device_info_request_t xcb_out;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.wanted = wanted;
+ xcb_out.allButtons = allButtons;
+ xcb_out.firstButton = firstButton;
+ xcb_out.nButtons = nButtons;
+ xcb_out.pad0 = 0;
+ xcb_out.ledClass = ledClass;
+ xcb_out.ledID = ledID;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_string8_t * xcb_xkb_get_device_info_name
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_string8_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_string8_t *
+xcb_xkb_get_device_info_name (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ return (xcb_xkb_string8_t *) (R + 1);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_name_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_name_length (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ return R->nameLen;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_generic_iterator_t xcb_xkb_get_device_info_name_end
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_generic_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_generic_iterator_t
+xcb_xkb_get_device_info_name_end (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ xcb_generic_iterator_t i;
+ i.data = ((xcb_xkb_string8_t *) (R + 1)) + (R->nameLen);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_t * xcb_xkb_get_device_info_btn_actions
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_action_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_t *
+xcb_xkb_get_device_info_btn_actions (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ xcb_generic_iterator_t prev = xcb_xkb_get_device_info_name_end(R);
+ return (xcb_xkb_action_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_action_t, prev.index) + 0);
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_btn_actions_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_btn_actions_length (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ return R->nBtnsRtrn;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_action_iterator_t xcb_xkb_get_device_info_btn_actions_iterator
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_action_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_action_iterator_t
+xcb_xkb_get_device_info_btn_actions_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ xcb_xkb_action_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_get_device_info_name_end(R);
+ i.data = (xcb_xkb_action_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_action_t, prev.index));
+ i.rem = R->nBtnsRtrn;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** int xcb_xkb_get_device_info_leds_length
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns int
+ **
+ *****************************************************************************/
+
+int
+xcb_xkb_get_device_info_leds_length (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ return R->nDeviceLedFBs;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_device_led_info_iterator_t xcb_xkb_get_device_info_leds_iterator
+ **
+ ** @param const xcb_xkb_get_device_info_reply_t *R
+ ** @returns xcb_xkb_device_led_info_iterator_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_device_led_info_iterator_t
+xcb_xkb_get_device_info_leds_iterator (const xcb_xkb_get_device_info_reply_t *R /**< */)
+{
+ xcb_xkb_device_led_info_iterator_t i;
+ xcb_generic_iterator_t prev = xcb_xkb_action_end(xcb_xkb_get_device_info_btn_actions_iterator(R));
+ i.data = (xcb_xkb_device_led_info_t *) ((char *) prev.data + XCB_TYPE_PAD(xcb_xkb_device_led_info_t, prev.index));
+ i.rem = R->nDeviceLedFBs;
+ i.index = (char *) i.data - (char *) R;
+ return i;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_get_device_info_reply_t * xcb_xkb_get_device_info_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_get_device_info_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_get_device_info_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_get_device_info_reply_t *
+xcb_xkb_get_device_info_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_get_device_info_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_get_device_info_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
+int
+xcb_xkb_set_device_info_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_device_info_request_t *_aux = (xcb_xkb_set_device_info_request_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+
+ xcb_block_len += sizeof(xcb_xkb_set_device_info_request_t);
+ xcb_tmp += xcb_block_len;
+ /* btnActions */
+ xcb_block_len += _aux->nBtns * sizeof(xcb_xkb_action_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_action_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+ /* leds */
+ for(i=0; i<_aux->nDeviceLedFBs; i++) {
+ xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp);
+ xcb_block_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_align_to = ALIGNOF(xcb_xkb_device_led_info_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_device_info_checked
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t firstBtn
+ ** @param uint8_t nBtns
+ ** @param uint16_t change
+ ** @param uint16_t nDeviceLedFBs
+ ** @param const xcb_xkb_action_t *btnActions
+ ** @param const xcb_xkb_device_led_info_t *leds
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_device_info_checked (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t firstBtn /**< */,
+ uint8_t nBtns /**< */,
+ uint16_t change /**< */,
+ uint16_t nDeviceLedFBs /**< */,
+ const xcb_xkb_action_t *btnActions /**< */,
+ const xcb_xkb_device_led_info_t *leds /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 6,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_DEVICE_INFO,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[8];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_device_info_request_t xcb_out;
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+ char *xcb_tmp;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.firstBtn = firstBtn;
+ xcb_out.nBtns = nBtns;
+ xcb_out.change = change;
+ xcb_out.nDeviceLedFBs = nDeviceLedFBs;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_action_t btnActions */
+ xcb_parts[4].iov_base = (char *) btnActions;
+ xcb_parts[4].iov_len = nBtns * sizeof(xcb_xkb_action_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+ /* xcb_xkb_device_led_info_t leds */
+ xcb_parts[6].iov_base = (char *) leds;
+ xcb_parts[6].iov_len = 0;
+ xcb_tmp = (char *)leds;
+ for(i=0; i<nDeviceLedFBs; i++) {
+ xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp);
+ xcb_parts[6].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[7].iov_base = 0;
+ xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_void_cookie_t xcb_xkb_set_device_info
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_device_spec_t deviceSpec
+ ** @param uint8_t firstBtn
+ ** @param uint8_t nBtns
+ ** @param uint16_t change
+ ** @param uint16_t nDeviceLedFBs
+ ** @param const xcb_xkb_action_t *btnActions
+ ** @param const xcb_xkb_device_led_info_t *leds
+ ** @returns xcb_void_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_void_cookie_t
+xcb_xkb_set_device_info (xcb_connection_t *c /**< */,
+ xcb_xkb_device_spec_t deviceSpec /**< */,
+ uint8_t firstBtn /**< */,
+ uint8_t nBtns /**< */,
+ uint16_t change /**< */,
+ uint16_t nDeviceLedFBs /**< */,
+ const xcb_xkb_action_t *btnActions /**< */,
+ const xcb_xkb_device_led_info_t *leds /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 6,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_DEVICE_INFO,
+ /* isvoid */ 1
+ };
+
+ struct iovec xcb_parts[8];
+ xcb_void_cookie_t xcb_ret;
+ xcb_xkb_set_device_info_request_t xcb_out;
+ unsigned int i;
+ unsigned int xcb_tmp_len;
+ char *xcb_tmp;
+
+ xcb_out.deviceSpec = deviceSpec;
+ xcb_out.firstBtn = firstBtn;
+ xcb_out.nBtns = nBtns;
+ xcb_out.change = change;
+ xcb_out.nDeviceLedFBs = nDeviceLedFBs;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_action_t btnActions */
+ xcb_parts[4].iov_base = (char *) btnActions;
+ xcb_parts[4].iov_len = nBtns * sizeof(xcb_xkb_action_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+ /* xcb_xkb_device_led_info_t leds */
+ xcb_parts[6].iov_base = (char *) leds;
+ xcb_parts[6].iov_len = 0;
+ xcb_tmp = (char *)leds;
+ for(i=0; i<nDeviceLedFBs; i++) {
+ xcb_tmp_len = xcb_xkb_device_led_info_sizeof(xcb_tmp);
+ xcb_parts[6].iov_len += xcb_tmp_len;
+ xcb_tmp += xcb_tmp_len;
+ }
+ xcb_parts[7].iov_base = 0;
+ xcb_parts[7].iov_len = -xcb_parts[6].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+int
+xcb_xkb_set_debugging_flags_sizeof (const void *_buffer /**< */)
+{
+ char *xcb_tmp = (char *)_buffer;
+ const xcb_xkb_set_debugging_flags_request_t *_aux = (xcb_xkb_set_debugging_flags_request_t *)_buffer;
+ unsigned int xcb_buffer_len = 0;
+ unsigned int xcb_block_len = 0;
+ unsigned int xcb_pad = 0;
+ unsigned int xcb_align_to;
+
+
+ xcb_block_len += sizeof(xcb_xkb_set_debugging_flags_request_t);
+ xcb_tmp += xcb_block_len;
+ /* message */
+ xcb_block_len += _aux->msgLength * sizeof(xcb_xkb_string8_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_xkb_string8_t);
+ /* insert padding */
+ xcb_pad = -xcb_block_len & (xcb_align_to - 1);
+ xcb_buffer_len += xcb_block_len + xcb_pad;
+ if (0 != xcb_pad) {
+ xcb_tmp += xcb_pad;
+ xcb_pad = 0;
+ }
+ xcb_block_len = 0;
+
+ return xcb_buffer_len;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t msgLength
+ ** @param uint32_t affectFlags
+ ** @param uint32_t flags
+ ** @param uint32_t affectCtrls
+ ** @param uint32_t ctrls
+ ** @param const xcb_xkb_string8_t *message
+ ** @returns xcb_xkb_set_debugging_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_cookie_t
+xcb_xkb_set_debugging_flags (xcb_connection_t *c /**< */,
+ uint16_t msgLength /**< */,
+ uint32_t affectFlags /**< */,
+ uint32_t flags /**< */,
+ uint32_t affectCtrls /**< */,
+ uint32_t ctrls /**< */,
+ const xcb_xkb_string8_t *message /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 4,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_DEBUGGING_FLAGS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[6];
+ xcb_xkb_set_debugging_flags_cookie_t xcb_ret;
+ xcb_xkb_set_debugging_flags_request_t xcb_out;
+
+ xcb_out.msgLength = msgLength;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.affectFlags = affectFlags;
+ xcb_out.flags = flags;
+ xcb_out.affectCtrls = affectCtrls;
+ xcb_out.ctrls = ctrls;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_string8_t message */
+ xcb_parts[4].iov_base = (char *) message;
+ xcb_parts[4].iov_len = msgLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, XCB_REQUEST_CHECKED, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_cookie_t xcb_xkb_set_debugging_flags_unchecked
+ **
+ ** @param xcb_connection_t *c
+ ** @param uint16_t msgLength
+ ** @param uint32_t affectFlags
+ ** @param uint32_t flags
+ ** @param uint32_t affectCtrls
+ ** @param uint32_t ctrls
+ ** @param const xcb_xkb_string8_t *message
+ ** @returns xcb_xkb_set_debugging_flags_cookie_t
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_cookie_t
+xcb_xkb_set_debugging_flags_unchecked (xcb_connection_t *c /**< */,
+ uint16_t msgLength /**< */,
+ uint32_t affectFlags /**< */,
+ uint32_t flags /**< */,
+ uint32_t affectCtrls /**< */,
+ uint32_t ctrls /**< */,
+ const xcb_xkb_string8_t *message /**< */)
+{
+ static const xcb_protocol_request_t xcb_req = {
+ /* count */ 4,
+ /* ext */ &xcb_xkb_id,
+ /* opcode */ XCB_XKB_SET_DEBUGGING_FLAGS,
+ /* isvoid */ 0
+ };
+
+ struct iovec xcb_parts[6];
+ xcb_xkb_set_debugging_flags_cookie_t xcb_ret;
+ xcb_xkb_set_debugging_flags_request_t xcb_out;
+
+ xcb_out.msgLength = msgLength;
+ memset(xcb_out.pad0, 0, 2);
+ xcb_out.affectFlags = affectFlags;
+ xcb_out.flags = flags;
+ xcb_out.affectCtrls = affectCtrls;
+ xcb_out.ctrls = ctrls;
+
+ xcb_parts[2].iov_base = (char *) &xcb_out;
+ xcb_parts[2].iov_len = sizeof(xcb_out);
+ xcb_parts[3].iov_base = 0;
+ xcb_parts[3].iov_len = -xcb_parts[2].iov_len & 3;
+ /* xcb_xkb_string8_t message */
+ xcb_parts[4].iov_base = (char *) message;
+ xcb_parts[4].iov_len = msgLength * sizeof(xcb_xkb_string8_t);
+ xcb_parts[5].iov_base = 0;
+ xcb_parts[5].iov_len = -xcb_parts[4].iov_len & 3;
+
+ xcb_ret.sequence = xcb_send_request(c, 0, xcb_parts + 2, &xcb_req);
+ return xcb_ret;
+}
+
+
+/*****************************************************************************
+ **
+ ** xcb_xkb_set_debugging_flags_reply_t * xcb_xkb_set_debugging_flags_reply
+ **
+ ** @param xcb_connection_t *c
+ ** @param xcb_xkb_set_debugging_flags_cookie_t cookie
+ ** @param xcb_generic_error_t **e
+ ** @returns xcb_xkb_set_debugging_flags_reply_t *
+ **
+ *****************************************************************************/
+
+xcb_xkb_set_debugging_flags_reply_t *
+xcb_xkb_set_debugging_flags_reply (xcb_connection_t *c /**< */,
+ xcb_xkb_set_debugging_flags_cookie_t cookie /**< */,
+ xcb_generic_error_t **e /**< */)
+{
+ return (xcb_xkb_set_debugging_flags_reply_t *) xcb_wait_for_reply(c, cookie.sequence, e);
+}
+
diff --git a/src/3rdparty/xcb/libxcb/xkb.patch b/src/3rdparty/xcb/libxcb/xkb.patch
new file mode 100644
index 0000000000..054d97467f
--- /dev/null
+++ b/src/3rdparty/xcb/libxcb/xkb.patch
@@ -0,0 +1,172 @@
+diff --git src/3rdparty/xcb/libxcb/xkb.c src/3rdparty/xcb/libxcb/xkb.c
+index cd09226..3e07d6d 100644
+--- src/3rdparty/xcb/libxcb/xkb.c
++++ src/3rdparty/xcb/libxcb/xkb.c
+@@ -15,6 +15,15 @@
+
+ xcb_extension_t xcb_xkb_id = { "XKEYBOARD", 0 };
+
++int qt_xcb_sumof(uint8_t *list, int len)
++{
++ int i, s = 0;
++ for(i=0; i<len; i++) {
++ s += *list;
++ list++;
++ }
++ return s;
++}
+
+ /*****************************************************************************
+ **
+@@ -9622,7 +9631,7 @@ int
+ xcb_xkb_get_names_value_list_kt_level_names_length (const xcb_xkb_get_names_reply_t *R /**< */,
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+ {
+- return xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
++ return qt_xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
+ }
+
+
+@@ -9640,7 +9649,7 @@ xcb_xkb_get_names_value_list_kt_level_names_end (const xcb_xkb_get_names_reply_t
+ const xcb_xkb_get_names_value_list_t *S /**< */)
+ {
+ xcb_generic_iterator_t i;
+- i.data = /* valueList */ S->ktLevelNames + xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
++ i.data = /* valueList */ S->ktLevelNames + qt_xcb_sumof(/* valueList */ S->nLevelsPerType, R->nTypes);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+@@ -10089,8 +10098,8 @@ xcb_xkb_get_names_value_list_serialize (void **_
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+- xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
++ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -10330,7 +10339,7 @@ xcb_xkb_get_names_value_list_unpack (const void *_buffer /
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nTypes) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -10707,7 +10716,7 @@ int
+ xcb_xkb_set_names_values_kt_level_names_length (const xcb_xkb_set_names_request_t *R /**< */,
+ const xcb_xkb_set_names_values_t *S /**< */)
+ {
+- return xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
++ return qt_xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
+ }
+
+
+@@ -10725,7 +10734,7 @@ xcb_xkb_set_names_values_kt_level_names_end (const xcb_xkb_set_names_request_t *
+ const xcb_xkb_set_names_values_t *S /**< */)
+ {
+ xcb_generic_iterator_t i;
+- i.data = /* values */ S->ktLevelNames + xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
++ i.data = /* values */ S->ktLevelNames + qt_xcb_sumof(/* values */ S->nLevelsPerType, R->nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+@@ -11175,8 +11184,8 @@ xcb_xkb_set_names_values_serialize (void **_buffer
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+- xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -11417,7 +11426,7 @@ xcb_xkb_set_names_values_unpack (const void *_buffer /**< */,
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -16654,7 +16663,7 @@ int
+ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+ {
+- return xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
++ return qt_xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
+ }
+
+
+@@ -16672,7 +16681,7 @@ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_kt_level_names_end (const x
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+ {
+ xcb_generic_iterator_t i;
+- i.data = /* replies */ S->key_names.valueList.ktLevelNames + xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
++ i.data = /* replies */ S->key_names.valueList.ktLevelNames + qt_xcb_sumof(/* replies */ S->key_names.valueList.nLevelsPerType, /* replies */ S->key_names.nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+@@ -17122,8 +17131,8 @@ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_serialize (void
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+- xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -17364,7 +17373,7 @@ xcb_xkb_get_kbd_by_name_replies_key_names_value_list_unpack (const void
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -17624,7 +17633,7 @@ int
+ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_length (const xcb_xkb_get_kbd_by_name_reply_t *R /**< */,
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+ {
+- return xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
++ return qt_xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
+ }
+
+
+@@ -17642,7 +17651,7 @@ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_kt_level_names_end (const
+ const xcb_xkb_get_kbd_by_name_replies_t *S /**< */)
+ {
+ xcb_generic_iterator_t i;
+- i.data = /* replies */ S->other_names.valueList.ktLevelNames + xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
++ i.data = /* replies */ S->other_names.valueList.ktLevelNames + qt_xcb_sumof(/* replies */ S->other_names.valueList.nLevelsPerType, /* replies */ S->other_names.nKTLevels);
+ i.rem = 0;
+ i.index = (char *) i.data - (char *) S;
+ return i;
+@@ -18092,8 +18101,8 @@ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_serialize (void
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ xcb_parts[xcb_parts_idx].iov_base = (char *) _aux->ktLevelNames;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+- xcb_parts[xcb_parts_idx].iov_len = xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_parts[xcb_parts_idx].iov_len = qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_parts_idx++;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
+@@ -18334,7 +18343,7 @@ xcb_xkb_get_kbd_by_name_replies_other_names_value_list_unpack (const void
+ xcb_block_len = 0;
+ /* ktLevelNames */
+ _aux->ktLevelNames = (xcb_atom_t *)xcb_tmp;
+- xcb_block_len += xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
++ xcb_block_len += qt_xcb_sumof(_aux->nLevelsPerType, nKTLevels) * sizeof(xcb_atom_t);
+ xcb_tmp += xcb_block_len;
+ xcb_align_to = ALIGNOF(xcb_atom_t);
+ }
diff --git a/src/plugins/platforms/xcb/xcb-plugin.pro b/src/plugins/platforms/xcb/xcb-plugin.pro
index 99429333d6..eb90f0ae10 100644
--- a/src/plugins/platforms/xcb/xcb-plugin.pro
+++ b/src/plugins/platforms/xcb/xcb-plugin.pro
@@ -113,6 +113,7 @@ contains(QT_CONFIG, xcb-qt) {
} else {
LIBS += -lxcb -lxcb-image -lxcb-keysyms -lxcb-icccm -lxcb-sync -lxcb-xfixes -lxcb-shm -lxcb-randr
!contains(DEFINES, QT_NO_SHAPE):LIBS += -lxcb-shape
+ !contains(DEFINES, QT_NO_XKB):LIBS += -lxcb-xkb
}
# libxkbcommon
diff --git a/src/plugins/platforms/xcb/xcb-static/xcb-static.pro b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
index 01667d41db..2fd5519053 100644
--- a/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
+++ b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
@@ -24,7 +24,8 @@ SOURCES += \
$$LIBXCB_DIR/shm.c \
$$LIBXCB_DIR/sync.c \
$$LIBXCB_DIR/render.c \
- $$LIBXCB_DIR/shape.c
+ $$LIBXCB_DIR/shape.c \
+ $$LIBXCB_DIR/xkb.c
#
# xcb-util