diff options
author | Teng-Hui Zhu <ztenghui@google.com> | 2011-08-01 11:32:58 -0700 |
---|---|---|
committer | Teng-Hui Zhu <ztenghui@google.com> | 2011-08-02 17:48:21 -0700 |
commit | 7c554a61cb935660cdc86905d040c781b490150f (patch) | |
tree | 033ba7f31eb01931dd94eb37cff5e014faf79bc3 /Source/WebCore/platform/graphics/android/GLUtils.h | |
parent | d4f990572c3485cdc15cff48c3bedc6e7cad809b (diff) | |
download | external_webkit-7c554a61cb935660cdc86905d040c781b490150f.zip external_webkit-7c554a61cb935660cdc86905d040c781b490150f.tar.gz external_webkit-7c554a61cb935660cdc86905d040c781b490150f.tar.bz2 |
Shared surface texture
Instead of assigning each tile a Surface Texture, now just a normal GL texture.
The content from skia bitmap will first drawn into a queue of Surface Textures,
at draw time, blit them into each tile's GL texture.
Added extra lock to protect the queue operation and Surface Texture operation.
bug:5044597
Change-Id: I25f46228b93a3e99526daf52d8bd0d8d8fcc2879
Diffstat (limited to 'Source/WebCore/platform/graphics/android/GLUtils.h')
-rw-r--r-- | Source/WebCore/platform/graphics/android/GLUtils.h | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/Source/WebCore/platform/graphics/android/GLUtils.h b/Source/WebCore/platform/graphics/android/GLUtils.h index a015136..57557b2 100644 --- a/Source/WebCore/platform/graphics/android/GLUtils.h +++ b/Source/WebCore/platform/graphics/android/GLUtils.h @@ -64,15 +64,19 @@ public: static void deleteTexture(GLuint* texture); static GLuint createSampleColorTexture(int r, int g, int b); static GLuint createSampleTexture(); + static GLuint createBaseTileGLTexture(int width, int height); + static void createTextureWithBitmap(GLuint texture, const SkBitmap& bitmap, GLint filter = GL_LINEAR); static void updateTextureWithBitmap(GLuint texture, int x, int y, const SkBitmap& bitmap, GLint filter = GL_LINEAR); static void createEGLImageFromTexture(GLuint texture, EGLImageKHR* image); static void createTextureFromEGLImage(GLuint texture, EGLImageKHR image, GLint filter = GL_LINEAR); - static void paintTextureWithBitmap(TextureInfo* textureInfo, const SkSize& requiredSize, const SkBitmap& bitmap, int x, int y); - - static void createSurfaceTextureWithBitmap(TextureInfo* texture, const SkBitmap& bitmap, GLint filter = GL_LINEAR); - static void updateSurfaceTextureWithBitmap(TextureInfo* texture, int x, int y, const SkBitmap& bitmap, GLint filter = GL_LINEAR); + static void paintTextureWithBitmap(const TileRenderInfo* renderInfo, const SkBitmap& bitmap); +#if DEPRECATED_SURFACE_TEXTURE_MODE + static void createSurfaceTextureWithBitmap(const TileRenderInfo* , const SkBitmap& bitmap, GLint filter = GL_LINEAR); + static void updateSurfaceTextureWithBitmap(const TileRenderInfo* , int x, int y, const SkBitmap& bitmap, GLint filter = GL_LINEAR); +#endif + static void updateSharedSurfaceTextureWithBitmap(const TileRenderInfo* , int x, int y, const SkBitmap& bitmap); }; } // namespace WebCore |