| OLD | NEW |
| (Empty) |
| 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 | |
| 3 // found in the LICENSE file. | |
| 4 | |
| 5 #include "cc/resources/resource_update_queue.h" | |
| 6 | |
| 7 #include "cc/resources/prioritized_resource.h" | |
| 8 | |
| 9 namespace cc { | |
| 10 | |
| 11 ResourceUpdateQueue::ResourceUpdateQueue() {} | |
| 12 | |
| 13 ResourceUpdateQueue::~ResourceUpdateQueue() {} | |
| 14 | |
| 15 void ResourceUpdateQueue::AppendFullUpload(const ResourceUpdate& upload) { | |
| 16 full_entries_.push_back(upload); | |
| 17 } | |
| 18 | |
| 19 void ResourceUpdateQueue::AppendPartialUpload(const ResourceUpdate& upload) { | |
| 20 partial_entries_.push_back(upload); | |
| 21 } | |
| 22 | |
| 23 void ResourceUpdateQueue::ClearUploadsToEvictedResources() { | |
| 24 ClearUploadsToEvictedResources(&full_entries_); | |
| 25 ClearUploadsToEvictedResources(&partial_entries_); | |
| 26 } | |
| 27 | |
| 28 void ResourceUpdateQueue::ClearUploadsToEvictedResources( | |
| 29 std::deque<ResourceUpdate>* entry_queue) { | |
| 30 std::deque<ResourceUpdate> temp; | |
| 31 entry_queue->swap(temp); | |
| 32 while (temp.size()) { | |
| 33 ResourceUpdate upload = temp.front(); | |
| 34 temp.pop_front(); | |
| 35 if (!upload.texture->BackingResourceWasEvicted()) | |
| 36 entry_queue->push_back(upload); | |
| 37 } | |
| 38 } | |
| 39 | |
| 40 ResourceUpdate ResourceUpdateQueue::TakeFirstFullUpload() { | |
| 41 ResourceUpdate first = full_entries_.front(); | |
| 42 full_entries_.pop_front(); | |
| 43 return first; | |
| 44 } | |
| 45 | |
| 46 ResourceUpdate ResourceUpdateQueue::TakeFirstPartialUpload() { | |
| 47 ResourceUpdate first = partial_entries_.front(); | |
| 48 partial_entries_.pop_front(); | |
| 49 return first; | |
| 50 } | |
| 51 | |
| 52 bool ResourceUpdateQueue::HasMoreUpdates() const { | |
| 53 return !full_entries_.empty() || !partial_entries_.empty(); | |
| 54 } | |
| 55 | |
| 56 } // namespace cc | |
| OLD | NEW |