1bf215546Sopenharmony_ci// Copyright (c) 2013 The Chromium Authors. All rights reserved. 2bf215546Sopenharmony_ci// 3bf215546Sopenharmony_ci// Redistribution and use in source and binary forms, with or without 4bf215546Sopenharmony_ci// modification, are permitted provided that the following conditions are 5bf215546Sopenharmony_ci// met: 6bf215546Sopenharmony_ci// 7bf215546Sopenharmony_ci// * Redistributions of source code must retain the above copyright 8bf215546Sopenharmony_ci// notice, this list of conditions and the following disclaimer. 9bf215546Sopenharmony_ci// * Redistributions in binary form must reproduce the above 10bf215546Sopenharmony_ci// copyright notice, this list of conditions and the following disclaimer 11bf215546Sopenharmony_ci// in the documentation and/or other materials provided with the 12bf215546Sopenharmony_ci// distribution. 13bf215546Sopenharmony_ci// * Neither the name of Google Inc. nor the names of its 14bf215546Sopenharmony_ci// contributors may be used to endorse or promote products derived from 15bf215546Sopenharmony_ci// this software without specific prior written permission. 16bf215546Sopenharmony_ci// 17bf215546Sopenharmony_ci// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 18bf215546Sopenharmony_ci// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 19bf215546Sopenharmony_ci// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 20bf215546Sopenharmony_ci// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 21bf215546Sopenharmony_ci// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 22bf215546Sopenharmony_ci// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 23bf215546Sopenharmony_ci// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 24bf215546Sopenharmony_ci// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 25bf215546Sopenharmony_ci// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26bf215546Sopenharmony_ci// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 27bf215546Sopenharmony_ci// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28bf215546Sopenharmony_ci 29bf215546Sopenharmony_ci// This file contains Chromium-specific EGL extensions declarations. 30bf215546Sopenharmony_ci 31bf215546Sopenharmony_ci#ifndef GPU_EGL_EGLEXTCHROMIUM_H_ 32bf215546Sopenharmony_ci#define GPU_EGL_EGLEXTCHROMIUM_H_ 33bf215546Sopenharmony_ci 34bf215546Sopenharmony_ci#ifdef __cplusplus 35bf215546Sopenharmony_ciextern "C" { 36bf215546Sopenharmony_ci#endif 37bf215546Sopenharmony_ci 38bf215546Sopenharmony_ci#include <EGL/eglplatform.h> 39bf215546Sopenharmony_ci 40bf215546Sopenharmony_ci/* EGLSyncControlCHROMIUM requires 64-bit uint support */ 41bf215546Sopenharmony_ci#if KHRONOS_SUPPORT_INT64 42bf215546Sopenharmony_ci#ifndef EGL_CHROMIUM_sync_control 43bf215546Sopenharmony_ci#define EGL_CHROMIUM_sync_control 1 44bf215546Sopenharmony_citypedef khronos_uint64_t EGLuint64CHROMIUM; 45bf215546Sopenharmony_ci#ifdef EGL_EGLEXT_PROTOTYPES 46bf215546Sopenharmony_ciEGLAPI EGLBoolean EGLAPIENTRY eglGetSyncValuesCHROMIUM( 47bf215546Sopenharmony_ci EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, 48bf215546Sopenharmony_ci EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); 49bf215546Sopenharmony_ci#endif /* EGL_EGLEXT_PROTOTYPES */ 50bf215546Sopenharmony_citypedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCVALUESCHROMIUMPROC) 51bf215546Sopenharmony_ci (EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, 52bf215546Sopenharmony_ci EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); 53bf215546Sopenharmony_ci#endif 54bf215546Sopenharmony_ci#endif 55bf215546Sopenharmony_ci 56bf215546Sopenharmony_ci#ifndef EGL_EXT_image_flush_external 57bf215546Sopenharmony_ci#define EGL_EXT_image_flush_external 1 58bf215546Sopenharmony_ci#define EGL_IMAGE_EXTERNAL_FLUSH_EXT 0x32A2 59bf215546Sopenharmony_citypedef EGLBoolean (EGLAPIENTRYP PFNEGLIMAGEFLUSHEXTERNALEXTPROC) (EGLDisplay dpy, EGLImageKHR image, const EGLAttrib *attrib_list); 60bf215546Sopenharmony_citypedef EGLBoolean (EGLAPIENTRYP PFNEGLIMAGEINVALIDATEEXTERNALEXTPROC) (EGLDisplay dpy, EGLImageKHR image, const EGLAttrib *attrib_list); 61bf215546Sopenharmony_ci#ifdef EGL_EGLEXT_PROTOTYPES 62bf215546Sopenharmony_ciEGLAPI EGLBoolean EGLAPIENTRY eglImageFlushExternalEXT (EGLDisplay dpy, EGLImageKHR image, const EGLAttrib *attrib_list); 63bf215546Sopenharmony_ciEGLAPI EGLBoolean EGLAPIENTRY eglImageInvalidateExternalEXT (EGLDisplay dpy, EGLImageKHR image, const EGLAttrib *attrib_list); 64bf215546Sopenharmony_ci#endif 65bf215546Sopenharmony_ci#endif /* EGL_EXT_image_flush_external */ 66bf215546Sopenharmony_ci 67bf215546Sopenharmony_ci#ifdef __cplusplus 68bf215546Sopenharmony_ci} 69bf215546Sopenharmony_ci#endif 70bf215546Sopenharmony_ci 71bf215546Sopenharmony_ci#endif // GPU_EGL_EGLEXTCHROMIUM_H_ 72