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 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
106 | 106 |
107 void BackToBackBeginFrameSource::RemoveObserver(BeginFrameObserver* obs) { | 107 void BackToBackBeginFrameSource::RemoveObserver(BeginFrameObserver* obs) { |
108 DCHECK(obs); | 108 DCHECK(obs); |
109 DCHECK(observers_.find(obs) != observers_.end()); | 109 DCHECK(observers_.find(obs) != observers_.end()); |
110 observers_.erase(obs); | 110 observers_.erase(obs); |
111 pending_begin_frame_observers_.erase(obs); | 111 pending_begin_frame_observers_.erase(obs); |
112 if (pending_begin_frame_observers_.empty()) | 112 if (pending_begin_frame_observers_.empty()) |
113 time_source_->SetActive(false); | 113 time_source_->SetActive(false); |
114 } | 114 } |
115 | 115 |
116 void BackToBackBeginFrameSource::DidFinishFrame(BeginFrameObserver* obs, | 116 void BackToBackBeginFrameSource::DidFinishFrame(BeginFrameObserver* obs) { |
117 const BeginFrameAck& ack) { | |
118 if (observers_.find(obs) != observers_.end()) { | 117 if (observers_.find(obs) != observers_.end()) { |
119 pending_begin_frame_observers_.insert(obs); | 118 pending_begin_frame_observers_.insert(obs); |
120 time_source_->SetActive(true); | 119 time_source_->SetActive(true); |
121 } | 120 } |
122 } | 121 } |
123 | 122 |
124 bool BackToBackBeginFrameSource::IsThrottled() const { | 123 bool BackToBackBeginFrameSource::IsThrottled() const { |
125 return false; | 124 return false; |
126 } | 125 } |
127 | 126 |
(...skipping 176 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
304 DCHECK(obs); | 303 DCHECK(obs); |
305 DCHECK(observers_.find(obs) != observers_.end()); | 304 DCHECK(observers_.find(obs) != observers_.end()); |
306 | 305 |
307 observers_.erase(obs); | 306 observers_.erase(obs); |
308 if (observers_.empty()) { | 307 if (observers_.empty()) { |
309 last_begin_frame_args_ = BeginFrameArgs(); | 308 last_begin_frame_args_ = BeginFrameArgs(); |
310 client_->OnNeedsBeginFrames(false); | 309 client_->OnNeedsBeginFrames(false); |
311 } | 310 } |
312 } | 311 } |
313 | 312 |
314 void ExternalBeginFrameSource::DidFinishFrame(BeginFrameObserver* obs, | 313 void ExternalBeginFrameSource::DidFinishFrame(BeginFrameObserver* obs) {} |
315 const BeginFrameAck& ack) {} | |
316 | 314 |
317 bool ExternalBeginFrameSource::IsThrottled() const { | 315 bool ExternalBeginFrameSource::IsThrottled() const { |
318 return true; | 316 return true; |
319 } | 317 } |
320 | 318 |
321 void ExternalBeginFrameSource::OnSetBeginFrameSourcePaused(bool paused) { | 319 void ExternalBeginFrameSource::OnSetBeginFrameSourcePaused(bool paused) { |
322 if (paused_ == paused) | 320 if (paused_ == paused) |
323 return; | 321 return; |
324 paused_ = paused; | 322 paused_ = paused; |
325 std::unordered_set<BeginFrameObserver*> observers(observers_); | 323 std::unordered_set<BeginFrameObserver*> observers(observers_); |
(...skipping 13 matching lines...) Expand all Loading... |
339 DCHECK((args.source_id != last_args.source_id) || | 337 DCHECK((args.source_id != last_args.source_id) || |
340 (args.sequence_number > last_args.sequence_number)) | 338 (args.sequence_number > last_args.sequence_number)) |
341 << "current " << args.AsValue()->ToString() << ", last " | 339 << "current " << args.AsValue()->ToString() << ", last " |
342 << last_args.AsValue()->ToString(); | 340 << last_args.AsValue()->ToString(); |
343 obs->OnBeginFrame(args); | 341 obs->OnBeginFrame(args); |
344 } | 342 } |
345 } | 343 } |
346 } | 344 } |
347 | 345 |
348 } // namespace cc | 346 } // namespace cc |
OLD | NEW |