xref: /aosp_15_r20/external/angle/extensions/EGL_ANGLE_keyed_mutex.txt (revision 8975f5c5ed3d1c378011245431ada316dfb6f244)
1*8975f5c5SAndroid Build Coastguard WorkerName
2*8975f5c5SAndroid Build Coastguard Worker
3*8975f5c5SAndroid Build Coastguard Worker    ANGLE_keyed_mutex
4*8975f5c5SAndroid Build Coastguard Worker
5*8975f5c5SAndroid Build Coastguard WorkerName Strings
6*8975f5c5SAndroid Build Coastguard Worker
7*8975f5c5SAndroid Build Coastguard Worker    EGL_ANGLE_keyed_mutex
8*8975f5c5SAndroid Build Coastguard Worker
9*8975f5c5SAndroid Build Coastguard WorkerContributors
10*8975f5c5SAndroid Build Coastguard Worker
11*8975f5c5SAndroid Build Coastguard Worker    Jeff Muizelaar
12*8975f5c5SAndroid Build Coastguard Worker
13*8975f5c5SAndroid Build Coastguard WorkerContacts
14*8975f5c5SAndroid Build Coastguard Worker
15*8975f5c5SAndroid Build Coastguard Worker    Jeff Muizelaar, Mozilla (jmuizelaar 'at' mozilla.org)
16*8975f5c5SAndroid Build Coastguard Worker
17*8975f5c5SAndroid Build Coastguard WorkerStatus
18*8975f5c5SAndroid Build Coastguard Worker
19*8975f5c5SAndroid Build Coastguard Worker    Implemented in ANGLE.
20*8975f5c5SAndroid Build Coastguard Worker
21*8975f5c5SAndroid Build Coastguard WorkerVersion
22*8975f5c5SAndroid Build Coastguard Worker
23*8975f5c5SAndroid Build Coastguard Worker    Version 1, Oct 29, 2014
24*8975f5c5SAndroid Build Coastguard Worker
25*8975f5c5SAndroid Build Coastguard WorkerNumber
26*8975f5c5SAndroid Build Coastguard Worker
27*8975f5c5SAndroid Build Coastguard Worker    EGL Extension #??
28*8975f5c5SAndroid Build Coastguard Worker
29*8975f5c5SAndroid Build Coastguard WorkerDependencies
30*8975f5c5SAndroid Build Coastguard Worker
31*8975f5c5SAndroid Build Coastguard Worker    Requires the EGL_ANGLE_query_surface_pointer extension.
32*8975f5c5SAndroid Build Coastguard Worker
33*8975f5c5SAndroid Build Coastguard Worker    This extension is written against the wording of the EGL 1.4
34*8975f5c5SAndroid Build Coastguard Worker    Specification.
35*8975f5c5SAndroid Build Coastguard Worker
36*8975f5c5SAndroid Build Coastguard WorkerOverview
37*8975f5c5SAndroid Build Coastguard Worker
38*8975f5c5SAndroid Build Coastguard Worker    Some EGL implementations generate EGLSurface handles that are
39*8975f5c5SAndroid Build Coastguard Worker    backed by Direct3D 11 2D textures.  This extension allows
40*8975f5c5SAndroid Build Coastguard Worker    obtaining the IDXGIKeyedMutex for such EGL surfaces.
41*8975f5c5SAndroid Build Coastguard Worker
42*8975f5c5SAndroid Build Coastguard WorkerNew Types
43*8975f5c5SAndroid Build Coastguard Worker
44*8975f5c5SAndroid Build Coastguard Worker    None
45*8975f5c5SAndroid Build Coastguard Worker
46*8975f5c5SAndroid Build Coastguard WorkerNew Procedures and Functions
47*8975f5c5SAndroid Build Coastguard Worker
48*8975f5c5SAndroid Build Coastguard Worker    None
49*8975f5c5SAndroid Build Coastguard Worker
50*8975f5c5SAndroid Build Coastguard WorkerNew Tokens
51*8975f5c5SAndroid Build Coastguard Worker
52*8975f5c5SAndroid Build Coastguard Worker    Accepted in the <attribute> parameter of eglQuerySurfacePointerANGLE:
53*8975f5c5SAndroid Build Coastguard Worker
54*8975f5c5SAndroid Build Coastguard Worker        EGL_DXGI_KEYED_MUTEX_ANGLE                       0x33A2
55*8975f5c5SAndroid Build Coastguard Worker
56*8975f5c5SAndroid Build Coastguard Worker    Add to table 3.5, "Queryable surface attributes and types":
57*8975f5c5SAndroid Build Coastguard Worker
58*8975f5c5SAndroid Build Coastguard Worker        Attribute                              Type      Description
59*8975f5c5SAndroid Build Coastguard Worker        ---------                              ----      -----------
60*8975f5c5SAndroid Build Coastguard Worker        EGL_DXGI_KEYED_MUTEX_ANGLE             pointer   IDXGIKeyedMutex
61*8975f5c5SAndroid Build Coastguard Worker
62*8975f5c5SAndroid Build Coastguard Worker    Add before the last paragraph in section 3.5, "Surface attributes":
63*8975f5c5SAndroid Build Coastguard Worker
64*8975f5c5SAndroid Build Coastguard Worker        "Querying EGL_DXGI_KEYED_MUTEX_ANGLE returns a IDXGIKeyedMutex, or NULL
65*8975f5c5SAndroid Build Coastguard Worker        if a keyed mutex for the surface is not available.  The keyed mutex
66*8975f5c5SAndroid Build Coastguard Worker        must be queried using eglQuerySurfaceAttribPointerANGLE.  Keyed Mutexes
67*8975f5c5SAndroid Build Coastguard Worker        are only available from EGL surfaces backed by Direct3D 11 surfaces.
68*8975f5c5SAndroid Build Coastguard Worker        Before using the keyed mutex, ensure that all rendering to the EGLSurface
69*8975f5c5SAndroid Build Coastguard Worker        with EGL client APIs has completed."
70*8975f5c5SAndroid Build Coastguard Worker
71*8975f5c5SAndroid Build Coastguard WorkerIssues
72*8975f5c5SAndroid Build Coastguard Worker
73*8975f5c5SAndroid Build Coastguard WorkerRevision History
74*8975f5c5SAndroid Build Coastguard Worker
75*8975f5c5SAndroid Build Coastguard Worker    Version 1, 2014/10/29 - first draft.
76