8#ifndef GrGLSLVarying_DEFINED
9#define GrGLSLVarying_DEFINED
83 const char* fVsOut =
nullptr;
84 const char* fFsIn =
nullptr;
100 , fDefaultInterpolationModifier(nullptr) {}
176 const char* fDefaultInterpolationModifier;
static const int kVaryingsPerBlock
SkTBlockList< GrShaderVar > VarArray
void emitAttributes(const GrGeometryProcessor &)
void addPassThroughAttribute(const GrShaderVar &vsVar, const char *output, Interpolation=Interpolation::kInterpolated)
void getVertexDecls(SkString *inputDecls, SkString *outputDecls) const
void getFragDecls(SkString *inputDecls, SkString *outputDecls) const
SkTBlockList< VaryingInfo > VaryingList
GrGLSLProgramBuilder * fProgramBuilder
GrGLSLVaryingHandler(GrGLSLProgramBuilder *program)
virtual void onFinalize()=0
void addVarying(const char *name, GrGLSLVarying *varying, Interpolation=Interpolation::kInterpolated)
virtual ~GrGLSLVaryingHandler()
GrGLSLVarying(SkSLType type, Scope scope=Scope::kVertToFrag)
bool isInVertexShader() const
const char * vsOut() const
bool isInFragmentShader() const
const char * fsIn() const
GrShaderVar fsInVar() const
void reset(SkSLType type, Scope scope=Scope::kVertToFrag)
GrShaderVar vsOutVar() const
DEF_SWITCHES_START aot vmservice shared library name
GrShaderFlags fVisibility