Index: src/gpu/gl/GrGpuGL.h |
diff --git a/src/gpu/gl/GrGpuGL.h b/src/gpu/gl/GrGpuGL.h |
index 95ae7265f91fb3bf166f35a0e99e49f4584d6c01..50dbc14844fd61adb2ce6191a52e8be4ce52bbda 100644 |
--- a/src/gpu/gl/GrGpuGL.h |
+++ b/src/gpu/gl/GrGpuGL.h |
@@ -36,8 +36,14 @@ public: |
GrGLVersion glVersion() const { return fGLContext.info().version(); } |
GrGLSLGeneration glslGeneration() const { return fGLContext.info().glslGeneration(); } |
- // Used by GrGLProgram to bind necessary textures for GrGLEffects. |
+ // Used by GrGLProgram and GrGLUniformManager to configure OpenGL state. |
void bindTexture(int unitIdx, const GrTextureParams& params, GrGLTexture* texture); |
+ void setProjectionMatrix(const SkMatrix& matrix, |
+ const SkISize& renderTargetSize, |
+ GrSurfaceOrigin renderTargetOrigin); |
+ void enableTexGen(int unitIdx, int numComponents, const GrGLfloat* coefficients); |
+ void enableTexGen(int unitIdx, int numComponents, const SkMatrix& matrix); |
+ void disableUnusedTexGenUnits(int numUsedUnits); |
bool programUnitTest(int maxStages); |
@@ -212,9 +218,6 @@ private: |
#endif |
}; |
- // sets the matrix for path stenciling (uses the GL fixed pipe matrices) |
- void flushPathStencilMatrix(); |
- |
// flushes dithering, color-mask, and face culling stat |
void flushMiscFixedFunctionState(); |
@@ -431,6 +434,14 @@ private: |
TriState fHWDitherEnabled; |
GrRenderTarget* fHWBoundRenderTarget; |
SkTArray<GrTexture*, true> fHWBoundTextures; |
+ |
+ struct TexGenData { |
+ GrGLenum fMode; |
+ GrGLint fNumComponents; |
+ GrGLfloat fCoefficients[6]; |
Kimmo Kinnunen
2013/09/17 09:42:40
I think this should be 9 floats long.
|
+ }; |
+ int fHWActiveTexGenUnits; |
+ SkTArray<TexGenData, true> fHWTexGenSettings; |
///@} |
// we record what stencil format worked last time to hopefully exit early |