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

Side by Side Diff: src/gpu/gl/android/SkNativeGLContext_android.cpp

Issue 133413003: Rename GrGLBinding->GrGLStandard, no longer a bitfield (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: actually fix enum names? Created 6 years, 11 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
OLDNEW
1 1
2 /* 2 /*
3 * Copyright 2011 Google Inc. 3 * Copyright 2011 Google Inc.
4 * 4 *
5 * Use of this source code is governed by a BSD-style license that can be 5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file. 6 * found in the LICENSE file.
7 */ 7 */
8 #include "gl/SkNativeGLContext.h" 8 #include "gl/SkNativeGLContext.h"
9 9
10 SkNativeGLContext::AutoContextRestore::AutoContextRestore() { 10 SkNativeGLContext::AutoContextRestore::AutoContextRestore() {
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
58 58
59 static const EGLint kEGLContextAttribsForOpenGLES[] = { 59 static const EGLint kEGLContextAttribsForOpenGLES[] = {
60 EGL_CONTEXT_CLIENT_VERSION, 2, 60 EGL_CONTEXT_CLIENT_VERSION, 2,
61 EGL_NONE 61 EGL_NONE
62 }; 62 };
63 63
64 static const struct { 64 static const struct {
65 const EGLint* fContextAttribs; 65 const EGLint* fContextAttribs;
66 EGLenum fAPI; 66 EGLenum fAPI;
67 EGLint fRenderableTypeBit; 67 EGLint fRenderableTypeBit;
68 GrGLBinding fBinding; 68 GrGLStandard fStandard;
69 } kAPIs[] = { 69 } kAPIs[] = {
70 { // OpenGL 70 { // OpenGL
71 kEGLContextAttribsForOpenGL, 71 kEGLContextAttribsForOpenGL,
72 EGL_OPENGL_API, 72 EGL_OPENGL_API,
73 EGL_OPENGL_BIT, 73 EGL_OPENGL_BIT,
74 kDesktop_GrGLBinding 74 kGL_GrGLStandard
75 }, 75 },
76 { // OpenGL ES. This seems to work for both ES2 and 3 (when available) . 76 { // OpenGL ES. This seems to work for both ES2 and 3 (when available) .
77 kEGLContextAttribsForOpenGLES, 77 kEGLContextAttribsForOpenGLES,
78 EGL_OPENGL_ES_API, 78 EGL_OPENGL_ES_API,
79 EGL_OPENGL_ES2_BIT, 79 EGL_OPENGL_ES2_BIT,
80 kES_GrGLBinding 80 kGLES_GrGLStandard
81 }, 81 },
82 }; 82 };
83 83
84 const GrGLInterface* interface = NULL; 84 const GrGLInterface* interface = NULL;
85 85
86 for (size_t api = 0; NULL == interface && api < SK_ARRAY_COUNT(kAPIs); ++api ) { 86 for (size_t api = 0; NULL == interface && api < SK_ARRAY_COUNT(kAPIs); ++api ) {
87 fDisplay = eglGetDisplay(EGL_DEFAULT_DISPLAY); 87 fDisplay = eglGetDisplay(EGL_DEFAULT_DISPLAY);
88 88
89 EGLint majorVersion; 89 EGLint majorVersion;
90 EGLint minorVersion; 90 EGLint minorVersion;
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after
143 continue; 143 continue;
144 } 144 }
145 145
146 interface = GrGLCreateNativeInterface(); 146 interface = GrGLCreateNativeInterface();
147 if (NULL == interface) { 147 if (NULL == interface) {
148 SkDebugf("Failed to create gl interface.\n"); 148 SkDebugf("Failed to create gl interface.\n");
149 this->destroyGLContext(); 149 this->destroyGLContext();
150 continue; 150 continue;
151 } 151 }
152 152
153 if (!interface->validate(kAPIs[api].fBinding)) { 153 if (!interface->validate()) {
154 interface->unref(); 154 interface->unref();
155 interface = NULL; 155 interface = NULL;
156 this->destroyGLContext(); 156 this->destroyGLContext();
157 } 157 }
158 } 158 }
159 159
160 return interface; 160 return interface;
161 } 161 }
162 162
163 void SkNativeGLContext::makeCurrent() const { 163 void SkNativeGLContext::makeCurrent() const {
164 if (!eglMakeCurrent(fDisplay, fSurface, fSurface, fContext)) { 164 if (!eglMakeCurrent(fDisplay, fSurface, fSurface, fContext)) {
165 SkDebugf("Could not set the context.\n"); 165 SkDebugf("Could not set the context.\n");
166 } 166 }
167 } 167 }
168 168
169 void SkNativeGLContext::swapBuffers() const { 169 void SkNativeGLContext::swapBuffers() const {
170 if (!eglSwapBuffers(fDisplay, fSurface)) { 170 if (!eglSwapBuffers(fDisplay, fSurface)) {
171 SkDebugf("Could not complete eglSwapBuffers.\n"); 171 SkDebugf("Could not complete eglSwapBuffers.\n");
172 } 172 }
173 } 173 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698