Index: include/core/SkImageFilter.h |
diff --git a/include/core/SkImageFilter.h b/include/core/SkImageFilter.h |
index 64e1581373d0c6eeb0a3b9e2ed1e4ee4d0d991ea..647e1add24f137a7601fa9d7a5e1acc1e8def162 100644 |
--- a/include/core/SkImageFilter.h |
+++ b/include/core/SkImageFilter.h |
@@ -15,6 +15,10 @@ |
#include "SkRect.h" |
#include "SkSurfaceProps.h" |
+#if SK_SUPPORT_GPU |
+#include "GrTextureProvider.h" |
+#endif |
+ |
class GrFragmentProcessor; |
class GrTexture; |
class SkBaseDevice; |
@@ -95,6 +99,7 @@ public: |
class Proxy { |
public: |
+ Proxy(bool needExactTextureSize = false); |
Stephen White
2015/10/21 21:06:53
As discussed, let's try adding this to the Context
|
virtual ~Proxy() {} |
virtual SkBaseDevice* createDevice(int width, int height) = 0; |
@@ -104,6 +109,17 @@ public: |
virtual bool filterImage(const SkImageFilter*, const SkBitmap& src, |
const SkImageFilter::Context&, |
SkBitmap* result, SkIPoint* offset) = 0; |
+ |
+#if SK_SUPPORT_GPU |
+ GrTextureProvider::SizeConstraint getSizeConstraint() const { |
+ return fSizeConstraint; |
+ } |
+#endif |
+ |
+ private: |
+#if SK_SUPPORT_GPU |
+ const GrTextureProvider::SizeConstraint fSizeConstraint; |
+#endif |
}; |
class DeviceProxy : public Proxy { |