1Name 2 3 MESA_query_driver 4 5Name Strings 6 7 EGL_MESA_query_driver 8 9Contact 10 11 Rob Clark <robdclark 'at' gmail.com> 12 Nicolai Hähnle <Nicolai.Haehnle 'at' amd.com> 13 14Contibutors 15 16 Veluri Mithun <velurimithun38 'at' gmail.com> 17 18Status 19 20 Complete 21 22Version 23 24 Version 3, 2019-01-24 25 26Number 27 28 EGL Extension 131 29 30Dependencies 31 32 EGL 1.0 is required. 33 34Overview 35 36 When an application has to query the name of a driver and for 37 obtaining driver's option list (UTF-8 encoded XML) of a driver 38 the below functions are useful. 39 40 XML file formally describes all available options and also 41 includes verbal descriptions in multiple languages. Its main purpose 42 is to be automatically processed by configuration GUIs. 43 The XML shall respect the following DTD: 44 45 <!ELEMENT driinfo (section*)> 46 <!ELEMENT section (description+, option+)> 47 <!ELEMENT description (enum*)> 48 <!ATTLIST description lang CDATA #REQUIRED 49 text CDATA #REQUIRED> 50 <!ELEMENT option (description+)> 51 <!ATTLIST option name CDATA #REQUIRED 52 type (bool|enum|int|float) #REQUIRED 53 default CDATA #REQUIRED 54 valid CDATA #IMPLIED> 55 <!ELEMENT enum EMPTY> 56 <!ATTLIST enum value CDATA #REQUIRED 57 text CDATA #REQUIRED> 58 59New Procedures and Functions 60 61 char* eglGetDisplayDriverConfig(EGLDisplay dpy); 62 const char* eglGetDisplayDriverName(EGLDisplay dpy); 63 64Description 65 66 By passing EGLDisplay as parameter to `eglGetDisplayDriverName` one can retrieve 67 driverName. Similarly passing EGLDisplay to `eglGetDisplayDriverConfig` we can retrieve 68 driverConfig options of the driver in XML format. 69 70 The string returned by `eglGetDisplayDriverConfig` is heap-allocated and caller 71 is responsible for freeing it. 72 73 EGL_BAD_DISPLAY is generated if `disp` is not an EGL display connection. 74 75 EGL_NOT_INITIALIZED is generated if `disp` has not been initialized. 76 77 If the implementation does not have enough resources to allocate the XML then an 78 EGL_BAD_ALLOC error is generated. 79 80New Tokens 81 82 No new tokens 83 84Issues 85 86 None 87 88 89Revision History 90 91 Version 1, 2018-11-05 - First draft (Veluri Mithun) 92 Version 2, 2019-01-23 - Final version (Veluri Mithun) 93 Version 3, 2019-01-24 - Mark as complete, add Khronos extension 94 number, fix parameter name in prototypes, 95 write revision history (Eric Engestrom) 96