OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2014 Google Inc. | 2 * Copyright 2014 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 #ifndef GrGLSLFragmentShaderBuilder_DEFINED | 8 #ifndef GrGLSLFragmentShaderBuilder_DEFINED |
9 #define GrGLSLFragmentShaderBuilder_DEFINED | 9 #define GrGLSLFragmentShaderBuilder_DEFINED |
10 | 10 |
(...skipping 154 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
165 | 165 |
166 void onFinalize() override; | 166 void onFinalize() override; |
167 | 167 |
168 /** | 168 /** |
169 * Features that should only be enabled by GrGLSLFragmentShaderBuilder itsel
f. | 169 * Features that should only be enabled by GrGLSLFragmentShaderBuilder itsel
f. |
170 */ | 170 */ |
171 enum GLSLPrivateFeature { | 171 enum GLSLPrivateFeature { |
172 kFragCoordConventions_GLSLPrivateFeature = kLastGLSLFeature + 1, | 172 kFragCoordConventions_GLSLPrivateFeature = kLastGLSLFeature + 1, |
173 kBlendEquationAdvanced_GLSLPrivateFeature, | 173 kBlendEquationAdvanced_GLSLPrivateFeature, |
174 kBlendFuncExtended_GLSLPrivateFeature, | 174 kBlendFuncExtended_GLSLPrivateFeature, |
| 175 kExternalTexture_GLSLPrivateFeature, |
175 kLastGLSLPrivateFeature = kBlendFuncExtended_GLSLPrivateFeature | 176 kLastGLSLPrivateFeature = kBlendFuncExtended_GLSLPrivateFeature |
176 }; | 177 }; |
177 | 178 |
178 // Interpretation of FragPosKey when generating code | 179 // Interpretation of FragPosKey when generating code |
179 enum { | 180 enum { |
180 kNoFragPosRead_FragPosKey = 0, // The fragment positition wil
l not be needed. | 181 kNoFragPosRead_FragPosKey = 0, // The fragment positition wil
l not be needed. |
181 kTopLeftFragPosRead_FragPosKey = 0x1,// Read frag pos relative to t
op-left. | 182 kTopLeftFragPosRead_FragPosKey = 0x1,// Read frag pos relative to t
op-left. |
182 kBottomLeftFragPosRead_FragPosKey = 0x2,// Read frag pos relative to b
ottom-left. | 183 kBottomLeftFragPosRead_FragPosKey = 0x2,// Read frag pos relative to b
ottom-left. |
183 }; | 184 }; |
184 | 185 |
185 static const char* kDstTextureColorName; | 186 static const char* kDstTextureColorName; |
186 | 187 |
187 bool fSetupFragPosition; | 188 bool fSetupFragPosition; |
188 bool fTopLeftFragPosRead; | 189 bool fTopLeftFragPosRead; |
189 int fCustomColorOutputIndex; | 190 int fCustomColorOutputIndex; |
190 | 191 |
191 // some state to verify shaders and effects are consistent, this is reset be
tween effects by | 192 // some state to verify shaders and effects are consistent, this is reset be
tween effects by |
192 // the program creator | 193 // the program creator |
193 bool fHasReadDstColor; | 194 bool fHasReadDstColor; |
194 bool fHasReadFragmentPosition; | 195 bool fHasReadFragmentPosition; |
195 | 196 |
196 friend class GrGLProgramBuilder; | 197 friend class GrGLProgramBuilder; |
197 | 198 |
198 typedef GrGLSLXPFragmentBuilder INHERITED; | 199 typedef GrGLSLXPFragmentBuilder INHERITED; |
199 }; | 200 }; |
200 | 201 |
201 #endif | 202 #endif |
OLD | NEW |