diff options
Diffstat (limited to 'chromium/cc/trees/proxy_timing_history.h')
-rw-r--r-- | chromium/cc/trees/proxy_timing_history.h | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/chromium/cc/trees/proxy_timing_history.h b/chromium/cc/trees/proxy_timing_history.h new file mode 100644 index 00000000000..01a92d93a03 --- /dev/null +++ b/chromium/cc/trees/proxy_timing_history.h @@ -0,0 +1,40 @@ +// Copyright 2014 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef CC_TREES_PROXY_TIMING_HISTORY_H_ +#define CC_TREES_PROXY_TIMING_HISTORY_H_ + +#include "cc/base/rolling_time_delta_history.h" + +namespace cc { + +class ProxyTimingHistory { + public: + ProxyTimingHistory(); + ~ProxyTimingHistory(); + + base::TimeDelta DrawDurationEstimate() const; + base::TimeDelta BeginMainFrameToCommitDurationEstimate() const; + base::TimeDelta CommitToActivateDurationEstimate() const; + + void DidBeginMainFrame(); + void DidCommit(); + void DidActivatePendingTree(); + void DidStartDrawing(); + // Returns draw duration. + base::TimeDelta DidFinishDrawing(); + + protected: + RollingTimeDeltaHistory draw_duration_history_; + RollingTimeDeltaHistory begin_main_frame_to_commit_duration_history_; + RollingTimeDeltaHistory commit_to_activate_duration_history_; + + base::TimeTicks begin_main_frame_sent_time_; + base::TimeTicks commit_complete_time_; + base::TimeTicks start_draw_time_; +}; + +} // namespace cc + +#endif // CC_TREES_PROXY_TIMING_HISTORY_H_ |