| OLD | NEW |
| 1 // Copyright 2011 The Chromium Authors. All rights reserved. | 1 // Copyright 2011 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 "cc/scheduler.h" | 5 #include "cc/scheduler.h" |
| 6 | 6 |
| 7 #include "base/auto_reset.h" | 7 #include "base/auto_reset.h" |
| 8 #include "base/debug/trace_event.h" | 8 #include "base/debug/trace_event.h" |
| 9 #include "base/logging.h" | 9 #include "base/logging.h" |
| 10 | 10 |
| (...skipping 86 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 97 { | 97 { |
| 98 m_frameRateController->setSwapBuffersCompleteSupported(supported); | 98 m_frameRateController->setSwapBuffersCompleteSupported(supported); |
| 99 } | 99 } |
| 100 | 100 |
| 101 void Scheduler::didSwapBuffersComplete() | 101 void Scheduler::didSwapBuffersComplete() |
| 102 { | 102 { |
| 103 TRACE_EVENT0("cc", "Scheduler::didSwapBuffersComplete"); | 103 TRACE_EVENT0("cc", "Scheduler::didSwapBuffersComplete"); |
| 104 m_frameRateController->didFinishFrame(); | 104 m_frameRateController->didFinishFrame(); |
| 105 } | 105 } |
| 106 | 106 |
| 107 void Scheduler::didLoseContext() | 107 void Scheduler::didLoseOutputSurface() |
| 108 { | 108 { |
| 109 TRACE_EVENT0("cc", "Scheduler::didLoseContext"); | 109 TRACE_EVENT0("cc", "Scheduler::didLoseOutputSurface"); |
| 110 m_frameRateController->didAbortAllPendingFrames(); | 110 m_frameRateController->didAbortAllPendingFrames(); |
| 111 m_stateMachine.didLoseContext(); | 111 m_stateMachine.didLoseOutputSurface(); |
| 112 processScheduledActions(); | 112 processScheduledActions(); |
| 113 } | 113 } |
| 114 | 114 |
| 115 void Scheduler::didRecreateContext() | 115 void Scheduler::didRecreateOutputSurface() |
| 116 { | 116 { |
| 117 TRACE_EVENT0("cc", "Scheduler::didRecreateContext"); | 117 TRACE_EVENT0("cc", "Scheduler::didRecreateOutputSurface"); |
| 118 m_stateMachine.didRecreateContext(); | 118 m_stateMachine.didRecreateOutputSurface(); |
| 119 processScheduledActions(); | 119 processScheduledActions(); |
| 120 } | 120 } |
| 121 | 121 |
| 122 void Scheduler::setTimebaseAndInterval(base::TimeTicks timebase, base::TimeDelta
interval) | 122 void Scheduler::setTimebaseAndInterval(base::TimeTicks timebase, base::TimeDelta
interval) |
| 123 { | 123 { |
| 124 m_frameRateController->setTimebaseAndInterval(timebase, interval); | 124 m_frameRateController->setTimebaseAndInterval(timebase, interval); |
| 125 } | 125 } |
| 126 | 126 |
| 127 base::TimeTicks Scheduler::anticipatedDrawTime() | 127 base::TimeTicks Scheduler::anticipatedDrawTime() |
| 128 { | 128 { |
| (...skipping 38 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 167 m_stateMachine.didDrawIfPossibleCompleted(result.didDraw); | 167 m_stateMachine.didDrawIfPossibleCompleted(result.didDraw); |
| 168 if (result.didSwap) | 168 if (result.didSwap) |
| 169 m_frameRateController->didBeginFrame(); | 169 m_frameRateController->didBeginFrame(); |
| 170 break; | 170 break; |
| 171 } | 171 } |
| 172 case SchedulerStateMachine::ACTION_DRAW_FORCED: { | 172 case SchedulerStateMachine::ACTION_DRAW_FORCED: { |
| 173 ScheduledActionDrawAndSwapResult result = m_client->scheduledActionD
rawAndSwapForced(); | 173 ScheduledActionDrawAndSwapResult result = m_client->scheduledActionD
rawAndSwapForced(); |
| 174 if (result.didSwap) | 174 if (result.didSwap) |
| 175 m_frameRateController->didBeginFrame(); | 175 m_frameRateController->didBeginFrame(); |
| 176 break; | 176 break; |
| 177 } case SchedulerStateMachine::ACTION_BEGIN_CONTEXT_RECREATION: | 177 } case SchedulerStateMachine::ACTION_BEGIN_OUTPUT_SURFACE_RECREATION: |
| 178 m_client->scheduledActionBeginContextRecreation(); | 178 m_client->scheduledActionBeginContextRecreation(); |
| 179 break; | 179 break; |
| 180 case SchedulerStateMachine::ACTION_ACQUIRE_LAYER_TEXTURES_FOR_MAIN_THREA
D: | 180 case SchedulerStateMachine::ACTION_ACQUIRE_LAYER_TEXTURES_FOR_MAIN_THREA
D: |
| 181 m_client->scheduledActionAcquireLayerTexturesForMainThread(); | 181 m_client->scheduledActionAcquireLayerTexturesForMainThread(); |
| 182 break; | 182 break; |
| 183 } | 183 } |
| 184 action = m_stateMachine.nextAction(); | 184 action = m_stateMachine.nextAction(); |
| 185 } | 185 } |
| 186 | 186 |
| 187 // Activate or deactivate the frame rate controller. | 187 // Activate or deactivate the frame rate controller. |
| 188 m_frameRateController->setActive(m_stateMachine.vsyncCallbackNeeded()); | 188 m_frameRateController->setActive(m_stateMachine.vsyncCallbackNeeded()); |
| 189 m_client->didAnticipatedDrawTimeChange(m_frameRateController->nextTickTime()
); | 189 m_client->didAnticipatedDrawTimeChange(m_frameRateController->nextTickTime()
); |
| 190 } | 190 } |
| 191 | 191 |
| 192 } // namespace cc | 192 } // namespace cc |
| OLD | NEW |