[Xcb] how to use the record extension in xcb...
Uli Schlachter
psychon at znc.in
Sat Dec 17 13:52:15 UTC 2016
On 15.12.2016 09:51, zmqdev wrote:
> Hello,
>
> I'm currently writing a new version of a (working) program that uses the
> record extension, so I want to use xcb instead of Xlib.
I'm sorry to hear that.
> However, I am unclear on how to separate the multiple items contained in
> a single reply from the record extension.
>
> The only working example I found was this answer on stackoverflow
>
> https://stackoverflow.com/questions/20823894/xcb-record-x11-extension-example
>
>
> It works, but does 'magic' to access the several data items that are
> contained in a single xcb_record_enable_context_reply_t (as per protocol
> specification of record extension).
It does the same magic that libXtst uses to parse the reply.
> I thought of iterator functions, but for some reason, the header file
> <xcb/record.h> has only the one function
The XCB header functions are auto-generated from the protocol
description and the RECORD extension does not really fit into this. Its
replies can contain almost arbitrary data. I think the XML used to
express protocol extension is not powerful enough to express RECORD's
magic and even if it were, the generated result would not be all that
usable.
I think that all that I can tell you is to stick with Xlib instead of
XCB when using the RECORD extension.
Uli
(who also wrote the above-linked stackoverflow answer)
--
A normal person is just someone you don't know well enough yet.
- Nettie Wiebe
More information about the Xcb
mailing list