small tidy of benchmarkstream
BUG=skia:
Committed: https://skia.googlesource.com/skia/+/691b6af907e55250a29a7a2a346b63c2026011c3
Review URL: https://codereview.chromium.org/1395703002
diff --git a/tools/VisualBench/VisualStreamTimingModule.h b/tools/VisualBench/VisualStreamTimingModule.h
index ac06ed4..5dbec69 100644
--- a/tools/VisualBench/VisualStreamTimingModule.h
+++ b/tools/VisualBench/VisualStreamTimingModule.h
@@ -14,6 +14,8 @@
#include "VisualBench.h"
#include "VisualBenchmarkStream.h"
+class SkCanvas;
+
/*
* VisualStreamTimingModule is the base class for modules which want to time a stream of Benchmarks.
*
@@ -31,12 +33,17 @@
// subclasses should return true to advance the stream
virtual bool timingFinished(Benchmark*, int loops, double measurement)=0;
- bool nextBenchmarkIfNecessary(SkCanvas*);
+ inline void handleInitState(SkCanvas*);
+ inline void handleTimingEvent(SkCanvas*, TimingStateMachine::ParentEvents);
TimingStateMachine fTSM;
SkAutoTDelete<VisualBenchmarkStream> fBenchmarkStream;
- SkAutoTUnref<Benchmark> fBenchmark;
- bool fReinitializeBenchmark;
+ enum InitState {
+ kNone_InitState,
+ kReset_InitState,
+ kNewBenchmark_InitState,
+ };
+ InitState fInitState;
bool fPreWarmBeforeSample;
// support framework