xcb_input_open_device(3)
πΈ NAME πΈ
xcb_input_open_device β and that's it, bestie, the description after the dash is literally empty in the source. It's giving mystery. It's giving "we'll tell you later". Anyway, this is a section 3 manual page (that's the library-functions section, iykyk) from libxcb, and it lives in xcb_input_open_device(3). π
β¨ SYNOPSIS β¨
First things first, you gotta pull in the header:
#include <xcb/xinput.h>
π Request function
xcb_input_open_device_cookie_t
xcb_input_open_device(xcb_connection_t *conn, uint8_t device_id);
π Reply datastructure
typedef struct xcb_input_open_device_reply_t {
uint8_t response_type;
uint8_t xi_reply_type;
uint16_t sequence;
uint32_t length;
uint8_t num_classes;
uint8_t pad0[23];
} xcb_input_open_device_reply_t;
π Reply function
xcb_input_open_device_reply_t
*xcb_input_open_device_reply(xcb_connection_t *conn,
xcb_input_open_device_cookie_t cookie, xcb_generic_error_t **e);
π Reply accessors
xcb_input_input_class_info_t *xcb_input_open_device_class_info(const
xcb_input_open_device_request_t *reply);
int xcb_input_open_device_class_info_length(const
xcb_input_open_device_reply_t *reply);
xcb_input_input_class_info_iterator_t
xcb_input_open_device_class_info_iterator(const
xcb_input_open_device_reply_t *reply);
uint8_t
*xcb_input_open_device_pad_1 (const
xcb_input_open_device_request_t *reply)
Not me noticing that last one has no semicolon π« β that is exactly how it's written in the source, so don't come for me, I'm just the messenger. Also yes,xcb_input_open_device_class_infoandxcb_input_open_device_pad_1take anxcb_input_open_device_request_t *reply. Weird? Yes. Iconic? Also yes. Copy it verbatim and you'll be fine. π
π¦ REQUEST ARGUMENTS π¦
connβ your XCB connection to X11. That's the whole vibe. π«Άdevice_idβTODO: NOT YET DOCUMENTED.Bestie the docs literally left this one blank. I cannot make it up, that would be lying, and lying is not the move. π
π REPLY FIELDS π
response_typeβ the type of this reply, and in this case it'sXCB_INPUT_OPEN_DEVICE. This field also shows up in thexcb_generic_reply_t, so you can use it to tell your replies apart from each other. Very main character energy, honestly. βsequenceβ the sequence number of the last request that got processed by the X11 server. π¬lengthβ how long the reply is, in words. And a word here is 4 bytes, in case you were about to count wrong. πxi_reply_typeβTODO: NOT YET DOCUMENTED.Another blank, no cap. πnum_classesβTODO: NOT YET DOCUMENTED.Yeah. Three for three on the mystery. π΅οΈββοΈ
π DESCRIPTION π
Okay soβ¦ there is genuinely nothing written under DESCRIPTION in this page. It's a blank section. An empty vibe check. The heading is there, the words are not. We respect the silence. π
π RETURN VALUE π
It hands you back an xcb_input_open_device_cookie_t. Cute, right? But here's the thing, bestie: errors have to be handled when you call the reply function xcb_input_open_device_reply.
And if you'd rather handle your errors inside the event loop instead? Then use xcb_input_open_device_unchecked. See xcb-requests(3) for the details, fr fr. π₯
π ERRORS π
This request does never generate any errors. Not one. Zero. None. We love a low-drama request. β¨
π§ SEE ALSO π§
This section is empty on this page, bestie. Nothing listed. Just vibes and a heading. πΈ
π AUTHOR π
Generated from xinput.xml. If you spot something that needs corrections or improvements, hit up xcb@lists.freedesktop.org β they're the ones to talk to. π§
And that's the whole page, mwah. π This one's from X Version 11, libxcb 1.17.0, and it's filed under xcb_input_open_device(3). Go forth and open some devices, you absolute icon. π¦β¨π
π¦ where this page comes from
- alpine 3.22: libxcb-doc 1.17.0-r0 Β· MIT
- alpine 3.23: libxcb-doc 1.17.0-r1 Β· MIT
- alpine 3.24: libxcb-doc 1.17.0-r2 Β· MIT
- arch rolling: libxcb 1.17.0-1 Β· X11
- centos-stream 10: libxcb-devel 1.17.0-3.el10 Β· X11
- debian trixie: libxcb-doc 1.17.0-2
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 43: libxcb-devel 1.17.0-6.fc43 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- fedora 44: libxcb-devel 1.17.0-7.fc44 Β· X11
- nixpkgs unstable: libxcb 1.17.0
- opensuse-leap 16.0: libxcb-devel-doc 1.17.0-160000.2.2 Β· MIT
- ubuntu questing: libxcb-doc 1.17.0-2build1
- ubuntu resolute: libxcb-doc 1.17.0-2ubuntu1
- ubuntu stonking: libxcb-doc 1.17.0-2ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms