Reland r6233 with fix.



git-svn-id: http://skia.googlecode.com/svn/trunk@6241 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/include/gpu/GrEffectUnitTest.h b/include/gpu/GrEffectUnitTest.h
index 427260c..8cc2689 100644
--- a/include/gpu/GrEffectUnitTest.h
+++ b/include/gpu/GrEffectUnitTest.h
@@ -12,12 +12,20 @@
 #include "GrNoncopyable.h"
 #include "SkTArray.h"
 
+class SkMatrix;
+
 namespace GrEffectUnitTest {
 // Used to access the dummy textures in TestCreate procs.
 enum {
     kSkiaPMTextureIdx = 0,
     kAlphaTextureIdx = 1,
 };
+
+/**
+ * A helper for use in GrEffect::TestCreate functions.
+ */
+const SkMatrix& TestMatrix(SkRandom*);
+
 }
 
 #if SK_ALLOW_STATIC_GLOBAL_INITIALIZERS
@@ -56,12 +64,13 @@
     static GrEffectTestFactory gTestFactory;                                        \
     static GrEffect* TestCreate(SkRandom*, GrContext*, GrTexture* dummyTextures[2])
 
-/** GrEffect subclasses should insert this macro in their implemenation file. They must then
+/** GrEffect subclasses should insert this macro in their implementation file. They must then
  *  also implement this static function:
  *      GrEffect* TestCreate(SkRandom*, GrContext*, GrTexture* dummyTextures[2]);
- *  dummyTextures[] are valied textures that they can optionally use for their texture accesses. The
-  * first texture has config kSkia8888_PM_GrPixelConfig and the second has kAlpha_8_GrPixelConfig.
-  * TestCreate functions are also free to create additional textures using the GrContext.
+ * dummyTextures[] are valid textures that can optionally be used to construct GrTextureAccesses.
+ * The first texture has config kSkia8888_PM_GrPixelConfig and the second has
+ * kAlpha_8_GrPixelConfig. TestCreate functions are also free to create additional textures using
+ * the GrContext.
  */
 #define GR_DEFINE_EFFECT_TEST(Effect)                                               \
     GrEffectTestFactory Effect :: gTestFactory(Effect :: TestCreate)