work in progress

git-svn-id: http://skia.googlecode.com/svn/trunk@3702 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/experimental/Intersection/EdgeWalkerPolygon4x4_Test.cpp b/experimental/Intersection/EdgeWalkerPolygon4x4_Test.cpp
index 7054683..c9d6bdd 100755
--- a/experimental/Intersection/EdgeWalkerPolygon4x4_Test.cpp
+++ b/experimental/Intersection/EdgeWalkerPolygon4x4_Test.cpp
@@ -5,43 +5,12 @@
 #include <assert.h>
 #include <pthread.h>
 
-struct State {
-    State() {
-    bitmap.setConfig(SkBitmap::kARGB_8888_Config, 150 * 2, 100);
-    bitmap.allocPixels();
-    canvas = new SkCanvas(bitmap);
-    }
-
-    int a;
-    int b;
-    int c;
-    int d;
-    pthread_t threadID;
-    SkCanvas* canvas;
-    SkBitmap bitmap;
-    bool abcIsATriangle;
-};
-
-void createThread(State* statePtr, void* (*test)(void* )) {
-    int threadError = pthread_create(&statePtr->threadID, NULL, test,
-            (void*) statePtr);
-    SkASSERT(!threadError);
-}
-
-void waitForCompletion(State threadState[], int& threadIndex) {
-    for (int index = 0; index < threadIndex; ++index) {
-        pthread_join(threadState[index].threadID, NULL);
-    }
-    SkDebugf(".");
-    threadIndex = 0;
-}
-
 static void* testSimplify4x4QuadralateralsMain(void* data)
 {
     char pathStr[1024];
     bzero(pathStr, sizeof(pathStr));
     SkASSERT(data);
-    State& state = *(State*) data;
+    State4& state = *(State4*) data;
     int ax = state.a & 0x03;
     int ay = state.a >> 2;
     int bx = state.b & 0x03;
@@ -105,17 +74,17 @@
     return NULL;
 }
 
-const int maxThreads = gShowDebugf ? 1 : 24;
+const int maxThreads = gRunTestsInOneThread ? 1 : 24;
 
 void Simplify4x4QuadralateralsThreaded_Test()
 {
-    State threadState[maxThreads];
+    State4 threadState[maxThreads];
     int threadIndex = 0;
     for (int a = 0; a < 16; ++a) {
         for (int b = a ; b < 16; ++b) {
             for (int c = b ; c < 16; ++c) {
                 for (int d = c; d < 16; ++d) {                 
-                    State* statePtr = &threadState[threadIndex];
+                    State4* statePtr = &threadState[threadIndex];
                     statePtr->a = a;
                     statePtr->b = b;
                     statePtr->c = c;
@@ -140,7 +109,7 @@
     char pathStr[1024];
     bzero(pathStr, sizeof(pathStr));
     SkASSERT(data);
-    State& state = *(State*) data;
+    State4& state = *(State4*) data;
     int ax = state.a & 0x03;
     int ay = state.a >> 2;
     int bx = state.b & 0x03;
@@ -193,7 +162,7 @@
 }
 
 void SimplifyNondegenerate4x4TrianglesThreaded_Test() {
-    State threadState[maxThreads];
+    State4 threadState[maxThreads];
     int threadIndex = 0;
     for (int a = 0; a < 15; ++a) {
         int ax = a & 0x03;
@@ -210,7 +179,7 @@
                 if ((bx - ax) * (cy - ay) == (by - ay) * (cx - ax)) {
                     continue;
                 }
-                State* statePtr = &threadState[threadIndex];
+                State4* statePtr = &threadState[threadIndex];
                 statePtr->a = a;
                 statePtr->b = b;
                 statePtr->c = c;
@@ -232,7 +201,7 @@
     char pathStr[1024];
     bzero(pathStr, sizeof(pathStr));
     SkASSERT(data);
-    State& state = *(State*) data;
+    State4& state = *(State4*) data;
     int ax = state.a & 0x03;
     int ay = state.a >> 2;
     int bx = state.b & 0x03;
@@ -283,7 +252,7 @@
 }
 
 void SimplifyDegenerate4x4TrianglesThreaded_Test() {
-    State threadState[maxThreads];
+    State4 threadState[maxThreads];
     int threadIndex = 0;
     for (int a = 0; a < 16; ++a) {
         int ax = a & 0x03;
@@ -294,7 +263,7 @@
             for (int c = a ; c < 16; ++c) {
                 int cx = c & 0x03;
                 int cy = c >> 2;
-                State* statePtr = &threadState[threadIndex];
+                State4* statePtr = &threadState[threadIndex];
                 statePtr->abcIsATriangle = (bx - ax) * (cy - ay)
                         != (by - ay) * (cx - ax);
                 statePtr->a = a;