diff options
author | joshualitt <joshualitt@chromium.org> | 2014-12-04 11:35:33 -0800 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2014-12-04 11:35:34 -0800 |
commit | eb2a6761654307e8aeeeaabdd63c6bf9ab0411e9 (patch) | |
tree | 9567dc32598c1c0df5f5cf4a3d6594c61b95fd93 /src/effects/SkAlphaThresholdFilter.cpp | |
parent | e109145bf31d63963b3f78c6af6e404d5464a55b (diff) |
Remove backend factories
BUG=skia:
Review URL: https://codereview.chromium.org/778453002
Diffstat (limited to 'src/effects/SkAlphaThresholdFilter.cpp')
-rw-r--r-- | src/effects/SkAlphaThresholdFilter.cpp | 30 |
1 files changed, 15 insertions, 15 deletions
diff --git a/src/effects/SkAlphaThresholdFilter.cpp b/src/effects/SkAlphaThresholdFilter.cpp index ffdba32264..6f9fefce1b 100644 --- a/src/effects/SkAlphaThresholdFilter.cpp +++ b/src/effects/SkAlphaThresholdFilter.cpp @@ -47,14 +47,12 @@ SkImageFilter* SkAlphaThresholdFilter::Create(const SkRegion& region, #include "GrCoordTransform.h" #include "GrFragmentProcessor.h" #include "GrInvariantOutput.h" -#include "gl/GrGLProcessor.h" -#include "gl/builders/GrGLProgramBuilder.h" -#include "GrTBackendProcessorFactory.h" #include "GrTextureAccess.h" #include "SkGr.h" -class GrGLAlphaThresholdEffect; +#include "gl/GrGLProcessor.h" +#include "gl/builders/GrGLProgramBuilder.h" class AlphaThresholdEffect : public GrFragmentProcessor { @@ -71,13 +69,14 @@ public: virtual ~AlphaThresholdEffect() {}; - static const char* Name() { return "Alpha Threshold"; } + virtual const char* name() const SK_OVERRIDE { return "Alpha Threshold"; } - virtual const GrBackendFragmentProcessorFactory& getFactory() const SK_OVERRIDE; float innerThreshold() const { return fInnerThreshold; } float outerThreshold() const { return fOuterThreshold; } - typedef GrGLAlphaThresholdEffect GLProcessor; + virtual void getGLProcessorKey(const GrGLCaps&, GrProcessorKeyBuilder*) const SK_OVERRIDE; + + virtual GrGLFragmentProcessor* createGLInstance() const SK_OVERRIDE; private: AlphaThresholdEffect(GrTexture* texture, @@ -92,6 +91,7 @@ private: , fMaskCoordTransform(kLocal_GrCoordSet, GrCoordTransform::MakeDivByTextureWHMatrix(maskTexture), maskTexture) , fMaskTextureAccess(maskTexture) { + this->initClassID<AlphaThresholdEffect>(); this->addCoordTransform(&fImageCoordTransform); this->addTextureAccess(&fImageTextureAccess); this->addCoordTransform(&fMaskCoordTransform); @@ -116,7 +116,7 @@ private: class GrGLAlphaThresholdEffect : public GrGLFragmentProcessor { public: - GrGLAlphaThresholdEffect(const GrBackendProcessorFactory&, const GrProcessor&); + GrGLAlphaThresholdEffect(const GrFragmentProcessor&) {} virtual void emitCode(GrGLFPBuilder*, const GrFragmentProcessor&, @@ -135,11 +135,6 @@ private: typedef GrGLFragmentProcessor INHERITED; }; -GrGLAlphaThresholdEffect::GrGLAlphaThresholdEffect(const GrBackendProcessorFactory& factory, - const GrProcessor&) - : INHERITED(factory) { -} - void GrGLAlphaThresholdEffect::emitCode(GrGLFPBuilder* builder, const GrFragmentProcessor&, const char* outputColor, @@ -213,8 +208,13 @@ GrFragmentProcessor* AlphaThresholdEffect::TestCreate(SkRandom* random, /////////////////////////////////////////////////////////////////////////////// -const GrBackendFragmentProcessorFactory& AlphaThresholdEffect::getFactory() const { - return GrTBackendFragmentProcessorFactory<AlphaThresholdEffect>::getInstance(); +void AlphaThresholdEffect::getGLProcessorKey(const GrGLCaps& caps, + GrProcessorKeyBuilder* b) const { + GrGLAlphaThresholdEffect::GenKey(*this, caps, b); +} + +GrGLFragmentProcessor* AlphaThresholdEffect::createGLInstance() const { + return SkNEW_ARGS(GrGLAlphaThresholdEffect, (*this)); } bool AlphaThresholdEffect::onIsEqual(const GrFragmentProcessor& sBase) const { |