xcb_glx_get_materialfv(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_materialfv πŸ’–

okay bestie, welcome to the libxcb corner of the X universe β€” this one's a section 3 manpage from XCB Requests, and yeah the NAME line is literally just... empty. iconic of it, honestly. so let's get into it 🫢


✨ NAME ✨

xcb_glx_get_materialfv β€”

not me leaving the description blank 😭 the original manpage genuinely has nothing after that dash. no cap. it's giving mystery, it's giving "figure it out", it's giving the docs are a vibe, not a contract πŸ’…

🌸 SYNOPSIS 🌸

first things first, you gotta pull in the header:

#include <xcb/glx.h>

πŸŽ€ Request function πŸŽ€

xcb_glx_get_materialfv_cookie_t
       xcb_glx_get_materialfv(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 reply comes back in, and yes every single field matters:

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

🌈 Reply function 🌈

xcb_glx_get_materialfv_reply_t
       *xcb_glx_get_materialfv_reply(xcb_connection_t *conn,
       xcb_glx_get_materialfv_cookie_t cookie, xcb_generic_error_t **e);

⭐ Reply accessors ⭐

these are your lil helpers for digging into the reply, bestie:

xcb_glx_float32_t *xcb_glx_get_materialfv_data(const
       xcb_glx_get_materialfv_request_t *reply);

int xcb_glx_get_materialfv_data_length(const
       xcb_glx_get_materialfv_reply_t *reply);

xcb_generic_iterator_t xcb_glx_get_materialfv_data_end(const
       xcb_glx_get_materialfv_reply_t *reply);

πŸ’… REQUEST ARGUMENTS πŸ’…

  • conn β€” your XCB connection to X11. the whole line to the server, yk?
  • context_tag β€” TODO: NOT YET DOCUMENTED. yeah. the docs said "we'll get to it". they did not get to it πŸ™ˆ
  • face β€” TODO: NOT YET DOCUMENTED. same energy, same mystery
  • pname β€” TODO: NOT YET DOCUMENTED. the trio of "trust me bro" fields, fr fr

πŸ“ REPLY FIELDS πŸ“

  • response_type β€” the type of this reply, and in this case it's XCB_GLX_GET_MATERIALFV. this field is also present 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. lowkey your receipt number
  • length β€” the length of the reply, in words. and a word here is 4 bytes, so do the math before you go indexing anything
  • n β€” TODO: NOT YET DOCUMENTED.
  • datum β€” TODO: NOT YET DOCUMENTED.

🧚 DESCRIPTION 🧚

literally nothing here, bestie. the original DESCRIPTION section is empty. the void. the silence. and honestly? that's just how some of these generated pages be 😭

πŸ’œ RETURN VALUE πŸ’œ

Returns an xcb_glx_get_materialfv_cookie_t. errors have to be handled when calling the reply function xcb_glx_get_materialfv_reply.

if you'd rather handle errors in the event loop instead, use xcb_glx_get_materialfv_unchecked. see xcb-requests(3) for details ✨


πŸ”₯ ERRORS πŸ”₯

this request does never generate any errors. not one. zero. she's unproblematic, she ate, periodt πŸ‘‘


🌸 SEE ALSO 🌸

okay so the SEE ALSO section is empty in the original. no references listed. just vibes and open space 🌈

🫢 AUTHOR 🫢

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


and that's the whole page, bestie πŸ’– this was page xcb_glx_get_materialfv(3) from the XCB Requests manual, shipped as part of libxcb 1.17.0 under X Version 11 🌟 go forth, write good GLX code, and remember: if a field says TODO: NOT YET DOCUMENTED, that's not on you, that's on the docs 😌πŸ’