diff options
author | brianosman <brianosman@google.com> | 2016-09-14 10:03:46 -0700 |
---|---|---|
committer | Commit bot <commit-bot@chromium.org> | 2016-09-14 10:03:46 -0700 |
commit | f605c16a030d791a37f589e6bddd7158ba5d62cd (patch) | |
tree | 335dd6209b719fb715bec6abd517f9f0a19a371f /src/effects/gradients/SkGradientShaderPriv.h | |
parent | 95573e4865c913a01571b17fb88c0450b1aa3ca7 (diff) |
Bundle common arguments to GrGradientEffect creation
I'm going to be adding more (to deal with color spaces), so trying to fix
this before it gets out of control.
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2332213007
Review-Url: https://codereview.chromium.org/2332213007
Diffstat (limited to 'src/effects/gradients/SkGradientShaderPriv.h')
-rw-r--r-- | src/effects/gradients/SkGradientShaderPriv.h | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/src/effects/gradients/SkGradientShaderPriv.h b/src/effects/gradients/SkGradientShaderPriv.h index ee30c9b21b..ec70929d43 100644 --- a/src/effects/gradients/SkGradientShaderPriv.h +++ b/src/effects/gradients/SkGradientShaderPriv.h @@ -323,12 +323,25 @@ class GrInvariantOutput; // Base class for Gr gradient effects class GrGradientEffect : public GrFragmentProcessor { public: + struct CreateArgs { + CreateArgs(GrContext* context, + const SkGradientShaderBase* shader, + const SkMatrix* matrix, + SkShader::TileMode tileMode) + : fContext(context) + , fShader(shader) + , fMatrix(matrix) + , fTileMode(tileMode) {} + + GrContext* fContext; + const SkGradientShaderBase* fShader; + const SkMatrix* fMatrix; + SkShader::TileMode fTileMode; + }; + class GLSLProcessor; - GrGradientEffect(GrContext* ctx, - const SkGradientShaderBase& shader, - const SkMatrix& matrix, - SkShader::TileMode tileMode); + GrGradientEffect(const CreateArgs&); virtual ~GrGradientEffect(); |