Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(262)

Side by Side Diff: ppapi/lib/gl/gles2/gl2ext_ppapi.c

Issue 397183002: Add PPAPI interface for OpenGL ES 2.0 Vertex Array Objects. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « ppapi/lib/gl/gles2/gl2ext_ppapi.h ('k') | ppapi/lib/gl/gles2/gles2.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ppapi/lib/gl/gles2/gl2ext_ppapi.h" 5 #include "ppapi/lib/gl/gles2/gl2ext_ppapi.h"
6 6
7 #include <stddef.h> 7 #include <stddef.h>
8 8
9 #ifndef GL_FALSE 9 #ifndef GL_FALSE
10 #define GL_FALSE 0 10 #define GL_FALSE 0
(...skipping 20 matching lines...) Expand all
31 static const struct PPB_OpenGLES2FramebufferBlit* 31 static const struct PPB_OpenGLES2FramebufferBlit*
32 g_gles2_framebuffer_blit_interface = NULL; 32 g_gles2_framebuffer_blit_interface = NULL;
33 static const struct PPB_OpenGLES2FramebufferMultisample* 33 static const struct PPB_OpenGLES2FramebufferMultisample*
34 g_gles2_framebuffer_multisample_interface = NULL; 34 g_gles2_framebuffer_multisample_interface = NULL;
35 static const struct PPB_OpenGLES2ChromiumEnableFeature* 35 static const struct PPB_OpenGLES2ChromiumEnableFeature*
36 g_gles2_chromium_enable_feature_interface = NULL; 36 g_gles2_chromium_enable_feature_interface = NULL;
37 static const struct PPB_OpenGLES2ChromiumMapSub* 37 static const struct PPB_OpenGLES2ChromiumMapSub*
38 g_gles2_chromium_map_sub_interface = NULL; 38 g_gles2_chromium_map_sub_interface = NULL;
39 static const struct PPB_OpenGLES2Query* 39 static const struct PPB_OpenGLES2Query*
40 g_gles2_query_interface = NULL; 40 g_gles2_query_interface = NULL;
41 static const struct PPB_OpenGLES2VertexArrayObject*
42 g_gles2_vertex_array_object_interface = NULL;
41 static const struct PPB_OpenGLES2DrawBuffers_Dev* 43 static const struct PPB_OpenGLES2DrawBuffers_Dev*
42 g_gles2_draw_buffers_interface = NULL; 44 g_gles2_draw_buffers_interface = NULL;
43 45
44 // TODO(alokp): Make sure PP_TLS works on all supported platforms. 46 // TODO(alokp): Make sure PP_TLS works on all supported platforms.
45 static PP_TLS PP_Resource g_current_context = 0; 47 static PP_TLS PP_Resource g_current_context = 0;
46 48
47 GLboolean GL_APIENTRY glInitializePPAPI( 49 GLboolean GL_APIENTRY glInitializePPAPI(
48 PPB_GetInterface get_browser_interface) { 50 PPB_GetInterface get_browser_interface) {
49 if (!g_gles2_interface) { 51 if (!g_gles2_interface) {
50 g_gles2_interface = get_browser_interface(PPB_OPENGLES2_INTERFACE); 52 g_gles2_interface = get_browser_interface(PPB_OPENGLES2_INTERFACE);
(...skipping 17 matching lines...) Expand all
68 PPB_OPENGLES2_CHROMIUMENABLEFEATURE_INTERFACE); 70 PPB_OPENGLES2_CHROMIUMENABLEFEATURE_INTERFACE);
69 } 71 }
70 if (!g_gles2_chromium_map_sub_interface) { 72 if (!g_gles2_chromium_map_sub_interface) {
71 g_gles2_chromium_map_sub_interface = 73 g_gles2_chromium_map_sub_interface =
72 get_browser_interface(PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE); 74 get_browser_interface(PPB_OPENGLES2_CHROMIUMMAPSUB_INTERFACE);
73 } 75 }
74 if (!g_gles2_query_interface) { 76 if (!g_gles2_query_interface) {
75 g_gles2_query_interface = 77 g_gles2_query_interface =
76 get_browser_interface(PPB_OPENGLES2_QUERY_INTERFACE); 78 get_browser_interface(PPB_OPENGLES2_QUERY_INTERFACE);
77 } 79 }
80 if (!g_gles2_vertex_array_object_interface) {
81 g_gles2_vertex_array_object_interface =
82 get_browser_interface(PPB_OPENGLES2_VERTEXARRAYOBJECT_INTERFACE);
83 }
78 if (!g_gles2_draw_buffers_interface) { 84 if (!g_gles2_draw_buffers_interface) {
79 g_gles2_draw_buffers_interface = 85 g_gles2_draw_buffers_interface =
80 get_browser_interface(PPB_OPENGLES2_DRAWBUFFERS_DEV_INTERFACE); 86 get_browser_interface(PPB_OPENGLES2_DRAWBUFFERS_DEV_INTERFACE);
81 } 87 }
82 return g_gles2_interface ? GL_TRUE : GL_FALSE; 88 return g_gles2_interface ? GL_TRUE : GL_FALSE;
83 } 89 }
84 90
85 GLboolean GL_APIENTRY glTerminatePPAPI(void) { 91 GLboolean GL_APIENTRY glTerminatePPAPI(void) {
86 g_gles2_interface = NULL; 92 g_gles2_interface = NULL;
87 return GL_TRUE; 93 return GL_TRUE;
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
122 const struct PPB_OpenGLES2ChromiumMapSub* GL_APIENTRY 128 const struct PPB_OpenGLES2ChromiumMapSub* GL_APIENTRY
123 glGetChromiumMapSubInterfacePPAPI(void) { 129 glGetChromiumMapSubInterfacePPAPI(void) {
124 return g_gles2_chromium_map_sub_interface; 130 return g_gles2_chromium_map_sub_interface;
125 } 131 }
126 132
127 const struct PPB_OpenGLES2Query* GL_APIENTRY 133 const struct PPB_OpenGLES2Query* GL_APIENTRY
128 glGetQueryInterfacePPAPI(void) { 134 glGetQueryInterfacePPAPI(void) {
129 return g_gles2_query_interface; 135 return g_gles2_query_interface;
130 } 136 }
131 137
138 const struct PPB_OpenGLES2VertexArrayObject* GL_APIENTRY
139 glGetVertexArrayObjectInterfacePPAPI(void) {
140 return g_gles2_vertex_array_object_interface;
141 }
142
132 const struct PPB_OpenGLES2DrawBuffers_Dev* GL_APIENTRY 143 const struct PPB_OpenGLES2DrawBuffers_Dev* GL_APIENTRY
133 glGetDrawBuffersInterfacePPAPI(void) { 144 glGetDrawBuffersInterfacePPAPI(void) {
134 return g_gles2_draw_buffers_interface; 145 return g_gles2_draw_buffers_interface;
135 } 146 }
OLDNEW
« no previous file with comments | « ppapi/lib/gl/gles2/gl2ext_ppapi.h ('k') | ppapi/lib/gl/gles2/gles2.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698