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