aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/image
diff options
context:
space:
mode:
authorGravatar Brian Osman <brianosman@google.com>2017-03-20 11:03:55 -0400
committerGravatar Skia Commit-Bot <skia-commit-bot@chromium.org>2017-03-20 16:42:44 +0000
commited182d7c9020a0a533ada3e601183f34e4da7504 (patch)
tree1ca8417b2bff4252be8d0acd5dbdef003b68bec5 /src/image
parentdcf0ab0dc5ba42a3bb8ec034abc5cf5d5f1faf5b (diff)
Remove SkImage::MakeTextureFromPixmap
Slight variation on https://skia-review.googlesource.com/c/7346/, which had to be reverted. This version also changes the non-mip upload path to use a GrTextureProxy. Hopefully this doesn't trigger the same perf regression that we saw last time. BUG=skia: Change-Id: Ic99bdd93904089942fb680c3af9c4c36310074c0 Reviewed-on: https://skia-review.googlesource.com/9892 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Osman <brianosman@google.com>
Diffstat (limited to 'src/image')
-rw-r--r--src/image/SkImage.cpp4
-rw-r--r--src/image/SkImage_Gpu.cpp22
2 files changed, 7 insertions, 19 deletions
diff --git a/src/image/SkImage.cpp b/src/image/SkImage.cpp
index 99b0be161b..6217f4ecda 100644
--- a/src/image/SkImage.cpp
+++ b/src/image/SkImage.cpp
@@ -332,10 +332,6 @@ sk_sp<SkImage> SkImage_Base::makeColorSpace(sk_sp<SkColorSpace> target) const {
#if !SK_SUPPORT_GPU
-sk_sp<SkImage> SkImage::MakeTextureFromPixmap(GrContext*, const SkPixmap&, SkBudgeted budgeted) {
- return nullptr;
-}
-
sk_sp<SkImage> MakeTextureFromMipMap(GrContext*, const SkImageInfo&, const GrMipLevel* texels,
int mipLevelCount, SkBudgeted, SkDestinationSurfaceColorMode) {
return nullptr;
diff --git a/src/image/SkImage_Gpu.cpp b/src/image/SkImage_Gpu.cpp
index 3cc6e2d4a2..bcd7275279 100644
--- a/src/image/SkImage_Gpu.cpp
+++ b/src/image/SkImage_Gpu.cpp
@@ -497,20 +497,6 @@ sk_sp<SkImage> SkImage::makeNonTextureImage() const {
return MakeRasterData(info, data, rowBytes);
}
-sk_sp<SkImage> SkImage::MakeTextureFromPixmap(GrContext* ctx, const SkPixmap& pixmap,
- SkBudgeted budgeted) {
- if (!ctx) {
- return nullptr;
- }
- sk_sp<GrTexture> texture(GrUploadPixmapToTexture(ctx, pixmap, budgeted));
- if (!texture) {
- return nullptr;
- }
- return sk_make_sp<SkImage_Gpu>(kNeedNewImageUniqueID,
- pixmap.alphaType(), std::move(texture),
- sk_ref_sp(pixmap.info().colorSpace()), budgeted);
-}
-
///////////////////////////////////////////////////////////////////////////////////////////////////
namespace {
@@ -809,7 +795,13 @@ sk_sp<SkImage> SkImage::MakeFromDeferredTextureImageData(GrContext* context, con
if (mipLevelCount == 1) {
SkPixmap pixmap;
pixmap.reset(info, dti->fMipMapLevelData[0].fPixelData, dti->fMipMapLevelData[0].fRowBytes);
- return SkImage::MakeTextureFromPixmap(context, pixmap, budgeted);
+ sk_sp<GrTextureProxy> proxy(GrUploadPixmapToTextureProxy(context->resourceProvider(),
+ pixmap, budgeted));
+ if (!proxy) {
+ return nullptr;
+ }
+ return sk_make_sp<SkImage_Gpu>(context, kNeedNewImageUniqueID, pixmap.alphaType(),
+ std::move(proxy), std::move(colorSpace), budgeted);
} else {
std::unique_ptr<GrMipLevel[]> texels(new GrMipLevel[mipLevelCount]);
for (int i = 0; i < mipLevelCount; i++) {