1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. 2 // Use of this source code is governed by a BSD-style license that can be 3 // found in the LICENSE file. 4 5 // This file contains Chromium-specific EGL extensions declarations. 6 7 #ifndef GPU_EGL_EGLEXTCHROMIUM_H_ 8 #define GPU_EGL_EGLEXTCHROMIUM_H_ 9 10 #ifdef __cplusplus 11 extern "C" { 12 #endif 13 14 #include <EGL/eglplatform.h> 15 16 /* EGLSyncControlCHROMIUM requires 64-bit uint support */ 17 #if KHRONOS_SUPPORT_INT64 18 #ifndef EGL_CHROMIUM_sync_control 19 #define EGL_CHROMIUM_sync_control 1 20 typedef khronos_uint64_t EGLuint64CHROMIUM; 21 #ifdef EGL_EGLEXT_PROTOTYPES 22 EGLAPI EGLBoolean EGLAPIENTRY eglGetSyncValuesCHROMIUM( 23 EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, 24 EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); 25 #endif /* EGL_EGLEXT_PROTOTYPES */ 26 typedef EGLBoolean (EGLAPIENTRYP PFNEGLGETSYNCVALUESCHROMIUMPROC) 27 (EGLDisplay dpy, EGLSurface surface, EGLuint64CHROMIUM *ust, 28 EGLuint64CHROMIUM *msc, EGLuint64CHROMIUM *sbc); 29 #endif /* EGL_CHROMIUM_sync_control */ 30 31 #ifndef EGL_ANGLE_sync_control_rate 32 #define EGL_ANGLE_sync_control_rate 1 33 #ifdef EGL_EGLEXT_PROTOTYPES 34 EGLAPI EGLBoolean EGLAPIENTRY eglGetMscRateANGLE(EGLDisplay dpy, 35 EGLSurface surface, 36 EGLint* numerator, 37 EGLint* denominator); 38 #endif /* EGL_EGLEXT_PROTOTYPES */ 39 typedef EGLBoolean(EGLAPIENTRYP PFNEGLGETMSCRATEANGLEPROC)(EGLDisplay dpy, 40 EGLSurface surface, 41 EGLint* numerator, 42 EGLint* denominator); 43 #endif /* EGL_ANGLE_sync_control_rate */ 44 #endif /* KHRONOS_SUPPORT_INT64 */ 45 46 #ifdef __cplusplus 47 } 48 #endif 49 50 #define // GPU_EGL_EGLEXTCHROMIUM_H_ 51