| Index: src/gpu/GrGpu.h
|
| diff --git a/src/gpu/GrGpu.h b/src/gpu/GrGpu.h
|
| index 11f87e0458d9b0b8b0aa3cd386ee7363d4a6028c..cd7502e18ac3a0f5a0588d5c9aaafe1ab479d094 100644
|
| --- a/src/gpu/GrGpu.h
|
| +++ b/src/gpu/GrGpu.h
|
| @@ -71,15 +71,26 @@ public:
|
| * two but underlying API requires a power of two texture then srcData
|
| * will be embedded in a power of two texture. The extra width and height
|
| * is filled as though srcData were rendered clamped into the texture.
|
| + * The exception is when using compressed data formats. In this case, the
|
| + * desc width and height must be a multiple of the compressed format block
|
| + * size otherwise this function returns NULL. Similarly, if the underlying
|
| + * API requires a power of two texture and the source width and height are not
|
| + * a power of two, then this function returns NULL.
|
| *
|
| * If kRenderTarget_TextureFlag is specified the GrRenderTarget is
|
| * accessible via GrTexture::asRenderTarget(). The texture will hold a ref
|
| - * on the render target until the texture is destroyed.
|
| + * on the render target until the texture is destroyed. Compressed textures
|
| + * cannot have the kRenderTarget_TextureFlag set.
|
| *
|
| * @param desc describes the texture to be created.
|
| * @param srcData texel data to load texture. Begins with full-size
|
| - * palette data for paletted textures. Contains width*
|
| - * height texels. If NULL texture data is uninitialized.
|
| + * palette data for paletted textures. For compressed
|
| + * formats it contains the compressed pixel data. Otherwise,
|
| + * it contains width*height texels. If NULL texture data
|
| + * is uninitialized.
|
| + * @param rowBytes the number of bytes between consecutive rows. Zero
|
| + * means rows are tightly packed. This field is ignored
|
| + * for compressed formats.
|
| *
|
| * @return The texture object if successful, otherwise NULL.
|
| */
|
| @@ -414,6 +425,8 @@ private:
|
| virtual GrTexture* onCreateTexture(const GrTextureDesc& desc,
|
| const void* srcData,
|
| size_t rowBytes) = 0;
|
| + virtual GrTexture* onCreateCompressedTexture(const GrTextureDesc& desc,
|
| + const void* srcData) = 0;
|
| virtual GrTexture* onWrapBackendTexture(const GrBackendTextureDesc&) = 0;
|
| virtual GrRenderTarget* onWrapBackendRenderTarget(const GrBackendRenderTargetDesc&) = 0;
|
| virtual GrVertexBuffer* onCreateVertexBuffer(size_t size, bool dynamic) = 0;
|
|
|