Thu, 15 Jan 2015 21:03:48 +0100
Integrate friendly tips from Tor colleagues to make (or not) 4.5 alpha 3;
This includes removal of overloaded (but unused) methods, and addition of
a overlooked call to DataStruct::SetData(nsISupports, uint32_t, bool.)
2 /*
3 * Copyright 2011 Google Inc.
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8 #ifndef GrGLConfig_chrome_DEFINED
9 #define GrGLConfig_chrome_DEFINED
11 // glGetError() forces a sync with gpu process on chrome
12 #define GR_GL_CHECK_ERROR_START 0
14 #if defined(SK_BUILD_FOR_WIN32)
15 // ANGLE creates a temp VB for vertex attributes not specified per-vertex.
16 #define GR_GL_NO_CONSTANT_ATTRIBUTES 1
18 // For RGBA teximage/readpixels ANGLE will sw-convert to/from BGRA.
19 #define GR_GL_RGBA_8888_PIXEL_OPS_SLOW 1
21 // ANGLE can go faster if the entire fbo is read rather than a subrect
22 #define GR_GL_FULL_READPIXELS_FASTER_THAN_PARTIAL 1
23 #else
24 #define GR_GL_NO_CONSTANT_ATTRIBUTES 0
25 #define GR_GL_RGBA_8888_PIXEL_OPS_SLOW 0
26 #define GR_GL_FULL_READPIXELS_FASTER_THAN_PARTIAL 0
27 #endif
29 // cmd buffer allocates memory and memsets it to zero when it sees glBufferData
30 // with NULL.
31 #define GR_GL_USE_BUFFER_DATA_NULL_HINT 0
33 // chrome uses this to set the context on each GL call.
34 #define GR_GL_PER_GL_FUNC_CALLBACK 1
36 // Check error is even more expensive in chrome (cmd buffer flush). The
37 // compositor also doesn't check its allocations.
38 #define GR_GL_CHECK_ALLOC_WITH_GET_ERROR 0
40 // CheckFramebufferStatus in chrome synchronizes the gpu and renderer processes.
41 #define GR_GL_CHECK_FBO_STATUS_ONCE_PER_FORMAT 1
43 // Non-VBO vertices and indices are not allowed in Chromium.
44 #define GR_GL_MUST_USE_VBO 1
46 // Use updated Khronos signature for glShaderSource
47 // (const char* const instead of char**).
48 #define GR_GL_USE_NEW_SHADER_SOURCE_SIGNATURE 1
50 #if !defined(GR_GL_IGNORE_ES3_MSAA)
51 #define GR_GL_IGNORE_ES3_MSAA 1
52 #endif
54 #endif