Index: include/gpu/GrTBackendEffectFactory.h |
diff --git a/include/gpu/GrTBackendEffectFactory.h b/include/gpu/GrTBackendEffectFactory.h |
deleted file mode 100644 |
index a45aeacb72abee775e30035f1196ead8c3ad52a0..0000000000000000000000000000000000000000 |
--- a/include/gpu/GrTBackendEffectFactory.h |
+++ /dev/null |
@@ -1,76 +0,0 @@ |
-/* |
- * Copyright 2012 Google Inc. |
- * |
- * Use of this source code is governed by a BSD-style license that can be |
- * found in the LICENSE file. |
- */ |
- |
-#ifndef GrTBackendEffectFactory_DEFINED |
-#define GrTBackendEffectFactory_DEFINED |
- |
-#include "GrBackendEffectFactory.h" |
-#include "gl/GrGLProgramEffects.h" |
- |
-/** |
- * Implements GrBackendEffectFactory for a GrEffect subclass as a singleton. This can be used by |
- * most GrEffect subclasses to implement the GrEffect::getFactory() method: |
- * |
- * const GrBackendEffectFactory& MyEffect::getFactory() const { |
- * return GrTBackendEffectFactory<MyEffect>::getInstance(); |
- * } |
- * |
- * Using this class requires that the GrEffect subclass always produces the same GrGLEffect |
- * subclass. Additionally, It adds the following requirements to the GrEffect and GrGLEffect |
- * subclasses: |
- * |
- * 1. The GrGLEffect used by GrEffect subclass MyEffect must be named or typedef'ed to |
- * MyEffect::GLEffect. |
- * 2. MyEffect::GLEffect must have a static function: |
- * EffectKey GenKey(const GrEffect, const GrGLCaps&) |
- * which generates a key that maps 1 to 1 with code variations emitted by |
- * MyEffect::GLEffect::emitCode(). |
- * 3. MyEffect must have a static function: |
- * const char* Name() |
- * which returns a human-readable name for the effect. |
- */ |
-template <typename EffectClass> |
-class GrTBackendEffectFactory : public GrBackendEffectFactory { |
- |
-public: |
- typedef typename EffectClass::GLEffect GLEffect; |
- |
- /** Returns a human-readable name for the effect. Implemented using GLEffect::Name as described |
- * in this class's comment. */ |
- virtual const char* name() const SK_OVERRIDE { return EffectClass::Name(); } |
- |
- |
- /** Implemented using GLEffect::GenKey as described in this class's comment. */ |
- virtual void getGLEffectKey(const GrEffect& effect, |
- const GrGLCaps& caps, |
- GrEffectKeyBuilder* b) const SK_OVERRIDE { |
- GLEffect::GenKey(effect, caps, b); |
- } |
- |
- /** Returns a new instance of the appropriate *GL* implementation class |
- for the given GrEffect; caller is responsible for deleting |
- the object. */ |
- virtual GrGLEffect* createGLInstance(const GrEffect& effect) const SK_OVERRIDE { |
- return SkNEW_ARGS(GLEffect, (*this, effect)); |
- } |
- |
- /** This class is a singleton. This function returns the single instance. */ |
- static const GrBackendEffectFactory& getInstance() { |
- static SkAlignedSTStorage<1, GrTBackendEffectFactory> gInstanceMem; |
- static const GrTBackendEffectFactory* gInstance; |
- if (!gInstance) { |
- gInstance = SkNEW_PLACEMENT(gInstanceMem.get(), |
- GrTBackendEffectFactory); |
- } |
- return *gInstance; |
- } |
- |
-protected: |
- GrTBackendEffectFactory() {} |
-}; |
- |
-#endif |