| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2013 Google Inc. | 2 * Copyright 2013 Google Inc. |
| 3 * | 3 * |
| 4 * Use of this source code is governed by a BSD-style license that can be | 4 * Use of this source code is governed by a BSD-style license that can be |
| 5 * found in the LICENSE file. | 5 * found in the LICENSE file. |
| 6 */ | 6 */ |
| 7 | 7 |
| 8 #include "GrGLNoOpInterface.h" | 8 #include "GrGLNoOpInterface.h" |
| 9 #include "SkString.h" | 9 #include "SkString.h" |
| 10 #include "SkThread.h" | 10 #include "SkThread.h" |
| 11 | 11 |
| 12 // the OpenGLES 2.0 spec says this must be >= 128 | 12 // the OpenGLES 2.0 spec says this must be >= 128 |
| 13 static const GrGLint kDefaultMaxVertexUniformVectors = 128; | 13 static const GrGLint kDefaultMaxVertexUniformVectors = 128; |
| 14 | 14 |
| 15 // the OpenGLES 2.0 spec says this must be >=16 | 15 // the OpenGLES 2.0 spec says this must be >=16 |
| 16 static const GrGLint kDefaultMaxFragmentUniformVectors = 16; | 16 static const GrGLint kDefaultMaxFragmentUniformVectors = 16; |
| 17 | 17 |
| 18 // the OpenGLES 2.0 spec says this must be >= 8 | 18 // the OpenGLES 2.0 spec says this must be >= 8 |
| 19 static const GrGLint kDefaultMaxVertexAttribs = 8; | 19 static const GrGLint kDefaultMaxVertexAttribs = 8; |
| 20 | 20 |
| 21 // the OpenGLES 2.0 spec says this must be >= 8 | 21 // the OpenGLES 2.0 spec says this must be >= 8 |
| 22 static const GrGLint kDefaultMaxVaryingVectors = 8; | 22 static const GrGLint kDefaultMaxVaryingVectors = 8; |
| 23 | 23 |
| 24 static const char* kExtensions[] = { | 24 static const char* kExtensions[] = { |
| 25 "GL_ARB_framebuffer_object", | 25 "GL_ARB_framebuffer_object", |
| 26 "GL_ARB_blend_func_extended", | 26 "GL_ARB_blend_func_extended", |
| 27 "GL_ARB_timer_query", | 27 "GL_ARB_timer_query", |
| 28 "GL_ARB_draw_buffers", | 28 "GL_ARB_draw_buffers", |
| 29 "GL_ARB_occlusion_query", | 29 "GL_ARB_occlusion_query", |
| 30 "GL_EXT_blend_color", | |
| 31 "GL_EXT_stencil_wrap" | 30 "GL_EXT_stencil_wrap" |
| 32 }; | 31 }; |
| 33 | 32 |
| 34 namespace { | 33 namespace { |
| 35 const GrGLubyte* combined_extensions_string() { | 34 const GrGLubyte* combined_extensions_string() { |
| 36 static SkString gExtString; | 35 static SkString gExtString; |
| 37 static SkMutex gMutex; | 36 static SkMutex gMutex; |
| 38 gMutex.acquire(); | 37 gMutex.acquire(); |
| 39 if (0 == gExtString.size()) { | 38 if (0 == gExtString.size()) { |
| 40 for (size_t i = 0; i < SK_ARRAY_COUNT(kExtensions) - 1; ++i) { | 39 for (size_t i = 0; i < SK_ARRAY_COUNT(kExtensions) - 1; ++i) { |
| 41 gExtString.append(kExtensions[i]); | 40 gExtString.append(kExtensions[i]); |
| 42 gExtString.append(" "); | 41 gExtString.append(" "); |
| 43 } | 42 } |
| 44 gExtString.append(kExtensions[SK_ARRAY_COUNT(kExtensions) - 1]); | 43 gExtString.append(kExtensions[SK_ARRAY_COUNT(kExtensions) - 1]); |
| 45 } | 44 } |
| 46 gMutex.release(); | 45 gMutex.release(); |
| 47 return (const GrGLubyte*) gExtString.c_str(); | 46 return (const GrGLubyte*) gExtString.c_str(); |
| 48 } | 47 } |
| 49 } | 48 } |
| 50 | 49 |
| 50 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBindFragDataLocation(GrGLuint program, |
| 51 GrGLuint colorNumber, |
| 52 const GrGLchar* name) { |
| 53 } |
| 54 |
| 51 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendColor(GrGLclampf red, | 55 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendColor(GrGLclampf red, |
| 52 GrGLclampf green, | 56 GrGLclampf green, |
| 53 GrGLclampf blue, | 57 GrGLclampf blue, |
| 54 GrGLclampf alpha) { | 58 GrGLclampf alpha) { |
| 55 } | 59 } |
| 56 | 60 |
| 57 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBindFragDataLocation(GrGLuint program, | 61 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendEquation(GrGLenum mode) { |
| 58 GrGLuint colorNumber, | |
| 59 const GrGLchar* name) { | |
| 60 } | 62 } |
| 61 | 63 |
| 62 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendFunc(GrGLenum sfactor, | 64 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBlendFunc(GrGLenum sfactor, |
| 63 GrGLenum dfactor) { | 65 GrGLenum dfactor) { |
| 64 } | 66 } |
| 65 | 67 |
| 66 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBufferSubData(GrGLenum target, | 68 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLBufferSubData(GrGLenum target, |
| 67 GrGLintptr offset, | 69 GrGLintptr offset, |
| 68 GrGLsizeiptr size, | 70 GrGLsizeiptr size, |
| 69 const GrGLvoid* data) { | 71 const GrGLvoid* data) { |
| (...skipping 585 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 655 static int gUniLocation = 0; | 657 static int gUniLocation = 0; |
| 656 return ++gUniLocation; | 658 return ++gUniLocation; |
| 657 } | 659 } |
| 658 | 660 |
| 659 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLInsertEventMarker(GrGLsizei length, const cha
r* marker) { | 661 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLInsertEventMarker(GrGLsizei length, const cha
r* marker) { |
| 660 } | 662 } |
| 661 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPushGroupMarker(GrGLsizei length , const cha
r* marker) { | 663 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPushGroupMarker(GrGLsizei length , const cha
r* marker) { |
| 662 } | 664 } |
| 663 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPopGroupMarker() { | 665 GrGLvoid GR_GL_FUNCTION_TYPE noOpGLPopGroupMarker() { |
| 664 } | 666 } |
| OLD | NEW |