Add GrEllipseEdgeEffect.

Adds the effect that replaces the old oval rendering code. Also hooks in code to set attribute names and indices for effects.

Author: jvanverth@google.com

Review URL: https://chromiumcodereview.appspot.com/12462008

git-svn-id: http://skia.googlecode.com/svn/trunk@8092 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/tests/GLProgramsTest.cpp b/tests/GLProgramsTest.cpp
index 45c5f2d..b56c788 100644
--- a/tests/GLProgramsTest.cpp
+++ b/tests/GLProgramsTest.cpp
@@ -121,6 +121,8 @@
         GrGLProgram::Desc pdesc;
         GrEffectStage stages[GrDrawState::kNumStages];
 
+        int currAttribIndex = GrDrawState::kAttribIndexCount;
+        int attribIndices[2];
         for (int s = 0; s < maxStages; ++s) {
             // enable the stage?
             if (random.nextBool()) {
@@ -129,7 +131,10 @@
                                                                                 &random,
                                                                                 this->getContext(),
                                                                                 dummyTextures));
-                stages[s].setEffect(effect.get());
+                for (int i = 0; i < effect.get()->get()->numVertexAttribs(); ++i) {
+                    attribIndices[i] = currAttribIndex++;
+                }
+                stages[s].setEffect(effect.get(), attribIndices);
             }
         }
         pdesc.setRandom(&random, this, stages);