diff options
Diffstat (limited to 'src/gpu/gl/GrGLProgram.h')
-rw-r--r-- | src/gpu/gl/GrGLProgram.h | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/gpu/gl/GrGLProgram.h b/src/gpu/gl/GrGLProgram.h index 0d0f8b096b..e32238b471 100644 --- a/src/gpu/gl/GrGLProgram.h +++ b/src/gpu/gl/GrGLProgram.h @@ -196,6 +196,8 @@ public: typedef Desc::StageDesc StageDesc; private: + struct StageUniforms; + GrGLProgram(const GrGLContextInfo& gl, const Desc& desc, const GrCustomStage** customStages); @@ -209,12 +211,13 @@ private: void genInputColor(GrGLShaderBuilder* builder, SkString* inColor); - // Determines which uniforms will need to be bound. - void genStageCode(int stageNum, - const char* fsInColor, // NULL means no incoming color - const char* fsOutColor, - const char* vsInCoord, - GrGLShaderBuilder* builder); + static GrGLProgramStage* GenStageCode(const GrCustomStage* stage, + const StageDesc& desc, // TODO: Eliminate this + StageUniforms* stageUniforms, // TODO: Eliminate this + const char* fsInColor, // NULL means no incoming color + const char* fsOutColor, + const char* vsInCoord, + GrGLShaderBuilder* builder); void genGeometryShader(GrGLShaderBuilder* segments) const; |