aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/ImageFilterCacheTest.cpp
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2017-04-04 16:50:22 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-04-05 11:55:35 +0000
commitfb0bd98a43fa11e09705837418167dd72bb4a361 (patch)
tree67579cf4663c41d4b9ec36bbd61020aa3ccbe57f /tests/ImageFilterCacheTest.cpp
parentbe5387b9308ad0b92a48a1272b618b6eaa08a771 (diff)
Rm readPixels from GrSurface & move read/writeSurfacePixels to GrContextPriv
This is in service of: https://skia-review.googlesource.com/c/11125/ (Add parallel proxyID to StencilOps & RenderTargetOpList) where I want a better choke point for texture creation to improve discard handling. Change-Id: If57a7de47edc0853dae7bc61337d9acdc03d63b0 Reviewed-on: https://skia-review.googlesource.com/11200 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'tests/ImageFilterCacheTest.cpp')
-rw-r--r--tests/ImageFilterCacheTest.cpp28
1 files changed, 11 insertions, 17 deletions
diff --git a/tests/ImageFilterCacheTest.cpp b/tests/ImageFilterCacheTest.cpp
index fe67925fda..95ade044bd 100644
--- a/tests/ImageFilterCacheTest.cpp
+++ b/tests/ImageFilterCacheTest.cpp
@@ -181,18 +181,6 @@ DEF_TEST(ImageFilterCache_ImageBackedRaster, reporter) {
#include "GrContext.h"
#include "GrResourceProvider.h"
-static GrTexture* create_texture(GrContext* context) {
- SkBitmap srcBM = create_bm();
-
- GrSurfaceDesc desc;
- desc.fConfig = kRGBA_8888_GrPixelConfig;
- desc.fFlags = kNone_GrSurfaceFlags;
- desc.fWidth = kFullSize;
- desc.fHeight = kFullSize;
-
- return context->resourceProvider()->createTexture(desc, SkBudgeted::kNo, srcBM.getPixels(), 0);
-}
-
static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider) {
SkBitmap srcBM = create_bm();
@@ -208,10 +196,16 @@ static sk_sp<GrTextureProxy> create_proxy(GrResourceProvider* resourceProvider)
srcBM.rowBytes());
}
-
DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ctxInfo) {
- sk_sp<GrTexture> srcTexture(create_texture(ctxInfo.grContext()));
- if (!srcTexture) {
+ GrContext* context = ctxInfo.grContext();
+
+ sk_sp<GrTextureProxy> srcProxy(create_proxy(context->resourceProvider()));
+ if (!srcProxy) {
+ return;
+ }
+
+ GrTexture* tex = srcProxy->instantiate(context->resourceProvider());
+ if (!tex) {
return;
}
@@ -222,8 +216,8 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(ImageFilterCache_ImageBackedGPU, reporter, ct
backendDesc.fWidth = kFullSize;
backendDesc.fHeight = kFullSize;
backendDesc.fSampleCnt = 0;
- backendDesc.fTextureHandle = srcTexture->getTextureHandle();
- sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(ctxInfo.grContext(),
+ backendDesc.fTextureHandle = tex->getTextureHandle();
+ sk_sp<SkImage> srcImage(SkImage::MakeFromTexture(context,
backendDesc,
kPremul_SkAlphaType));
if (!srcImage) {