xcb_randr_get_crtc_info(3)
πΈ xcb_randr_get_crtc_info π
okay bestie, so this is a page from the XCB Requests manual, and it's about xcb_randr_get_crtc_info β like, the RandR (Resize and Rotate) request that goes and asks the X server what's up with a specific CRTC. Yes, we're doing display pipeline lore today. π₯οΈβ¨
β¨ NAME β¨
xcb_randr_get_crtc_info -
ngl the original page literally just leaves the description blank after the dash. iconic behaviour honestly. no cap, that's all it says. π
π SYNOPSIS π
first thing's first, you gotta include the header, periodt:
#include <xcb/randr.h>
π Request function
xcb_randr_get_crtc_info_cookie_t
xcb_randr_get_crtc_info(xcb_connection_t *conn,
xcb_randr_crtc_t crtc, xcb_timestamp_t config_timestamp);
π¦ Reply datastructure
typedef struct xcb_randr_get_crtc_info_reply_t {
uint8_t response_type;
uint8_t status;
uint16_t sequence;
uint32_t length;
xcb_timestamp_t timestamp;
int16_t x;
int16_t y;
uint16_t width;
uint16_t height;
xcb_randr_mode_t mode;
uint16_t rotation;
uint16_t rotations;
uint16_t num_outputs;
uint16_t num_possible_outputs;
} xcb_randr_get_crtc_info_reply_t;
π Reply function
xcb_randr_get_crtc_info_reply_t
*xcb_randr_get_crtc_info_reply(xcb_connection_t *conn,
xcb_randr_get_crtc_info_cookie_t cookie,
xcb_generic_error_t **e);
β Reply accessors
xcb_randr_output_t *xcb_randr_get_crtc_info_outputs(const
xcb_randr_get_crtc_info_request_t *reply);
int xcb_randr_get_crtc_info_outputs_length(const
xcb_randr_get_crtc_info_reply_t *reply);
xcb_generic_iterator_t xcb_randr_get_crtc_info_outputs_end(const
xcb_randr_get_crtc_info_reply_t *reply);
xcb_randr_output_t *xcb_randr_get_crtc_info_possible(const
xcb_randr_get_crtc_info_request_t *reply);
int xcb_randr_get_crtc_info_possible_length(const
xcb_randr_get_crtc_info_reply_t *reply);
xcb_generic_iterator_t xcb_randr_get_crtc_info_possible_end(const
xcb_randr_get_crtc_info_reply_t *reply);
lowkey important: copy those signatures exactly as they are, okay? i'm not out here editing the header for you. π
πΈ REQUEST ARGUMENTS πΈ
connβ the XCB connection to X11. your lil hotline to the server. πcrtcβ TODO: NOT YET DOCUMENTED. yeah bestie, the docs really just left us on read for this one. π«Άconfig_timestampβ TODO: NOT YET DOCUMENTED. also left on read. both of them. together. in the group chat. π
π§ REPLY FIELDS π§
response_typeβ the type of this reply. in this case it'sXCB_RANDR_GET_CRTC_INFO. this field also lives in thexcb_generic_reply_t, so you can use it to tell replies apart from each other β like name tags at a party, so you know which reply is which. πsequenceβ the sequence number of the last request processed by the X11 server. it's the server keeping receipts. π§Ύlengthβ how long the reply is, in words. and a word is4bytes, just so we're clear. β¨statusβ TODO: NOT YET DOCUMENTED.timestampβ TODO: NOT YET DOCUMENTED.xβ TODO: NOT YET DOCUMENTED.yβ TODO: NOT YET DOCUMENTED.widthβ TODO: NOT YET DOCUMENTED.heightβ TODO: NOT YET DOCUMENTED.modeβ TODO: NOT YET DOCUMENTED.rotationβ TODO: NOT YET DOCUMENTED.rotationsβ TODO: NOT YET DOCUMENTED.num_outputsβ TODO: NOT YET DOCUMENTED.num_possible_outputsβ TODO: NOT YET DOCUMENTED.
the way that half this struct is just vibes and a TODO... we love an unfinished draft. π«
π DESCRIPTION π
...and that's it. that's the whole section. it's empty. the DESCRIPTION section literally has nothing in it. it's giving mysterious. it's giving "i'll text you later" and then never texting. π
β¨ RETURN VALUE β¨
so this returns an xcb_randr_get_crtc_info_cookie_t β a cookie!! πͺ adorable. and errors have to be handled when you call the reply function xcb_randr_get_crtc_info_reply, okay? don't just leave that cookie sitting there unhandled.
but if you'd rather handle errors in the event loop instead, use xcb_randr_get_crtc_info_unchecked. see xcb-requests(3) for the deets. π
π ERRORS π
this request does never generate any errors.
fr fr. never. not one. it's the chillest request at the function. no drama, no errors, just vibes. π
π SEE ALSO π
...
yeah bestie, there's nothing here either. no references. no cross-links. just an empty section and the sound of wind. π
π«Ά AUTHOR π«Ά
generated from randr.xml. contact xcb@lists.freedesktop.org for corrections and improvements β so if you spot something sus, that's the inbox to slide into. π
and that's a wrap! π this page came to you from X Version 11, libxcb 1.17.0, in the form of xcb_randr_get_crtc_info(3). go forth and interrogate your CRTCs, bestie β you've got this. slay, no cap, periodt. β¨ππ¦
π¦ 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