Name

    CHROMIUM_sync_query

Name Strings

    GL_CHROMIUM_sync_query

Version

    Last Modifed Date: April 15, 2014

Dependencies

    OpenGL ES 2.0 is required.

    EXT_occlusion_query_boolean is required.

Overview

    This extension provides a query mechanism that allow for synchronization
    between the host CPU and the GPU, which may be accessing the same
    resources (typically memory).

    This extension is useful in conjunction with CHROMIUM_map_image to
    determine when it is safe to access a mapped image. Once the result of
    a COMMANDS_COMPLETED_CHROMIUM query is available, all drawing commands
    issued before the query must have finished. This ensures that the memory
    corresponding to the issued commands can be safely modified (assuming no
    other outstanding drawing commands are issued subsequent to the query).

New Procedures and Functions

    None.

Errors

    None.

New Tokens

    Accepted by the <target> parameter of BeginQueryEXT, EndQueryEXT,
    and GetQueryivEXT:

        COMMANDS_COMPLETED_CHROMIUM                     0x84F7

New State

    None.

Revision History

    4/15/2014   Documented the extension
