Create VisualStreamTimingModule

BUG=skia:

Review URL: https://codereview.chromium.org/1385073002
diff --git a/tools/VisualBench/VisualLightweightBenchModule.h b/tools/VisualBench/VisualLightweightBenchModule.h
index 3538a48..7618ff2 100644
--- a/tools/VisualBench/VisualLightweightBenchModule.h
+++ b/tools/VisualBench/VisualLightweightBenchModule.h
@@ -3,57 +3,44 @@
  *
  * Use of this source code is governed by a BSD-style license that can be
  * found in the LICENSE file.
- *
  */
 
 #ifndef VisualLightweightBenchModule_DEFINED
 #define VisualLightweightBenchModule_DEFINED
 
-#include "VisualModule.h"
+#include "VisualStreamTimingModule.h"
 
 #include "ResultsWriter.h"
 #include "SkPicture.h"
-#include "TimingStateMachine.h"
 #include "VisualBench.h"
-#include "VisualBenchmarkStream.h"
 
 class SkCanvas;
 
 /*
  * This module is designed to be a minimal overhead timing module for VisualBench
  */
-class VisualLightweightBenchModule : public VisualModule {
+class VisualLightweightBenchModule : public VisualStreamTimingModule {
 public:
     // TODO get rid of backpointer
     VisualLightweightBenchModule(VisualBench* owner);
 
-    void draw(SkCanvas* canvas) override;
-
     bool onHandleChar(SkUnichar c) override;
 
 private:
-    void setTitle();
-    bool setupBackend();
-    void setupRenderTarget();
-    void printStats();
-    bool advanceRecordIfNecessary(SkCanvas*);
-    inline void renderFrame(SkCanvas*);
+    void renderFrame(SkCanvas*, Benchmark*, int loops) override;
+    bool timingFinished(Benchmark*, int loops, double measurement) override;
+    void printStats(Benchmark*, int loops);
 
     struct Record {
         SkTArray<double> fMeasurements;
     };
     int fCurrentSample;
     SkTArray<Record> fRecords;
-    SkAutoTDelete<VisualBenchmarkStream> fBenchmarkStream;
-    SkAutoTUnref<Benchmark> fBenchmark;
-    TimingStateMachine fTSM;
-    bool fHasBeenReset;
 
     // support framework
-    SkAutoTUnref<VisualBench> fOwner;
     SkAutoTDelete<ResultsWriter> fResults;
 
-    typedef VisualModule INHERITED;
+    typedef VisualStreamTimingModule INHERITED;
 };
 
 #endif