1 /* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 #ifndef _EGL_PROC_H 17 #define _EGL_PROC_H 18 19 #include <EGL/egl.h> 20 #define EGL_EGLEXT_PROTOTYPES 21 #include <EGL/eglext.h> 22 23 typedef EGLint (* eglGetError_t) (); 24 typedef EGLDisplay (* eglGetDisplay_t) (EGLNativeDisplayType); 25 typedef EGLBoolean (* eglInitialize_t) (EGLDisplay, EGLint*, EGLint*); 26 typedef EGLBoolean (* eglTerminate_t) (EGLDisplay); 27 typedef char* (* eglQueryString_t) (EGLDisplay, EGLint); 28 typedef EGLBoolean (* eglGetConfigs_t) (EGLDisplay, EGLConfig*, EGLint, EGLint*); 29 typedef EGLBoolean (* eglChooseConfig_t) (EGLDisplay, const EGLint*, EGLConfig*, EGLint, EGLint*); 30 typedef EGLBoolean (* eglGetConfigAttrib_t) (EGLDisplay, EGLConfig, EGLint, EGLint*); 31 typedef EGLSurface (* eglCreateWindowSurface_t) (EGLDisplay, EGLConfig, EGLNativeWindowType, const EGLint*); 32 typedef EGLSurface (* eglCreatePbufferSurface_t) (EGLDisplay, EGLConfig, const EGLint*); 33 typedef EGLSurface (* eglCreatePixmapSurface_t) (EGLDisplay, EGLConfig, EGLNativePixmapType, const EGLint*); 34 typedef EGLBoolean (* eglDestroySurface_t) (EGLDisplay, EGLSurface); 35 typedef EGLBoolean (* eglQuerySurface_t) (EGLDisplay, EGLSurface, EGLint, EGLint*); 36 typedef EGLBoolean (* eglBindAPI_t) (EGLenum); 37 typedef EGLenum (* eglQueryAPI_t) (); 38 typedef EGLBoolean (* eglWaitClient_t) (); 39 typedef EGLBoolean (* eglReleaseThread_t) (); 40 typedef EGLSurface (* eglCreatePbufferFromClientBuffer_t) (EGLDisplay, EGLenum, EGLClientBuffer, EGLConfig, const EGLint*); 41 typedef EGLBoolean (* eglSurfaceAttrib_t) (EGLDisplay, EGLSurface, EGLint, EGLint); 42 typedef EGLBoolean (* eglBindTexImage_t) (EGLDisplay, EGLSurface, EGLint); 43 typedef EGLBoolean (* eglReleaseTexImage_t) (EGLDisplay, EGLSurface, EGLint); 44 typedef EGLBoolean (* eglSwapInterval_t) (EGLDisplay, EGLint); 45 typedef EGLContext (* eglCreateContext_t) (EGLDisplay, EGLConfig, EGLContext, const EGLint*); 46 typedef EGLBoolean (* eglDestroyContext_t) (EGLDisplay, EGLContext); 47 typedef EGLBoolean (* eglMakeCurrent_t) (EGLDisplay, EGLSurface, EGLSurface, EGLContext); 48 typedef EGLContext (* eglGetCurrentContext_t) (); 49 typedef EGLSurface (* eglGetCurrentSurface_t) (EGLint); 50 typedef EGLDisplay (* eglGetCurrentDisplay_t) (); 51 typedef EGLBoolean (* eglQueryContext_t) (EGLDisplay, EGLContext, EGLint, EGLint*); 52 typedef EGLBoolean (* eglWaitGL_t) (); 53 typedef EGLBoolean (* eglWaitNative_t) (EGLint); 54 typedef EGLBoolean (* eglSwapBuffers_t) (EGLDisplay, EGLSurface); 55 typedef EGLBoolean (* eglCopyBuffers_t) (EGLDisplay, EGLSurface, EGLNativePixmapType); 56 typedef __eglMustCastToProperFunctionPointerType (* eglGetProcAddress_t) (const char*); 57 typedef EGLBoolean (* eglLockSurfaceKHR_t) (EGLDisplay, EGLSurface, const EGLint*); 58 typedef EGLBoolean (* eglUnlockSurfaceKHR_t) (EGLDisplay, EGLSurface); 59 typedef EGLImageKHR (* eglCreateImageKHR_t) (EGLDisplay, EGLContext, EGLenum, EGLClientBuffer, const EGLint*); 60 typedef EGLBoolean (* eglDestroyImageKHR_t) (EGLDisplay, EGLImageKHR image); 61 typedef EGLSyncKHR (* eglCreateSyncKHR_t) (EGLDisplay, EGLenum, const EGLint*); 62 typedef EGLBoolean (* eglDestroySyncKHR_t) (EGLDisplay, EGLSyncKHR sync); 63 typedef EGLint (* eglClientWaitSyncKHR_t) (EGLDisplay, EGLSyncKHR, EGLint, EGLTimeKHR timeout); 64 typedef EGLBoolean (* eglSignalSyncKHR_t) (EGLDisplay, EGLSyncKHR, EGLenum); 65 typedef EGLBoolean (* eglGetSyncAttribKHR_t) (EGLDisplay, EGLSyncKHR, EGLint, EGLint*); 66 typedef EGLBoolean (* eglSetSwapRectangleANDROID_t) (EGLDisplay, EGLSurface, EGLint, EGLint, EGLint, EGLint); 67 68 #endif // of _EGL_PROC_H 69