Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(269)

Unified Diff: src/gpu/GrSurface.cpp

Issue 596053002: Make "priv" classes for GrTexure and GrSurface. (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: Add SK_API Created 6 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/gpu/GrDrawTarget.cpp ('k') | src/gpu/GrSurfacePriv.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/gpu/GrSurface.cpp
diff --git a/src/gpu/GrSurface.cpp b/src/gpu/GrSurface.cpp
index d15cbdf6e26ccc7fd3b3745cb9ced18747132395..37fd73f4f415a82f526a88d018043a1f3bddc3f4 100644
--- a/src/gpu/GrSurface.cpp
+++ b/src/gpu/GrSurface.cpp
@@ -6,6 +6,7 @@
*/
#include "GrSurface.h"
+#include "GrSurfacePriv.h"
#include "SkBitmap.h"
#include "SkGr.h"
@@ -20,14 +21,16 @@ SkImageInfo GrSurface::info() const {
return SkImageInfo::Make(this->width(), this->height(), colorType, kPremul_SkAlphaType);
}
+// TODO: This should probably be a non-member helper function. It might only be needed in
+// debug or developer builds.
bool GrSurface::savePixels(const char* filename) {
SkBitmap bm;
if (!bm.tryAllocPixels(SkImageInfo::MakeN32Premul(this->width(), this->height()))) {
return false;
}
- bool result = readPixels(0, 0, this->width(), this->height(), kSkia8888_GrPixelConfig,
- bm.getPixels());
+ bool result = this->readPixels(0, 0, this->width(), this->height(), kSkia8888_GrPixelConfig,
+ bm.getPixels());
if (!result) {
SkDebugf("------ failed to read pixels for %s\n", filename);
return false;
@@ -80,3 +83,14 @@ bool GrSurface::hasPendingIO() const {
}
return false;
}
+
+bool GrSurface::isSameAs(const GrSurface* other) const {
+ const GrRenderTarget* thisRT = this->asRenderTarget();
+ if (thisRT) {
+ return thisRT == other->asRenderTarget();
+ } else {
+ const GrTexture* thisTex = this->asTexture();
+ SkASSERT(thisTex); // We must be one or the other
+ return thisTex == other->asTexture();
+ }
+}
« no previous file with comments | « src/gpu/GrDrawTarget.cpp ('k') | src/gpu/GrSurfacePriv.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698