| // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // OpenGL ES 2.0 extensions for PPAPI. |
| |
| #ifndef PPAPI_LIB_GL_GLES2_GL2EXT_PPAPI_H_ |
| #define PPAPI_LIB_GL_GLES2_GL2EXT_PPAPI_H_ |
| |
| #include <GLES2/gl2platform.h> |
| |
| #include "ppapi/c/pp_resource.h" |
| #include "ppapi/c/ppb.h" |
| #include "ppapi/c/ppb_opengles2.h" |
| #include "ppapi/c/dev/ppb_opengles2ext_dev.h" |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif // __cplusplus |
| |
| // Initializes OpenGL ES 2.0 library. |
| // Must be called once before making any gl calls. |
| // GL_FALSE is returned on failure, GL_TRUE otherwise. |
| GL_APICALL GLboolean GL_APIENTRY glInitializePPAPI( |
| PPB_GetInterface get_browser_interface); |
| |
| // Terminates OpenGL ES 2.0 library. |
| // GL_FALSE is returned on failure, GL_TRUE otherwise. |
| GL_APICALL GLboolean GL_APIENTRY glTerminatePPAPI(void); |
| |
| // Sets context to be used for rendering in the current thread. |
| GL_APICALL void GL_APIENTRY glSetCurrentContextPPAPI(PP_Resource context); |
| |
| // Gets context being used for rendering in the current thread. |
| // Returns NULL if a context has not been set yet. |
| GL_APICALL PP_Resource GL_APIENTRY glGetCurrentContextPPAPI(void); |
| |
| // Returns OpenGL ES 2.0 interface. |
| GL_APICALL const struct PPB_OpenGLES2* GL_APIENTRY glGetInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2InstancedArrays* GL_APIENTRY |
| glGetInstancedArraysInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2FramebufferBlit* GL_APIENTRY |
| glGetFramebufferBlitInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2FramebufferMultisample* GL_APIENTRY |
| glGetFramebufferMultisampleInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2ChromiumEnableFeature* GL_APIENTRY |
| glGetChromiumEnableFeatureInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2ChromiumMapSub* GL_APIENTRY |
| glGetChromiumMapSubInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2Query* GL_APIENTRY |
| glGetQueryInterfacePPAPI(void); |
| GL_APICALL const struct PPB_OpenGLES2DrawBuffers_Dev* GL_APIENTRY |
| glGetDrawBuffersInterfacePPAPI(void); |
| |
| #ifdef __cplusplus |
| } |
| #endif // __cplusplus |
| |
| #endif // PPAPI_LIB_GL_GLES2_GL2EXT_PPAPI_H_ |
| |