Edit

kc3-lang/angle/extensions/EGL_ANGLE_device_d3d.txt

Branch :

  • Show log

    Commit

  • Author : Jamie Madill
    Date : 2015-03-25 13:31:32
    Hash : 33d12cb9
    Message : Add drafts for device query extensions. These extensions give power apps the ability to query raw device pointers from the EGL layer. EGL_EXT_device_query is based on EGL_EXT_device_base, which is being split into device_query and device_enumerate. We remove the device enumeration logic, and only allow the app to query the current device from a display, which matches how ANGLE works internally. EGL_ANGLE_device_d3d gives the app the ability to query D3D devices associated with a display. BUG=angleproject:935 Change-Id: I8079661f00d11717ed0e792c9fe8dc5c26f67dcc Reviewed-on: https://chromium-review.googlesource.com/252110 Reviewed-by: Jamie Madill <jmadill@chromium.org> Tested-by: Jamie Madill <jmadill@chromium.org>

  • extensions/EGL_ANGLE_device_d3d.txt
  • Name
    
        ANGLE_device_d3d
    
    Name Strings
    
        EGL_ANGLE_device_d3d
    
    Contributors
    
        Jamie Madill  (jmadill 'at' google.com)
    
    Contact
    
        Jamie Madill  (jmadill 'at' google.com)
    
    Status
    
        Draft
    
    Version
    
        Version 1, Mar 25, 2015
    
    Number
    
        EGL Extension #XXX
    
    Extension Type
    
        EGL device extension
    
    Dependencies
    
        This extension is written against the language of EGL 1.5 as
        modified by EGL_EXT_device_query.
    
        EGL_EXT_device_query is required.
    
    Overview
    
        ANGLE has the ability to run GPU commands on a native D3D device.
        This extension defines a mapping from an EGL device to a D3D
        device, after it's queried from an EGL display.
    
    IP Status
    
        No known claims.
    
    New Types
    
        None.
    
    New Procedures and Functions
    
        None.
    
    New Tokens
    
        Accepted as a queried <attribute> in eglQueryDeviceAttribEXT:
    
            EGL_D3D9_DEVICE_ANGLE              0x33A0
            EGL_D3D11_DEVICE_ANGLE             0x33A1
    
    Add a new section 2.1.3 (D3D Devices) after 2.1.2 (Devices)
    
        Somewhat analogous to an EGL device, a D3D device establishes a
        namespace for D3D operations. In the D3D APIs, such devices are
        represented by pointers. For more details, see the D3D
        documentation.
    
    Changes to section 3.2 (Devices)
    
        Replace the paragraph immediately following the prototype for
        eglQueryDeviceAttribEXT:
    
        <attribute> may be either EGL_D3D9_DEVICE_ANGLE or EGL_D3D11_DEVICE_ANGLE.
        On success, EGL_TRUE is returned, and a valid D3D9 or D3D11 device pointer
        corresponding to the EGL device is returned in <value>. This handle
        is compatible with D3D API functions. If the EGL device is not currently
        associated with a D3D9 device and <attribute> is EGL_D3D9_DEVICE_ANGLE,
        or if the EGL device is not currently associated with a D3D11 device and
        <attribute> is EGL_D3D11_DEVICE_ANGLE, EGL_BAD_ATTRIBUTE is returned,
        and <value> is left unchanged.
    
    Issues
    
        None
    
    Revision History
    
        Version 1, Mar 25, 2015 (Jamie Madill)
            - Initial Draft