Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
PojavLauncherTeam
GitHub Repository: PojavLauncherTeam/mesa
Path: blob/21.2-virgl/docs/_extra/specs/EGL_MESA_query_driver.txt
4564 views
1
Name
2
3
MESA_query_driver
4
5
Name Strings
6
7
EGL_MESA_query_driver
8
9
Contact
10
11
Rob Clark <robdclark 'at' gmail.com>
12
Nicolai Hähnle <Nicolai.Haehnle 'at' amd.com>
13
14
Contibutors
15
16
Veluri Mithun <velurimithun38 'at' gmail.com>
17
18
Status
19
20
Complete
21
22
Version
23
24
Version 3, 2019-01-24
25
26
Number
27
28
EGL Extension 131
29
30
Dependencies
31
32
EGL 1.0 is required.
33
34
Overview
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
59
New Procedures and Functions
60
61
char* eglGetDisplayDriverConfig(EGLDisplay dpy);
62
const char* eglGetDisplayDriverName(EGLDisplay dpy);
63
64
Description
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
80
New Tokens
81
82
No new tokens
83
84
Issues
85
86
None
87
88
89
Revision 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
97