Index: cc/debug/micro_benchmark.h |
diff --git a/cc/debug/micro_benchmark.h b/cc/debug/micro_benchmark.h |
index 92c9b7501573973fcc4c2fa4d02e72676b12e80a..f179fb9544d200ef30373fc4be88b1836c9469ea 100644 |
--- a/cc/debug/micro_benchmark.h |
+++ b/cc/debug/micro_benchmark.h |
@@ -7,9 +7,11 @@ |
#include "base/callback.h" |
#include "base/memory/scoped_ptr.h" |
+#include "cc/base/cc_export.h" |
namespace base { |
class Value; |
+class MessageLoopProxy; |
} // namespace base |
namespace cc { |
@@ -17,7 +19,8 @@ namespace cc { |
class LayerTreeHost; |
class Layer; |
class PictureLayer; |
-class MicroBenchmark { |
+class MicroBenchmarkImpl; |
+class CC_EXPORT MicroBenchmark { |
public: |
typedef base::Callback<void(scoped_ptr<base::Value>)> DoneCallback; |
@@ -30,12 +33,20 @@ class MicroBenchmark { |
virtual void RunOnLayer(Layer* layer); |
virtual void RunOnLayer(PictureLayer* layer); |
+ bool ProcessedForBenchmarkImpl() const; |
+ scoped_ptr<MicroBenchmarkImpl> GetBenchmarkImpl( |
+ scoped_refptr<base::MessageLoopProxy> origin_loop); |
+ |
protected: |
void NotifyDone(scoped_ptr<base::Value> result); |
+ virtual scoped_ptr<MicroBenchmarkImpl> CreateBenchmarkImpl( |
+ scoped_refptr<base::MessageLoopProxy> origin_loop); |
+ |
private: |
DoneCallback callback_; |
bool is_done_; |
+ bool processed_for_benchmark_impl_; |
}; |
} // namespace cc |