aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/effects
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/effects')
-rw-r--r--src/gpu/effects/GrBezierEffect.cpp64
-rw-r--r--src/gpu/effects/GrCustomCoordsTextureEffect.cpp11
-rw-r--r--src/gpu/effects/GrDashingEffect.cpp48
-rwxr-xr-xsrc/gpu/effects/GrDistanceFieldTextureEffect.cpp38
4 files changed, 46 insertions, 115 deletions
diff --git a/src/gpu/effects/GrBezierEffect.cpp b/src/gpu/effects/GrBezierEffect.cpp
index 0bcfc75bef..1b14d349dd 100644
--- a/src/gpu/effects/GrBezierEffect.cpp
+++ b/src/gpu/effects/GrBezierEffect.cpp
@@ -15,20 +15,13 @@
class GrGLConicEffect : public GrGLGeometryProcessor {
public:
- GrGLConicEffect(const GrBackendProcessorFactory&,
- const GrGeometryProcessor&,
- const GrBatchTracker&);
+ GrGLConicEffect(const GrBackendProcessorFactory&, const GrProcessor&);
virtual void emitCode(const EmitArgs&) SK_OVERRIDE;
- static inline void GenKey(const GrGeometryProcessor&,
- const GrBatchTracker&,
- const GrGLCaps&,
- GrProcessorKeyBuilder*);
+ static inline void GenKey(const GrProcessor&, const GrGLCaps&, GrProcessorKeyBuilder*);
- virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE {}
private:
GrPrimitiveEdgeType fEdgeType;
@@ -37,10 +30,9 @@ private:
};
GrGLConicEffect::GrGLConicEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor& processor,
- const GrBatchTracker& bt)
+ const GrProcessor& effect)
: INHERITED (factory) {
- const GrConicEffect& ce = processor.cast<GrConicEffect>();
+ const GrConicEffect& ce = effect.cast<GrConicEffect>();
fEdgeType = ce.getEdgeType();
}
@@ -120,9 +112,7 @@ void GrGLConicEffect::emitCode(const EmitArgs& args) {
fsBuilder->codeAppendf("%s = vec4(edgeAlpha);", args.fOutputCoverage);
}
-void GrGLConicEffect::GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+void GrGLConicEffect::GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrConicEffect& ce = processor.cast<GrConicEffect>();
uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2;
@@ -172,20 +162,13 @@ GrGeometryProcessor* GrConicEffect::TestCreate(SkRandom* random,
class GrGLQuadEffect : public GrGLGeometryProcessor {
public:
- GrGLQuadEffect(const GrBackendProcessorFactory&,
- const GrGeometryProcessor&,
- const GrBatchTracker&);
+ GrGLQuadEffect(const GrBackendProcessorFactory&, const GrProcessor&);
virtual void emitCode(const EmitArgs&) SK_OVERRIDE;
- static inline void GenKey(const GrGeometryProcessor&,
- const GrBatchTracker&,
- const GrGLCaps&,
- GrProcessorKeyBuilder*);
+ static inline void GenKey(const GrProcessor&, const GrGLCaps&, GrProcessorKeyBuilder*);
- virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE {}
private:
GrPrimitiveEdgeType fEdgeType;
@@ -194,10 +177,9 @@ private:
};
GrGLQuadEffect::GrGLQuadEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor& processor,
- const GrBatchTracker& bt)
+ const GrProcessor& effect)
: INHERITED (factory) {
- const GrQuadEffect& ce = processor.cast<GrQuadEffect>();
+ const GrQuadEffect& ce = effect.cast<GrQuadEffect>();
fEdgeType = ce.getEdgeType();
}
@@ -263,9 +245,7 @@ void GrGLQuadEffect::emitCode(const EmitArgs& args) {
fsBuilder->codeAppendf("%s = vec4(edgeAlpha);", args.fOutputCoverage);
}
-void GrGLQuadEffect::GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+void GrGLQuadEffect::GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrQuadEffect& ce = processor.cast<GrQuadEffect>();
uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2;
@@ -315,20 +295,13 @@ GrGeometryProcessor* GrQuadEffect::TestCreate(SkRandom* random,
class GrGLCubicEffect : public GrGLGeometryProcessor {
public:
- GrGLCubicEffect(const GrBackendProcessorFactory&,
- const GrGeometryProcessor&,
- const GrBatchTracker&);
+ GrGLCubicEffect(const GrBackendProcessorFactory&, const GrProcessor&);
virtual void emitCode(const EmitArgs&) SK_OVERRIDE;
- static inline void GenKey(const GrGeometryProcessor&,
- const GrBatchTracker&,
- const GrGLCaps&,
- GrProcessorKeyBuilder*);
+ static inline void GenKey(const GrProcessor&, const GrGLCaps&, GrProcessorKeyBuilder*);
- virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE {}
private:
GrPrimitiveEdgeType fEdgeType;
@@ -337,8 +310,7 @@ private:
};
GrGLCubicEffect::GrGLCubicEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor& processor,
- const GrBatchTracker&)
+ const GrProcessor& processor)
: INHERITED (factory) {
const GrCubicEffect& ce = processor.cast<GrCubicEffect>();
fEdgeType = ce.getEdgeType();
@@ -447,9 +419,7 @@ void GrGLCubicEffect::emitCode(const EmitArgs& args) {
fsBuilder->codeAppendf("%s = vec4(%s);", args.fOutputCoverage, edgeAlpha.c_str());
}
-void GrGLCubicEffect::GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+void GrGLCubicEffect::GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrCubicEffect& ce = processor.cast<GrCubicEffect>();
uint32_t key = ce.isAntiAliased() ? (ce.isFilled() ? 0x0 : 0x1) : 0x2;
diff --git a/src/gpu/effects/GrCustomCoordsTextureEffect.cpp b/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
index 637d442d13..45c3008889 100644
--- a/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
+++ b/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
@@ -17,9 +17,7 @@
class GrGLCustomCoordsTextureEffect : public GrGLGeometryProcessor {
public:
- GrGLCustomCoordsTextureEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ GrGLCustomCoordsTextureEffect(const GrBackendProcessorFactory& factory, const GrProcessor&)
: INHERITED (factory) {}
virtual void emitCode(const EmitArgs& args) SK_OVERRIDE {
@@ -51,12 +49,9 @@ public:
}
virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE {}
+ const GrProcessor&) SK_OVERRIDE {}
- static inline void GenKey(const GrGeometryProcessor& proc,
- const GrBatchTracker&,
- const GrGLCaps&,
+ static inline void GenKey(const GrProcessor& proc, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrCustomCoordsTextureEffect& gp = proc.cast<GrCustomCoordsTextureEffect>();
diff --git a/src/gpu/effects/GrDashingEffect.cpp b/src/gpu/effects/GrDashingEffect.cpp
index fec1551ef5..95760e62e5 100644
--- a/src/gpu/effects/GrDashingEffect.cpp
+++ b/src/gpu/effects/GrDashingEffect.cpp
@@ -504,20 +504,13 @@ private:
class GLDashingCircleEffect : public GrGLGeometryProcessor {
public:
- GLDashingCircleEffect(const GrBackendProcessorFactory&,
- const GrGeometryProcessor&,
- const GrBatchTracker&);
+ GLDashingCircleEffect(const GrBackendProcessorFactory&, const GrProcessor&);
virtual void emitCode(const EmitArgs&) SK_OVERRIDE;
- static inline void GenKey(const GrGeometryProcessor&,
- const GrBatchTracker&,
- const GrGLCaps&,
- GrProcessorKeyBuilder*);
+ static inline void GenKey(const GrProcessor&, const GrGLCaps&, GrProcessorKeyBuilder*);
- virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE;
private:
GrGLProgramDataManager::UniformHandle fParamUniform;
@@ -528,8 +521,7 @@ private:
};
GLDashingCircleEffect::GLDashingCircleEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ const GrProcessor&)
: INHERITED (factory) {
fPrevRadius = SK_ScalarMin;
fPrevCenterX = SK_ScalarMin;
@@ -578,9 +570,8 @@ void GLDashingCircleEffect::emitCode(const EmitArgs& args) {
fsBuilder->codeAppendf("%s = vec4(alpha);", args.fOutputCoverage);
}
-void GLDashingCircleEffect::setData(const GrGLProgramDataManager& pdman,
- const GrGeometryProcessor& processor,
- const GrBatchTracker&) {
+void GLDashingCircleEffect::setData(const GrGLProgramDataManager& pdman
+ , const GrProcessor& processor) {
const DashingCircleEffect& dce = processor.cast<DashingCircleEffect>();
SkScalar radius = dce.getRadius();
SkScalar centerX = dce.getCenterX();
@@ -593,9 +584,7 @@ void GLDashingCircleEffect::setData(const GrGLProgramDataManager& pdman,
}
}
-void GLDashingCircleEffect::GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+void GLDashingCircleEffect::GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const DashingCircleEffect& dce = processor.cast<DashingCircleEffect>();
b->add32(dce.getEdgeType());
@@ -723,20 +712,13 @@ private:
class GLDashingLineEffect : public GrGLGeometryProcessor {
public:
- GLDashingLineEffect(const GrBackendProcessorFactory&,
- const GrGeometryProcessor&,
- const GrBatchTracker&);
+ GLDashingLineEffect(const GrBackendProcessorFactory&, const GrProcessor&);
virtual void emitCode(const EmitArgs&) SK_OVERRIDE;
- static inline void GenKey(const GrGeometryProcessor&,
- const GrBatchTracker&,
- const GrGLCaps&,
- GrProcessorKeyBuilder*);
+ static inline void GenKey(const GrProcessor&, const GrGLCaps&, GrProcessorKeyBuilder*);
- virtual void setData(const GrGLProgramDataManager&,
- const GrGeometryProcessor&,
- const GrBatchTracker&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrProcessor&) SK_OVERRIDE;
private:
GrGLProgramDataManager::UniformHandle fRectUniform;
@@ -747,8 +729,7 @@ private:
};
GLDashingLineEffect::GLDashingLineEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ const GrProcessor&)
: INHERITED (factory) {
fPrevRect.fLeft = SK_ScalarNaN;
fPrevIntervalLength = SK_ScalarMax;
@@ -811,8 +792,7 @@ void GLDashingLineEffect::emitCode(const EmitArgs& args) {
}
void GLDashingLineEffect::setData(const GrGLProgramDataManager& pdman,
- const GrGeometryProcessor& processor,
- const GrBatchTracker&) {
+ const GrProcessor& processor) {
const DashingLineEffect& de = processor.cast<DashingLineEffect>();
const SkRect& rect = de.getRect();
SkScalar intervalLength = de.getIntervalLength();
@@ -825,9 +805,7 @@ void GLDashingLineEffect::setData(const GrGLProgramDataManager& pdman,
}
}
-void GLDashingLineEffect::GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+void GLDashingLineEffect::GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const DashingLineEffect& de = processor.cast<DashingLineEffect>();
b->add32(de.getEdgeType());
diff --git a/src/gpu/effects/GrDistanceFieldTextureEffect.cpp b/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
index 53f85907e4..5e1bc9968c 100755
--- a/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
+++ b/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
@@ -23,8 +23,7 @@
class GrGLDistanceFieldTextureEffect : public GrGLGeometryProcessor {
public:
GrGLDistanceFieldTextureEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ const GrProcessor&)
: INHERITED (factory)
, fTextureSize(SkISize::Make(-1,-1))
#ifdef SK_GAMMA_APPLY_TO_A8
@@ -125,11 +124,10 @@ public:
}
virtual void setData(const GrGLProgramDataManager& pdman,
- const GrGeometryProcessor& proc,
- const GrBatchTracker&) SK_OVERRIDE {
+ const GrProcessor& effect) SK_OVERRIDE {
SkASSERT(fTextureSizeUni.isValid());
- GrTexture* texture = proc.texture(0);
+ GrTexture* texture = effect.texture(0);
if (texture->width() != fTextureSize.width() ||
texture->height() != fTextureSize.height()) {
fTextureSize = SkISize::Make(texture->width(), texture->height());
@@ -139,7 +137,7 @@ public:
}
#ifdef SK_GAMMA_APPLY_TO_A8
const GrDistanceFieldTextureEffect& dfTexEffect =
- proc.cast<GrDistanceFieldTextureEffect>();
+ effect.cast<GrDistanceFieldTextureEffect>();
float luminance = dfTexEffect.getLuminance();
if (luminance != fLuminance) {
pdman.set1f(fLuminanceUni, luminance);
@@ -148,9 +146,7 @@ public:
#endif
}
- static inline void GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+ static inline void GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrDistanceFieldTextureEffect& dfTexEffect =
processor.cast<GrDistanceFieldTextureEffect>();
@@ -259,8 +255,7 @@ GrGeometryProcessor* GrDistanceFieldTextureEffect::TestCreate(SkRandom* random,
class GrGLDistanceFieldNoGammaTextureEffect : public GrGLGeometryProcessor {
public:
GrGLDistanceFieldNoGammaTextureEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ const GrProcessor& effect)
: INHERITED(factory)
, fTextureSize(SkISize::Make(-1, -1)) {}
@@ -343,11 +338,10 @@ public:
}
virtual void setData(const GrGLProgramDataManager& pdman,
- const GrGeometryProcessor& proc,
- const GrBatchTracker&) SK_OVERRIDE {
+ const GrProcessor& effect) SK_OVERRIDE {
SkASSERT(fTextureSizeUni.isValid());
- GrTexture* texture = proc.texture(0);
+ GrTexture* texture = effect.texture(0);
if (texture->width() != fTextureSize.width() ||
texture->height() != fTextureSize.height()) {
fTextureSize = SkISize::Make(texture->width(), texture->height());
@@ -357,12 +351,10 @@ public:
}
}
- static inline void GenKey(const GrGeometryProcessor& proc,
- const GrBatchTracker&,
- const GrGLCaps&,
+ static inline void GenKey(const GrProcessor& effect, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrDistanceFieldNoGammaTextureEffect& dfTexEffect =
- proc.cast<GrDistanceFieldNoGammaTextureEffect>();
+ effect.cast<GrDistanceFieldNoGammaTextureEffect>();
b->add32(dfTexEffect.getFlags());
}
@@ -438,8 +430,7 @@ GrGeometryProcessor* GrDistanceFieldNoGammaTextureEffect::TestCreate(SkRandom* r
class GrGLDistanceFieldLCDTextureEffect : public GrGLGeometryProcessor {
public:
GrGLDistanceFieldLCDTextureEffect(const GrBackendProcessorFactory& factory,
- const GrGeometryProcessor&,
- const GrBatchTracker&)
+ const GrProcessor&)
: INHERITED (factory)
, fTextureSize(SkISize::Make(-1,-1))
, fTextColor(GrColor_ILLEGAL) {}
@@ -572,8 +563,7 @@ public:
}
virtual void setData(const GrGLProgramDataManager& pdman,
- const GrGeometryProcessor& processor,
- const GrBatchTracker&) SK_OVERRIDE {
+ const GrProcessor& processor) SK_OVERRIDE {
SkASSERT(fTextureSizeUni.isValid());
SkASSERT(fTextColorUni.isValid());
@@ -604,9 +594,7 @@ public:
}
}
- static inline void GenKey(const GrGeometryProcessor& processor,
- const GrBatchTracker&,
- const GrGLCaps&,
+ static inline void GenKey(const GrProcessor& processor, const GrGLCaps&,
GrProcessorKeyBuilder* b) {
const GrDistanceFieldLCDTextureEffect& dfTexEffect =
processor.cast<GrDistanceFieldLCDTextureEffect>();