aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/gl/GrGLGpu.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/gpu/gl/GrGLGpu.h')
-rw-r--r--src/gpu/gl/GrGLGpu.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/src/gpu/gl/GrGLGpu.h b/src/gpu/gl/GrGLGpu.h
index 6f194dcd6c..1ed91a5a82 100644
--- a/src/gpu/gl/GrGLGpu.h
+++ b/src/gpu/gl/GrGLGpu.h
@@ -159,6 +159,18 @@ private:
// compatible stencil format, or negative if there is no compatible stencil format.
int getCompatibleStencilIndex(GrPixelConfig config);
+ // If |desc.fTextureStorageAllocator| exists, use that to create the
+ // texture. Otherwise, create the texture directly.
+ // Returns whether the texture is successfully created. On success, the
+ // result is stored in |info|.
+ // The texture is populated with |srcData|, if it exists.
+ // The texture parameters are cached in |initialTexParams|.
+ bool createTextureImpl(const GrSurfaceDesc& desc, GrGLTextureInfo* info,
+ bool renderTarget, const void* srcData,
+ GrGLTexture::TexParams* initialTexParams, size_t rowBytes);
+ bool createTextureExternalAllocatorImpl(const GrSurfaceDesc& desc, GrGLTextureInfo* info,
+ const void* srcData, size_t rowBytes);
+
void onClear(GrRenderTarget*, const SkIRect& rect, GrColor color) override;
void onClearStencilClip(GrRenderTarget*, const SkIRect& rect, bool insideClip) override;
@@ -319,7 +331,7 @@ private:
kTransfer_UploadType, // we are using a transfer buffer to copy data
};
bool uploadTexData(const GrSurfaceDesc& desc,
- GrGLenum target,
+ GrGLTextureInfo* info,
UploadType uploadType,
int left, int top, int width, int height,
GrPixelConfig dataConfig,