#include "ui/gfx/rect.h"
#include "ui/gfx/size.h"
-#include "third_party/WebKit/public/platform/WebGraphicsContext3D.h"
+class SkBitmap;
namespace cc {
class Layer;
// Composite immediately. Used in single-threaded mode.
virtual void Composite() = 0;
- // Generates a UIResource and returns a UIResourceId. May return 0.
- virtual cc::UIResourceId GenerateUIResource(
- const cc::UIResourceBitmap& bitmap) = 0;
+ // Generates a UIResource and returns a UIResourceId. |is_transient|
+ // indicates whether or not to release the resource once the bitmap
+ // has been uploaded. May return 0.
+ virtual cc::UIResourceId GenerateUIResource(const SkBitmap& bitmap,
+ bool is_transient) = 0;
+
+ // Generates an ETC1 compressed UIResource. See above for |is_transient|.
+ // May return 0.
+ virtual cc::UIResourceId GenerateCompressedUIResource(const gfx::Size& size,
+ void* pixels,
+ bool is_transient) = 0;
// Deletes a UIResource.
virtual void DeleteUIResource(cc::UIResourceId resource_id) = 0;
- // Generates an OpenGL texture and returns a texture handle. May return 0
- // if the current context is lost.
- virtual blink::WebGLId GenerateTexture(gfx::JavaBitmap& bitmap) = 0;
-
- // Generates an OpenGL compressed texture and returns a texture handle. May
- // return 0 if the current context is lost.
- virtual blink::WebGLId GenerateCompressedTexture(gfx::Size& size,
- int data_size,
- void* data) = 0;
-
- // Deletes an OpenGL texture.
- virtual void DeleteTexture(blink::WebGLId texture_id) = 0;
-
- // Grabs a copy of |texture_id| and saves it into |bitmap|. No scaling is
- // done. It is assumed that the texture size matches that of the bitmap.
- virtual bool CopyTextureToBitmap(blink::WebGLId texture_id,
- gfx::JavaBitmap& bitmap) = 0;
-
- // Grabs a copy of |texture_id| and saves it into |bitmap|. No scaling is
- // done. |src_rect| allows the caller to specify which rect of |texture_id|
- // to copy to |bitmap|. It needs to match the size of |bitmap|. Returns
- // true if the |texture_id| was copied into |bitmap|, false if not.
- virtual bool CopyTextureToBitmap(blink::WebGLId texture_id,
- const gfx::Rect& src_rect,
- gfx::JavaBitmap& bitmap) = 0;
protected:
Compositor() {}
};