[Mesa-dev] GLX extension for vendor name lookup in libglvnd
Adam Jackson
ajax at redhat.com
Fri Mar 11 21:40:40 UTC 2016
On Fri, 2016-03-11 at 11:12 -0700, Kyle Brenneman wrote:
> All right, here's an updated draft of the Issues section. How does it look?
>
> Issues
> 1) Should GLX_VENDOR_NAMES_EXT contain a single vendor name or a list of
> names?
>
> UNRESOLVED: Allow a list of names.
>
> Allowing multiple names would allow for multiple client-side drivers
> that work with a single server-side driver. With only a single name,
> selecting between multiple client drivers would require some form of
> additional configuration.
>
> 2) How are vendor names defined and interpreted?
>
> UNRESOLVED: The vendor names for a screen are defined based on the
> server's GLX implementation. Typically, a server will simply send the
> name of the driver that controls the screen.
>
> The GLX client library is responsible for translating the vendor name
> to a vendor library name. The details of the translation are part of
> the interface between the vendor library and the GLX client library,
> and so are not defined in this specification.
>
> 3) What order should the vendor names be returned in?
>
> UNRESOLVED: If there are multiple vendor names, then the client should
> use the names earlier in the list in preference to names later in the
> list.
>
> Specifically, the GLX client library will try to load and use each
> vendor name, in the order that the server lists them. It will stop when
> it finds the first vendor that works.
>
> 4) Does the vendor name list need a new enum? Could it be appended to the
> GLX_VENDOR string instead?
>
> UNRESOLVED: Use a new enum. The vendor-specific part of the GLX_VENDOR
> string is by definition arbitrary, even if in practice every most if
> not all GLX implementatinos leave it blank.
>
> In addition, using a new enum also makes parsing the string much
> easier. The client can simply pass the unmodified string to strtok or
> strtok_r.
>
> 5) Do we need to define the interaction with GLX_SGIX_pbuffer?
>
> UNRESOLVED. No. Any client or server that implements this extension
> will already support GLX 1.3, so using glXQueryDrawable to look up a
> screen number is sufficient.
>
> There's no harm if a server includes a GLX_SCREEN attribute in its
> GetDrawableAttributesSGIX reply, so a server is still free to use the
> same codepath for GetDrawableAttributesSGIX and
> glXGetDrawableAttributes.
>
> 6) Do we want to add GLX_SCREEN to the list of fbconfig attributes as
> well?
>
> UNRESOLVED: No. Adding GLX_SCREEN to glXGetDrawableAttributes would be
^^^^^^^^^^^^^^^^^^^^^^^^
Should be glXGetFBConfigAttrib.
> redundant, because a client can already find the screen number for a
> GLXFBConfig using glXGetVisualFromFBConfig and indirectly using
> glXGetFBConfigs.
Other than that I think we can say these are all RESOLVED.
- ajax
More information about the mesa-dev
mailing list