| OLD | NEW |
| (Empty) |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | |
| 2 // Use of this source code is governed by a BSD-style license that can be | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #ifndef CC_TREES_PROXY_TIMING_HISTORY_H_ | |
| 6 #define CC_TREES_PROXY_TIMING_HISTORY_H_ | |
| 7 | |
| 8 #include "cc/base/rolling_time_delta_history.h" | |
| 9 #include "cc/debug/rendering_stats_instrumentation.h" | |
| 10 | |
| 11 namespace cc { | |
| 12 | |
| 13 class ProxyTimingHistory { | |
| 14 public: | |
| 15 explicit ProxyTimingHistory( | |
| 16 RenderingStatsInstrumentation* rendering_stats_instrumentation); | |
| 17 ~ProxyTimingHistory(); | |
| 18 | |
| 19 base::TimeDelta DrawDurationEstimate() const; | |
| 20 base::TimeDelta BeginMainFrameToCommitDurationEstimate() const; | |
| 21 base::TimeDelta CommitToActivateDurationEstimate() const; | |
| 22 | |
| 23 void DidBeginMainFrame(); | |
| 24 void DidCommit(); | |
| 25 void DidActivateSyncTree(); | |
| 26 void DidStartDrawing(); | |
| 27 void DidFinishDrawing(); | |
| 28 | |
| 29 protected: | |
| 30 void AddDrawDurationUMA(base::TimeDelta draw_duration, | |
| 31 base::TimeDelta draw_duration_estimate); | |
| 32 | |
| 33 RollingTimeDeltaHistory draw_duration_history_; | |
| 34 RollingTimeDeltaHistory begin_main_frame_to_commit_duration_history_; | |
| 35 RollingTimeDeltaHistory commit_to_activate_duration_history_; | |
| 36 | |
| 37 base::TimeTicks begin_main_frame_sent_time_; | |
| 38 base::TimeTicks commit_complete_time_; | |
| 39 base::TimeTicks start_draw_time_; | |
| 40 | |
| 41 RenderingStatsInstrumentation* rendering_stats_instrumentation_; | |
| 42 }; | |
| 43 | |
| 44 } // namespace cc | |
| 45 | |
| 46 #endif // CC_TREES_PROXY_TIMING_HISTORY_H_ | |
| OLD | NEW |