| Index: src/gpu/gl/GrGLXferProcessor.h
|
| diff --git a/src/gpu/gl/GrGLXferProcessor.h b/src/gpu/gl/GrGLXferProcessor.h
|
| index 5c9255903152a6f0bd72019aa976709791fcb57e..7f60f32fe578a6a5591f14a47cf00de8752eb6f3 100644
|
| --- a/src/gpu/gl/GrGLXferProcessor.h
|
| +++ b/src/gpu/gl/GrGLXferProcessor.h
|
| @@ -11,6 +11,7 @@
|
| #include "GrGLProcessor.h"
|
|
|
| class GrGLXPBuilder;
|
| +class GrXferProcessor;
|
|
|
| class GrGLXferProcessor {
|
| public:
|
| @@ -46,16 +47,25 @@
|
| * This is similar to emitCode() in the base class, except it takes a full shader builder.
|
| * This allows the effect subclass to emit vertex code.
|
| */
|
| - virtual void emitCode(const EmitArgs&) = 0;
|
| + void emitCode(const EmitArgs&);
|
|
|
| /** A GrGLXferProcessor instance can be reused with any GrGLXferProcessor that produces
|
| the same stage key; this function reads data from a GrGLXferProcessor and uploads any
|
| uniform variables required by the shaders created in emitCode(). The GrXferProcessor
|
| parameter is guaranteed to be of the same type that created this GrGLXferProcessor and
|
| - to have an identical processor key as the one that created this GrGLXferProcessor. */
|
| - virtual void setData(const GrGLProgramDataManager&,
|
| - const GrXferProcessor&) = 0;
|
| + to have an identical processor key as the one that created this GrGLXferProcessor. This
|
| + function calls onSetData on the subclass of GrGLXferProcessor
|
| + */
|
| + void setData(const GrGLProgramDataManager& pdm, const GrXferProcessor& xp);
|
| +
|
| private:
|
| + virtual void onEmitCode(const EmitArgs&) = 0;
|
| +
|
| + virtual void onSetData(const GrGLProgramDataManager&, const GrXferProcessor&) = 0;
|
| +
|
| + GrGLProgramDataManager::UniformHandle fDstCopyTopLeftUni;
|
| + GrGLProgramDataManager::UniformHandle fDstCopyScaleUni;
|
| +
|
| typedef GrGLProcessor INHERITED;
|
| };
|
| #endif
|
|
|