Index: src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
diff --git a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
index 3f511ed2afe2907c9a9d57faaeb462f3f21f1bf3..b0324d4a2f62da10b76cb01a22f5285fa2519cc5 100644 |
--- a/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
+++ b/src/effects/gradients/SkTwoPointConicalGradient_gpu.cpp |
@@ -58,10 +58,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() {} |
@@ -89,10 +90,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()){ |
@@ -379,11 +381,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() { } |
@@ -408,11 +412,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>(); |
} |
@@ -601,11 +608,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() {} |
@@ -630,11 +639,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>(); |
} |
@@ -848,11 +858,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() {} |
@@ -881,11 +893,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>(); |
} |
@@ -1072,11 +1085,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() {} |
@@ -1108,11 +1123,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()); |
@@ -1336,6 +1352,7 @@ void GLCircleOutside2PtConicalEffect::GenKey(const GrProcessor& processor, |
////////////////////////////////////////////////////////////////////////////// |
GrFragmentProcessor* Gr2PtConicalGradientEffect::Create(GrContext* ctx, |
+ GrShaderDataManager* shaderDataManager, |
const SkTwoPointConicalGradient& shader, |
SkShader::TileMode tm, |
const SkMatrix* localMatrix) { |
@@ -1355,12 +1372,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); |
} |
} |
@@ -1368,12 +1387,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); |
} |
} |