Edit

kc3-lang/angle/extensions/EGL_ANGLE_device_cgl.txt

Branch :

  • Show log

    Commit

  • Author : Kenneth Russell
    Date : 2019-10-04 18:19:32
    Hash : 8e7d9d6c
    Message : Add EGL_ANGLE_device_cgl extension. Supports querying the CGLContextObj and CGLPixelFormatObj associated with ANGLE's underlying OpenGL context on macOS. Minor refactorings to implementation of device attribute queries on all platforms. Bug: angleproject:3973 Change-Id: I24341668be4cbfed0b7f2df4c1402df1effe275e Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1846733 Commit-Queue: Kenneth Russell <kbr@chromium.org> Reviewed-by: Jamie Madill <jmadill@chromium.org>

  • extensions/EGL_ANGLE_device_cgl.txt
  • Name
    
        ANGLE_device_cgl
    
    Name Strings
    
        EGL_ANGLE_device_cgl
    
    Contributors
    
        Ken Russell   (kbr 'at' google.com)
        Geoff Lang    (geofflang 'at' google.com)
    
    Contact
    
        Ken Russell   (kbr 'at' google.com)
    
    Status
    
        Draft
    
    Version
    
        Version 1, October 4, 2019
    
    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 on macOS internally uses an OpenGL context allocated via CGL.
        This extension defines a mapping from an EGL device to the underlying
        CGLContextObj and its associated CGLPixelFormatObj, after it's been
        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_CGL_CONTEXT_ANGLE           0x3485
            EGL_CGL_PIXEL_FORMAT_ANGLE      0x3486
    
    Add a new section 2.1.3 (CGL Devices) after 2.1.2 (Devices)
    
        On macOS the underlying CGLContextObj and CGLPixelFormatObj can be queried
        from the EGL device. The intented purpose is to allow applications to create
        new CGL contexts which share resources with this one.
    
    Changes to section 3.2 (Devices)
    
        Replace the paragraph immediately following the prototype for
        eglQueryDeviceAttribEXT:
    
        <attribute> may be either EGL_CGLCONTEXT_DEVICE_ANGLE or
        EGL_CGLPIXELFORMAT_DEVICE_ANGLE.  On success, EGL_TRUE is returned, and a
        valid CGLContextObj or CGLPixelFormatObj corresponding to the EGL device is
        returned in <value>. These objects are compatible with OpenGL and CGL API
        functions. If the EGL device is not currently associated with a CGL context,
        EGL_BAD_ATTRIBUTE is returned, and <value> is left unchanged.
    
    Issues
    
        None
    
    Revision History
    
        Version 1, October 4, 2019 (Ken Russell)
            - Initial Draft
        Version 2, October 8, 2019 (Ken Russell)
            - Address feedback from Geoff Lang