aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/gpu/GrBackendSurface.cpp
diff options
context:
space:
mode:
authorGravatar Robert Phillips <robertphillips@google.com>2018-04-05 09:30:38 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2018-04-05 14:21:07 +0000
commit8caf85f9f40f6bad38bf66bd02b87dcebe139a5c (patch)
tree46a2b1414601ca99f6c60bd3442e8075bc27173f /src/gpu/GrBackendSurface.cpp
parent91749c82523c8b0b3f2b6f800d85893ca5386fbd (diff)
Add GrBackendTexture/RenderTarget accessors to SkSurface
Change-Id: I63477fd4b8d48dc50af72736f0f8df566cd96d4a Reviewed-on: https://skia-review.googlesource.com/85220 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Cary Clark <caryclark@skia.org> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com>
Diffstat (limited to 'src/gpu/GrBackendSurface.cpp')
-rw-r--r--src/gpu/GrBackendSurface.cpp37
1 files changed, 37 insertions, 0 deletions
diff --git a/src/gpu/GrBackendSurface.cpp b/src/gpu/GrBackendSurface.cpp
index 978e66db0b..97b4d64706 100644
--- a/src/gpu/GrBackendSurface.cpp
+++ b/src/gpu/GrBackendSurface.cpp
@@ -290,3 +290,40 @@ const GrMockRenderTargetInfo* GrBackendRenderTarget::getMockRenderTargetInfo() c
}
return nullptr;
}
+
+#if GR_TEST_UTILS
+bool GrBackendRenderTarget::TestingOnly_Equals(const GrBackendRenderTarget& r0,
+ const GrBackendRenderTarget& r1) {
+ if (!r0.isValid() || !r1.isValid()) {
+ return false; // two invalid backend rendertargets are not considered equal
+ }
+
+ if (r0.fWidth != r1.fWidth ||
+ r0.fHeight != r1.fHeight ||
+ r0.fSampleCnt != r1.fSampleCnt ||
+ r0.fStencilBits != r1.fStencilBits ||
+ r0.fConfig != r1.fConfig ||
+ r0.fBackend != r1.fBackend) {
+ return false;
+ }
+
+ switch (r0.fBackend) {
+ case kOpenGL_GrBackend:
+ return r0.fGLInfo == r1.fGLInfo;
+ case kMock_GrBackend:
+ return r0.fMockInfo == r1.fMockInfo;
+ case kVulkan_GrBackend:
+#ifdef SK_VULKAN
+ return r0.fVkInfo == r1.fVkInfo;
+#else
+ // fall through
+#endif
+ case kMetal_GrBackend: // fall through
+ default:
+ return false;
+ }
+
+ SkASSERT(0);
+ return false;
+}
+#endif