remove some dead code in pipes
inherit from SampleView for more samples
add L key to toggle using SkGPipe



git-svn-id: http://skia.googlecode.com/svn/trunk@1296 2bbb7eff-a529-9590-31e7-b0007b416f81
diff --git a/samplecode/SampleApp.cpp b/samplecode/SampleApp.cpp
index 7ab6609..bbde414 100644
--- a/samplecode/SampleApp.cpp
+++ b/samplecode/SampleApp.cpp
@@ -284,6 +284,7 @@
     bool fRotate;
     bool fScale;
     bool fRequestGrabImage;
+    bool fUsePipe;
     bool fMeasureFPS;
     SkMSec fMeasureFPS_Time;
 
@@ -423,6 +424,7 @@
     fRotate = false;
     fScale = false;
     fRequestGrabImage = false;
+    fUsePipe = false;
     fMeasureFPS = false;
     fLCDState = kUnknown_SkTriState;
     fAAState = kUnknown_SkTriState;
@@ -861,6 +863,7 @@
     } else {
         (void)SampleView::SetRepeatDraw(child, 1);
     }
+    (void)SampleView::SetUsePipe(child, fUsePipe);
 }
 
 void SampleWindow::afterChild(SkView* child, SkCanvas* canvas) {
@@ -1034,6 +1037,10 @@
         case 'o':
             this->zoomOut();
             break;
+        case 'p':
+            fUsePipe = !fUsePipe;
+            this->inval(NULL);
+            break;
         case 'r':
             fRotate = !fRotate;
             this->inval(NULL);
@@ -1315,6 +1322,7 @@
 ///////////////////////////////////////////////////////////////////////////////
 
 static const char repeat_count_tag[] = "sample-set-repeat-count";
+static const char set_use_pipe_tag[] = "sample-set-use-pipe";
 
 bool SampleView::SetRepeatDraw(SkView* view, int count) {
     SkEvent evt(repeat_count_tag);
@@ -1322,11 +1330,21 @@
     return view->doEvent(evt);
 }
 
+bool SampleView::SetUsePipe(SkView* view, bool pred) {
+    SkEvent evt(set_use_pipe_tag);
+    evt.setFast32(pred);
+    return view->doEvent(evt);
+}
+
 bool SampleView::onEvent(const SkEvent& evt) {
     if (evt.isType(repeat_count_tag)) {
         fRepeatCount = evt.getFast32();
         return true;
     }
+    if (evt.isType(set_use_pipe_tag)) {
+        fUsePipe = !!evt.getFast32();
+        return true;
+    }
     return this->INHERITED::onEvent(evt);
 }
 
@@ -1370,8 +1388,10 @@
 //    SkASSERT(SkGPipeReader::kDone_Status == fStatus);
     sk_free(fBlock);
 
-    SkDebugf("--- %d bytes %d atoms, status %d\n", fTotalWritten,
-             fAtomsWritten, fStatus);
+    if (fTotalWritten) {
+        SkDebugf("--- %d bytes %d atoms, status %d\n", fTotalWritten,
+                 fAtomsWritten, fStatus);
+    }
 }
 
 void* SimplePC::requestBlock(size_t minRequest, size_t* actual) {
@@ -1404,7 +1424,9 @@
 #ifdef TEST_GPIPE
     SimplePC controller(canvas);
     SkGPipeWriter writer;
-    canvas = writer.startRecording(&controller);
+    if (fUsePipe) {
+        canvas = writer.startRecording(&controller);
+    }
 #endif
 
     for (int i = 0; i < fRepeatCount; i++) {