aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu')
-rw-r--r--src/gpu/GrAAConvexPathRenderer.cpp2
-rw-r--r--src/gpu/GrAARectRenderer.cpp4
-rw-r--r--src/gpu/GrOvalRenderer.cpp6
-rw-r--r--src/gpu/effects/GrBezierEffect.cpp6
-rw-r--r--src/gpu/effects/GrBicubicEffect.cpp12
-rw-r--r--src/gpu/effects/GrConvexPolyEffect.cpp20
-rw-r--r--src/gpu/effects/GrConvolutionEffect.cpp14
-rw-r--r--src/gpu/effects/GrCustomCoordsTextureEffect.cpp2
-rw-r--r--src/gpu/effects/GrDashingEffect.cpp32
-rwxr-xr-xsrc/gpu/effects/GrDistanceFieldTextureEffect.cpp44
-rw-r--r--src/gpu/effects/GrMatrixConvolutionEffect.cpp18
-rw-r--r--src/gpu/effects/GrOvalEffect.cpp24
-rw-r--r--src/gpu/effects/GrRRectEffect.cpp30
-rw-r--r--src/gpu/effects/GrTextureDomain.cpp10
-rw-r--r--src/gpu/effects/GrTextureDomain.h10
-rw-r--r--src/gpu/gl/GrGLEffect.h2
-rw-r--r--src/gpu/gl/GrGLProgram.cpp44
-rw-r--r--src/gpu/gl/GrGLProgram.h8
-rw-r--r--src/gpu/gl/GrGLProgramDataManager.cpp (renamed from src/gpu/gl/GrGLUniformManager.cpp)72
-rw-r--r--src/gpu/gl/GrGLProgramDataManager.h (renamed from src/gpu/gl/GrGLUniformManager.h)18
-rw-r--r--src/gpu/gl/GrGLProgramEffects.cpp18
-rw-r--r--src/gpu/gl/GrGLProgramEffects.h14
-rw-r--r--src/gpu/gl/GrGLShaderBuilder.cpp42
-rw-r--r--src/gpu/gl/GrGLShaderBuilder.h44
-rw-r--r--src/gpu/gl/GrGLUniformHandle.h4
-rw-r--r--src/gpu/gl/GrGpuGL_program.cpp2
26 files changed, 252 insertions, 250 deletions
diff --git a/src/gpu/GrAAConvexPathRenderer.cpp b/src/gpu/GrAAConvexPathRenderer.cpp
index afcb987b39..b2c32acd95 100644
--- a/src/gpu/GrAAConvexPathRenderer.cpp
+++ b/src/gpu/GrAAConvexPathRenderer.cpp
@@ -572,7 +572,7 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*) {}
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {}
private:
typedef GrGLVertexEffect INHERITED;
diff --git a/src/gpu/GrAARectRenderer.cpp b/src/gpu/GrAARectRenderer.cpp
index 0cea0ddd88..44c16a18d6 100644
--- a/src/gpu/GrAARectRenderer.cpp
+++ b/src/gpu/GrAARectRenderer.cpp
@@ -90,7 +90,7 @@ public:
static void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*) {}
- virtual void setData(const GrGLUniformManager& uman, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager& pdman, const GrDrawEffect&) SK_OVERRIDE {}
private:
typedef GrGLVertexEffect INHERITED;
@@ -221,7 +221,7 @@ public:
static void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*) {}
- virtual void setData(const GrGLUniformManager& uman, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager& pdman, const GrDrawEffect&) SK_OVERRIDE {}
private:
typedef GrGLVertexEffect INHERITED;
diff --git a/src/gpu/GrOvalRenderer.cpp b/src/gpu/GrOvalRenderer.cpp
index b604f02157..cf4c31677d 100644
--- a/src/gpu/GrOvalRenderer.cpp
+++ b/src/gpu/GrOvalRenderer.cpp
@@ -127,7 +127,7 @@ public:
b->add32(circleEffect.isStroked());
}
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {}
private:
typedef GrGLVertexEffect INHERITED;
@@ -257,7 +257,7 @@ public:
b->add32(ellipseEffect.isStroked());
}
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {
}
private:
@@ -415,7 +415,7 @@ public:
b->add32(ellipseEffect.getMode());
}
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {
}
private:
diff --git a/src/gpu/effects/GrBezierEffect.cpp b/src/gpu/effects/GrBezierEffect.cpp
index 7337d8a7fc..6f3772d798 100644
--- a/src/gpu/effects/GrBezierEffect.cpp
+++ b/src/gpu/effects/GrBezierEffect.cpp
@@ -27,7 +27,7 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {}
private:
GrEffectEdgeType fEdgeType;
@@ -177,7 +177,7 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {}
private:
GrEffectEdgeType fEdgeType;
@@ -317,7 +317,7 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE {}
private:
GrEffectEdgeType fEdgeType;
diff --git a/src/gpu/effects/GrBicubicEffect.cpp b/src/gpu/effects/GrBicubicEffect.cpp
index 2b819f6842..cc621ddec2 100644
--- a/src/gpu/effects/GrBicubicEffect.cpp
+++ b/src/gpu/effects/GrBicubicEffect.cpp
@@ -32,7 +32,7 @@ public:
const TransformedCoordsArray&,
const TextureSamplerArray&) SK_OVERRIDE;
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
static inline void GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
GrEffectKeyBuilder* b) {
@@ -41,7 +41,7 @@ public:
}
private:
- typedef GrGLUniformManager::UniformHandle UniformHandle;
+ typedef GrGLProgramDataManager::UniformHandle UniformHandle;
UniformHandle fCoefficientsUni;
UniformHandle fImageIncrementUni;
@@ -114,16 +114,16 @@ void GrGLBicubicEffect::emitCode(GrGLShaderBuilder* builder,
builder->fsCodeAppendf("\t%s = %s;\n", outputColor, (GrGLSLExpr4(bicubicColor.c_str()) * GrGLSLExpr4(inputColor)).c_str());
}
-void GrGLBicubicEffect::setData(const GrGLUniformManager& uman,
+void GrGLBicubicEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const GrBicubicEffect& effect = drawEffect.castEffect<GrBicubicEffect>();
const GrTexture& texture = *effect.texture(0);
float imageIncrement[2];
imageIncrement[0] = 1.0f / texture.width();
imageIncrement[1] = 1.0f / texture.height();
- uman.set2fv(fImageIncrementUni, 1, imageIncrement);
- uman.setMatrix4f(fCoefficientsUni, effect.coefficients());
- fDomain.setData(uman, effect.domain(), texture.origin());
+ pdman.set2fv(fImageIncrementUni, 1, imageIncrement);
+ pdman.setMatrix4f(fCoefficientsUni, effect.coefficients());
+ fDomain.setData(pdman, effect.domain(), texture.origin());
}
static inline void convert_row_major_scalar_coeffs_to_column_major_floats(float dst[16],
diff --git a/src/gpu/effects/GrConvexPolyEffect.cpp b/src/gpu/effects/GrConvexPolyEffect.cpp
index 11109f7ed8..41911c12b0 100644
--- a/src/gpu/effects/GrConvexPolyEffect.cpp
+++ b/src/gpu/effects/GrConvexPolyEffect.cpp
@@ -99,11 +99,11 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fRectUniform;
- SkRect fPrevRect;
+ GrGLProgramDataManager::UniformHandle fRectUniform;
+ SkRect fPrevRect;
typedef GrGLEffect INHERITED;
};
@@ -155,11 +155,11 @@ void GLAARectEffect::emitCode(GrGLShaderBuilder* builder,
(GrGLSLExpr4(inputColor) * GrGLSLExpr1("alpha")).c_str());
}
-void GLAARectEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GLAARectEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const AARectEffect& aare = drawEffect.castEffect<AARectEffect>();
const SkRect& rect = aare.getRect();
if (rect != fPrevRect) {
- uman.set4f(fRectUniform, rect.fLeft + 0.5f, rect.fTop + 0.5f,
+ pdman.set4f(fRectUniform, rect.fLeft + 0.5f, rect.fTop + 0.5f,
rect.fRight - 0.5f, rect.fBottom - 0.5f);
fPrevRect = rect;
}
@@ -191,11 +191,11 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fEdgeUniform;
- SkScalar fPrevEdges[3 * GrConvexPolyEffect::kMaxEdges];
+ GrGLProgramDataManager::UniformHandle fEdgeUniform;
+ SkScalar fPrevEdges[3 * GrConvexPolyEffect::kMaxEdges];
typedef GrGLEffect INHERITED;
};
@@ -246,11 +246,11 @@ void GrGLConvexPolyEffect::emitCode(GrGLShaderBuilder* builder,
(GrGLSLExpr4(inputColor) * GrGLSLExpr1("alpha")).c_str());
}
-void GrGLConvexPolyEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GrGLConvexPolyEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const GrConvexPolyEffect& cpe = drawEffect.castEffect<GrConvexPolyEffect>();
size_t byteSize = 3 * cpe.getEdgeCount() * sizeof(SkScalar);
if (0 != memcmp(fPrevEdges, cpe.getEdges(), byteSize)) {
- uman.set3fv(fEdgeUniform, cpe.getEdgeCount(), cpe.getEdges());
+ pdman.set3fv(fEdgeUniform, cpe.getEdgeCount(), cpe.getEdges());
memcpy(fPrevEdges, cpe.getEdges(), byteSize);
}
}
diff --git a/src/gpu/effects/GrConvolutionEffect.cpp b/src/gpu/effects/GrConvolutionEffect.cpp
index f20d1db997..e0cf35b242 100644
--- a/src/gpu/effects/GrConvolutionEffect.cpp
+++ b/src/gpu/effects/GrConvolutionEffect.cpp
@@ -13,7 +13,7 @@
#include "GrTBackendEffectFactory.h"
// For brevity
-typedef GrGLUniformManager::UniformHandle UniformHandle;
+typedef GrGLProgramDataManager::UniformHandle UniformHandle;
class GrGLConvolutionEffect : public GrGLEffect {
public:
@@ -27,7 +27,7 @@ public:
const TransformedCoordsArray&,
const TextureSamplerArray&) SK_OVERRIDE;
- virtual void setData(const GrGLUniformManager& uman, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager& pdman, const GrDrawEffect&) SK_OVERRIDE;
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
@@ -103,7 +103,7 @@ void GrGLConvolutionEffect::emitCode(GrGLShaderBuilder* builder,
builder->fsCodeAppend(modulate.c_str());
}
-void GrGLConvolutionEffect::setData(const GrGLUniformManager& uman,
+void GrGLConvolutionEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const GrConvolutionEffect& conv = drawEffect.castEffect<GrConvolutionEffect>();
GrTexture& texture = *conv.texture(0);
@@ -121,17 +121,17 @@ void GrGLConvolutionEffect::setData(const GrGLUniformManager& uman,
default:
SkFAIL("Unknown filter direction.");
}
- uman.set2fv(fImageIncrementUni, 1, imageIncrement);
+ pdman.set2fv(fImageIncrementUni, 1, imageIncrement);
if (conv.useBounds()) {
const float* bounds = conv.bounds();
if (Gr1DKernelEffect::kY_Direction == conv.direction() &&
texture.origin() != kTopLeft_GrSurfaceOrigin) {
- uman.set2f(fBoundsUni, 1.0f - bounds[1], 1.0f - bounds[0]);
+ pdman.set2f(fBoundsUni, 1.0f - bounds[1], 1.0f - bounds[0]);
} else {
- uman.set2f(fBoundsUni, bounds[0], bounds[1]);
+ pdman.set2f(fBoundsUni, bounds[0], bounds[1]);
}
}
- uman.set1fv(fKernelUni, this->width(), conv.kernel());
+ pdman.set1fv(fKernelUni, this->width(), conv.kernel());
}
void GrGLConvolutionEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
diff --git a/src/gpu/effects/GrCustomCoordsTextureEffect.cpp b/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
index a24abf9f63..d235d5fb76 100644
--- a/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
+++ b/src/gpu/effects/GrCustomCoordsTextureEffect.cpp
@@ -46,7 +46,7 @@ public:
builder->fsCodeAppend(";\n");
}
- virtual void setData(const GrGLUniformManager& uman,
+ virtual void setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) SK_OVERRIDE {}
private:
diff --git a/src/gpu/effects/GrDashingEffect.cpp b/src/gpu/effects/GrDashingEffect.cpp
index 9f6b77d64f..f3af65e3b6 100644
--- a/src/gpu/effects/GrDashingEffect.cpp
+++ b/src/gpu/effects/GrDashingEffect.cpp
@@ -478,13 +478,13 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fParamUniform;
- SkScalar fPrevRadius;
- SkScalar fPrevCenterX;
- SkScalar fPrevIntervalLength;
+ GrGLProgramDataManager::UniformHandle fParamUniform;
+ SkScalar fPrevRadius;
+ SkScalar fPrevCenterX;
+ SkScalar fPrevIntervalLength;
typedef GrGLVertexEffect INHERITED;
};
@@ -536,13 +536,13 @@ void GLDashingCircleEffect::emitCode(GrGLFullShaderBuilder* builder,
(GrGLSLExpr4(inputColor) * GrGLSLExpr1("alpha")).c_str());
}
-void GLDashingCircleEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GLDashingCircleEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const DashingCircleEffect& dce = drawEffect.castEffect<DashingCircleEffect>();
SkScalar radius = dce.getRadius();
SkScalar centerX = dce.getCenterX();
SkScalar intervalLength = dce.getIntervalLength();
if (radius != fPrevRadius || centerX != fPrevCenterX || intervalLength != fPrevIntervalLength) {
- uman.set3f(fParamUniform, radius - 0.5f, centerX, intervalLength);
+ pdman.set3f(fParamUniform, radius - 0.5f, centerX, intervalLength);
fPrevRadius = radius;
fPrevCenterX = centerX;
fPrevIntervalLength = intervalLength;
@@ -683,13 +683,13 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fRectUniform;
- GrGLUniformManager::UniformHandle fIntervalUniform;
- SkRect fPrevRect;
- SkScalar fPrevIntervalLength;
+ GrGLProgramDataManager::UniformHandle fRectUniform;
+ GrGLProgramDataManager::UniformHandle fIntervalUniform;
+ SkRect fPrevRect;
+ SkScalar fPrevIntervalLength;
typedef GrGLVertexEffect INHERITED;
};
@@ -753,14 +753,14 @@ void GLDashingLineEffect::emitCode(GrGLFullShaderBuilder* builder,
(GrGLSLExpr4(inputColor) * GrGLSLExpr1("alpha")).c_str());
}
-void GLDashingLineEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GLDashingLineEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const DashingLineEffect& de = drawEffect.castEffect<DashingLineEffect>();
const SkRect& rect = de.getRect();
SkScalar intervalLength = de.getIntervalLength();
if (rect != fPrevRect || intervalLength != fPrevIntervalLength) {
- uman.set4f(fRectUniform, rect.fLeft + 0.5f, rect.fTop + 0.5f,
- rect.fRight - 0.5f, rect.fBottom - 0.5f);
- uman.set1f(fIntervalUniform, intervalLength);
+ pdman.set4f(fRectUniform, rect.fLeft + 0.5f, rect.fTop + 0.5f,
+ rect.fRight - 0.5f, rect.fBottom - 0.5f);
+ pdman.set1f(fIntervalUniform, intervalLength);
fPrevRect = rect;
fPrevIntervalLength = intervalLength;
}
diff --git a/src/gpu/effects/GrDistanceFieldTextureEffect.cpp b/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
index 0c0c1afc76..510142e8fe 100755
--- a/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
+++ b/src/gpu/effects/GrDistanceFieldTextureEffect.cpp
@@ -125,7 +125,7 @@ public:
(GrGLSLExpr4(inputColor) * GrGLSLExpr1("val")).c_str());
}
- virtual void setData(const GrGLUniformManager& uman,
+ virtual void setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) SK_OVERRIDE {
SkASSERT(fTextureSizeUni.isValid());
@@ -133,16 +133,16 @@ public:
if (texture->width() != fTextureSize.width() ||
texture->height() != fTextureSize.height()) {
fTextureSize = SkISize::Make(texture->width(), texture->height());
- uman.set2f(fTextureSizeUni,
- SkIntToScalar(fTextureSize.width()),
- SkIntToScalar(fTextureSize.height()));
+ pdman.set2f(fTextureSizeUni,
+ SkIntToScalar(fTextureSize.width()),
+ SkIntToScalar(fTextureSize.height()));
}
#ifdef SK_GAMMA_APPLY_TO_A8
const GrDistanceFieldTextureEffect& dfTexEffect =
drawEffect.castEffect<GrDistanceFieldTextureEffect>();
float luminance = dfTexEffect.getLuminance();
if (luminance != fLuminance) {
- uman.set1f(fLuminanceUni, luminance);
+ pdman.set1f(fLuminanceUni, luminance);
fLuminance = luminance;
}
#endif
@@ -157,10 +157,10 @@ public:
}
private:
- GrGLUniformManager::UniformHandle fTextureSizeUni;
- SkISize fTextureSize;
- GrGLUniformManager::UniformHandle fLuminanceUni;
- float fLuminance;
+ GrGLProgramDataManager::UniformHandle fTextureSizeUni;
+ SkISize fTextureSize;
+ GrGLProgramDataManager::UniformHandle fLuminanceUni;
+ float fLuminance;
typedef GrGLVertexEffect INHERITED;
};
@@ -381,7 +381,7 @@ public:
(GrGLSLExpr4(inputColor) * GrGLSLExpr4("val")).c_str());
}
- virtual void setData(const GrGLUniformManager& uman,
+ virtual void setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) SK_OVERRIDE {
SkASSERT(fTextureSizeUni.isValid());
SkASSERT(fTextColorUni.isValid());
@@ -396,19 +396,19 @@ public:
if (dfTexEffect.useBGR()) {
delta = -delta;
}
- uman.set3f(fTextureSizeUni,
- SkIntToScalar(fTextureSize.width()),
- SkIntToScalar(fTextureSize.height()),
- delta);
+ pdman.set3f(fTextureSizeUni,
+ SkIntToScalar(fTextureSize.width()),
+ SkIntToScalar(fTextureSize.height()),
+ delta);
}
GrColor textColor = dfTexEffect.getTextColor();
if (textColor != fTextColor) {
static const float ONE_OVER_255 = 1.f / 255.f;
- uman.set3f(fTextColorUni,
- GrColorUnpackR(textColor) * ONE_OVER_255,
- GrColorUnpackG(textColor) * ONE_OVER_255,
- GrColorUnpackB(textColor) * ONE_OVER_255);
+ pdman.set3f(fTextColorUni,
+ GrColorUnpackR(textColor) * ONE_OVER_255,
+ GrColorUnpackG(textColor) * ONE_OVER_255,
+ GrColorUnpackB(textColor) * ONE_OVER_255);
fTextColor = textColor;
}
}
@@ -422,10 +422,10 @@ public:
}
private:
- GrGLUniformManager::UniformHandle fTextureSizeUni;
- SkISize fTextureSize;
- GrGLUniformManager::UniformHandle fTextColorUni;
- SkColor fTextColor;
+ GrGLProgramDataManager::UniformHandle fTextureSizeUni;
+ SkISize fTextureSize;
+ GrGLProgramDataManager::UniformHandle fTextColorUni;
+ SkColor fTextColor;
typedef GrGLVertexEffect INHERITED;
};
diff --git a/src/gpu/effects/GrMatrixConvolutionEffect.cpp b/src/gpu/effects/GrMatrixConvolutionEffect.cpp
index 04ab4f41ca..242aba8f86 100644
--- a/src/gpu/effects/GrMatrixConvolutionEffect.cpp
+++ b/src/gpu/effects/GrMatrixConvolutionEffect.cpp
@@ -25,10 +25,10 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- typedef GrGLUniformManager::UniformHandle UniformHandle;
+ typedef GrGLProgramDataManager::UniformHandle UniformHandle;
SkISize fKernelSize;
bool fConvolveAlpha;
@@ -124,7 +124,7 @@ void GrGLMatrixConvolutionEffect::GenKey(const GrDrawEffect& drawEffect,
b->add32(GrTextureDomain::GLDomain::DomainKey(m.domain()));
}
-void GrGLMatrixConvolutionEffect::setData(const GrGLUniformManager& uman,
+void GrGLMatrixConvolutionEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const GrMatrixConvolutionEffect& conv = drawEffect.castEffect<GrMatrixConvolutionEffect>();
GrTexture& texture = *conv.texture(0);
@@ -134,12 +134,12 @@ void GrGLMatrixConvolutionEffect::setData(const GrGLUniformManager& uman,
float ySign = texture.origin() == kTopLeft_GrSurfaceOrigin ? 1.0f : -1.0f;
imageIncrement[0] = 1.0f / texture.width();
imageIncrement[1] = ySign / texture.height();
- uman.set2fv(fImageIncrementUni, 1, imageIncrement);
- uman.set2fv(fKernelOffsetUni, 1, conv.kernelOffset());
- uman.set1fv(fKernelUni, fKernelSize.width() * fKernelSize.height(), conv.kernel());
- uman.set1f(fGainUni, conv.gain());
- uman.set1f(fBiasUni, conv.bias());
- fDomain.setData(uman, conv.domain(), texture.origin());
+ pdman.set2fv(fImageIncrementUni, 1, imageIncrement);
+ pdman.set2fv(fKernelOffsetUni, 1, conv.kernelOffset());
+ pdman.set1fv(fKernelUni, fKernelSize.width() * fKernelSize.height(), conv.kernel());
+ pdman.set1f(fGainUni, conv.gain());
+ pdman.set1f(fBiasUni, conv.bias());
+ fDomain.setData(pdman, conv.domain(), texture.origin());
}
GrMatrixConvolutionEffect::GrMatrixConvolutionEffect(GrTexture* texture,
diff --git a/src/gpu/effects/GrOvalEffect.cpp b/src/gpu/effects/GrOvalEffect.cpp
index ebeb288c97..d915250fe5 100644
--- a/src/gpu/effects/GrOvalEffect.cpp
+++ b/src/gpu/effects/GrOvalEffect.cpp
@@ -110,12 +110,12 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fCircleUniform;
- SkPoint fPrevCenter;
- SkScalar fPrevRadius;
+ GrGLProgramDataManager::UniformHandle fCircleUniform;
+ SkPoint fPrevCenter;
+ SkScalar fPrevRadius;
typedef GrGLEffect INHERITED;
};
@@ -167,7 +167,7 @@ void GLCircleEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
b->add32(ce.getEdgeType());
}
-void GLCircleEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GLCircleEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const CircleEffect& ce = drawEffect.castEffect<CircleEffect>();
if (ce.getRadius() != fPrevRadius || ce.getCenter() != fPrevCenter) {
SkScalar radius = ce.getRadius();
@@ -176,7 +176,7 @@ void GLCircleEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect&
} else {
radius += 0.5f;
}
- uman.set3f(fCircleUniform, ce.getCenter().fX, ce.getCenter().fY, radius);
+ pdman.set3f(fCircleUniform, ce.getCenter().fX, ce.getCenter().fY, radius);
fPrevCenter = ce.getCenter();
fPrevRadius = ce.getRadius();
}
@@ -282,12 +282,12 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fEllipseUniform;
- SkPoint fPrevCenter;
- SkVector fPrevRadii;
+ GrGLProgramDataManager::UniformHandle fEllipseUniform;
+ SkPoint fPrevCenter;
+ SkVector fPrevRadii;
typedef GrGLEffect INHERITED;
};
@@ -352,12 +352,12 @@ void GLEllipseEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
b->add32(ee.getEdgeType());
}
-void GLEllipseEffect::setData(const GrGLUniformManager& uman, const GrDrawEffect& drawEffect) {
+void GLEllipseEffect::setData(const GrGLProgramDataManager& pdman, const GrDrawEffect& drawEffect) {
const EllipseEffect& ee = drawEffect.castEffect<EllipseEffect>();
if (ee.getRadii() != fPrevRadii || ee.getCenter() != fPrevCenter) {
SkScalar invRXSqd = 1.f / (ee.getRadii().fX * ee.getRadii().fX);
SkScalar invRYSqd = 1.f / (ee.getRadii().fY * ee.getRadii().fY);
- uman.set4f(fEllipseUniform, ee.getCenter().fX, ee.getCenter().fY, invRXSqd, invRYSqd);
+ pdman.set4f(fEllipseUniform, ee.getCenter().fX, ee.getCenter().fY, invRXSqd, invRYSqd);
fPrevCenter = ee.getCenter();
fPrevRadii = ee.getRadii();
}
diff --git a/src/gpu/effects/GrRRectEffect.cpp b/src/gpu/effects/GrRRectEffect.cpp
index 277f6df1a7..5a2b0c3d59 100644
--- a/src/gpu/effects/GrRRectEffect.cpp
+++ b/src/gpu/effects/GrRRectEffect.cpp
@@ -144,12 +144,12 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fInnerRectUniform;
- GrGLUniformManager::UniformHandle fRadiusPlusHalfUniform;
- SkRRect fPrevRRect;
+ GrGLProgramDataManager::UniformHandle fInnerRectUniform;
+ GrGLProgramDataManager::UniformHandle fRadiusPlusHalfUniform;
+ SkRRect fPrevRRect;
typedef GrGLEffect INHERITED;
};
@@ -298,7 +298,7 @@ void GLCircularRRectEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLCap
b->add32((crre.getCircularCornerFlags() << 3) | crre.getEdgeType());
}
-void GLCircularRRectEffect::setData(const GrGLUniformManager& uman,
+void GLCircularRRectEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const CircularRRectEffect& crre = drawEffect.castEffect<CircularRRectEffect>();
const SkRRect& rrect = crre.getRRect();
@@ -371,8 +371,8 @@ void GLCircularRRectEffect::setData(const GrGLUniformManager& uman,
default:
SkFAIL("Should have been one of the above cases.");
}
- uman.set4f(fInnerRectUniform, rect.fLeft, rect.fTop, rect.fRight, rect.fBottom);
- uman.set1f(fRadiusPlusHalfUniform, radius + 0.5f);
+ pdman.set4f(fInnerRectUniform, rect.fLeft, rect.fTop, rect.fRight, rect.fBottom);
+ pdman.set1f(fRadiusPlusHalfUniform, radius + 0.5f);
fPrevRRect = rrect;
}
}
@@ -496,12 +496,12 @@ public:
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
private:
- GrGLUniformManager::UniformHandle fInnerRectUniform;
- GrGLUniformManager::UniformHandle fInvRadiiSqdUniform;
- SkRRect fPrevRRect;
+ GrGLProgramDataManager::UniformHandle fInnerRectUniform;
+ GrGLProgramDataManager::UniformHandle fInvRadiiSqdUniform;
+ SkRRect fPrevRRect;
typedef GrGLEffect INHERITED;
};
@@ -593,7 +593,7 @@ void GLEllipticalRRectEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLC
b->add32(erre.getRRect().getType() | erre.getEdgeType() << 3);
}
-void GLEllipticalRRectEffect::setData(const GrGLUniformManager& uman,
+void GLEllipticalRRectEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const EllipticalRRectEffect& erre = drawEffect.castEffect<EllipticalRRectEffect>();
const SkRRect& rrect = erre.getRRect();
@@ -605,7 +605,7 @@ void GLEllipticalRRectEffect::setData(const GrGLUniformManager& uman,
switch (erre.getRRect().getType()) {
case SkRRect::kSimple_Type:
rect.inset(r0.fX, r0.fY);
- uman.set2f(fInvRadiiSqdUniform, 1.f / (r0.fX * r0.fX),
+ pdman.set2f(fInvRadiiSqdUniform, 1.f / (r0.fX * r0.fX),
1.f / (r0.fY * r0.fY));
break;
case SkRRect::kNinePatch_Type: {
@@ -616,7 +616,7 @@ void GLEllipticalRRectEffect::setData(const GrGLUniformManager& uman,
rect.fTop += r0.fY;
rect.fRight -= r1.fX;
rect.fBottom -= r1.fY;
- uman.set4f(fInvRadiiSqdUniform, 1.f / (r0.fX * r0.fX),
+ pdman.set4f(fInvRadiiSqdUniform, 1.f / (r0.fX * r0.fX),
1.f / (r0.fY * r0.fY),
1.f / (r1.fX * r1.fX),
1.f / (r1.fY * r1.fY));
@@ -625,7 +625,7 @@ void GLEllipticalRRectEffect::setData(const GrGLUniformManager& uman,
default:
SkFAIL("RRect should always be simple or nine-patch.");
}
- uman.set4f(fInnerRectUniform, rect.fLeft, rect.fTop, rect.fRight, rect.fBottom);
+ pdman.set4f(fInnerRectUniform, rect.fLeft, rect.fTop, rect.fRight, rect.fBottom);
fPrevRRect = rrect;
}
}
diff --git a/src/gpu/effects/GrTextureDomain.cpp b/src/gpu/effects/GrTextureDomain.cpp
index b0004229ad..8c5ff0019d 100644
--- a/src/gpu/effects/GrTextureDomain.cpp
+++ b/src/gpu/effects/GrTextureDomain.cpp
@@ -132,7 +132,7 @@ void GrTextureDomain::GLDomain::sampleTexture(GrGLShaderBuilder* builder,
}
}
-void GrTextureDomain::GLDomain::setData(const GrGLUniformManager& uman,
+void GrTextureDomain::GLDomain::setData(const GrGLProgramDataManager& pdman,
const GrTextureDomain& textureDomain,
GrSurfaceOrigin textureOrigin) {
SkASSERT(textureDomain.mode() == fMode);
@@ -152,7 +152,7 @@ void GrTextureDomain::GLDomain::setData(const GrGLUniformManager& uman,
SkTSwap(values[1], values[3]);
}
if (0 != memcmp(values, fPrevDomain, 4 * sizeof(GrGLfloat))) {
- uman.set4fv(fDomainUni, 1, values);
+ pdman.set4fv(fDomainUni, 1, values);
memcpy(fPrevDomain, values, 4 * sizeof(GrGLfloat));
}
}
@@ -173,7 +173,7 @@ public:
const TransformedCoordsArray&,
const TextureSamplerArray&) SK_OVERRIDE;
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) SK_OVERRIDE;
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) SK_OVERRIDE;
static inline void GenKey(const GrDrawEffect&, const GrGLCaps&, GrEffectKeyBuilder*);
@@ -201,11 +201,11 @@ void GrGLTextureDomainEffect::emitCode(GrGLShaderBuilder* builder,
fGLDomain.sampleTexture(builder, domain, outputColor, coords2D, samplers[0], inputColor);
}
-void GrGLTextureDomainEffect::setData(const GrGLUniformManager& uman,
+void GrGLTextureDomainEffect::setData(const GrGLProgramDataManager& pdman,
const GrDrawEffect& drawEffect) {
const GrTextureDomainEffect& effect = drawEffect.castEffect<GrTextureDomainEffect>();
const GrTextureDomain& domain = effect.textureDomain();
- fGLDomain.setData(uman, domain, effect.texture(0)->origin());
+ fGLDomain.setData(pdman, domain, effect.texture(0)->origin());
}
void GrGLTextureDomainEffect::GenKey(const GrDrawEffect& drawEffect, const GrGLCaps&,
diff --git a/src/gpu/effects/GrTextureDomain.h b/src/gpu/effects/GrTextureDomain.h
index 7e270f8218..7796afe4c4 100644
--- a/src/gpu/effects/GrTextureDomain.h
+++ b/src/gpu/effects/GrTextureDomain.h
@@ -104,7 +104,7 @@ public:
* Call this from GrGLEffect::setData() to upload uniforms necessary for the texture domain.
* The rectangle is automatically adjusted to account for the texture's origin.
*/
- void setData(const GrGLUniformManager& uman, const GrTextureDomain& textureDomain,
+ void setData(const GrGLProgramDataManager& pdman, const GrTextureDomain& textureDomain,
GrSurfaceOrigin textureOrigin);
enum {
@@ -121,10 +121,10 @@ public:
}
private:
- SkDEBUGCODE(Mode fMode;)
- GrGLUniformManager::UniformHandle fDomainUni;
- SkString fDomainName;
- GrGLfloat fPrevDomain[4];
+ SkDEBUGCODE(Mode fMode;)
+ GrGLProgramDataManager::UniformHandle fDomainUni;
+ SkString fDomainName;
+ GrGLfloat fPrevDomain[4];
};
protected:
diff --git a/src/gpu/gl/GrGLEffect.h b/src/gpu/gl/GrGLEffect.h
index f9235db238..18b3002edf 100644
--- a/src/gpu/gl/GrGLEffect.h
+++ b/src/gpu/gl/GrGLEffect.h
@@ -83,7 +83,7 @@ public:
effect key as the one that created this GrGLEffect. Effects that use local coords have
to consider whether the GrEffectStage's coord change matrix should be used. When explicit
local coordinates are used it can be ignored. */
- virtual void setData(const GrGLUniformManager&, const GrDrawEffect&) {}
+ virtual void setData(const GrGLProgramDataManager&, const GrDrawEffect&) {}
const char* name() const { return fFactory.name(); }
diff --git a/src/gpu/gl/GrGLProgram.cpp b/src/gpu/gl/GrGLProgram.cpp
index 5bc7d0b277..82b859e86d 100644
--- a/src/gpu/gl/GrGLProgram.cpp
+++ b/src/gpu/gl/GrGLProgram.cpp
@@ -25,18 +25,18 @@ GrGLProgram* GrGLProgram::Create(GrGpuGL* gpu,
const GrEffectStage* colorStages[],
const GrEffectStage* coverageStages[]) {
GrGLShaderBuilder::GenProgramOutput output;
- SkAutoTUnref<GrGLUniformManager> uman(SkNEW_ARGS(GrGLUniformManager, (gpu)));
- if (GrGLShaderBuilder::GenProgram(gpu, uman, desc, colorStages, coverageStages,
+ SkAutoTUnref<GrGLProgramDataManager> pdman(SkNEW_ARGS(GrGLProgramDataManager, (gpu)));
+ if (GrGLShaderBuilder::GenProgram(gpu, pdman, desc, colorStages, coverageStages,
&output)) {
SkASSERT(0 != output.fProgramID);
- return SkNEW_ARGS(GrGLProgram, (gpu, desc, uman, output));
+ return SkNEW_ARGS(GrGLProgram, (gpu, desc, pdman, output));
}
return NULL;
}
GrGLProgram::GrGLProgram(GrGpuGL* gpu,
const GrGLProgramDesc& desc,
- GrGLUniformManager* uman,
+ GrGLProgramDataManager* pdman,
const GrGLShaderBuilder::GenProgramOutput& builderOutput)
: fColor(GrColor_ILLEGAL)
, fCoverage(GrColor_ILLEGAL)
@@ -44,7 +44,7 @@ GrGLProgram::GrGLProgram(GrGpuGL* gpu,
, fBuilderOutput(builderOutput)
, fDesc(desc)
, fGpu(gpu)
- , fUniformManager(SkRef(uman)) {
+ , fProgramDataManager(SkRef(pdman)) {
this->initSamplerUniforms();
}
@@ -84,11 +84,11 @@ void GrGLProgram::initSamplerUniforms() {
GL_CALL(UseProgram(fBuilderOutput.fProgramID));
GrGLint texUnitIdx = 0;
if (fBuilderOutput.fUniformHandles.fDstCopySamplerUni.isValid()) {
- fUniformManager->setSampler(fBuilderOutput.fUniformHandles.fDstCopySamplerUni, texUnitIdx);
+ fProgramDataManager->setSampler(fBuilderOutput.fUniformHandles.fDstCopySamplerUni, texUnitIdx);
fDstCopyTexUnit = texUnitIdx++;
}
- fBuilderOutput.fColorEffects->initSamplers(*fUniformManager, &texUnitIdx);
- fBuilderOutput.fCoverageEffects->initSamplers(*fUniformManager, &texUnitIdx);
+ fBuilderOutput.fColorEffects->initSamplers(*fProgramDataManager, &texUnitIdx);
+ fBuilderOutput.fCoverageEffects->initSamplers(*fProgramDataManager, &texUnitIdx);
}
///////////////////////////////////////////////////////////////////////////////
@@ -119,12 +119,12 @@ void GrGLProgram::setData(GrDrawState::BlendOptFlags blendOpts,
if (NULL != dstCopy) {
if (fBuilderOutput.fUniformHandles.fDstCopyTopLeftUni.isValid()) {
- fUniformManager->set2f(fBuilderOutput.fUniformHandles.fDstCopyTopLeftUni,
- static_cast<GrGLfloat>(dstCopy->offset().fX),
- static_cast<GrGLfloat>(dstCopy->offset().fY));
- fUniformManager->set2f(fBuilderOutput.fUniformHandles.fDstCopyScaleUni,
- 1.f / dstCopy->texture()->width(),
- 1.f / dstCopy->texture()->height());
+ fProgramDataManager->set2f(fBuilderOutput.fUniformHandles.fDstCopyTopLeftUni,
+ static_cast<GrGLfloat>(dstCopy->offset().fX),
+ static_cast<GrGLfloat>(dstCopy->offset().fY));
+ fProgramDataManager->set2f(fBuilderOutput.fUniformHandles.fDstCopyScaleUni,
+ 1.f / dstCopy->texture()->width(),
+ 1.f / dstCopy->texture()->height());
GrGLTexture* texture = static_cast<GrGLTexture*>(dstCopy->texture());
static GrTextureParams kParams; // the default is clamp, nearest filtering.
fGpu->bindTexture(fDstCopyTexUnit, kParams, texture);
@@ -138,8 +138,8 @@ void GrGLProgram::setData(GrDrawState::BlendOptFlags blendOpts,
SkASSERT(!fBuilderOutput.fUniformHandles.fDstCopySamplerUni.isValid());
}
- fBuilderOutput.fColorEffects->setData(fGpu, *fUniformManager, colorStages);
- fBuilderOutput.fCoverageEffects->setData(fGpu, *fUniformManager, coverageStages);
+ fBuilderOutput.fColorEffects->setData(fGpu, *fProgramDataManager, colorStages);
+ fBuilderOutput.fCoverageEffects->setData(fGpu, *fProgramDataManager, coverageStages);
// PathTexGen state applies to the the fixed function vertex shader. For
@@ -173,7 +173,7 @@ void GrGLProgram::setColor(const GrDrawState& drawState,
// OpenGL ES doesn't support unsigned byte varieties of glUniform
GrGLfloat c[4];
GrColorToRGBAFloat(color, c);
- fUniformManager->set4fv(fBuilderOutput.fUniformHandles.fColorUni, 1, c);
+ fProgramDataManager->set4fv(fBuilderOutput.fUniformHandles.fColorUni, 1, c);
fColor = color;
}
sharedState->fConstAttribColorIndex = -1;
@@ -208,7 +208,7 @@ void GrGLProgram::setCoverage(const GrDrawState& drawState,
// OpenGL ES doesn't support unsigned byte varieties of glUniform
GrGLfloat c[4];
GrColorToRGBAFloat(coverage, c);
- fUniformManager->set4fv(fBuilderOutput.fUniformHandles.fCoverageUni, 1, c);
+ fProgramDataManager->set4fv(fBuilderOutput.fUniformHandles.fCoverageUni, 1, c);
fCoverage = coverage;
}
sharedState->fConstAttribCoverageIndex = -1;
@@ -232,8 +232,8 @@ void GrGLProgram::setMatrixAndRenderTargetHeight(const GrDrawState& drawState) {
// Load the RT height uniform if it is needed to y-flip gl_FragCoord.
if (fBuilderOutput.fUniformHandles.fRTHeightUni.isValid() &&
fMatrixState.fRenderTargetSize.fHeight != size.fHeight) {
- fUniformManager->set1f(fBuilderOutput.fUniformHandles.fRTHeightUni,
- SkIntToScalar(size.fHeight));
+ fProgramDataManager->set1f(fBuilderOutput.fUniformHandles.fRTHeightUni,
+ SkIntToScalar(size.fHeight));
}
if (!fBuilderOutput.fHasVertexShader) {
@@ -251,10 +251,10 @@ void GrGLProgram::setMatrixAndRenderTargetHeight(const GrDrawState& drawState) {
GrGLfloat viewMatrix[3 * 3];
fMatrixState.getGLMatrix<3>(viewMatrix);
- fUniformManager->setMatrix3f(fBuilderOutput.fUniformHandles.fViewMatrixUni, viewMatrix);
+ fProgramDataManager->setMatrix3f(fBuilderOutput.fUniformHandles.fViewMatrixUni, viewMatrix);
GrGLfloat rtAdjustmentVec[4];
fMatrixState.getRTAdjustmentVec(rtAdjustmentVec);
- fUniformManager->set4fv(fBuilderOutput.fUniformHandles.fRTAdjustmentUni, 1, rtAdjustmentVec);
+ fProgramDataManager->set4fv(fBuilderOutput.fUniformHandles.fRTAdjustmentUni, 1, rtAdjustmentVec);
}
}
diff --git a/src/gpu/gl/GrGLProgram.h b/src/gpu/gl/GrGLProgram.h
index 37cbce8e00..edb24a7582 100644
--- a/src/gpu/gl/GrGLProgram.h
+++ b/src/gpu/gl/GrGLProgram.h
@@ -15,7 +15,7 @@
#include "GrGLShaderBuilder.h"
#include "GrGLSL.h"
#include "GrGLTexture.h"
-#include "GrGLUniformManager.h"
+#include "GrGLProgramDataManager.h"
#include "SkString.h"
#include "SkXfermode.h"
@@ -161,11 +161,11 @@ public:
SharedGLState*);
private:
- typedef GrGLUniformManager::UniformHandle UniformHandle;
+ typedef GrGLProgramDataManager::UniformHandle UniformHandle;
GrGLProgram(GrGpuGL*,
const GrGLProgramDesc&,
- GrGLUniformManager*,
+ GrGLProgramDataManager*,
const GrGLShaderBuilder::GenProgramOutput&);
// Sets the texture units for samplers.
@@ -193,7 +193,7 @@ private:
GrGLProgramDesc fDesc;
GrGpuGL* fGpu;
- SkAutoTUnref<GrGLUniformManager> fUniformManager;
+ SkAutoTUnref<GrGLProgramDataManager> fProgramDataManager;
typedef SkRefCnt INHERITED;
};
diff --git a/src/gpu/gl/GrGLUniformManager.cpp b/src/gpu/gl/GrGLProgramDataManager.cpp
index 29679aa409..2c8ec0d8ca 100644
--- a/src/gpu/gl/GrGLUniformManager.cpp
+++ b/src/gpu/gl/GrGLProgramDataManager.cpp
@@ -15,12 +15,12 @@
SkASSERT(arrayCount <= uni.fArrayCount || \
(1 == arrayCount && GrGLShaderVar::kNonArray == uni.fArrayCount))
-GrGLUniformManager::GrGLUniformManager(GrGpuGL* gpu) : fGpu(gpu) {
+GrGLProgramDataManager::GrGLProgramDataManager(GrGpuGL* gpu) : fGpu(gpu) {
// skbug.com/2056
fUsingBindUniform = fGpu->glInterface()->fFunctions.fBindUniformLocation != NULL;
}
-GrGLUniformManager::UniformHandle GrGLUniformManager::appendUniform(GrSLType type, int arrayCount) {
+GrGLProgramDataManager::UniformHandle GrGLProgramDataManager::appendUniform(GrSLType type, int arrayCount) {
int idx = fUniforms.count();
Uniform& uni = fUniforms.push_back();
SkASSERT(GrGLShaderVar::kNonArray == arrayCount || arrayCount > 0);
@@ -28,10 +28,10 @@ GrGLUniformManager::UniformHandle GrGLUniformManager::appendUniform(GrSLType typ
uni.fType = type;
uni.fVSLocation = kUnusedUniform;
uni.fFSLocation = kUnusedUniform;
- return GrGLUniformManager::UniformHandle::CreateFromUniformIndex(idx);
+ return GrGLProgramDataManager::UniformHandle::CreateFromUniformIndex(idx);
}
-void GrGLUniformManager::setSampler(UniformHandle u, GrGLint texUnit) const {
+void GrGLProgramDataManager::setSampler(UniformHandle u, GrGLint texUnit) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kSampler2D_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -47,7 +47,7 @@ void GrGLUniformManager::setSampler(UniformHandle u, GrGLint texUnit) const {
}
}
-void GrGLUniformManager::set1f(UniformHandle u, GrGLfloat v0) const {
+void GrGLProgramDataManager::set1f(UniformHandle u, GrGLfloat v0) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kFloat_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -60,9 +60,9 @@ void GrGLUniformManager::set1f(UniformHandle u, GrGLfloat v0) const {
}
}
-void GrGLUniformManager::set1fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat v[]) const {
+void GrGLProgramDataManager::set1fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat v[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kFloat_GrSLType);
SkASSERT(arrayCount > 0);
@@ -79,7 +79,7 @@ void GrGLUniformManager::set1fv(UniformHandle u,
}
}
-void GrGLUniformManager::set2f(UniformHandle u, GrGLfloat v0, GrGLfloat v1) const {
+void GrGLProgramDataManager::set2f(UniformHandle u, GrGLfloat v0, GrGLfloat v1) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec2f_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -92,9 +92,9 @@ void GrGLUniformManager::set2f(UniformHandle u, GrGLfloat v0, GrGLfloat v1) cons
}
}
-void GrGLUniformManager::set2fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat v[]) const {
+void GrGLProgramDataManager::set2fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat v[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec2f_GrSLType);
SkASSERT(arrayCount > 0);
@@ -108,7 +108,7 @@ void GrGLUniformManager::set2fv(UniformHandle u,
}
}
-void GrGLUniformManager::set3f(UniformHandle u, GrGLfloat v0, GrGLfloat v1, GrGLfloat v2) const {
+void GrGLProgramDataManager::set3f(UniformHandle u, GrGLfloat v0, GrGLfloat v1, GrGLfloat v2) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec3f_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -121,9 +121,9 @@ void GrGLUniformManager::set3f(UniformHandle u, GrGLfloat v0, GrGLfloat v1, GrGL
}
}
-void GrGLUniformManager::set3fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat v[]) const {
+void GrGLProgramDataManager::set3fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat v[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec3f_GrSLType);
SkASSERT(arrayCount > 0);
@@ -137,11 +137,11 @@ void GrGLUniformManager::set3fv(UniformHandle u,
}
}
-void GrGLUniformManager::set4f(UniformHandle u,
- GrGLfloat v0,
- GrGLfloat v1,
- GrGLfloat v2,
- GrGLfloat v3) const {
+void GrGLProgramDataManager::set4f(UniformHandle u,
+ GrGLfloat v0,
+ GrGLfloat v1,
+ GrGLfloat v2,
+ GrGLfloat v3) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec4f_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -154,9 +154,9 @@ void GrGLUniformManager::set4f(UniformHandle u,
}
}
-void GrGLUniformManager::set4fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat v[]) const {
+void GrGLProgramDataManager::set4fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat v[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kVec4f_GrSLType);
SkASSERT(arrayCount > 0);
@@ -170,7 +170,7 @@ void GrGLUniformManager::set4fv(UniformHandle u,
}
}
-void GrGLUniformManager::setMatrix3f(UniformHandle u, const GrGLfloat matrix[]) const {
+void GrGLProgramDataManager::setMatrix3f(UniformHandle u, const GrGLfloat matrix[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kMat33f_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -184,7 +184,7 @@ void GrGLUniformManager::setMatrix3f(UniformHandle u, const GrGLfloat matrix[])
}
}
-void GrGLUniformManager::setMatrix4f(UniformHandle u, const GrGLfloat matrix[]) const {
+void GrGLProgramDataManager::setMatrix4f(UniformHandle u, const GrGLfloat matrix[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kMat44f_GrSLType);
SkASSERT(GrGLShaderVar::kNonArray == uni.fArrayCount);
@@ -197,9 +197,9 @@ void GrGLUniformManager::setMatrix4f(UniformHandle u, const GrGLfloat matrix[])
}
}
-void GrGLUniformManager::setMatrix3fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat matrices[]) const {
+void GrGLProgramDataManager::setMatrix3fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat matrices[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kMat33f_GrSLType);
SkASSERT(arrayCount > 0);
@@ -215,9 +215,9 @@ void GrGLUniformManager::setMatrix3fv(UniformHandle u,
}
}
-void GrGLUniformManager::setMatrix4fv(UniformHandle u,
- int arrayCount,
- const GrGLfloat matrices[]) const {
+void GrGLProgramDataManager::setMatrix4fv(UniformHandle u,
+ int arrayCount,
+ const GrGLfloat matrices[]) const {
const Uniform& uni = fUniforms[u.toUniformIndex()];
SkASSERT(uni.fType == kMat44f_GrSLType);
SkASSERT(arrayCount > 0);
@@ -233,7 +233,7 @@ void GrGLUniformManager::setMatrix4fv(UniformHandle u,
}
}
-void GrGLUniformManager::setSkMatrix(UniformHandle u, const SkMatrix& matrix) const {
+void GrGLProgramDataManager::setSkMatrix(UniformHandle u, const SkMatrix& matrix) const {
GrGLfloat mt[] = {
matrix.get(SkMatrix::kMScaleX),
matrix.get(SkMatrix::kMSkewY),
@@ -249,7 +249,7 @@ void GrGLUniformManager::setSkMatrix(UniformHandle u, const SkMatrix& matrix) co
}
-void GrGLUniformManager::getUniformLocations(GrGLuint programID, const BuilderUniformArray& uniforms) {
+void GrGLProgramDataManager::getUniformLocations(GrGLuint programID, const BuilderUniformArray& uniforms) {
SkASSERT(uniforms.count() == fUniforms.count());
int count = fUniforms.count();
for (int i = 0; i < count; ++i) {
@@ -274,7 +274,7 @@ void GrGLUniformManager::getUniformLocations(GrGLuint programID, const BuilderUn
}
}
-const GrGLUniformManager::BuilderUniform&
-GrGLUniformManager::getBuilderUniform(const BuilderUniformArray& array, UniformHandle handle) const {
+const GrGLProgramDataManager::BuilderUniform&
+GrGLProgramDataManager::getBuilderUniform(const BuilderUniformArray& array, UniformHandle handle) const {
return array[handle.toUniformIndex()];
}
diff --git a/src/gpu/gl/GrGLUniformManager.h b/src/gpu/gl/GrGLProgramDataManager.h
index 6137bcd9cc..ebbcf54782 100644
--- a/src/gpu/gl/GrGLUniformManager.h
+++ b/src/gpu/gl/GrGLProgramDataManager.h
@@ -5,8 +5,8 @@
* found in the LICENSE file.
*/
-#ifndef GrGLUniformManager_DEFINED
-#define GrGLUniformManager_DEFINED
+#ifndef GrGLProgramDataManager_DEFINED
+#define GrGLProgramDataManager_DEFINED
#include "gl/GrGLShaderVar.h"
#include "gl/GrGLSL.h"
@@ -17,9 +17,11 @@
class GrGpuGL;
class SkMatrix;
-/** Manages a program's uniforms.
-*/
-class GrGLUniformManager : public SkRefCnt {
+/** Manages the resources used by a shader program.
+ * The resources are objects the program uses to communicate with the
+ * application code.
+ */
+class GrGLProgramDataManager : public SkRefCnt {
public:
// Opaque handle to a uniform
class UniformHandle {
@@ -43,10 +45,10 @@ public:
int toUniformIndex() const { SkASSERT(isValid()); return ~fValue; }
int fValue;
- friend class GrGLUniformManager; // For accessing toUniformIndex().
+ friend class GrGLProgramDataManager; // For accessing toUniformIndex().
};
- GrGLUniformManager(GrGpuGL* gpu);
+ GrGLProgramDataManager(GrGpuGL* gpu);
UniformHandle appendUniform(GrSLType type, int arrayCount = GrGLShaderVar::kNonArray);
@@ -96,7 +98,7 @@ public:
/**
* Called by the GrGLShaderBuilder to access the array by the handle (index).
*/
- const BuilderUniform& getBuilderUniform(const BuilderUniformArray&, GrGLUniformManager::UniformHandle) const;
+ const BuilderUniform& getBuilderUniform(const BuilderUniformArray&, GrGLProgramDataManager::UniformHandle) const;
private:
enum {
diff --git a/src/gpu/gl/GrGLProgramEffects.cpp b/src/gpu/gl/GrGLProgramEffects.cpp
index 05b15013c2..cff31e29c2 100644
--- a/src/gpu/gl/GrGLProgramEffects.cpp
+++ b/src/gpu/gl/GrGLProgramEffects.cpp
@@ -218,7 +218,7 @@ void GrGLProgramEffects::emitSamplers(GrGLShaderBuilder* builder,
}
}
-void GrGLProgramEffects::initSamplers(const GrGLUniformManager& uniformManager, int* texUnitIdx) {
+void GrGLProgramEffects::initSamplers(const GrGLProgramDataManager& programResourceManager, int* texUnitIdx) {
int numEffects = fGLEffects.count();
SkASSERT(numEffects == fSamplers.count());
for (int e = 0; e < numEffects; ++e) {
@@ -226,7 +226,7 @@ void GrGLProgramEffects::initSamplers(const GrGLUniformManager& uniformManager,
int numSamplers = samplers.count();
for (int s = 0; s < numSamplers; ++s) {
SkASSERT(samplers[s].fUniform.isValid());
- uniformManager.setSampler(samplers[s].fUniform, *texUnitIdx);
+ programResourceManager.setSampler(samplers[s].fUniform, *texUnitIdx);
samplers[s].fTextureUnit = (*texUnitIdx)++;
}
}
@@ -358,20 +358,20 @@ void GrGLVertexProgramEffects::emitTransforms(GrGLFullShaderBuilder* builder,
}
void GrGLVertexProgramEffects::setData(GrGpuGL* gpu,
- const GrGLUniformManager& uniformManager,
+ const GrGLProgramDataManager& programResourceManager,
const GrEffectStage* effectStages[]) {
int numEffects = fGLEffects.count();
SkASSERT(numEffects == fTransforms.count());
SkASSERT(numEffects == fSamplers.count());
for (int e = 0; e < numEffects; ++e) {
GrDrawEffect drawEffect(*effectStages[e], fHasExplicitLocalCoords);
- fGLEffects[e]->setData(uniformManager, drawEffect);
- this->setTransformData(uniformManager, drawEffect, e);
+ fGLEffects[e]->setData(programResourceManager, drawEffect);
+ this->setTransformData(programResourceManager, drawEffect, e);
this->bindTextures(gpu, drawEffect.effect(), e);
}
}
-void GrGLVertexProgramEffects::setTransformData(const GrGLUniformManager& uniformManager,
+void GrGLVertexProgramEffects::setTransformData(const GrGLProgramDataManager& programResourceManager,
const GrDrawEffect& drawEffect,
int effectIdx) {
SkTArray<Transform, true>& transforms = fTransforms[effectIdx];
@@ -381,7 +381,7 @@ void GrGLVertexProgramEffects::setTransformData(const GrGLUniformManager& unifor
SkASSERT(transforms[t].fHandle.isValid());
const SkMatrix& matrix = get_transform_matrix(drawEffect, t);
if (!transforms[t].fCurrentValue.cheapEqualTo(matrix)) {
- uniformManager.setSkMatrix(transforms[t].fHandle, matrix);
+ programResourceManager.setSkMatrix(transforms[t].fHandle, matrix);
transforms[t].fCurrentValue = matrix;
}
}
@@ -452,14 +452,14 @@ void GrGLPathTexGenProgramEffects::setupPathTexGen(GrGLFragmentOnlyShaderBuilder
}
void GrGLPathTexGenProgramEffects::setData(GrGpuGL* gpu,
- const GrGLUniformManager& uniformManager,
+ const GrGLProgramDataManager& programResourceManager,
const GrEffectStage* effectStages[]) {
int numEffects = fGLEffects.count();
SkASSERT(numEffects == fTransforms.count());
SkASSERT(numEffects == fSamplers.count());
for (int e = 0; e < numEffects; ++e) {
GrDrawEffect drawEffect(*effectStages[e], false);
- fGLEffects[e]->setData(uniformManager, drawEffect);
+ fGLEffects[e]->setData(programResourceManager, drawEffect);
this->setPathTexGenState(gpu, drawEffect, e);
this->bindTextures(gpu, drawEffect.effect(), e);
}
diff --git a/src/gpu/gl/GrGLProgramEffects.h b/src/gpu/gl/GrGLProgramEffects.h
index c9ba9135a9..7ae925b69b 100644
--- a/src/gpu/gl/GrGLProgramEffects.h
+++ b/src/gpu/gl/GrGLProgramEffects.h
@@ -9,7 +9,7 @@
#define GrGLProgramEffects_DEFINED
#include "GrBackendEffectFactory.h"
-#include "GrGLUniformManager.h"
+#include "GrGLProgramDataManager.h"
#include "GrTexture.h"
#include "GrTextureAccess.h"
@@ -27,7 +27,7 @@ class GrGLFragmentOnlyShaderBuilder;
*/
class GrGLProgramEffects : public SkRefCnt {
public:
- typedef GrGLUniformManager::UniformHandle UniformHandle;
+ typedef GrGLProgramDataManager::UniformHandle UniformHandle;
/**
* This class emits some of the code inserted into the shaders for an effect. The code it
@@ -45,13 +45,13 @@ public:
* Assigns a texture unit to each sampler. It starts on *texUnitIdx and writes the next
* available unit to *texUnitIdx when it returns.
*/
- void initSamplers(const GrGLUniformManager&, int* texUnitIdx);
+ void initSamplers(const GrGLProgramDataManager&, int* texUnitIdx);
/**
* Calls setData() on each effect, and sets their transformation matrices and texture bindings.
*/
virtual void setData(GrGpuGL*,
- const GrGLUniformManager&,
+ const GrGLProgramDataManager&,
const GrEffectStage* effectStages[]) = 0;
/**
@@ -162,7 +162,7 @@ public:
class GrGLVertexProgramEffects : public GrGLProgramEffects {
public:
virtual void setData(GrGpuGL*,
- const GrGLUniformManager&,
+ const GrGLProgramDataManager&,
const GrEffectStage* effectStages[]) SK_OVERRIDE;
private:
@@ -204,7 +204,7 @@ private:
/**
* Helper for setData(). Sets all the transform matrices for an effect.
*/
- void setTransformData(const GrGLUniformManager&, const GrDrawEffect&, int effectIdx);
+ void setTransformData(const GrGLProgramDataManager&, const GrDrawEffect&, int effectIdx);
struct Transform {
Transform() { fCurrentValue = SkMatrix::InvalidMatrix(); }
@@ -254,7 +254,7 @@ private:
class GrGLPathTexGenProgramEffects : public GrGLProgramEffects {
public:
virtual void setData(GrGpuGL*,
- const GrGLUniformManager&,
+ const GrGLProgramDataManager&,
const GrEffectStage* effectStages[]) SK_OVERRIDE;
private:
diff --git a/src/gpu/gl/GrGLShaderBuilder.cpp b/src/gpu/gl/GrGLShaderBuilder.cpp
index 8d1e66be7c..561acd5ce6 100644
--- a/src/gpu/gl/GrGLShaderBuilder.cpp
+++ b/src/gpu/gl/GrGLShaderBuilder.cpp
@@ -27,7 +27,7 @@ static const int kMaxFSOutputs = 2;
// ES2 FS only guarantees mediump and lowp support
static const GrGLShaderVar::Precision kDefaultFragmentPrecision = GrGLShaderVar::kMedium_Precision;
-typedef GrGLUniformManager::UniformHandle UniformHandle;
+typedef GrGLProgramDataManager::UniformHandle UniformHandle;
SK_CONF_DECLARE(bool, c_PrintShaders, "gpu.printShaders", false,
"Print the source code for all shaders generated.");
@@ -90,16 +90,16 @@ static const char kDstCopyColorName[] = "_dstColor";
///////////////////////////////////////////////////////////////////////////////
bool GrGLShaderBuilder::GenProgram(GrGpuGL* gpu,
- GrGLUniformManager* uman,
+ GrGLProgramDataManager* pdman,
const GrGLProgramDesc& desc,
const GrEffectStage* inColorStages[],
const GrEffectStage* inCoverageStages[],
GenProgramOutput* output) {
SkAutoTDelete<GrGLShaderBuilder> builder;
if (desc.getHeader().fHasVertexCode ||!gpu->shouldUseFixedFunctionTexturing()) {
- builder.reset(SkNEW_ARGS(GrGLFullShaderBuilder, (gpu, uman, desc)));
+ builder.reset(SkNEW_ARGS(GrGLFullShaderBuilder, (gpu, pdman, desc)));
} else {
- builder.reset(SkNEW_ARGS(GrGLFragmentOnlyShaderBuilder, (gpu, uman, desc)));
+ builder.reset(SkNEW_ARGS(GrGLFragmentOnlyShaderBuilder, (gpu, pdman, desc)));
}
if (builder->genProgram(inColorStages, inCoverageStages)) {
*output = builder->getOutput();
@@ -248,11 +248,11 @@ bool GrGLShaderBuilder::genProgram(const GrEffectStage* colorStages[],
//////////////////////////////////////////////////////////////////////////////
GrGLShaderBuilder::GrGLShaderBuilder(GrGpuGL* gpu,
- GrGLUniformManager* uniformManager,
+ GrGLProgramDataManager* programResourceManager,
const GrGLProgramDesc& desc)
: fDesc(desc)
, fGpu(gpu)
- , fUniformManager(SkRef(uniformManager))
+ , fProgramDataManager(SkRef(programResourceManager))
, fFSFeaturesAddedMask(0)
, fFSInputs(kVarsPerBlock)
, fFSOutputs(kMaxFSOutputs)
@@ -430,20 +430,20 @@ const GrGLenum* GrGLShaderBuilder::GetTexParamSwizzle(GrPixelConfig config, cons
}
}
-GrGLUniformManager::UniformHandle GrGLShaderBuilder::addUniformArray(uint32_t visibility,
- GrSLType type,
- const char* name,
- int count,
- const char** outName) {
+GrGLProgramDataManager::UniformHandle GrGLShaderBuilder::addUniformArray(uint32_t visibility,
+ GrSLType type,
+ const char* name,
+ int count,
+ const char** outName) {
SkASSERT(name && strlen(name));
SkDEBUGCODE(static const uint32_t kVisibilityMask = kVertex_Visibility | kFragment_Visibility);
SkASSERT(0 == (~kVisibilityMask & visibility));
SkASSERT(0 != visibility);
BuilderUniform& uni = fUniforms.push_back();
- UniformHandle h = GrGLUniformManager::UniformHandle::CreateFromUniformIndex(fUniforms.count() - 1);
+ UniformHandle h = GrGLProgramDataManager::UniformHandle::CreateFromUniformIndex(fUniforms.count() - 1);
SkDEBUGCODE(UniformHandle h2 =)
- fUniformManager->appendUniform(type, count);
+ fProgramDataManager->appendUniform(type, count);
// We expect the uniform manager to initially have no uniforms and that all uniforms are added
// by this function. Therefore, the handles should match.
SkASSERT(h2 == h);
@@ -673,8 +673,8 @@ bool GrGLShaderBuilder::finish() {
}
this->bindProgramLocations(fOutput.fProgramID);
- if (fUniformManager->isUsingBindUniform()) {
- fUniformManager->getUniformLocations(fOutput.fProgramID, fUniforms);
+ if (fProgramDataManager->isUsingBindUniform()) {
+ fProgramDataManager->getUniformLocations(fOutput.fProgramID, fUniforms);
}
GL_CALL(LinkProgram(fOutput.fProgramID));
@@ -708,8 +708,8 @@ bool GrGLShaderBuilder::finish() {
}
}
- if (!fUniformManager->isUsingBindUniform()) {
- fUniformManager->getUniformLocations(fOutput.fProgramID, fUniforms);
+ if (!fProgramDataManager->isUsingBindUniform()) {
+ fProgramDataManager->getUniformLocations(fOutput.fProgramID, fUniforms);
}
for (int i = 0; i < shadersToDelete.count(); ++i) {
@@ -824,9 +824,9 @@ const GrGLContextInfo& GrGLShaderBuilder::ctxInfo() const {
////////////////////////////////////////////////////////////////////////////////
GrGLFullShaderBuilder::GrGLFullShaderBuilder(GrGpuGL* gpu,
- GrGLUniformManager* uniformManager,
+ GrGLProgramDataManager* programResourceManager,
const GrGLProgramDesc& desc)
- : INHERITED(gpu, uniformManager, desc)
+ : INHERITED(gpu, programResourceManager, desc)
, fVSAttrs(kVarsPerBlock)
, fVSOutputs(kVarsPerBlock)
, fGSInputs(kVarsPerBlock)
@@ -1073,9 +1073,9 @@ void GrGLFullShaderBuilder::bindProgramLocations(GrGLuint programId) const {
////////////////////////////////////////////////////////////////////////////////
GrGLFragmentOnlyShaderBuilder::GrGLFragmentOnlyShaderBuilder(GrGpuGL* gpu,
- GrGLUniformManager* uniformManager,
+ GrGLProgramDataManager* programResourceManager,
const GrGLProgramDesc& desc)
- : INHERITED(gpu, uniformManager, desc) {
+ : INHERITED(gpu, programResourceManager, desc) {
SkASSERT(!desc.getHeader().fHasVertexCode);
SkASSERT(gpu->glCaps().pathRenderingSupport());
SkASSERT(GrGLProgramDesc::kAttribute_ColorInput != desc.getHeader().fColorInput);
diff --git a/src/gpu/gl/GrGLShaderBuilder.h b/src/gpu/gl/GrGLShaderBuilder.h
index 73e9a8f803..15e9ad8c83 100644
--- a/src/gpu/gl/GrGLShaderBuilder.h
+++ b/src/gpu/gl/GrGLShaderBuilder.h
@@ -16,7 +16,7 @@
#include "gl/GrGLProgramDesc.h"
#include "gl/GrGLProgramEffects.h"
#include "gl/GrGLSL.h"
-#include "gl/GrGLUniformManager.h"
+#include "gl/GrGLProgramDataManager.h"
#include <stdarg.h>
@@ -33,7 +33,7 @@ public:
typedef GrTAllocator<GrGLShaderVar> VarArray;
typedef GrGLProgramEffects::TextureSampler TextureSampler;
typedef GrGLProgramEffects::TransformedCoordsArray TransformedCoordsArray;
- typedef GrGLUniformManager::BuilderUniform BuilderUniform;
+ typedef GrGLProgramDataManager::BuilderUniform BuilderUniform;
enum ShaderVisibility {
kVertex_Visibility = 0x1,
@@ -41,7 +41,7 @@ public:
kFragment_Visibility = 0x4,
};
- typedef GrGLUniformManager::UniformHandle UniformHandle;
+ typedef GrGLProgramDataManager::UniformHandle UniformHandle;
// Handles for program uniforms (other than per-effect uniforms)
struct UniformHandles {
@@ -91,7 +91,7 @@ public:
};
static bool GenProgram(GrGpuGL* gpu,
- GrGLUniformManager* uman,
+ GrGLProgramDataManager* pdman,
const GrGLProgramDesc& desc,
const GrEffectStage* inColorStages[],
const GrEffectStage* inCoverageStages[],
@@ -181,26 +181,26 @@ public:
supported at this time. The actual uniform name will be mangled. If outName is not NULL then
it will refer to the final uniform name after return. Use the addUniformArray variant to add
an array of uniforms. */
- GrGLUniformManager::UniformHandle addUniform(uint32_t visibility,
- GrSLType type,
- const char* name,
- const char** outName = NULL) {
+ GrGLProgramDataManager::UniformHandle addUniform(uint32_t visibility,
+ GrSLType type,
+ const char* name,
+ const char** outName = NULL) {
return this->addUniformArray(visibility, type, name, GrGLShaderVar::kNonArray, outName);
}
- GrGLUniformManager::UniformHandle addUniformArray(uint32_t visibility,
- GrSLType type,
- const char* name,
- int arrayCount,
- const char** outName = NULL);
-
- const GrGLShaderVar& getUniformVariable(GrGLUniformManager::UniformHandle u) const {
- return fUniformManager->getBuilderUniform(fUniforms, u).fVariable;
+ GrGLProgramDataManager::UniformHandle addUniformArray(uint32_t visibility,
+ GrSLType type,
+ const char* name,
+ int arrayCount,
+ const char** outName = NULL);
+
+ const GrGLShaderVar& getUniformVariable(GrGLProgramDataManager::UniformHandle u) const {
+ return fProgramDataManager->getBuilderUniform(fUniforms, u).fVariable;
}
/**
* Shortcut for getUniformVariable(u).c_str()
*/
- const char* getUniformCStr(GrGLUniformManager::UniformHandle u) const {
+ const char* getUniformCStr(GrGLProgramDataManager::UniformHandle u) const {
return this->getUniformVariable(u).c_str();
}
@@ -241,7 +241,7 @@ public:
};
protected:
- GrGLShaderBuilder(GrGpuGL*, GrGLUniformManager*, const GrGLProgramDesc&);
+ GrGLShaderBuilder(GrGpuGL*, GrGLProgramDataManager*, const GrGLProgramDesc&);
GrGpuGL* gpu() const { return fGpu; }
@@ -396,13 +396,13 @@ private:
const GrGLProgramDesc& fDesc;
GrGpuGL* fGpu;
- SkAutoTUnref<GrGLUniformManager> fUniformManager;
+ SkAutoTUnref<GrGLProgramDataManager> fProgramDataManager;
uint32_t fFSFeaturesAddedMask;
SkString fFSFunctions;
SkString fFSExtensions;
VarArray fFSInputs;
VarArray fFSOutputs;
- GrGLUniformManager::BuilderUniformArray fUniforms;
+ GrGLProgramDataManager::BuilderUniformArray fUniforms;
SkString fFSCode;
@@ -417,7 +417,7 @@ private:
class GrGLFullShaderBuilder : public GrGLShaderBuilder {
public:
- GrGLFullShaderBuilder(GrGpuGL*, GrGLUniformManager*, const GrGLProgramDesc&);
+ GrGLFullShaderBuilder(GrGpuGL*, GrGLProgramDataManager*, const GrGLProgramDesc&);
/**
* Called by GrGLEffects to add code to one of the shaders.
@@ -502,7 +502,7 @@ private:
class GrGLFragmentOnlyShaderBuilder : public GrGLShaderBuilder {
public:
- GrGLFragmentOnlyShaderBuilder(GrGpuGL*, GrGLUniformManager*, const GrGLProgramDesc&);
+ GrGLFragmentOnlyShaderBuilder(GrGpuGL*, GrGLProgramDataManager*, const GrGLProgramDesc&);
int addTexCoordSets(int count);
diff --git a/src/gpu/gl/GrGLUniformHandle.h b/src/gpu/gl/GrGLUniformHandle.h
index 797afff4e0..42dbd105be 100644
--- a/src/gpu/gl/GrGLUniformHandle.h
+++ b/src/gpu/gl/GrGLUniformHandle.h
@@ -8,8 +8,8 @@
#ifndef GrUniformHandle_DEFINED
#define GrUniformHandle_DEFINED
-inline GrGLUniformManager::UniformHandle GrGLUniformManager::UniformHandle::CreateFromUniformIndex(int index) {
- return GrGLUniformManager::UniformHandle(index);
+inline GrGLProgramDataManager::UniformHandle GrGLProgramDataManager::UniformHandle::CreateFromUniformIndex(int index) {
+ return GrGLProgramDataManager::UniformHandle(index);
}
#endif
diff --git a/src/gpu/gl/GrGpuGL_program.cpp b/src/gpu/gl/GrGpuGL_program.cpp
index 681d3f8cf1..2afb95fe97 100644
--- a/src/gpu/gl/GrGpuGL_program.cpp
+++ b/src/gpu/gl/GrGpuGL_program.cpp
@@ -18,7 +18,7 @@ SK_CONF_DECLARE(bool, c_DisplayCache, "gpu.displayCache", false,
"Display program cache usage.");
#endif
-typedef GrGLUniformManager::UniformHandle UniformHandle;
+typedef GrGLProgramDataManager::UniformHandle UniformHandle;
struct GrGpuGL::ProgramCache::Entry {
SK_DECLARE_INST_COUNT_ROOT(Entry);