xcb_randr_get_provider_info(3)
β¨ xcb_randr_get_provider_info β¨
okay bestie, buckle UP π this is xcb_randr_get_provider_info, a lil request from the xcb_randr crew (that's the XCB Requests manual, part of the X11 library family πΈ). It's giving "tell me everything about this display provider, pls and thank you" energy. Let's get into it π«Ά
π SYNOPSIS π
First, the vibe-setter β you gotta pull in the header:
#include <xcb/randr.h>
π Request function
xcb_randr_get_provider_info_cookie_t
xcb_randr_get_provider_info(xcb_connection_t *conn,
xcb_randr_provider_t provider, xcb_timestamp_t config_timestamp);
π¦ Reply datastructure
typedef struct xcb_randr_get_provider_info_reply_t {
uint8_t response_type;
uint8_t status;
uint16_t sequence;
uint32_t length;
xcb_timestamp_t timestamp;
uint32_t capabilities;
uint16_t num_crtcs;
uint16_t num_outputs;
uint16_t num_associated_providers;
uint16_t name_len;
uint8_t pad0[8];
} xcb_randr_get_provider_info_reply_t;
π Reply function
xcb_randr_get_provider_info_reply_t
*xcb_randr_get_provider_info_reply(xcb_connection_t *conn,
xcb_randr_get_provider_info_cookie_t cookie,
xcb_generic_error_t **e);
β¨ Reply accessors
these are the lil helpers that dig the good stuff out of the reply, no cap π§
xcb_randr_crtc_t *xcb_randr_get_provider_info_crtcs(const
xcb_randr_get_provider_info_request_t *reply);
int xcb_randr_get_provider_info_crtcs_length(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_generic_iterator_t xcb_randr_get_provider_info_crtcs_end(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_randr_output_t *xcb_randr_get_provider_info_outputs(const
xcb_randr_get_provider_info_request_t *reply);
int xcb_randr_get_provider_info_outputs_length(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_generic_iterator_t xcb_randr_get_provider_info_outputs_end(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_randr_provider_t
*xcb_randr_get_provider_info_associated_providers(const
xcb_randr_get_provider_info_request_t *reply);
int xcb_randr_get_provider_info_associated_providers_length(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_generic_iterator_t
xcb_randr_get_provider_info_associated_providers_end(const
xcb_randr_get_provider_info_reply_t *reply);
uint32_t *xcb_randr_get_provider_info_associated_capability(const
xcb_randr_get_provider_info_request_t *reply);
int xcb_randr_get_provider_info_associated_capability_length(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_generic_iterator_t
xcb_randr_get_provider_info_associated_capability_end(const
xcb_randr_get_provider_info_reply_t *reply);
char *xcb_randr_get_provider_info_name(const
xcb_randr_get_provider_info_request_t *reply);
int xcb_randr_get_provider_info_name_length(const
xcb_randr_get_provider_info_reply_t *reply);
xcb_generic_iterator_t xcb_randr_get_provider_info_name_end(const
xcb_randr_get_provider_info_reply_t *reply);
π REQUEST ARGUMENTS π
connβ your XCB connection to X11, the lil lifeline to the server π«providerβ TODO: NOT YET DOCUMENTED. π yeah girl, they really left us on read with this oneconfig_timestampβ TODO: NOT YET DOCUMENTED. π same, no notes, the docs just ghosted us here
π₯ REPLY FIELDS π₯
response_typeβ the type of this reply, and in this case it'sXCB_RANDR_GET_PROVIDER_INFO. this field is also chillin' in thexcb_generic_reply_t, and you can use it to tell replies apart from each other πsequenceβ the sequence number of the last request the X11 server processed, iconic bookkeeping behaviorlengthβ the length of the reply, in words (and a word here is 4 bytes, periodt)statusβ TODO: NOT YET DOCUMENTED. πΈtimestampβ TODO: NOT YET DOCUMENTED. βcapabilitiesβ TODO: NOT YET DOCUMENTED. πnum_crtcsβ TODO: NOT YET DOCUMENTED. π¦num_outputsβ TODO: NOT YET DOCUMENTED. πnum_associated_providersβ TODO: NOT YET DOCUMENTED. πname_lenβ TODO: NOT YET DOCUMENTED. π
π DESCRIPTION π
(yeah bestie, this section is literally empty in the original β we're not making stuff up, we're just vibing with the silence π«Άβ¨)
π RETURN VALUE π
You get back an xcb_randr_get_provider_info_cookie_t πͺ β cute, right? But heads up: errors have to be handled when you call the reply function xcb_randr_get_provider_info_reply.
If you'd rather handle errors in the event loop instead, use xcb_randr_get_provider_info_unchecked. See xcb-requests(3) for the deets π
π ERRORS π
This request does never generate any errors. Not a single one. Zero. Clean slate. Iconic behavior honestly πβ¨
π SEE ALSO π
(nothing listed here in the original β an empty section, but we respect it and we leave it be π)
π«Ά AUTHOR π«Ά
Generated from randr.xml. Contact xcb@lists.freedesktop.org for corrections and improvements π
ok that's the whole page bestie, you ate π go forth and query those providers πΈ
X Version 11 Β· libxcb 1.17.0 Β· xcb_randr_get_provider_info(3) β mwah, love u, bye ππβ¨
π¦ 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