xcb_glx_get_fb_configs(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_glx_get_fb_configs πŸ’–

okay bestie, gather round, because today we're reading the manual page for xcb_glx_get_fb_configs from the XCB Requests collection, and it's giving "niche GLX knowledge, main character energy" ✨

This is the one that asks the X server for its framebuffer configs β€” you know, the GLX ones. If you've ever wondered what your X connection thinks it can render into, this is that request. πŸ¦‹


✨ SYNOPSIS ✨

First things first, you gotta pull in the header, no cap:

#include <xcb/glx.h>

πŸŽ€ Request function

xcb_glx_get_fb_configs_cookie_t
       xcb_glx_get_fb_configs(xcb_connection_t *conn, uint32_t screen);

πŸŽ€ Reply datastructure

typedef struct xcb_glx_get_fb_configs_reply_t {
    uint8_t  response_type;
    uint8_t  pad0;
    uint16_t sequence;
    uint32_t length;
    uint32_t num_FB_configs;
    uint32_t num_properties;
    uint8_t  pad1[16];
} xcb_glx_get_fb_configs_reply_t;

πŸŽ€ Reply function

xcb_glx_get_fb_configs_reply_t
       *xcb_glx_get_fb_configs_reply(xcb_connection_t *conn,
       xcb_glx_get_fb_configs_cookie_t cookie, xcb_generic_error_t **e);

πŸŽ€ Reply accessors

uint32_t *xcb_glx_get_fb_configs_property_list(const
       xcb_glx_get_fb_configs_request_t *reply);

int xcb_glx_get_fb_configs_property_list_length(const
       xcb_glx_get_fb_configs_reply_t *reply);

xcb_generic_iterator_t xcb_glx_get_fb_configs_property_list_end(const
       xcb_glx_get_fb_configs_reply_t *reply);

🌸 REQUEST ARGUMENTS 🌸

  • conn β€” the XCB connection to X11. your lil phone line to the X server, basically πŸ“ž
  • screen β€” TODO: NOT YET DOCUMENTED. yeah bestie, the docs literally did not show up to class that day πŸ™ˆ the original page just says TODO: NOT YET DOCUMENTED. and I am not about to make something up, that's not the vibe.

πŸ’… REPLY FIELDS πŸ’…

  • response_type β€” the type of this reply, which in this case is XCB_GLX_GET_FB_CONFIGS. it also lives in the xcb_generic_reply_t, so you can use it to tell replies apart from each other πŸ‘‘
  • sequence β€” the sequence number of the last request processed by the X11 server. it's the receipt, fr fr 🧾
  • length β€” how long the reply is, measured in words. and a word is 4 bytes, bestie, don't forget, this trips people up every single time πŸ’€
  • num_FB_configs β€” TODO: NOT YET DOCUMENTED. again, not a single word from the original 😭
  • num_properties β€” TODO: NOT YET DOCUMENTED. same situation, we simply do not know and I refuse to speculate 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

The original page's DESCRIPTION section is... empty. like, completely. nothing. a blank little void where the explanation should be 🌈 So we vibe with what we've got: the request, the reply struct, the fields, and the accessors up above. That's the whole story this page is telling.


⭐ RETURN VALUE ⭐

You get back an xcb_glx_get_fb_configs_cookie_t. and listen, the errors? they don't come at you right away β€” you handle them when you call the reply function, xcb_glx_get_fb_configs_reply πŸ‘€

If you'd rather handle your errors in the event loop instead, use xcb_glx_get_fb_configs_unchecked. That's the move for the async girlies. Peep xcb-requests(3) for all the details on how that works πŸ’–


πŸ’€ ERRORS πŸ’€

This request never generates any errors. zero. none. not one. it's an angel πŸ˜‡ no error handling required, you can just breathe.


πŸ”₯ SEE ALSO πŸ”₯

The SEE ALSO section is empty on the original page β€” no cross-references, no friends, just this page standing alone like the icon it is πŸ‘‘


πŸ‘‘ AUTHOR πŸ‘‘

Generated from glx.xml. Contact xcb@lists.freedesktop.org for corrections and improvements πŸ’Œ


and that's the whole page, bestie!! no cap, you now know everything this manual page knows πŸŽ€βœ¨

X Version 11 Β· libxcb 1.17.0 β€” mwah, go forth and get those framebuffer configs, you absolute legend πŸ’…πŸŒΈπŸ¦‹