xcb_input_list_input_devices(3)

πŸ“¦
version 1.17.0 Β· 4 versions
, in alpine 3.22, alpine 3.23, alpine 3.24, arch rolling, centos-stream 10, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu questing, ubuntu resolute, ubuntu stonking

πŸ’– xcb_input_list_input_devices β€” XCB Requests ✨

okay bestie, welcome to xcb_input_list_input_devices(3), a section-3 manual page from the XCB Requests fam. this is the one that asks the X server to spill the tea on every input device it knows about. it's giving "let me see the roster" energy and honestly? iconic. πŸ‘‘


πŸŽ€ SYNOPSIS

#include <xcb/xinput.h>

🧚 Request function

xcb_input_list_input_devices_cookie_t
xcb_input_list_input_devices(xcb_connection_t *conn,

πŸ“ Reply datastructure

typedef struct xcb_input_list_input_devices_reply_t {
    uint8_t  response_type;
    uint8_t  xi_reply_type;
    uint16_t sequence;
    uint32_t length;
    uint8_t  devices_len;
    uint8_t  pad0[23];
} xcb_input_list_input_devices_reply_t;

πŸ’… Reply function

xcb_input_list_input_devices_reply_t
       *xcb_input_list_input_devices_reply(xcb_connection_t *conn,
       xcb_input_list_input_devices_cookie_t cookie,
       xcb_generic_error_t **e);

🌈 Reply accessors

xcb_input_device_info_t *xcb_input_list_input_devices_devices(const
       xcb_input_list_input_devices_request_t *reply);
int xcb_input_list_input_devices_devices_length(const
       xcb_input_list_input_devices_reply_t *reply);
xcb_input_device_info_iterator_t
       xcb_input_list_input_devices_devices_iterator(const
       xcb_input_list_input_devices_reply_t *reply);
int xcb_input_list_input_devices_infos_length(const
       xcb_input_list_input_devices_reply_t *reply);
xcb_input_input_info_iterator_t
       xcb_input_list_input_devices_infos_iterator(const
       xcb_input_list_input_devices_reply_t *reply);
int xcb_input_list_input_devices_names_length(const
       xcb_input_list_input_devices_reply_t *reply);
xcb_str_iterator_t xcb_input_list_input_devices_names_iterator(const
       xcb_input_list_input_devices_reply_t *reply);
uint8_t
       *xcb_input_list_input_devices_pad_1 (const
       xcb_input_list_input_devices_request_t *reply)

🫢 REQUEST ARGUMENTS

  • conn β€” your XCB connection to X11. the lil lifeline to the server, the group chat you're sending the request into. πŸ’Œ

🌸 REPLY FIELDS

  • response_type β€” the type of this reply. in this case it's XCB_INPUT_LIST_INPUT_DEVICES. this field also lives in the xcb_generic_reply_t, so you can use it to tell replies apart from each other. it's the name tag at the party. 🏷️
  • sequence β€” the sequence number of the last request processed by the X11 server. lowkey the "seen at" timestamp of your request. ⏱️
  • length β€” the length of the reply, in words (and a word is 4 bytes, no cap). πŸ“
  • xi_reply_type β€” TODO: NOT YET DOCUMENTED. yeah bestie, even the docs are gatekeeping this one. πŸ™ˆ
  • devices_len β€” TODO: NOT YET DOCUMENTED. same situation, it's a mystery. πŸ’€

✨ DESCRIPTION

okay so… this section is literally empty in the original. nothing. a void. the blank canvas of manpages. πŸ•³οΈβœ¨ no description was written, so i'm not about to invent one for you β€” that would be making stuff up and we don't do that here.


πŸ¦‹ RETURN VALUE

returns an xcb_input_list_input_devices_cookie_t. errors have to be handled when you call the reply function xcb_input_list_input_devices_reply. πŸͺ

if you'd rather handle errors in the event loop instead, use xcb_input_list_input_devices_unchecked. see xcb-requests(3) for details. different vibe, same request, pick your fighter. πŸ’«


πŸ’œ ERRORS

This request does never generate any errors. not one. zero. she's unproblematic, and we love that for her. πŸ˜ŒπŸ’–

πŸ‘‘ SEE ALSO

nothing listed here, bestie. the SEE ALSO section is as empty as my weekend plans. 🫠


🌟 AUTHOR

generated from xinput.xml. contact xcb@lists.freedesktop.org for corrections and improvements. if you spot something off, pls tell them, they're literally asking. 🫢


and that's the whole page, fr fr. it came to you from X Version 11 with libxcb 1.17.0 doing the heavy lifting β€” stay hydrated, read your return values, and slay. πŸ’…βœ¨πŸŒˆ