XCB_INPUT_GET_FEEDBACK_CONTROL_UNCHECKED(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_feedback_control(3) 🌸

okay bestie, welcome to the manual page for xcb_input_get_feedback_control, part of the XCB Requests fam (that's the xcb_input_get_feedback_control(3) manual, if you're keeping track, and you should be πŸ’…).

This is the lil request that asks the X server "hey, what's the feedback control situation for this device" and hands you back a cookie you gotta cash in later. Very demure. Very mindful. Let's get into it. πŸŽ€


✨ NAME ✨

xcb_input_get_feedback_control β€” the name is literally right there, and the original page left the description blank, so we're just vibing with the function name itself πŸ¦‹


✨ SYNOPSIS ✨

First things first, you gotta let the preprocessor know what's up:

#include <xcb/xinput.h>

πŸ’– Request function πŸ’–

xcb_input_get_feedback_control_cookie_t
xcb_input_get_feedback_control(xcb_connection_t *conn,
                               uint8_t device_id);

πŸ’– Reply datastructure πŸ’–

this is the struct that comes back at you, no cap:

typedef struct xcb_input_get_feedback_control_reply_t {
    uint8_t  response_type;
    uint8_t  xi_reply_type;
    uint16_t sequence;
    uint32_t length;
    uint16_t num_feedbacks;
    uint8_t  pad0[22];
} xcb_input_get_feedback_control_reply_t;

πŸ’– Reply function πŸ’–

this is the one that actually fetches your reply, so like, don't forget to call it:

xcb_input_get_feedback_control_reply_t
*xcb_input_get_feedback_control_reply(xcb_connection_t *conn,
                                      xcb_input_get_feedback_control_cookie_t cookie,
                                      xcb_generic_error_t **e);

πŸ’– Reply accessors πŸ’–

the little helpers that go digging inside the reply for you, iconic behavior:

int xcb_input_get_feedback_control_feedbacks_length(const
       xcb_input_get_feedback_control_reply_t *reply);

xcb_input_feedback_state_iterator_t
       xcb_input_get_feedback_control_feedbacks_iterator(const
       xcb_input_get_feedback_control_reply_t *reply);

✨ REQUEST ARGUMENTS ✨

  • conn β€” your XCB connection to X11. the whole lifeline, the group chat server, everything flows through here 🫢
  • device_id β€” TODO: NOT YET DOCUMENTED. yeah bestie, the original page literally says that. not my fault, i'm just the messenger 😭

✨ REPLY FIELDS ✨

  • response_type β€” the type of this reply, and in this case it's XCB_INPUT_GET_FEEDBACK_CONTROL. this field is also chillin' inside xcb_generic_reply_t, so you can use it to tell your replies apart from each other. very "which one of y'all texted me" energy πŸ’€
  • sequence β€” the sequence number of the last request the X11 server processed. your lil timestamp of "yeah we got here" ⭐
  • length β€” how long the reply is, measured in words. and heads up, a word is 4 bytes. that's the unit. don't come at me with bytes, that's not the vibe here πŸ“
  • xi_reply_type β€” TODO: NOT YET DOCUMENTED. yep. blank. the original said so πŸ™ˆ
  • num_feedbacks β€” TODO: NOT YET DOCUMENTED. also blank. also not my fault. also we move πŸ’…

✨ DESCRIPTION ✨

so the DESCRIPTION section on the original page is… completely empty. nothing. a void. the silence is loud. i'm not gonna make up lore about what this request does because that would be inventing technical claims and we don't do that here, bestie β€” we keep the facts exactly as they were handed to us. the section is empty, and it stays empty, and that's just how the original rolled. πŸ¦‹βœ¨


✨ RETURN VALUE ✨

it returns an xcb_input_get_feedback_control_cookie_t. that's your cookie πŸͺ β€” a lil promise of a reply.

errors? you handle those when you call the reply function, xcb_input_get_feedback_control_reply.

and if you'd rather deal with errors inside your event loop instead of right here, use xcb_input_get_feedback_control_unchecked. peek xcb-requests(3) for the deets on how that whole unchecked situation works πŸ‘‘


✨ ERRORS ✨

this request does never generate any errors. like, ever. zero. none. it's the chillest request in the whole building, no drama, no nothing. 🌈

✨ SEE ALSO ✨

nothing listed here in the original, bestie. an empty section. we respect it. we leave it. πŸ’œ


✨ AUTHOR ✨

generated from xinput.xml. if you've got corrections or improvements, hit up xcb@lists.freedesktop.org β€” they're the ones who actually want to hear it, not me, i'm just the messenger with a keyboard and a dream πŸŽ€


and that's a wrap, queen πŸ‘‘ this page came to you from X Version 11, libxcb 1.17.0. slay, go forth, cash in that cookie, and don't forget to free your replies πŸ’–βœ¨πŸ¦‹πŸŒΈπŸ’