Index: src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
diff --git a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
index 357e39c3adc6fee44097071b5dcae4eb6cd23311..07722e972477a9093809a73a97ea80f1a361f6f6 100644 |
--- a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
+++ b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
@@ -59,10 +59,11 @@ class Edge2PtConicalEffect : public GrGradientEffect { |
public: |
static GrFragmentProcessor* Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm) { |
- return SkNEW_ARGS(Edge2PtConicalEffect, (ctx, shader, matrix, tm)); |
+ return SkNEW_ARGS(Edge2PtConicalEffect, (ctx, shaderDataManager, shader, matrix, tm)); |
} |
virtual ~Edge2PtConicalEffect() {} |
@@ -90,10 +91,11 @@ private: |
} |
Edge2PtConicalEffect(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm) |
- : INHERITED(ctx, shader, matrix, tm), |
+ : INHERITED(ctx, shaderDataManager, shader, matrix, tm), |
fCenterX1(shader.getCenterX1()), |
fRadius0(shader.getStartRadius()), |
fDiffRadius(shader.getDiffRadius()){ |
@@ -381,11 +383,13 @@ class FocalOutside2PtConicalEffect : public GrGradientEffect { |
public: |
static GrFragmentProcessor* Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
SkScalar focalX) { |
- return SkNEW_ARGS(FocalOutside2PtConicalEffect, (ctx, shader, matrix, tm, focalX)); |
+ return SkNEW_ARGS(FocalOutside2PtConicalEffect, (ctx, shaderDataManager, shader, matrix, tm, |
+ focalX)); |
} |
virtual ~FocalOutside2PtConicalEffect() { } |
@@ -410,11 +414,14 @@ private: |
} |
FocalOutside2PtConicalEffect(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
SkScalar focalX) |
- : INHERITED(ctx, shader, matrix, tm), fFocalX(focalX), fIsFlipped(shader.isFlippedGrad()) { |
+ : INHERITED(ctx, shaderDataManager, shader, matrix, tm) |
+ , fFocalX(focalX) |
+ , fIsFlipped(shader.isFlippedGrad()) { |
this->initClassID<FocalOutside2PtConicalEffect>(); |
} |
@@ -604,11 +611,13 @@ class FocalInside2PtConicalEffect : public GrGradientEffect { |
public: |
static GrFragmentProcessor* Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
SkScalar focalX) { |
- return SkNEW_ARGS(FocalInside2PtConicalEffect, (ctx, shader, matrix, tm, focalX)); |
+ return SkNEW_ARGS(FocalInside2PtConicalEffect, (ctx, shaderDataManager, shader, matrix, tm, |
+ focalX)); |
} |
virtual ~FocalInside2PtConicalEffect() {} |
@@ -633,11 +642,12 @@ private: |
} |
FocalInside2PtConicalEffect(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
SkScalar focalX) |
- : INHERITED(ctx, shader, matrix, tm), fFocalX(focalX) { |
+ : INHERITED(ctx, shaderDataManager, shader, matrix, tm), fFocalX(focalX) { |
this->initClassID<FocalInside2PtConicalEffect>(); |
} |
@@ -852,11 +862,13 @@ class CircleInside2PtConicalEffect : public GrGradientEffect { |
public: |
static GrFragmentProcessor* Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
const CircleConicalInfo& info) { |
- return SkNEW_ARGS(CircleInside2PtConicalEffect, (ctx, shader, matrix, tm, info)); |
+ return SkNEW_ARGS(CircleInside2PtConicalEffect, (ctx, shaderDataManager, shader, matrix, tm, |
+ info)); |
} |
virtual ~CircleInside2PtConicalEffect() {} |
@@ -885,11 +897,12 @@ private: |
} |
CircleInside2PtConicalEffect(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
const CircleConicalInfo& info) |
- : INHERITED(ctx, shader, matrix, tm), fInfo(info) { |
+ : INHERITED(ctx, shaderDataManager, shader, matrix, tm), fInfo(info) { |
this->initClassID<CircleInside2PtConicalEffect>(); |
} |
@@ -1077,11 +1090,13 @@ class CircleOutside2PtConicalEffect : public GrGradientEffect { |
public: |
static GrFragmentProcessor* Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
const CircleConicalInfo& info) { |
- return SkNEW_ARGS(CircleOutside2PtConicalEffect, (ctx, shader, matrix, tm, info)); |
+ return SkNEW_ARGS(CircleOutside2PtConicalEffect, (ctx, shaderDataManager, shader, matrix, |
+ tm, info)); |
} |
virtual ~CircleOutside2PtConicalEffect() {} |
@@ -1113,11 +1128,12 @@ private: |
} |
CircleOutside2PtConicalEffect(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
const SkMatrix& matrix, |
SkShader::TileMode tm, |
const CircleConicalInfo& info) |
- : INHERITED(ctx, shader, matrix, tm), fInfo(info) { |
+ : INHERITED(ctx, shaderDataManager, shader, matrix, tm), fInfo(info) { |
this->initClassID<CircleOutside2PtConicalEffect>(); |
if (shader.getStartRadius() != shader.getEndRadius()) { |
fTLimit = shader.getStartRadius() / (shader.getStartRadius() - shader.getEndRadius()); |
@@ -1341,6 +1357,7 @@ void GLCircleOutside2PtConicalEffect::GenKey(const GrProcessor& processor, |
////////////////////////////////////////////////////////////////////////////// |
GrFragmentProcessor* Gr2PtConicalGradientEffect::Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
SkShader::TileMode tm, |
const SkMatrix* localMatrix) { |
@@ -1360,12 +1377,14 @@ GrFragmentProcessor* Gr2PtConicalGradientEffect::Create(GrContext* ctx, |
SkScalar focalX; |
ConicalType type = set_matrix_focal_conical(shader, &matrix, &focalX); |
if (type == kInside_ConicalType) { |
- return FocalInside2PtConicalEffect::Create(ctx, shader, matrix, tm, focalX); |
+ return FocalInside2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm, |
+ focalX); |
} else if(type == kEdge_ConicalType) { |
set_matrix_edge_conical(shader, &matrix); |
- return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); |
+ return Edge2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm); |
} else { |
- return FocalOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, focalX); |
+ return FocalOutside2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm, |
+ focalX); |
} |
} |
@@ -1373,12 +1392,14 @@ GrFragmentProcessor* Gr2PtConicalGradientEffect::Create(GrContext* ctx, |
ConicalType type = set_matrix_circle_conical(shader, &matrix, &info); |
if (type == kInside_ConicalType) { |
- return CircleInside2PtConicalEffect::Create(ctx, shader, matrix, tm, info); |
+ return CircleInside2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm, |
+ info); |
} else if (type == kEdge_ConicalType) { |
set_matrix_edge_conical(shader, &matrix); |
- return Edge2PtConicalEffect::Create(ctx, shader, matrix, tm); |
+ return Edge2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm); |
} else { |
- return CircleOutside2PtConicalEffect::Create(ctx, shader, matrix, tm, info); |
+ return CircleOutside2PtConicalEffect::Create(ctx, shaderDataManager, shader, matrix, tm, |
+ info); |
} |
} |