xcb_glx_get_materialiv(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_materialiv πŸ’…βœ¨

okay bestie, welcome to the XCB Requests corner of the manual, section 3, and today's main character is xcb_glx_get_materialiv(3) β€” a lil GLX request that goes and fetches some material values for you. it's giving "quiet request, loud reply energy" 🫢


🌸 NAME 🌸

xcb_glx_get_materialiv β€” no cap, the original literally left this one blank. it's the GLX "get material, but integers" request. that's the vibe. πŸŽ€


✨ SYNOPSIS ✨

first things first, you gotta bring the header along:

#include <xcb/glx.h>

πŸ’– Request function πŸ’–

xcb_glx_get_materialiv_cookie_t
       xcb_glx_get_materialiv(xcb_connection_t *conn,
       xcb_glx_context_tag_t context_tag, uint32_t face,
       uint32_t pname);

πŸ¦‹ Reply datastructure πŸ¦‹

here's the lil struct the server hands back to you, literally every field:

typedef struct xcb_glx_get_materialiv_reply_t {
    uint8_t  response_type;
    uint8_t  pad0;
    uint16_t sequence;
    uint32_t length;
    uint8_t  pad1[4];
    uint32_t n;
    int32_t  datum;
    uint8_t  pad2[12];
} xcb_glx_get_materialiv_reply_t;

🌈 Reply function 🌈

xcb_glx_get_materialiv_reply_t
       *xcb_glx_get_materialiv_reply(xcb_connection_t *conn,
       xcb_glx_get_materialiv_cookie_t cookie, xcb_generic_error_t **e);

⭐ Reply accessors ⭐

these are the lil helpers that reach into the reply for you, so you don't gotta do pointer math yourself (iconic behaviour, honestly):

int32_t *xcb_glx_get_materialiv_data(const
       xcb_glx_get_materialiv_request_t *reply);

int xcb_glx_get_materialiv_data_length(const
       xcb_glx_get_materialiv_reply_t *reply);

xcb_generic_iterator_t xcb_glx_get_materialiv_data_end(const
       xcb_glx_get_materialiv_reply_t *reply);

πŸŽ€ REQUEST ARGUMENTS πŸŽ€

  • conn β€” the XCB connection to X11. your whole link to the server, your bestie fr.
  • context_tag β€” TODO: NOT YET DOCUMENTED. yeah bestie, the docs said "not yet" and honestly same 😭
  • face β€” TODO: NOT YET DOCUMENTED. no notes, no description, just vibes πŸ™ˆ
  • pname β€” TODO: NOT YET DOCUMENTED. mysterious. elusive. we love a cryptic king πŸ’€

πŸ’œ REPLY FIELDS πŸ’œ

  • response_type β€” the type of this reply, in this case XCB_GLX_GET_MATERIALIV. this field is also present in the xcb_generic_reply_t and can be used to tell replies apart from each other, which is lowkey essential when you're juggling a million requests.
  • sequence β€” the sequence number of the last request processed by the X11 server.
  • length β€” the length of the reply, in words. reminder: a word is 4 bytes, periodt.
  • n β€” TODO: NOT YET DOCUMENTED. another mystery, another slay 🌸
  • datum β€” TODO: NOT YET DOCUMENTED. the datum remains undocumented. we respect its privacy 🫢

🧚 DESCRIPTION 🧚

the original DESCRIPTION section is empty. truly nothing. a blank canvas. an empty group chat. we simply must live with that πŸ’€βœ¨


πŸ“ RETURN VALUE πŸ“

Returns an xcb_glx_get_materialiv_cookie_t. Errors have to be handled when calling the reply function xcb_glx_get_materialiv_reply.

If you want to handle errors in the event loop instead, use xcb_glx_get_materialiv_unchecked. See xcb-requests(3) for details. (yes bestie, that's a whole other manual page, go read it, it's giving homework but make it cute πŸ“š)


πŸ’€ ERRORS πŸ’€

This request does never generate any errors.

like. zero. none. the error-free icon we all aspire to be. no drama, no tea, no error codes. we love that for it πŸ‘‘

πŸ”₯ SEE ALSO πŸ”₯

nothing here in the original, bestie β€” the section exists, the references do not. an empty SEE ALSO is its own kind of aesthetic 🌈


πŸ‘‘ AUTHOR πŸ‘‘

Generated from glx.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.


and that's the whole page, bestie πŸ’– this was xcb_glx_get_materialiv(3) from X Version 11, libxcb 1.17.0 β€” go forth, call your cookie, handle your errors, and remember: a word is 4 bytes. mwah πŸŽ€βœ¨πŸ¦‹