xcb_input_get_device_control(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_get_device_control β€” the libxcb XCB Requests girlie πŸ’–

okay so bestie, we're doing the xcb_input_get_device_control(3) page today and honestly? it's giving ✨mystery✨ because half the fields are literally "TODO: NOT YET DOCUMENTED" and I'm not gonna pretend otherwise. no cap. we keep it real around here. 🫢


🌸 NAME 🌸

xcb_input_get_device_control β€” and that's it, that's the whole name section. the original page left the description blank after the dash, so we're leaving it blank too. iconic minimalism, I guess. πŸ’…


✨ SYNOPSIS ✨

first up, you gotta pull in the header, obviously:

#include <xcb/xinput.h>

πŸŽ€ Request function πŸŽ€

xcb_input_get_device_control_cookie_t
       xcb_input_get_device_control(xcb_connection_t *conn,
       uint16_t control_id, uint8_t device_id);

πŸ¦‹ Reply datastructure πŸ¦‹

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

🧚 Reply function 🧚

xcb_input_get_device_control_reply_t
       *xcb_input_get_device_control_reply(xcb_connection_t *conn,
       xcb_input_get_device_control_cookie_t cookie,
       xcb_generic_error_t **e);

⭐ Reply accessors ⭐

xcb_input_device_state_t *xcb_input_get_device_control_control (const
       xcb_input_get_device_control_request_t *reply)

πŸ’œ REQUEST ARGUMENTS πŸ’œ

  • conn β€” the XCB connection to X11, aka your lil phone line to the server. πŸ“ž
  • control_id β€” TODO: NOT YET DOCUMENTED. yeah. the docs said "we'll get to it". they did not get to it. 😭
  • device_id β€” TODO: NOT YET DOCUMENTED. same energy, bestie. the lore is simply not there yet. πŸ™ˆ

πŸ”₯ REPLY FIELDS πŸ”₯

  • response_type β€” the type of this reply, which in this case is XCB_INPUT_GET_DEVICE_CONTROL. this field is also hanging out in the xcb_generic_reply_t, and you can use it to tell replies apart from each other. it's literally the name tag at the party. πŸ‘‘
  • sequence β€” the sequence number of the last request processed by the X11 server. the receipts of the convo. 🧾
  • length β€” the length of the reply, in words (and a word is 4 bytes, so don't come for me with your 8-bit assumptions). πŸ“
  • xi_reply_type β€” TODO: NOT YET DOCUMENTED. 🫠
  • status β€” TODO: NOT YET DOCUMENTED. we simply do not know and we are not gonna make it up. periodt. πŸ’€

🌈 DESCRIPTION 🌈

...and there's nothing here! the original DESCRIPTION section is empty. a vibe with no words. we respect it. ✨


πŸ’– RETURN VALUE πŸ’–

it hands you back an xcb_input_get_device_control_cookie_t. and listen, errors have to be handled when you call the reply function xcb_input_get_device_control_reply. that's not optional, that's the whole assignment. 🎯

but if you'd rather handle errors in the event loop instead, use xcb_input_get_device_control_unchecked β€” see xcb-requests(3) for the deets. 🫢


🌸 ERRORS 🌸

This request does never generate any errors. πŸŽ‰

not a single one. zero. no error girlies allowed at this function's party. πŸ’…


πŸŽ€ SEE ALSO πŸŽ€

(nothing listed β€” the original page left this one empty, so we're honoring the silence. 🀫)


πŸ’œ AUTHOR πŸ’œ

Generated from xinput.xml. contact xcb@lists.freedesktop.org for corrections and improvements β€” they're literally asking for your notes, bestie, so if you know what status does, TELL THEM. πŸ“¬


okay that's the whole page, and now the lil sign-off moment: this came from X Version 11, libxcb 1.17.0, and it's the xcb_input_get_device_control(3) page πŸ’– slay, go forth and query those device controls, mwah πŸŽ€πŸ¦‹βœ¨