pin as texture api
BUG=skia:
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2241353002
Review-Url: https://codereview.chromium.org/2241353002
diff --git a/src/image/SkImage_Base.h b/src/image/SkImage_Base.h
index 1cfb7da..09971c1 100644
--- a/src/image/SkImage_Base.h
+++ b/src/image/SkImage_Base.h
@@ -8,6 +8,7 @@
#ifndef SkImage_Base_DEFINED
#define SkImage_Base_DEFINED
+#include "GrTexture.h"
#include "SkAtomics.h"
#include "SkImage.h"
#include "SkSurface.h"
@@ -40,6 +41,7 @@
int srcX, int srcY, CachingHint) const;
virtual GrTexture* peekTexture() const { return nullptr; }
+ virtual sk_sp<GrTexture> refPinnedTexture(uint32_t* uniqueID) const { return nullptr; }
virtual SkImageCacherator* peekCacherator() const { return nullptr; }
// return a read-only copy of the pixels. We promise to not modify them,
@@ -69,6 +71,9 @@
fAddedToCache.store(true);
}
+ virtual void onPinAsTexture(GrContext*) const {}
+ virtual void onUnpinAsTexture(GrContext*) const {}
+
private:
// Set true by caches when they cache content that's derived from the current pixels.
mutable SkAtomic<bool> fAddedToCache;