| Index: bench/SkGMBench.h | 
| diff --git a/bench/SkGMBench.h b/bench/SkGMBench.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..925a87583c12683e93b41f190aa0d2d375a6aeb3 | 
| --- /dev/null | 
| +++ b/bench/SkGMBench.h | 
| @@ -0,0 +1,31 @@ | 
| +/* | 
| + * Copyright 2014 Google Inc. | 
| + * | 
| + * Use of this source code is governed by a BSD-style license that can be | 
| + * found in the LICENSE file. | 
| + */ | 
| + | 
| +#include "SkBenchmark.h" | 
| +#include "gm.h" | 
| +#include "SkCanvas.h" | 
| + | 
| +/** | 
| + * Runs a GM as a benchmark by repeatedly drawing the GM. | 
| + */ | 
| +class SkGMBench : public SkBenchmark { | 
| +public: | 
| +    // Constructor takes ownership of the GM param. | 
| +    SkGMBench(skiagm::GM* gm); | 
| +    virtual ~SkGMBench(); | 
| + | 
| +protected: | 
| +    virtual const char* onGetName() SK_OVERRIDE; | 
| +    virtual bool isSuitableFor(Backend backend) SK_OVERRIDE; | 
| +    virtual void onDraw(const int loops, SkCanvas* canvas) SK_OVERRIDE; | 
| +    virtual SkIPoint onGetSize() SK_OVERRIDE; | 
| + | 
| +private: | 
| +    skiagm::GM* fGM; | 
| +    SkString    fName; | 
| +    typedef SkBenchmark INHERITED; | 
| +}; | 
|  |