aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests
diff options
context:
space:
mode:
authorGravatar Greg Daniel <egdaniel@google.com>2017-04-26 12:19:14 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-04-27 18:15:38 +0000
commitfdd77daedbba3b7c53be74a82fb9fae891b51696 (patch)
treeaf2780b3f60109deb860b774eb128487d0134de0 /tests
parenta41d48b739c144ee7b36290a9642064bc6cdcd05 (diff)
Plumb the use of GrBackendRenderTarget throughout Skia
Bug: skia: Change-Id: Ib99a58d9552f5c7b8d77c09dcc72fa88326c26aa Reviewed-on: https://skia-review.googlesource.com/14148 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com>
Diffstat (limited to 'tests')
-rw-r--r--tests/ProxyConversionTest.cpp18
-rw-r--r--tests/ProxyTest.cpp17
-rw-r--r--tests/VkWrapTests.cpp20
3 files changed, 22 insertions, 33 deletions
diff --git a/tests/ProxyConversionTest.cpp b/tests/ProxyConversionTest.cpp
index a041d68c2b..167cc4b10d 100644
--- a/tests/ProxyConversionTest.cpp
+++ b/tests/ProxyConversionTest.cpp
@@ -10,6 +10,7 @@
#include "Test.h"
#if SK_SUPPORT_GPU
+#include "GrBackendSurface.h"
#include "GrRenderTargetProxy.h"
#include "GrResourceProvider.h"
#include "GrSurfaceProxy.h"
@@ -18,16 +19,12 @@
static sk_sp<GrSurfaceProxy> make_wrapped_FBO0(GrResourceProvider* provider,
skiatest::Reporter* reporter,
const GrSurfaceDesc& desc) {
- GrBackendRenderTargetDesc backendDesc;
- backendDesc.fWidth = desc.fWidth;
- backendDesc.fHeight = desc.fHeight;
- backendDesc.fConfig = desc.fConfig;
- backendDesc.fOrigin = desc.fOrigin;
- backendDesc.fSampleCnt = desc.fSampleCnt;
- backendDesc.fStencilBits = 8;
- backendDesc.fRenderTargetHandle = 0;
-
- sk_sp<GrRenderTarget> defaultFBO(provider->wrapBackendRenderTarget(backendDesc));
+ GrGLFramebufferInfo fboInfo;
+ fboInfo.fFBOID = 0;
+ GrBackendRenderTarget backendRT(desc.fWidth, desc.fHeight, desc.fSampleCnt, 8,
+ desc.fConfig, fboInfo);
+
+ sk_sp<GrRenderTarget> defaultFBO(provider->wrapBackendRenderTarget(backendRT, desc.fOrigin));
SkASSERT(!defaultFBO->asTexture());
return GrSurfaceProxy::MakeWrapped(std::move(defaultFBO));
@@ -62,6 +59,7 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(WrappedProxyConversionTest, reporter, ctxInfo
desc.fWidth = 64;
desc.fHeight = 64;
desc.fConfig = kRGBA_8888_GrPixelConfig;
+ desc.fOrigin = kBottomLeft_GrSurfaceOrigin;
if (kOpenGL_GrBackend == ctxInfo.backend()) {
// External on-screen render target.
diff --git a/tests/ProxyTest.cpp b/tests/ProxyTest.cpp
index db407d791f..6553b4e94f 100644
--- a/tests/ProxyTest.cpp
+++ b/tests/ProxyTest.cpp
@@ -10,6 +10,7 @@
#include "Test.h"
#if SK_SUPPORT_GPU
+#include "GrBackendSurface.h"
#include "GrRenderTargetPriv.h"
#include "GrRenderTargetProxy.h"
#include "GrResourceProvider.h"
@@ -20,7 +21,7 @@
static void check_surface(skiatest::Reporter* reporter,
GrSurfaceProxy* proxy,
GrSurfaceOrigin origin,
- int width, int height,
+ int width, int height,
GrPixelConfig config,
const GrGpuResource::UniqueID& uniqueID,
SkBudgeted budgeted) {
@@ -228,17 +229,13 @@ DEF_GPUTEST_FOR_RENDERING_CONTEXTS(WrappedProxyTest, reporter, ctxInfo) {
// External on-screen render target.
if (renderable && kOpenGL_GrBackend == ctxInfo.backend()) {
- GrBackendRenderTargetDesc backendDesc;
- backendDesc.fWidth = kWidthHeight;
- backendDesc.fHeight = kWidthHeight;
- backendDesc.fConfig = config;
- backendDesc.fOrigin = origin;
- backendDesc.fSampleCnt = numSamples;
- backendDesc.fStencilBits = 8;
- backendDesc.fRenderTargetHandle = 0;
+ GrGLFramebufferInfo fboInfo;
+ fboInfo.fFBOID = 0;
+ GrBackendRenderTarget backendRT(kWidthHeight, kWidthHeight, numSamples, 8,
+ config, fboInfo);
sk_sp<GrRenderTarget> defaultFBO(
- provider->wrapBackendRenderTarget(backendDesc));
+ provider->wrapBackendRenderTarget(backendRT, origin));
sk_sp<GrSurfaceProxy> sProxy(GrSurfaceProxy::MakeWrapped(defaultFBO));
check_surface(reporter, sProxy.get(), origin,
diff --git a/tests/VkWrapTests.cpp b/tests/VkWrapTests.cpp
index 44b5e72bc9..0ae3402da2 100644
--- a/tests/VkWrapTests.cpp
+++ b/tests/VkWrapTests.cpp
@@ -93,30 +93,24 @@ void wrap_rt_test(skiatest::Reporter* reporter, GrContext* context) {
true);
const GrVkImageInfo* backendTex = reinterpret_cast<const GrVkImageInfo*>(backendObj);
- // check basic borrowed creation
- GrBackendRenderTargetDesc desc;
- desc.fWidth = kW;
- desc.fHeight = kH;
- desc.fConfig = kPixelConfig;
- desc.fOrigin = kTopLeft_GrSurfaceOrigin;
- desc.fSampleCnt = 0;
- desc.fStencilBits = 0;
- desc.fRenderTargetHandle = backendObj;
- sk_sp<GrRenderTarget> rt = gpu->wrapBackendRenderTarget(desc);
+ GrBackendRenderTarget backendRT(kW, kH, 0, 0, *backendTex);
+
+ sk_sp<GrRenderTarget> rt = gpu->wrapBackendRenderTarget(backendRT, kTopLeft_GrSurfaceOrigin);
REPORTER_ASSERT(reporter, rt);
// image is null
GrVkImageInfo backendCopy = *backendTex;
backendCopy.fImage = VK_NULL_HANDLE;
- desc.fRenderTargetHandle = (GrBackendObject)&backendCopy;
- rt = gpu->wrapBackendRenderTarget(desc);
+ GrBackendRenderTarget backendRT2(kW, kH, 0, 0, backendCopy);
+ rt = gpu->wrapBackendRenderTarget(backendRT2, kTopLeft_GrSurfaceOrigin);
REPORTER_ASSERT(reporter, !rt);
// alloc is null
backendCopy.fImage = backendTex->fImage;
backendCopy.fAlloc = { VK_NULL_HANDLE, 0, 0, 0 };
// can wrap null alloc
- rt = gpu->wrapBackendRenderTarget(desc);
+ GrBackendRenderTarget backendRT3(kW, kH, 0, 0, backendCopy);
+ rt = gpu->wrapBackendRenderTarget(backendRT3, kTopLeft_GrSurfaceOrigin);
REPORTER_ASSERT(reporter, rt);
// When we wrapBackendRenderTarget it is always borrowed, so we must make sure to free the