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

Side by Side Diff: cc/throttled_texture_uploader.cc

Issue 11048044: cc: Switch to Chromium DCHECKs and LOGs (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: rebase Created 8 years, 2 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 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 #include "config.h" 5 #include "config.h"
6 #include "ThrottledTextureUploader.h" 6 #include "ThrottledTextureUploader.h"
7 7
8 #include "CCPrioritizedTexture.h" 8 #include "CCPrioritizedTexture.h"
9 #include "CCProxy.h" 9 #include "CCProxy.h"
10 #include "Extensions3DChromium.h" 10 #include "Extensions3DChromium.h"
(...skipping 118 matching lines...) Expand 10 before | Expand all | Expand 10 after
129 { 129 {
130 for (Deque<OwnPtr<Query> >::iterator it = m_pendingQueries.begin(); 130 for (Deque<OwnPtr<Query> >::iterator it = m_pendingQueries.begin();
131 it != m_pendingQueries.end(); ++it) { 131 it != m_pendingQueries.end(); ++it) {
132 if (it->get()->isNonBlocking()) 132 if (it->get()->isNonBlocking())
133 continue; 133 continue;
134 134
135 m_numBlockingTextureUploads--; 135 m_numBlockingTextureUploads--;
136 it->get()->markAsNonBlocking(); 136 it->get()->markAsNonBlocking();
137 } 137 }
138 138
139 ASSERT(!m_numBlockingTextureUploads); 139 CC_DCHECK(!m_numBlockingTextureUploads);
140 } 140 }
141 141
142 double ThrottledTextureUploader::estimatedTexturesPerSecond() 142 double ThrottledTextureUploader::estimatedTexturesPerSecond()
143 { 143 {
144 processQueries(); 144 processQueries();
145 145
146 // The history should never be empty because we initialize all elements with an estimate. 146 // The history should never be empty because we initialize all elements with an estimate.
147 ASSERT(m_texturesPerSecondHistory.size() == uploadHistorySize); 147 CC_DCHECK(m_texturesPerSecondHistory.size() == uploadHistorySize);
148 148
149 // Sort the history and use the median as our estimate. 149 // Sort the history and use the median as our estimate.
150 std::vector<double> sortedHistory(m_texturesPerSecondHistory.begin(), 150 std::vector<double> sortedHistory(m_texturesPerSecondHistory.begin(),
151 m_texturesPerSecondHistory.end()); 151 m_texturesPerSecondHistory.end());
152 std::sort(sortedHistory.begin(), sortedHistory.end()); 152 std::sort(sortedHistory.begin(), sortedHistory.end());
153 153
154 estimatedTexturesPerSecondGlobal = sortedHistory[sortedHistory.size() * 2 / 3]; 154 estimatedTexturesPerSecondGlobal = sortedHistory[sortedHistory.size() * 2 / 3];
155 TRACE_COUNTER1("cc", "estimatedTexturesPerSecond", estimatedTexturesPerSecon dGlobal); 155 TRACE_COUNTER1("cc", "estimatedTexturesPerSecond", estimatedTexturesPerSecon dGlobal);
156 return estimatedTexturesPerSecondGlobal; 156 return estimatedTexturesPerSecondGlobal;
157 } 157 }
(...skipping 34 matching lines...) Expand 10 before | Expand all | Expand 10 after
192 192
193 // TODO(reveman): Move this logic to CCTextureUpdateController after 193 // TODO(reveman): Move this logic to CCTextureUpdateController after
194 // removing Parameters struct. 194 // removing Parameters struct.
195 if (upload.picture) { 195 if (upload.picture) {
196 CCPrioritizedTexture* texture = upload.texture; 196 CCPrioritizedTexture* texture = upload.texture;
197 IntRect pictureRect = upload.geometry.contentRect; 197 IntRect pictureRect = upload.geometry.contentRect;
198 IntRect sourceRect = upload.geometry.sourceRect; 198 IntRect sourceRect = upload.geometry.sourceRect;
199 IntSize destOffset = upload.geometry.destOffset; 199 IntSize destOffset = upload.geometry.destOffset;
200 200
201 texture->acquireBackingTexture(resourceProvider); 201 texture->acquireBackingTexture(resourceProvider);
202 ASSERT(texture->haveBackingTexture()); 202 CC_DCHECK(texture->haveBackingTexture());
203 203
204 ASSERT(resourceProvider->resourceType(texture->resourceId()) == 204 CC_DCHECK(resourceProvider->resourceType(texture->resourceId()) ==
205 CCResourceProvider::GLTexture); 205 CCResourceProvider::GLTexture);
206 206
207 WebGraphicsContext3D* paintContext = CCProxy::hasImplThread() ? 207 WebGraphicsContext3D* paintContext = CCProxy::hasImplThread() ?
208 WebSharedGraphicsContext3D::compositorThreadContext() : 208 WebSharedGraphicsContext3D::compositorThreadContext() :
209 WebSharedGraphicsContext3D::mainThreadContext(); 209 WebSharedGraphicsContext3D::mainThreadContext();
210 GrContext* paintGrContext = CCProxy::hasImplThread() ? 210 GrContext* paintGrContext = CCProxy::hasImplThread() ?
211 WebSharedGraphicsContext3D::compositorThreadGrContext() : 211 WebSharedGraphicsContext3D::compositorThreadGrContext() :
212 WebSharedGraphicsContext3D::mainThreadGrContext(); 212 WebSharedGraphicsContext3D::mainThreadGrContext();
213 213
214 // Flush the context in which the backing texture is created so that it 214 // Flush the context in which the backing texture is created so that it
215 // is available in other shared contexts. It is important to do here 215 // is available in other shared contexts. It is important to do here
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
271 // Remove the oldest values from our history and insert the new one 271 // Remove the oldest values from our history and insert the new one
272 double texturesPerSecond = 1.0 / (usElapsed * 1e-6); 272 double texturesPerSecond = 1.0 / (usElapsed * 1e-6);
273 m_texturesPerSecondHistory.pop_back(); 273 m_texturesPerSecondHistory.pop_back();
274 m_texturesPerSecondHistory.push_front(texturesPerSecond); 274 m_texturesPerSecondHistory.push_front(texturesPerSecond);
275 275
276 m_availableQueries.append(m_pendingQueries.takeFirst()); 276 m_availableQueries.append(m_pendingQueries.takeFirst());
277 } 277 }
278 } 278 }
279 279
280 } 280 }
OLDNEW
« no previous file with comments | « cc/threaded_unittest.cc ('k') | cc/tile_draw_quad.cc » ('j') | cc/yuv_video_draw_quad.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698