| Index: src/gpu/glsl/GrGLSLVarying.h
|
| diff --git a/src/gpu/glsl/GrGLSLVarying.h b/src/gpu/glsl/GrGLSLVarying.h
|
| index 116ba09b99bd9d2b797a328494bd49b903d5ca81..22431978c859666d57d33dcc0619c51694420c0e 100644
|
| --- a/src/gpu/glsl/GrGLSLVarying.h
|
| +++ b/src/gpu/glsl/GrGLSLVarying.h
|
| @@ -79,6 +79,8 @@ public:
|
| , fFragOutputs(kVaryingsPerBlock)
|
| , fProgramBuilder(program) {}
|
|
|
| + virtual ~GrGLSLVaryingHandler() {}
|
| +
|
| typedef GrTAllocator<GrGLSLShaderVar> VarArray;
|
| typedef GrGLSLProgramDataManager::VaryingHandle VaryingHandle;
|
|
|
| @@ -106,6 +108,10 @@ public:
|
|
|
| void emitAttributes(const GrGeometryProcessor& gp);
|
|
|
| + // This should be called once all attributes and varyings have been added to the
|
| + // GrGLSLVaryingHanlder and before getting/adding any of the declarations to the shaders.
|
| + void finalize();
|
| +
|
| void getVertexDecls(SkString* inputDecls, SkString* outputDecls) const;
|
| void getGeomDecls(SkString* inputDecls, SkString* outputDecls) const;
|
| void getFragDecls(SkString* inputDecls, SkString* outputDecls) const;
|
| @@ -127,6 +133,8 @@ private:
|
|
|
| void addAttribute(const GrShaderVar& var);
|
|
|
| + virtual void onFinalize() = 0;
|
| +
|
| // helper function for get*Decls
|
| void appendDecls(const VarArray& vars, SkString* out) const;
|
|
|
|
|