Index: src/effects/SkGpuBlurUtils.h |
diff --git a/src/effects/SkGpuBlurUtils.h b/src/effects/SkGpuBlurUtils.h |
index 8bc4377f5980af690cf3efd364450c2f7cf63b37..0d37f158be9c0270dc44efe9a5e50b9e3bed2ecb 100644 |
--- a/src/effects/SkGpuBlurUtils.h |
+++ b/src/effects/SkGpuBlurUtils.h |
@@ -9,19 +9,18 @@ |
#define SkGpuBlurUtils_DEFINED |
#if SK_SUPPORT_GPU |
-#include "GrTextureProvider.h" |
+#include "GrDrawContext.h" |
-class GrTexture; |
class GrContext; |
-#endif |
+class GrTexture; |
struct SkRect; |
namespace SkGpuBlurUtils { |
- |
-#if SK_SUPPORT_GPU |
/** |
- * Applies a 2D Gaussian blur to a given texture. |
+ * Applies a 2D Gaussian blur to a given texture. The blurred result is returned |
+ * as a drawContext in case the caller wishes to future draw into the result. |
+ * Note: one of sigmaX and sigmaY should be non-zero! |
* @param context The GPU context |
* @param srcTexture The source texture to be blurred. |
* @param gammaCorrect Should blur be gamma-correct (sRGB to linear, etc...) |
@@ -30,18 +29,17 @@ namespace SkGpuBlurUtils { |
* no pixels will be sampled outside of this rectangle. |
* @param sigmaX The blur's standard deviation in X. |
* @param sigmaY The blur's standard deviation in Y. |
- * @return the blurred texture, which may be srcTexture reffed, or a |
- * new texture. It is the caller's responsibility to unref this texture. |
+ * @return The drawContext containing the blurred result. |
*/ |
- GrTexture* GaussianBlur(GrContext* context, |
- GrTexture* srcTexture, |
- bool gammaCorrect, |
- const SkRect& dstBounds, |
- const SkRect* srcBounds, |
- float sigmaX, |
- float sigmaY); |
-#endif |
+ sk_sp<GrDrawContext> GaussianBlur(GrContext* context, |
+ GrTexture* srcTexture, |
+ bool gammaCorrect, |
+ const SkRect& dstBounds, |
+ const SkRect* srcBounds, |
+ float sigmaX, |
+ float sigmaY); |
}; |
#endif |
+#endif |