Index: src/gpu/gl/GrGLProgramEffects.cpp |
diff --git a/src/gpu/gl/GrGLProgramEffects.cpp b/src/gpu/gl/GrGLProgramEffects.cpp |
index ee8bf60955515a5b0ae5b6441e95ee58b58231c8..fd91f584c42558678f4b037288f6eb4b10dde666 100644 |
--- a/src/gpu/gl/GrGLProgramEffects.cpp |
+++ b/src/gpu/gl/GrGLProgramEffects.cpp |
@@ -89,7 +89,7 @@ GrCoordSet get_source_coords(EffectKey transformKey, int transformIdx) { |
* Retrieves the final matrix that a transform needs to apply to its source coords. |
*/ |
SkMatrix get_transform_matrix(const GrDrawEffect& drawEffect, int transformIdx) { |
- const GrCoordTransform& coordTransform = (*drawEffect.effect())->coordTransform(transformIdx); |
+ const GrCoordTransform& coordTransform = drawEffect.effect()->coordTransform(transformIdx); |
SkMatrix combined; |
if (kLocal_GrCoordSet == coordTransform.sourceCoords() && |
!drawEffect.programHasExplicitLocalCoords()) { |
@@ -129,10 +129,10 @@ EffectKey GrGLProgramEffects::GenAttribKey(const GrDrawEffect& drawEffect) { |
EffectKey GrGLProgramEffects::GenTransformKey(const GrDrawEffect& drawEffect) { |
EffectKey totalKey = 0; |
- int numTransforms = (*drawEffect.effect())->numTransforms(); |
+ int numTransforms = drawEffect.effect()->numTransforms(); |
for (int t = 0; t < numTransforms; ++t) { |
EffectKey key = 0; |
- const GrCoordTransform& coordTransform = (*drawEffect.effect())->coordTransform(t); |
+ const GrCoordTransform& coordTransform = drawEffect.effect()->coordTransform(t); |
SkMatrix::TypeMask type0 = coordTransform.getMatrix().getType(); |
SkMatrix::TypeMask type1; |
if (kLocal_GrCoordSet == coordTransform.sourceCoords()) { |
@@ -163,9 +163,9 @@ EffectKey GrGLProgramEffects::GenTransformKey(const GrDrawEffect& drawEffect) { |
EffectKey GrGLProgramEffects::GenTextureKey(const GrDrawEffect& drawEffect, const GrGLCaps& caps) { |
EffectKey key = 0; |
- int numTextures = (*drawEffect.effect())->numTextures(); |
+ int numTextures = drawEffect.effect()->numTextures(); |
for (int t = 0; t < numTextures; ++t) { |
- const GrTextureAccess& access = (*drawEffect.effect())->textureAccess(t); |
+ const GrTextureAccess& access = drawEffect.effect()->textureAccess(t); |
uint32_t configComponentMask = GrPixelConfigComponentMask(access.getTexture()->config()); |
if (swizzle_requires_alpha_remapping(caps, configComponentMask, access.swizzleMask())) { |
key |= 1 << t; |
@@ -182,7 +182,7 @@ GrGLProgramEffects::~GrGLProgramEffects() { |
} |
void GrGLProgramEffects::emitSamplers(GrGLShaderBuilder* builder, |
- const GrEffectRef& effect, |
+ const GrEffect* effect, |
TextureSamplerArray* outSamplers) { |
SkTArray<Sampler, true>& samplers = fSamplers.push_back(); |
int numTextures = effect->numTextures(); |
@@ -212,7 +212,7 @@ void GrGLProgramEffects::initSamplers(const GrGLUniformManager& uniformManager, |
} |
} |
-void GrGLProgramEffects::bindTextures(GrGpuGL* gpu, const GrEffectRef& effect, int effectIdx) { |
+void GrGLProgramEffects::bindTextures(GrGpuGL* gpu, const GrEffect* effect, int effectIdx) { |
const SkTArray<Sampler, true>& samplers = fSamplers[effectIdx]; |
int numSamplers = samplers.count(); |
SkASSERT(numSamplers == effect->numTextures()); |
@@ -234,7 +234,7 @@ void GrGLVertexProgramEffects::emitEffect(GrGLFullShaderBuilder* builder, |
const char* inColor, |
int stageIndex) { |
GrDrawEffect drawEffect(stage, fHasExplicitLocalCoords); |
- const GrEffectRef& effect = *stage.getEffect(); |
+ const GrEffect* effect = stage.getEffect(); |
SkSTArray<2, TransformedCoords> coords(effect->numTransforms()); |
SkSTArray<4, TextureSampler> samplers(effect->numTextures()); |
@@ -271,13 +271,13 @@ void GrGLVertexProgramEffects::emitAttributes(GrGLFullShaderBuilder* builder, |
SkString attributeName("aAttr"); |
attributeName.appendS32(attributeIndices[a]); |
builder->addEffectAttribute(attributeIndices[a], |
- (*stage.getEffect())->vertexAttribType(a), |
+ stage.getEffect()->vertexAttribType(a), |
attributeName); |
} |
} |
void GrGLVertexProgramEffects::emitTransforms(GrGLFullShaderBuilder* builder, |
- const GrEffectRef& effect, |
+ const GrEffect* effect, |
EffectKey effectKey, |
TransformedCoordsArray* outCoords) { |
SkTArray<Transform, true>& transforms = fTransforms.push_back(); |
@@ -348,7 +348,7 @@ void GrGLVertexProgramEffects::setData(GrGpuGL* gpu, |
GrDrawEffect drawEffect(*effectStages[e], fHasExplicitLocalCoords); |
fGLEffects[e]->setData(uniformManager, drawEffect); |
this->setTransformData(uniformManager, drawEffect, e); |
- this->bindTextures(gpu, *drawEffect.effect(), e); |
+ this->bindTextures(gpu, drawEffect.effect(), e); |
} |
} |
@@ -357,7 +357,7 @@ void GrGLVertexProgramEffects::setTransformData(const GrGLUniformManager& unifor |
int effectIdx) { |
SkTArray<Transform, true>& transforms = fTransforms[effectIdx]; |
int numTransforms = transforms.count(); |
- SkASSERT(numTransforms == (*drawEffect.effect())->numTransforms()); |
+ SkASSERT(numTransforms == drawEffect.effect()->numTransforms()); |
for (int t = 0; t < numTransforms; ++t) { |
SkASSERT(transforms[t].fHandle.isValid()); |
const SkMatrix& matrix = get_transform_matrix(drawEffect, t); |
@@ -393,7 +393,7 @@ void GrGLPathTexGenProgramEffects::emitEffect(GrGLFragmentOnlyShaderBuilder* bui |
const char* inColor, |
int stageIndex) { |
GrDrawEffect drawEffect(stage, false); |
- const GrEffectRef& effect = *stage.getEffect(); |
+ const GrEffect* effect = stage.getEffect(); |
SkSTArray<2, TransformedCoords> coords(effect->numTransforms()); |
SkSTArray<4, TextureSampler> samplers(effect->numTextures()); |
@@ -416,7 +416,7 @@ void GrGLPathTexGenProgramEffects::emitEffect(GrGLFragmentOnlyShaderBuilder* bui |
} |
void GrGLPathTexGenProgramEffects::setupPathTexGen(GrGLFragmentOnlyShaderBuilder* builder, |
- const GrEffectRef& effect, |
+ const GrEffect* effect, |
EffectKey effectKey, |
TransformedCoordsArray* outCoords) { |
int numTransforms = effect->numTransforms(); |
@@ -443,7 +443,7 @@ void GrGLPathTexGenProgramEffects::setData(GrGpuGL* gpu, |
GrDrawEffect drawEffect(*effectStages[e], false); |
fGLEffects[e]->setData(uniformManager, drawEffect); |
this->setPathTexGenState(gpu, drawEffect, e); |
- this->bindTextures(gpu, *drawEffect.effect(), e); |
+ this->bindTextures(gpu, drawEffect.effect(), e); |
} |
} |
@@ -452,7 +452,7 @@ void GrGLPathTexGenProgramEffects::setPathTexGenState(GrGpuGL* gpu, |
int effectIdx) { |
EffectKey totalKey = fTransforms[effectIdx].fTransformKey; |
int texCoordIndex = fTransforms[effectIdx].fTexCoordIndex; |
- int numTransforms = (*drawEffect.effect())->numTransforms(); |
+ int numTransforms = drawEffect.effect()->numTransforms(); |
for (int t = 0; t < numTransforms; ++t) { |
switch (get_matrix_type(totalKey, t)) { |
case kNoPersp_MatrixType: { |