| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 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 #include "config.h" | 5 #include "config.h" |
| 6 | 6 |
| 7 #if USE(ACCELERATED_COMPOSITING) | 7 #if USE(ACCELERATED_COMPOSITING) |
| 8 #include "CCFrameRateCounter.h" | 8 #include "CCFrameRateCounter.h" |
| 9 | 9 |
| 10 #include "CCProxy.h" | 10 #include "CCProxy.h" |
| 11 #include <public/Platform.h> | 11 #include <public/Platform.h> |
| 12 #include <wtf/CurrentTime.h> | 12 #include <wtf/CurrentTime.h> |
| 13 | 13 |
| 14 namespace WebCore { | 14 namespace cc { |
| 15 | 15 |
| 16 const double CCFrameRateCounter::kFrameTooFast = 1.0 / 70.0; // measured in seco
nds | 16 const double CCFrameRateCounter::kFrameTooFast = 1.0 / 70.0; // measured in seco
nds |
| 17 const double CCFrameRateCounter::kFrameTooSlow = 1.0 / 12.0; | 17 const double CCFrameRateCounter::kFrameTooSlow = 1.0 / 12.0; |
| 18 const double CCFrameRateCounter::kDroppedFrameTime = 1.0 / 50.0; | 18 const double CCFrameRateCounter::kDroppedFrameTime = 1.0 / 50.0; |
| 19 | 19 |
| 20 // safeMod works on -1, returning m-1 in that case. | 20 // safeMod works on -1, returning m-1 in that case. |
| 21 static inline int safeMod(int number, int modulus) | 21 static inline int safeMod(int number, int modulus) |
| 22 { | 22 { |
| 23 return (number + modulus) % modulus; | 23 return (number + modulus) % modulus; |
| 24 } | 24 } |
| (...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 118 standardDeviation = sqrt(fpsVarianceNumerator / averageFPSCount); | 118 standardDeviation = sqrt(fpsVarianceNumerator / averageFPSCount); |
| 119 } | 119 } |
| 120 | 120 |
| 121 double CCFrameRateCounter::timeStampOfRecentFrame(int n) | 121 double CCFrameRateCounter::timeStampOfRecentFrame(int n) |
| 122 { | 122 { |
| 123 ASSERT(n >= 0 && n < kTimeStampHistorySize); | 123 ASSERT(n >= 0 && n < kTimeStampHistorySize); |
| 124 int desiredIndex = (frameIndex(m_currentFrameNumber) + n) % kTimeStampHistor
ySize; | 124 int desiredIndex = (frameIndex(m_currentFrameNumber) + n) % kTimeStampHistor
ySize; |
| 125 return m_timeStampHistory[desiredIndex]; | 125 return m_timeStampHistory[desiredIndex]; |
| 126 } | 126 } |
| 127 | 127 |
| 128 } // namespace WebCore | 128 } // namespace cc |
| 129 | 129 |
| 130 #endif // USE(ACCELERATED_COMPOSITING) | 130 #endif // USE(ACCELERATED_COMPOSITING) |
| OLD | NEW |