Index: cc/texture_uploader.h |
diff --git a/cc/texture_uploader.h b/cc/texture_uploader.h |
index 638cbb270ce9b24689d5095baf174ade4f4d1a13..5505204a689060ee6a90fe78a15ba7e3a63a5ca2 100644 |
--- a/cc/texture_uploader.h |
+++ b/cc/texture_uploader.h |
@@ -1,3 +1,32 @@ |
// Copyright 2012 The Chromium Authors. All rights reserved. |
// Use of this source code is governed by a BSD-style license that can be |
// found in the LICENSE file. |
+ |
+#ifndef TextureUploader_h |
+#define TextureUploader_h |
+ |
+#include "LayerTextureUpdater.h" |
+ |
+namespace cc { |
+ |
+class TextureUploader { |
+public: |
+ struct Parameters { |
+ LayerTextureUpdater::Texture* texture; |
+ IntRect sourceRect; |
+ IntSize destOffset; |
+ }; |
+ |
+ virtual ~TextureUploader() { } |
+ |
+ virtual size_t numBlockingUploads() = 0; |
+ virtual void markPendingUploadsAsNonBlocking() = 0; |
+ |
+ // Returns our throughput on the GPU process |
+ virtual double estimatedTexturesPerSecond() = 0; |
+ virtual void uploadTexture(CCResourceProvider*, Parameters) = 0; |
+}; |
+ |
+} |
+ |
+#endif |