Flutter Engine
The Flutter Engine
|
Public Member Functions | |
void | setData (const GrGLSLProgramDataManager &pdman, const GrShaderCaps &shaderCaps, const GrGeometryProcessor &geomProc) override |
Public Member Functions inherited from GrGeometryProcessor::ProgramImpl | |
virtual | ~ProgramImpl ()=default |
std::tuple< FPCoordsMap, GrShaderVar > | emitCode (EmitArgs &, const GrPipeline &pipeline) |
void | emitTransformCode (GrGLSLVertexBuilder *vb, GrGLSLUniformHandler *uniformHandler) |
virtual void | setData (const GrGLSLProgramDataManager &, const GrShaderCaps &, const GrGeometryProcessor &)=0 |
Additional Inherited Members | |
Public Types inherited from GrGeometryProcessor::ProgramImpl | |
using | UniformHandle = GrGLSLProgramDataManager::UniformHandle |
using | SamplerHandle = GrGLSLUniformHandler::SamplerHandle |
using | FPCoordsMap = std::unordered_map< const GrFragmentProcessor *, FPCoords > |
Static Public Member Functions inherited from GrGeometryProcessor::ProgramImpl | |
static uint32_t | ComputeMatrixKey (const GrShaderCaps &caps, const SkMatrix &mat) |
static uint32_t | ComputeMatrixKeys (const GrShaderCaps &shaderCaps, const SkMatrix &viewMatrix, const SkMatrix &localMatrix) |
static uint32_t | AddMatrixKeys (const GrShaderCaps &shaderCaps, uint32_t flags, const SkMatrix &viewMatrix, const SkMatrix &localMatrix) |
Static Public Attributes inherited from GrGeometryProcessor::ProgramImpl | |
static constexpr int | kMatrixKeyBits = 2 |
Protected Member Functions inherited from GrGeometryProcessor::ProgramImpl | |
void | setupUniformColor (GrGLSLFPFragmentBuilder *fragBuilder, GrGLSLUniformHandler *uniformHandler, const char *outputName, UniformHandle *colorUniform) |
Static Protected Member Functions inherited from GrGeometryProcessor::ProgramImpl | |
static void | SetTransform (const GrGLSLProgramDataManager &, const GrShaderCaps &, const UniformHandle &uniform, const SkMatrix &matrix, SkMatrix *state=nullptr) |
static void | WriteOutputPosition (GrGLSLVertexBuilder *, GrGPArgs *, const char *posName) |
static void | WriteOutputPosition (GrGLSLVertexBuilder *, GrGLSLUniformHandler *, const GrShaderCaps &, GrGPArgs *, const char *posName, const SkMatrix &viewMatrix, UniformHandle *viewMatrixUniform) |
static void | WriteLocalCoord (GrGLSLVertexBuilder *, GrGLSLUniformHandler *, const GrShaderCaps &, GrGPArgs *, GrShaderVar localVar, const SkMatrix &localMatrix, UniformHandle *localMatrixUniform) |
Definition at line 330 of file GrDistanceFieldGeoProc.cpp.
|
inlineoverridevirtual |
A ProgramImpl instance can be reused with any GrGeometryProcessor that produces the same key. This function reads data from a GrGeometryProcessor and updates any uniform variables required by the shaders created in emitCode(). The GrGeometryProcessor parameter is guaranteed to be of the same type and to have an identical processor key as the GrGeometryProcessor that created this ProgramImpl.
Implements GrGeometryProcessor::ProgramImpl.
Definition at line 332 of file GrDistanceFieldGeoProc.cpp.