DRI2: Add interface for drivers to query DRI2 extension version

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
This commit is contained in:
Ian Romanick 2009-04-24 12:09:21 -07:00
parent a1c98f7fa9
commit 28ddfc88d8
2 changed files with 27 additions and 0 deletions

View File

@ -380,3 +380,12 @@ static XF86ModuleVersionInfo DRI2VersRec =
_X_EXPORT XF86ModuleData dri2ModuleData = { &DRI2VersRec, DRI2Setup, NULL };
void
DRI2Version(int *major, int *minor)
{
if (major != NULL)
*major = DRI2VersRec.majorversion;
if (minor != NULL)
*minor = DRI2VersRec.minorversion;
}

View File

@ -100,4 +100,22 @@ extern _X_EXPORT int DRI2CopyRegion(DrawablePtr pDraw,
unsigned int dest,
unsigned int src);
/**
* Determine the major and minor version of the DRI2 extension.
*
* Provides a mechanism to other modules (e.g., 2D drivers) to determine the
* version of the DRI2 extension. While it is possible to peek directly at
* the \c XF86ModuleData from a layered module, such a module will fail to
* load (due to an unresolved symbol) if the DRI2 extension is not loaded.
*
* \param major Location to store the major verion of the DRI2 extension
* \param minor Location to store the minor verion of the DRI2 extension
*
* \note
* This interface was added some time after the initial release of the DRI2
* module. Layered modules that wish to use this interface must first test
* its existance by calling \c xf86LoaderCheckSymbol.
*/
extern _X_EXPORT void DRI2Version(int *major, int *minor);
#endif