summaryrefslogtreecommitdiffstats
path: root/chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h
diff options
context:
space:
mode:
Diffstat (limited to 'chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h')
-rw-r--r--chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h37
1 files changed, 20 insertions, 17 deletions
diff --git a/chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h b/chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h
index 3320891b379..48d01c8ad7c 100644
--- a/chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h
+++ b/chromium/third_party/skia/src/gpu/gl/GrGLProgramEffects.h
@@ -24,7 +24,7 @@ class GrGLFragmentOnlyShaderBuilder;
* and textures). It is built with GrGLProgramEffectsBuilder, then used to manage the necessary GL
* state and shader uniforms.
*/
-class GrGLProgramEffects {
+class GrGLProgramEffects : public SkRefCnt {
public:
typedef GrBackendEffectFactory::EffectKey EffectKey;
typedef GrGLUniformManager::UniformHandle UniformHandle;
@@ -122,6 +122,9 @@ protected:
SkTArray<GrGLEffect*> fGLEffects;
SkTArray<SkSTArray<4, Sampler, true> > fSamplers;
+
+private:
+ typedef SkRefCnt INHERITED;
};
/**
@@ -237,19 +240,19 @@ private:
////////////////////////////////////////////////////////////////////////////////
/**
- * This is a GrGLProgramEffects implementation that does coord transforms with the the built-in GL
- * TexGen functionality.
+ * This is a GrGLProgramEffects implementation that does coord transforms with
+ * the the NV_path_rendering PathTexGen functionality.
*/
-class GrGLTexGenProgramEffects : public GrGLProgramEffects {
+class GrGLPathTexGenProgramEffects : public GrGLProgramEffects {
public:
virtual void setData(GrGpuGL*,
const GrGLUniformManager&,
const GrEffectStage* effectStages[]) SK_OVERRIDE;
private:
- friend class GrGLTexGenProgramEffectsBuilder;
+ friend class GrGLPathTexGenProgramEffectsBuilder;
- GrGLTexGenProgramEffects(int reserveCount)
+ GrGLPathTexGenProgramEffects(int reserveCount)
: INHERITED(reserveCount)
, fTransforms(reserveCount) {
}
@@ -273,15 +276,15 @@ private:
* types are appended to the TransformedCoordsArray* object, which is in turn passed to the
* effect's emitCode() function.
*/
- void setupTexGen(GrGLFragmentOnlyShaderBuilder*,
- const GrEffectRef&,
- EffectKey,
- TransformedCoordsArray*);
+ void setupPathTexGen(GrGLFragmentOnlyShaderBuilder*,
+ const GrEffectRef&,
+ EffectKey,
+ TransformedCoordsArray*);
/**
- * Helper for setData(). Sets the TexGen state for each transform in an effect.
+ * Helper for setData(). Sets the PathTexGen state for each transform in an effect.
*/
- void setTexGenState(GrGpuGL*, const GrDrawEffect&, int effectIdx);
+ void setPathTexGenState(GrGpuGL*, const GrDrawEffect&, int effectIdx);
struct Transforms {
Transforms(EffectKey transformKey, int texCoordIndex)
@@ -296,12 +299,12 @@ private:
};
/**
- * This class is used to construct a GrGLTexGenProgramEffects* object.
+ * This class is used to construct a GrGLPathTexGenProgramEffects* object.
*/
-class GrGLTexGenProgramEffectsBuilder : public GrGLProgramEffectsBuilder {
+class GrGLPathTexGenProgramEffectsBuilder : public GrGLProgramEffectsBuilder {
public:
- GrGLTexGenProgramEffectsBuilder(GrGLFragmentOnlyShaderBuilder*, int reserveCount);
- virtual ~GrGLTexGenProgramEffectsBuilder() { }
+ GrGLPathTexGenProgramEffectsBuilder(GrGLFragmentOnlyShaderBuilder*, int reserveCount);
+ virtual ~GrGLPathTexGenProgramEffectsBuilder() { }
virtual void emitEffect(const GrEffectStage&,
GrGLProgramEffects::EffectKey,
@@ -317,7 +320,7 @@ public:
private:
GrGLFragmentOnlyShaderBuilder* fBuilder;
- SkAutoTDelete<GrGLTexGenProgramEffects> fProgramEffects;
+ SkAutoTDelete<GrGLPathTexGenProgramEffects> fProgramEffects;
typedef GrGLProgramEffectsBuilder INHERITED;
};