OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 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 | 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/begin_frame_source.h" | 5 #include "cc/scheduler/begin_frame_source.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 | 8 |
9 #include "base/atomic_sequence_num.h" | 9 #include "base/atomic_sequence_num.h" |
10 #include "base/auto_reset.h" | 10 #include "base/auto_reset.h" |
(...skipping 327 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
338 uint64_t latest_confirmed_sequence_number = current_sequence_number_; | 338 uint64_t latest_confirmed_sequence_number = current_sequence_number_; |
339 for (const auto& entry : latest_confirmed_sequence_numbers_) { | 339 for (const auto& entry : latest_confirmed_sequence_numbers_) { |
340 latest_confirmed_sequence_number = | 340 latest_confirmed_sequence_number = |
341 std::min(latest_confirmed_sequence_number, entry.second); | 341 std::min(latest_confirmed_sequence_number, entry.second); |
342 } | 342 } |
343 return latest_confirmed_sequence_number; | 343 return latest_confirmed_sequence_number; |
344 } | 344 } |
345 | 345 |
346 void BeginFrameObserverAckTracker::AsValueInto( | 346 void BeginFrameObserverAckTracker::AsValueInto( |
347 base::trace_event::TracedValue* state) const { | 347 base::trace_event::TracedValue* state) const { |
348 base::SmallMap<std::map<BeginFrameObserver*, uint64_t>, 4> | |
349 latest_confirmed_sequence_numbers_; | |
350 state->SetInteger("current_source_id", current_source_id_); | 348 state->SetInteger("current_source_id", current_source_id_); |
351 state->SetInteger("current_sequence_number", current_sequence_number_); | 349 state->SetInteger("current_sequence_number", current_sequence_number_); |
352 state->SetInteger("num_observers", observers_.size()); | 350 state->SetInteger("num_observers", observers_.size()); |
353 state->SetInteger("num_finished_observers", finished_observers_.size()); | 351 state->SetInteger("num_finished_observers", finished_observers_.size()); |
354 state->SetBoolean("observers_had_damage", observers_had_damage_); | 352 state->SetBoolean("observers_had_damage", observers_had_damage_); |
355 | 353 |
356 state->BeginArray("latest_confirmed_sequence_numbers"); | 354 state->BeginArray("latest_confirmed_sequence_numbers"); |
357 for (const auto& kv : latest_confirmed_sequence_numbers_) { | 355 for (const auto& kv : latest_confirmed_sequence_numbers_) { |
358 state->AppendInteger(kv.second); | 356 state->AppendInteger(kv.second); |
359 } | 357 } |
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
480 frame_active_ = false; | 478 frame_active_ = false; |
481 | 479 |
482 BeginFrameAck ack(last_begin_frame_args_.source_id, | 480 BeginFrameAck ack(last_begin_frame_args_.source_id, |
483 last_begin_frame_args_.sequence_number, | 481 last_begin_frame_args_.sequence_number, |
484 ack_tracker_.LatestConfirmedSequenceNumber(), | 482 ack_tracker_.LatestConfirmedSequenceNumber(), |
485 ack_tracker_.AnyObserversHadDamage()); | 483 ack_tracker_.AnyObserversHadDamage()); |
486 client_->OnDidFinishFrame(ack); | 484 client_->OnDidFinishFrame(ack); |
487 } | 485 } |
488 | 486 |
489 } // namespace cc | 487 } // namespace cc |
OLD | NEW |