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

Unified Diff: cc/CCTextureUpdateController.h

Issue 10916292: Adaptively throttle texture uploads (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: cc_unittests passing again Created 8 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: cc/CCTextureUpdateController.h
diff --git a/cc/CCTextureUpdateController.h b/cc/CCTextureUpdateController.h
index 61e0f6ce3257333449bbafb313b95ebf22be5116..0f69ae8bbd0f010d89b98cc2b76274ddf12e09a5 100644
--- a/cc/CCTextureUpdateController.h
+++ b/cc/CCTextureUpdateController.h
@@ -26,11 +26,12 @@ protected:
class CCTextureUpdateController : public CCTimerClient {
WTF_MAKE_NONCOPYABLE(CCTextureUpdateController);
public:
- static PassOwnPtr<CCTextureUpdateController> create(CCTextureUpdateControllerClient* client, CCThread* thread, PassOwnPtr<CCTextureUpdateQueue> queue, CCResourceProvider* resourceProvider, TextureCopier* copier, TextureUploader* uploader)
+ static PassOwnPtr<CCTextureUpdateController> create(CCTextureUpdateControllerClient* client, CCThread* thread, PassOwnPtr<CCTextureUpdateQueue> queue, CCResourceProvider* resourceProvider, TextureCopier* copier, TextureUploader* uploader, size_t maxPartialTextureUpdates)
{
- return adoptPtr(new CCTextureUpdateController(client, thread, queue, resourceProvider, copier, uploader));
+ return adoptPtr(new CCTextureUpdateController(client, thread, queue, resourceProvider, copier, uploader, maxPartialTextureUpdates));
}
- static size_t maxPartialTextureUpdates();
+ static size_t maxPartialUpdatesDefault();
+ static size_t maxPartialUpdates(TextureUploader*);
static void updateTextures(CCResourceProvider*, TextureCopier*, TextureUploader*, CCTextureUpdateQueue*, size_t count);
virtual ~CCTextureUpdateController();
@@ -47,7 +48,9 @@ public:
virtual size_t updateMoreTexturesSize() const;
protected:
- CCTextureUpdateController(CCTextureUpdateControllerClient*, CCThread*, PassOwnPtr<CCTextureUpdateQueue>, CCResourceProvider*, TextureCopier*, TextureUploader*);
+ CCTextureUpdateController(CCTextureUpdateControllerClient*, CCThread*, PassOwnPtr<CCTextureUpdateQueue>, CCResourceProvider*, TextureCopier*, TextureUploader*, size_t maxPartialTextureUpdates);
+
+ static size_t maxFullUpdatesPerTick(TextureUploader*);
// This returns true when there were textures left to update.
bool updateMoreTexturesIfEnoughTimeRemaining();
@@ -61,6 +64,8 @@ protected:
TextureCopier* m_copier;
TextureUploader* m_uploader;
double m_monotonicTimeLimit;
+ size_t m_textureUpdatesPerTick;
+ size_t m_maxPartialTextureUpdates;
bool m_firstUpdateAttempt;
};

Powered by Google App Engine
This is Rietveld 408576698