| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/surfaces/display_scheduler.h" | 5 #include "cc/surfaces/display_scheduler.h" |
| 6 | 6 |
| 7 #include <vector> | 7 #include <vector> |
| 8 | 8 |
| 9 #include "base/auto_reset.h" | 9 #include "base/auto_reset.h" |
| 10 #include "base/stl_util.h" | 10 #include "base/stl_util.h" |
| (...skipping 348 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 359 DCHECK(inside_begin_frame_deadline_interval_); | 359 DCHECK(inside_begin_frame_deadline_interval_); |
| 360 | 360 |
| 361 bool did_draw = AttemptDrawAndSwap(); | 361 bool did_draw = AttemptDrawAndSwap(); |
| 362 DidFinishFrame(did_draw); | 362 DidFinishFrame(did_draw); |
| 363 } | 363 } |
| 364 | 364 |
| 365 void DisplayScheduler::DidFinishFrame(bool did_draw) { | 365 void DisplayScheduler::DidFinishFrame(bool did_draw) { |
| 366 // TODO(eseckler): Determine and set correct |ack.latest_confirmed_frame|. | 366 // TODO(eseckler): Determine and set correct |ack.latest_confirmed_frame|. |
| 367 BeginFrameAck ack(current_begin_frame_args_.source_id, | 367 BeginFrameAck ack(current_begin_frame_args_.source_id, |
| 368 current_begin_frame_args_.sequence_number, | 368 current_begin_frame_args_.sequence_number, |
| 369 current_begin_frame_args_.sequence_number, 0, did_draw); | 369 current_begin_frame_args_.sequence_number, did_draw); |
| 370 begin_frame_source_->DidFinishFrame(this, ack); | 370 begin_frame_source_->DidFinishFrame(this, ack); |
| 371 } | 371 } |
| 372 | 372 |
| 373 void DisplayScheduler::DidSwapBuffers() { | 373 void DisplayScheduler::DidSwapBuffers() { |
| 374 pending_swaps_++; | 374 pending_swaps_++; |
| 375 TRACE_EVENT_ASYNC_BEGIN1("cc", "DisplayScheduler:pending_swaps", this, | 375 TRACE_EVENT_ASYNC_BEGIN1("cc", "DisplayScheduler:pending_swaps", this, |
| 376 "pending_frames", pending_swaps_); | 376 "pending_frames", pending_swaps_); |
| 377 } | 377 } |
| 378 | 378 |
| 379 void DisplayScheduler::DidReceiveSwapBuffersAck() { | 379 void DisplayScheduler::DidReceiveSwapBuffersAck() { |
| 380 pending_swaps_--; | 380 pending_swaps_--; |
| 381 TRACE_EVENT_ASYNC_END1("cc", "DisplayScheduler:pending_swaps", this, | 381 TRACE_EVENT_ASYNC_END1("cc", "DisplayScheduler:pending_swaps", this, |
| 382 "pending_frames", pending_swaps_); | 382 "pending_frames", pending_swaps_); |
| 383 ScheduleBeginFrameDeadline(); | 383 ScheduleBeginFrameDeadline(); |
| 384 } | 384 } |
| 385 | 385 |
| 386 } // namespace cc | 386 } // namespace cc |
| OLD | NEW |