Clening up GrBinHashKey. Removing unnecessary streaming capability

BUG=http://code.google.com/p/skia/issues/detail?id=278
REVIEW=http://codereview.appspot.com/4910045/



git-svn-id: http://skia.googlecode.com/svn/trunk@2136 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/gpu/src/GrGLProgram.h b/gpu/src/GrGLProgram.h
index 026f68b..ffe9f00 100644
--- a/gpu/src/GrGLProgram.h
+++ b/gpu/src/GrGLProgram.h
@@ -47,14 +47,6 @@
     ~GrGLProgram();
 
     /**
-     *  Streams data that can uniquely identifies the generated
-     *  gpu program into a key, for cache indexing purposes.
-     *
-     *  @param key The key object to receive the key data
-     */
-    void buildKey(GrBinHashKeyBuilder& key) const;
-
-    /**
      *  This is the heavy initilization routine for building a GLProgram.
      *  The result of heavy init is not stored in datamembers of GrGLProgam,
      *  but in a separate cacheable container.
@@ -265,6 +257,15 @@
 
     }; // CachedData
 
+    enum Constants {
+        kProgramKeySize = sizeof(ProgramDesc)
+    };
+
+    // Provide an opaque ProgramDesc
+    const uint32_t* keyData() const{
+        return reinterpret_cast<const uint32_t*>(&fProgramDesc);
+    }
+
 private:
     enum {
         kUseUniform = 2000