Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(201)

Side by Side Diff: third_party/WebKit/Source/platform/graphics/ContiguousContainer.h

Issue 2107103002: Find cached display items directly during painting (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 4 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
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 #ifndef ContiguousContainer_h 5 #ifndef ContiguousContainer_h
6 #define ContiguousContainer_h 6 #define ContiguousContainer_h
7 7
8 #include "platform/PlatformExport.h" 8 #include "platform/PlatformExport.h"
9 #include "wtf/Alignment.h" 9 #include "wtf/Alignment.h"
10 #include "wtf/Allocator.h" 10 #include "wtf/Allocator.h"
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 size_t capacityInBytes() const; 52 size_t capacityInBytes() const;
53 size_t usedCapacityInBytes() const; 53 size_t usedCapacityInBytes() const;
54 size_t memoryUsageInBytes() const; 54 size_t memoryUsageInBytes() const;
55 55
56 // These do not invoke constructors or destructors. 56 // These do not invoke constructors or destructors.
57 void reserveInitialCapacity(size_t, const char* typeName); 57 void reserveInitialCapacity(size_t, const char* typeName);
58 void* allocate(size_t objectSize, const char* typeName); 58 void* allocate(size_t objectSize, const char* typeName);
59 void removeLast(); 59 void removeLast();
60 void clear(); 60 void clear();
61 void swap(ContiguousContainerBase&); 61 void swap(ContiguousContainerBase&);
62 void removeEmptyBuffers();
jbroman 2016/07/06 19:09:37 Mind a comment clarifying the intended use of this
Xianzhu 2016/07/06 19:29:34 Done.
62 63
63 Vector<void*> m_elements; 64 Vector<void*> m_elements;
64 65
65 private: 66 private:
66 class Buffer; 67 class Buffer;
67 68
68 Buffer* allocateNewBufferForNextAllocation(size_t, const char* typeName); 69 Buffer* allocateNewBufferForNextAllocation(size_t, const char* typeName);
69 70
70 Vector<std::unique_ptr<Buffer>> m_buffers; 71 Vector<std::unique_ptr<Buffer>> m_buffers;
71 unsigned m_endIndex; 72 unsigned m_endIndex;
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 136
136 ContiguousContainerBase::operator=(std::move(source)); 137 ContiguousContainerBase::operator=(std::move(source));
137 return *this; 138 return *this;
138 } 139 }
139 140
140 using ContiguousContainerBase::size; 141 using ContiguousContainerBase::size;
141 using ContiguousContainerBase::isEmpty; 142 using ContiguousContainerBase::isEmpty;
142 using ContiguousContainerBase::capacityInBytes; 143 using ContiguousContainerBase::capacityInBytes;
143 using ContiguousContainerBase::usedCapacityInBytes; 144 using ContiguousContainerBase::usedCapacityInBytes;
144 using ContiguousContainerBase::memoryUsageInBytes; 145 using ContiguousContainerBase::memoryUsageInBytes;
146 using ContiguousContainerBase::removeEmptyBuffers;
145 147
146 iterator begin() { return iterator(m_elements.begin()); } 148 iterator begin() { return iterator(m_elements.begin()); }
147 iterator end() { return iterator(m_elements.end()); } 149 iterator end() { return iterator(m_elements.end()); }
148 const_iterator begin() const { return const_iterator(m_elements.begin()); } 150 const_iterator begin() const { return const_iterator(m_elements.begin()); }
149 const_iterator end() const { return const_iterator(m_elements.end()); } 151 const_iterator end() const { return const_iterator(m_elements.end()); }
150 reverse_iterator rbegin() { return reverse_iterator(m_elements.rbegin()); } 152 reverse_iterator rbegin() { return reverse_iterator(m_elements.rbegin()); }
151 reverse_iterator rend() { return reverse_iterator(m_elements.rend()); } 153 reverse_iterator rend() { return reverse_iterator(m_elements.rend()); }
152 const_reverse_iterator rbegin() const { return const_reverse_iterator(m_elem ents.rbegin()); } 154 const_reverse_iterator rbegin() const { return const_reverse_iterator(m_elem ents.rbegin()); }
153 const_reverse_iterator rend() const { return const_reverse_iterator(m_elemen ts.rend()); } 155 const_reverse_iterator rend() const { return const_reverse_iterator(m_elemen ts.rend()); }
154 156
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
211 ASSERT(alignedSize % alignment == 0); 213 ASSERT(alignedSize % alignment == 0);
212 ASSERT(alignedSize >= size); 214 ASSERT(alignedSize >= size);
213 ASSERT(alignedSize < size + alignment); 215 ASSERT(alignedSize < size + alignment);
214 return alignedSize; 216 return alignedSize;
215 } 217 }
216 }; 218 };
217 219
218 } // namespace blink 220 } // namespace blink
219 221
220 #endif // ContiguousContainer_h 222 #endif // ContiguousContainer_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698