[Xcb] randr: missing xcb_randr_get_screen_info_rates ?

Ian Osgood iano at quirkster.com
Sun Mar 11 16:04:55 PDT 2007


On Mar 10, 2007, at 10:59 PM, Vincent Torri wrote:

>
> Hey,
>
> while writing ecore_xcb, I've looked at randr api and I've remarked  
> thaht there is no xcb_randr_get_screen_info_rates function, which  
> would return a chunk of mem containing the rates. Is it normal ?
>
> Also, there are some functions that request a  
> xcb_randr_refresh_rates_t * but no function return that kind of  
> pointer. same question :)
>
> thank you
>
> Vincent

As usual, I don't know the answer right away. Here are the steps I go  
through to answer this:

1. Find the libXrandr library repository on http:// 
gitweb.freedesktop.org/.  Hmph. That won't work this morning; the  
site is down.

2. Find the libXrandr source on my local system, since I just  
downloaded it to test out building the Xorg Quartz server. It resides  
in lib/libXrandr.

3. Look for GetScreenInfoRates in libXrandr/src/.  I instead found  
file XrrConfig.c containing XRRConfigRates and XRRRates.

4. It appears that XRRRates and similar configuration accessors wrap  
a cache, the base RRGetScreenInfo request, and the complex reply.

5. Even more complex, it appears that the reply format changed in  
version 1.1, adding the rates (see _XRRHasRates in Xrandr.c).

So it looks like you'll need to write some equivalent code around  
xcb_randr_get_screen_info if all you want is the rates. Perhaps there  
is an iterator for it? Looking at libxcb/src/randr.h, I see a  
function xcb_randr_get_screen_info_rates_iterator. Maybe that could  
help?

Ian


More information about the Xcb mailing list