Index: src/gpu/effects/GrRRectEffect.h |
diff --git a/src/gpu/effects/GrRRectEffect.h b/src/gpu/effects/GrRRectEffect.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..3d899e2a09b5bde52f5048cca05e169b4b547f9c |
--- /dev/null |
+++ b/src/gpu/effects/GrRRectEffect.h |
@@ -0,0 +1,49 @@ |
+/* |
+ * Copyright 2014 Google Inc. |
+ * |
+ * Use of this source code is governed by a BSD-style license that can be |
+ * found in the LICENSE file. |
+ */ |
+ |
+#ifndef GrRRectEffect_DEFINED |
+#define GrRRectEffect_DEFINED |
+ |
+#include "GrEffect.h" |
+ |
+#include "SkRRect.h" |
+ |
+class GrGLRRectEffect; |
+ |
+/** |
+ * An effect that performs anti-aliasing for an SkRRect. It doesn't support all varieties of SkRRect |
+ * so the caller must check for a NULL return from the Create() method. |
+ */ |
+class GrRRectEffect : public GrEffect { |
+public: |
+ static GrEffectRef* Create(const SkRRect&); |
+ |
+ virtual ~GrRRectEffect(); |
+ static const char* Name() { return "RRect"; } |
+ |
+ const SkRRect& getRRect() const { return fRRect; } |
+ |
+ typedef GrGLRRectEffect GLEffect; |
+ |
+ virtual void getConstantColorComponents(GrColor* color, uint32_t* validFlags) const SK_OVERRIDE; |
+ |
+ virtual const GrBackendEffectFactory& getFactory() const SK_OVERRIDE; |
+ |
+private: |
+ GrRRectEffect(const SkRRect&); |
+ |
+ virtual bool onIsEqual(const GrEffect& other) const SK_OVERRIDE; |
+ |
+ SkRRect fRRect; |
+ |
+ GR_DECLARE_EFFECT_TEST; |
+ |
+ typedef GrEffect INHERITED; |
+}; |
+ |
+ |
+#endif |