xcb_intern_atom(3) | XCB Requests | xcb_intern_atom(3) |
xcb_intern_atom - Get atom identifier by name
#include <xcb/xproto.h>
xcb_intern_atom_cookie_t xcb_intern_atom(xcb_connection_t *conn, uint8_t only_if_exists, uint16_t name_len, const char *name);
typedef struct xcb_intern_atom_reply_t {
uint8_t response_type;
uint8_t pad0;
uint16_t sequence;
uint32_t length;
xcb_atom_t atom; } xcb_intern_atom_reply_t;
xcb_intern_atom_reply_t
*xcb_intern_atom_reply(xcb_connection_t *conn,
xcb_intern_atom_cookie_t cookie,
xcb_generic_error_t **e);
Retrieves the identifier (xcb_atom_t TODO) for the atom with the specified name. Atoms are used in protocols like EWMH, for example to store window titles (_NET_WM_NAME atom) as property of a window.
If only_if_exists is 0, the atom will be created if it does not already exist. If only_if_exists is 1, XCB_ATOM_NONE will be returned if the atom does not yet exist.
Returns an xcb_intern_atom_cookie_t. Errors have to be handled when calling the reply function xcb_intern_atom_reply.
If you want to handle errors in the event loop instead, use xcb_intern_atom_unchecked. See xcb-requests(3) for details.
/*
* Resolves the _NET_WM_NAME atom.
*
*/ void my_example(xcb_connection_t *c) {
xcb_intern_atom_cookie_t cookie;
xcb_intern_atom_reply_t *reply;
cookie = xcb_intern_atom(c, 0, strlen("_NET_WM_NAME"), "_NET_WM_NAME");
/* ... do other work here if possible ... */
if ((reply = xcb_intern_atom_reply(c, cookie, NULL))) {
printf("The _NET_WM_NAME atom has ID %u0, reply->atom);
free(reply);
} }
xcb-requests(3), xcb-examples(3), xcb_get_atom_name(3), xlsatoms(1)
Generated from xproto.xml. Contact xcb@lists.freedesktop.org for corrections and improvements.
libxcb 1.13.1 | X Version 11 |