| Index: include/gpu/GrBackendProcessorFactory.h
|
| diff --git a/include/gpu/GrBackendProcessorFactory.h b/include/gpu/GrBackendProcessorFactory.h
|
| index 9dda1659d07677a89af975eb04e032b90a48f125..9c4693e4fc519d063b6ca2491499df6e3d66c262 100644
|
| --- a/include/gpu/GrBackendProcessorFactory.h
|
| +++ b/include/gpu/GrBackendProcessorFactory.h
|
| @@ -68,14 +68,6 @@ private:
|
| */
|
| class GrBackendProcessorFactory : SkNoncopyable {
|
| public:
|
| - /**
|
| - * Generates an processor's key. The key is based on the aspects of the GrProcessor object's
|
| - * configuration that affect GLSL code generation. Two GrProcessor instances that would cause
|
| - * this->createGLInstance()->emitCode() to produce different code must produce different keys.
|
| - */
|
| - virtual void getGLProcessorKey(const GrProcessor&, const GrGLCaps&,
|
| - GrProcessorKeyBuilder*) const = 0;
|
| -
|
| /**
|
| * Produces a human-reable name for the v.
|
| */
|
| @@ -126,19 +118,41 @@ class GrGLGeometryProcessor;
|
| class GrBackendFragmentProcessorFactory : public GrBackendProcessorFactory {
|
| public:
|
| /**
|
| + * Generates an processor's key. The key is based on the aspects of the GrProcessor object's
|
| + * configuration that affect GLSL code generation. Two GrProcessor instances that would cause
|
| + * this->createGLInstance()->emitCode() to produce different code must produce different keys.
|
| + */
|
| + virtual void getGLProcessorKey(const GrFragmentProcessor&,
|
| + const GrGLCaps&,
|
| + GrProcessorKeyBuilder*) const = 0;
|
| +
|
| + /**
|
| * Creates a GrGLProcessor instance that is used both to generate code for the GrProcessor in a
|
| * GLSL program and to manage updating uniforms for the program when it is used.
|
| */
|
| virtual GrGLFragmentProcessor* createGLInstance(const GrFragmentProcessor&) const = 0;
|
| };
|
|
|
| +class GrBatchTracker;
|
| +
|
| class GrBackendGeometryProcessorFactory : public GrBackendProcessorFactory {
|
| public:
|
| /**
|
| + * Generates an processor's key. The key is based on the aspects of the GrProcessor object's
|
| + * configuration that affect GLSL code generation. Two GrProcessor instances that would cause
|
| + * this->createGLInstance()->emitCode() to produce different code must produce different keys.
|
| + */
|
| + virtual void getGLProcessorKey(const GrGeometryProcessor&,
|
| + const GrBatchTracker&,
|
| + const GrGLCaps&,
|
| + GrProcessorKeyBuilder*) const = 0;
|
| +
|
| + /**
|
| * Creates a GrGLProcessor instance that is used both to generate code for the GrProcessor in a
|
| * GLSL program and to manage updating uniforms for the program when it is used.
|
| */
|
| - virtual GrGLGeometryProcessor* createGLInstance(const GrGeometryProcessor&) const = 0;
|
| + virtual GrGLGeometryProcessor* createGLInstance(const GrGeometryProcessor&,
|
| + const GrBatchTracker&) const = 0;
|
| };
|
|
|
| #endif
|
|
|