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); |
41 | 45 |
42 void RecordRasterResults(scoped_ptr<base::Value> results); | 46 void RecordRasterResults(scoped_ptr<base::Value> results); |
43 | 47 |
44 struct RecordResults { | 48 struct RecordResults { |
45 RecordResults(); | 49 RecordResults(); |
46 ~RecordResults(); | 50 ~RecordResults(); |
47 | 51 |
48 int pixels_recorded; | 52 int pixels_recorded; |
49 size_t bytes_used; | 53 size_t bytes_used; |
50 base::TimeDelta total_best_time[Picture::RECORDING_MODE_COUNT]; | 54 base::TimeDelta total_best_time[Picture::RECORDING_MODE_COUNT]; |
51 }; | 55 }; |
52 | 56 |
53 RecordResults record_results_; | 57 RecordResults record_results_; |
54 int record_repeat_count_; | 58 int record_repeat_count_; |
55 scoped_ptr<base::Value> settings_; | 59 scoped_ptr<base::Value> settings_; |
56 scoped_ptr<base::DictionaryValue> results_; | 60 scoped_ptr<base::DictionaryValue> results_; |
57 | 61 |
58 // The following is used in DCHECKs. | 62 // The following is used in DCHECKs. |
59 bool main_thread_benchmark_done_; | 63 bool main_thread_benchmark_done_; |
60 | 64 |
61 LayerTreeHost* host_; | 65 LayerTreeHost* host_; |
62 | 66 |
63 base::WeakPtrFactory<RasterizeAndRecordBenchmark> weak_ptr_factory_; | 67 base::WeakPtrFactory<RasterizeAndRecordBenchmark> weak_ptr_factory_; |
64 }; | 68 }; |
65 | 69 |
66 } // namespace cc | 70 } // namespace cc |
67 | 71 |
68 #endif // CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ | 72 #endif // CC_DEBUG_RASTERIZE_AND_RECORD_BENCHMARK_H_ |
OLD | NEW |