| Index: include/gpu/GrBackendEffectFactory.h
 | 
| diff --git a/include/gpu/GrBackendEffectFactory.h b/include/gpu/GrBackendEffectFactory.h
 | 
| index ef9e436401d72466f64603c1e4b1672b95646ef8..e6362520fc2b2e3b59e43b18343dfd86ced7bfd9 100644
 | 
| --- a/include/gpu/GrBackendEffectFactory.h
 | 
| +++ b/include/gpu/GrBackendEffectFactory.h
 | 
| @@ -48,6 +48,31 @@ private:
 | 
|  };
 | 
|  
 | 
|  /**
 | 
| + * This class is used to pass the key that was created for a GrGLEffect back to it
 | 
| + * when it emits code. It may allow the emit step to skip calculations that were
 | 
| + * performed when computing the key.
 | 
| + */
 | 
| +class GrEffectKey {
 | 
| +public:
 | 
| +    GrEffectKey(const uint32_t* key, int count) : fKey(key), fCount(count) {
 | 
| +        SkASSERT(0 == reinterpret_cast<intptr_t>(key) % sizeof(uint32_t));
 | 
| +    }
 | 
| +
 | 
| +    /** Gets the uint32_t values that the effect inserted into the key. */
 | 
| +    uint32_t get32(int index) const {
 | 
| +        SkASSERT(index >=0 && index < fCount);
 | 
| +        return fKey[index];
 | 
| +    }
 | 
| +
 | 
| +    /** Gets the number of uint32_t values that the effect inserted into the key. */
 | 
| +    int count32() const { return fCount; }
 | 
| +
 | 
| +private:
 | 
| +    const uint32_t* fKey;           // unowned ptr into the larger key.
 | 
| +    int             fCount;         // number of uint32_ts inserted by the effect into its key.
 | 
| +};
 | 
| +
 | 
| +/**
 | 
|   * Given a GrEffect of a particular type, creates the corresponding graphics-backend-specific
 | 
|   * effect object. It also tracks equivalence of shaders generated via a key. The factory for an
 | 
|   * effect is accessed via GrEffect::getFactory(). Each factory instance is assigned an ID at
 | 
| @@ -66,8 +91,6 @@ private:
 | 
|   */
 | 
|  class GrBackendEffectFactory : SkNoncopyable {
 | 
|  public:
 | 
| -    typedef uint32_t EffectKey;
 | 
| -
 | 
|      /** 
 | 
|       * Generates an effect's key. The key is based on the aspects of the GrEffect object's
 | 
|       * configuration that affect GLSL code generation. Two GrEffect instances that would cause
 | 
| 
 |