aboutsummaryrefslogtreecommitdiffhomepage
path: root/tests/VkWrapTests.cpp
diff options
context:
space:
mode:
authorGravatar Greg Daniel <egdaniel@google.com>2017-04-18 17:12:32 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-04-18 21:55:10 +0000
commit7da62b9059f3c1d31624a0e4da96ee5f908f9c12 (patch)
treefc57f951a4e8c1900311e8a1ffbdbbaf189715c2 /tests/VkWrapTests.cpp
parentb712a85aea212cf5bfe5514a4fefc184545a8d3c (diff)
Plumb GrBackendTexture throughout skia.
Bug: skia: Change-Id: I1bae6768ee7229818a83ba608035a1f7867e6875 Reviewed-on: https://skia-review.googlesource.com/13645 Commit-Queue: Greg Daniel <egdaniel@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'tests/VkWrapTests.cpp')
-rw-r--r--tests/VkWrapTests.cpp113
1 files changed, 75 insertions, 38 deletions
diff --git a/tests/VkWrapTests.cpp b/tests/VkWrapTests.cpp
index 9279ef6895..44b5e72bc9 100644
--- a/tests/VkWrapTests.cpp
+++ b/tests/VkWrapTests.cpp
@@ -31,37 +31,56 @@ void wrap_tex_test(skiatest::Reporter* reporter, GrContext* context) {
GrBackendObject backendObj = gpu->createTestingOnlyBackendTexture(nullptr, kW, kH, kPixelConfig,
false);
- const GrVkImageInfo* backendTex = reinterpret_cast<const GrVkImageInfo*>(backendObj);
-
- // check basic borrowed creation
- GrBackendTextureDesc desc;
- desc.fConfig = kPixelConfig;
- desc.fWidth = kW;
- desc.fHeight = kH;
- desc.fTextureHandle = backendObj;
- sk_sp<GrTexture> tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ const GrVkImageInfo* imageInfo = reinterpret_cast<const GrVkImageInfo*>(backendObj);
+
+ GrBackendTexture backendTex = GrBackendTexture(kW, kH, imageInfo);
+ sk_sp<GrTexture> tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, tex);
// image is null
- GrVkImageInfo backendCopy = *backendTex;
+ GrVkImageInfo backendCopy = *imageInfo;
backendCopy.fImage = VK_NULL_HANDLE;
- desc.fTextureHandle = (GrBackendObject) &backendCopy;
- tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ backendTex = GrBackendTexture(kW, kH, &backendCopy);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
// alloc is null
- backendCopy.fImage = backendTex->fImage;
+ backendCopy.fImage = imageInfo->fImage;
backendCopy.fAlloc = { VK_NULL_HANDLE, 0, 0, 0 };
- tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
-
// check adopt creation
- backendCopy.fAlloc = backendTex->fAlloc;
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ backendCopy.fAlloc = imageInfo->fAlloc;
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kNone_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
+
REPORTER_ASSERT(reporter, tex);
gpu->deleteTestingOnlyBackendTexture(backendObj, true);
@@ -110,38 +129,56 @@ void wrap_trt_test(skiatest::Reporter* reporter, GrContext* context) {
GrBackendObject backendObj = gpu->createTestingOnlyBackendTexture(nullptr, kW, kH, kPixelConfig,
true);
- const GrVkImageInfo* backendTex = reinterpret_cast<const GrVkImageInfo*>(backendObj);
-
- // check basic borrowed creation
- GrBackendTextureDesc desc;
- desc.fFlags = kRenderTarget_GrBackendTextureFlag;
- desc.fConfig = kPixelConfig;
- desc.fWidth = kW;
- desc.fHeight = kH;
- desc.fTextureHandle = backendObj;
- sk_sp<GrTexture> tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ const GrVkImageInfo* imageInfo = reinterpret_cast<const GrVkImageInfo*>(backendObj);
+
+ GrBackendTexture backendTex = GrBackendTexture(kW, kH, imageInfo);
+ sk_sp<GrTexture> tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, tex);
// image is null
- GrVkImageInfo backendCopy = *backendTex;
+ GrVkImageInfo backendCopy = *imageInfo;
backendCopy.fImage = VK_NULL_HANDLE;
- desc.fTextureHandle = (GrBackendObject)&backendCopy;
- tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ backendTex = GrBackendTexture(kW, kH, &backendCopy);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
// alloc is null
- backendCopy.fImage = backendTex->fImage;
+ backendCopy.fImage = imageInfo->fImage;
backendCopy.fAlloc = { VK_NULL_HANDLE, 0, 0, 0 };
- tex = gpu->wrapBackendTexture(desc, kBorrow_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kBorrow_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
REPORTER_ASSERT(reporter, !tex);
// check adopt creation
- backendCopy.fAlloc = backendTex->fAlloc;
- tex = gpu->wrapBackendTexture(desc, kAdopt_GrWrapOwnership);
+ backendCopy.fAlloc = imageInfo->fAlloc;
+ tex = gpu->wrapBackendTexture(backendTex,
+ kTopLeft_GrSurfaceOrigin,
+ kRenderTarget_GrBackendTextureFlag,
+ 0,
+ kAdopt_GrWrapOwnership);
REPORTER_ASSERT(reporter, tex);
gpu->deleteTestingOnlyBackendTexture(backendObj, true);