OLD | NEW |
1 // Copyright 2012 The Chromium Authors. All rights reserved. | 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 | 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 #ifndef CCTextureUpdateQueue_h | 5 #ifndef CCTextureUpdateQueue_h |
6 #define CCTextureUpdateQueue_h | 6 #define CCTextureUpdateQueue_h |
7 | 7 |
8 #include "base/basictypes.h" | 8 #include "base/basictypes.h" |
9 #include "cc/texture_copier.h" | 9 #include "cc/texture_copier.h" |
10 #include "cc/texture_uploader.h" | 10 #include "cc/texture_uploader.h" |
11 #include <deque> | 11 #include <deque> |
12 | 12 |
13 namespace cc { | 13 namespace cc { |
14 | 14 |
15 class CCTextureUpdateQueue { | 15 class TextureUpdateQueue { |
16 public: | 16 public: |
17 CCTextureUpdateQueue(); | 17 TextureUpdateQueue(); |
18 virtual ~CCTextureUpdateQueue(); | 18 virtual ~TextureUpdateQueue(); |
19 | 19 |
20 void appendFullUpload(TextureUploader::Parameters); | 20 void appendFullUpload(TextureUploader::Parameters); |
21 void appendPartialUpload(TextureUploader::Parameters); | 21 void appendPartialUpload(TextureUploader::Parameters); |
22 void appendCopy(TextureCopier::Parameters); | 22 void appendCopy(TextureCopier::Parameters); |
23 | 23 |
24 void clearUploadsToEvictedResources(); | 24 void clearUploadsToEvictedResources(); |
25 | 25 |
26 TextureUploader::Parameters takeFirstFullUpload(); | 26 TextureUploader::Parameters takeFirstFullUpload(); |
27 TextureUploader::Parameters takeFirstPartialUpload(); | 27 TextureUploader::Parameters takeFirstPartialUpload(); |
28 TextureCopier::Parameters takeFirstCopy(); | 28 TextureCopier::Parameters takeFirstCopy(); |
29 | 29 |
30 size_t fullUploadSize() const { return m_fullEntries.size(); } | 30 size_t fullUploadSize() const { return m_fullEntries.size(); } |
31 size_t partialUploadSize() const { return m_partialEntries.size(); } | 31 size_t partialUploadSize() const { return m_partialEntries.size(); } |
32 size_t copySize() const { return m_copyEntries.size(); } | 32 size_t copySize() const { return m_copyEntries.size(); } |
33 | 33 |
34 bool hasMoreUpdates() const; | 34 bool hasMoreUpdates() const; |
35 | 35 |
36 private: | 36 private: |
37 void clearUploadsToEvictedResources(std::deque<TextureUploader::Parameters>&
entryQueue); | 37 void clearUploadsToEvictedResources(std::deque<TextureUploader::Parameters>&
entryQueue); |
38 std::deque<TextureUploader::Parameters> m_fullEntries; | 38 std::deque<TextureUploader::Parameters> m_fullEntries; |
39 std::deque<TextureUploader::Parameters> m_partialEntries; | 39 std::deque<TextureUploader::Parameters> m_partialEntries; |
40 std::deque<TextureCopier::Parameters> m_copyEntries; | 40 std::deque<TextureCopier::Parameters> m_copyEntries; |
41 | 41 |
42 DISALLOW_COPY_AND_ASSIGN(CCTextureUpdateQueue); | 42 DISALLOW_COPY_AND_ASSIGN(TextureUpdateQueue); |
43 }; | 43 }; |
44 | 44 |
45 } | 45 } |
46 | 46 |
47 #endif // CCTextureUpdateQueue_h | 47 #endif // CCTextureUpdateQueue_h |
OLD | NEW |