OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ | 5 #ifndef CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ |
6 #define CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ | 6 #define CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <utility> | 9 #include <utility> |
10 #include <vector> | 10 #include <vector> |
(...skipping 20 matching lines...) Expand all Loading... |
31 | 31 |
32 // Implements MicroBenchmark interface. | 32 // Implements MicroBenchmark interface. |
33 void DidUpdateLayers(LayerTreeHost* host) override; | 33 void DidUpdateLayers(LayerTreeHost* host) override; |
34 void RunOnLayer(PictureLayer* layer) override; | 34 void RunOnLayer(PictureLayer* layer) override; |
35 | 35 |
36 scoped_ptr<MicroBenchmarkImpl> CreateBenchmarkImpl( | 36 scoped_ptr<MicroBenchmarkImpl> CreateBenchmarkImpl( |
37 scoped_refptr<base::MessageLoopProxy> origin_loop) override; | 37 scoped_refptr<base::MessageLoopProxy> origin_loop) override; |
38 | 38 |
39 private: | 39 private: |
40 void Run(Layer* layer); | 40 void Run(Layer* layer); |
41 void RunOnDisplayListLayer(PictureLayer* layer, | |
42 const gfx::Rect& visible_content_rect); | |
43 void RunOnPictureLayer(PictureLayer* layer, | |
44 const gfx::Rect& visible_content_rect); | |
45 | 41 |
46 void RecordRasterResults(scoped_ptr<base::Value> results); | 42 void RecordRasterResults(scoped_ptr<base::Value> results); |
47 | 43 |
48 struct RecordResults { | 44 struct RecordResults { |
49 RecordResults(); | 45 RecordResults(); |
50 ~RecordResults(); | 46 ~RecordResults(); |
51 | 47 |
52 int pixels_recorded; | 48 int pixels_recorded; |
53 size_t bytes_used; | 49 size_t bytes_used; |
54 base::TimeDelta total_best_time[Picture::RECORDING_MODE_COUNT]; | 50 base::TimeDelta total_best_time[Picture::RECORDING_MODE_COUNT]; |
55 }; | 51 }; |
56 | 52 |
57 RecordResults record_results_; | 53 RecordResults record_results_; |
58 int record_repeat_count_; | 54 int record_repeat_count_; |
59 scoped_ptr<base::Value> settings_; | 55 scoped_ptr<base::Value> settings_; |
60 scoped_ptr<base::DictionaryValue> results_; | 56 scoped_ptr<base::DictionaryValue> results_; |
61 | 57 |
62 // The following is used in DCHECKs. | 58 // The following is used in DCHECKs. |
63 bool main_thread_benchmark_done_; | 59 bool main_thread_benchmark_done_; |
64 | 60 |
65 LayerTreeHost* host_; | 61 LayerTreeHost* host_; |
66 | 62 |
67 base::WeakPtrFactory<RasterizeAndRecordBenchmark> weak_ptr_factory_; | 63 base::WeakPtrFactory<RasterizeAndRecordBenchmark> weak_ptr_factory_; |
68 }; | 64 }; |
69 | 65 |
70 } // namespace cc | 66 } // namespace cc |
71 | 67 |
72 #endif // CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ | 68 #endif // CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ |
OLD | NEW |