Index: include/core/SkImage.h |
diff --git a/include/core/SkImage.h b/include/core/SkImage.h |
index 6021590a57717e66af0d31a07e0cdcb3c1eb345b..fd20e5e0e521f712848be9bdd5d6d2c481d2cd99 100644 |
--- a/include/core/SkImage.h |
+++ b/include/core/SkImage.h |
@@ -73,7 +73,7 @@ public: |
* |
* If a subset is specified, it must be contained within the generator's bounds. |
*/ |
- static sk_sp<SkImage> MakeFromGenerator(SkImageGenerator*, const SkIRect* subset = NULL); |
+ static sk_sp<SkImage> MakeFromGenerator(SkImageGenerator*, const SkIRect* subset = nullptr); |
/** |
* Construct a new SkImage based on the specified encoded data. Returns NULL on failure, |
@@ -81,7 +81,7 @@ public: |
* |
* If a subset is specified, it must be contained within the encoded data's bounds. |
*/ |
- static sk_sp<SkImage> MakeFromEncoded(sk_sp<SkData> encoded, const SkIRect* subset = NULL); |
+ static sk_sp<SkImage> MakeFromEncoded(sk_sp<SkData> encoded, const SkIRect* subset = nullptr); |
/** |
* Create a new image from the specified descriptor. Note - the caller is responsible for |
@@ -90,12 +90,12 @@ public: |
* Will return NULL if the specified descriptor is unsupported. |
*/ |
static sk_sp<SkImage> MakeFromTexture(GrContext* ctx, const GrBackendTextureDesc& desc) { |
- return MakeFromTexture(ctx, desc, kPremul_SkAlphaType, NULL, NULL); |
+ return MakeFromTexture(ctx, desc, kPremul_SkAlphaType, nullptr, nullptr, nullptr); |
} |
static sk_sp<SkImage> MakeFromTexture(GrContext* ctx, const GrBackendTextureDesc& de, |
SkAlphaType at) { |
- return MakeFromTexture(ctx, de, at, NULL, NULL); |
+ return MakeFromTexture(ctx, de, at, nullptr, nullptr, nullptr); |
} |
typedef void (*TextureReleaseProc)(ReleaseContext); |
@@ -107,8 +107,21 @@ public: |
* |
* Will return NULL if the specified descriptor is unsupported. |
*/ |
+ static sk_sp<SkImage> MakeFromTexture(GrContext* ctx, const GrBackendTextureDesc& desc, |
+ SkAlphaType at, TextureReleaseProc trp, |
+ ReleaseContext rc) { |
+ return MakeFromTexture(ctx, desc, at, nullptr, trp, rc); |
+ } |
+ |
+ /** |
+ * Create a new image from the specified descriptor. The underlying platform texture must stay |
+ * valid and unaltered until the specified release-proc is invoked, indicating that Skia |
+ * no longer is holding a reference to it. |
+ * |
+ * Will return NULL if the specified descriptor is unsupported. |
+ */ |
static sk_sp<SkImage> MakeFromTexture(GrContext*, const GrBackendTextureDesc&, SkAlphaType, |
- TextureReleaseProc, ReleaseContext); |
+ sk_sp<SkColorSpace>, TextureReleaseProc, ReleaseContext); |
/** |
* Create a new image from the specified descriptor. Note - Skia will delete or recycle the |
@@ -117,7 +130,8 @@ public: |
* Will return NULL if the specified descriptor is unsupported. |
*/ |
static sk_sp<SkImage> MakeFromAdoptedTexture(GrContext*, const GrBackendTextureDesc&, |
- SkAlphaType = kPremul_SkAlphaType); |
+ SkAlphaType = kPremul_SkAlphaType, |
+ sk_sp<SkColorSpace> = nullptr); |
/** |
* Create a new image by copying the pixels from the specified y, u, v textures. The data |
@@ -127,7 +141,8 @@ public: |
static sk_sp<SkImage> MakeFromYUVTexturesCopy(GrContext*, SkYUVColorSpace, |
const GrBackendObject yuvTextureHandles[3], |
const SkISize yuvSizes[3], |
- GrSurfaceOrigin); |
+ GrSurfaceOrigin, |
+ sk_sp<SkColorSpace> = nullptr); |
/** |
* Create a new image by copying the pixels from the specified y and uv textures. The data |
@@ -136,7 +151,8 @@ public: |
*/ |
static sk_sp<SkImage> MakeFromNV12TexturesCopy(GrContext*, SkYUVColorSpace, |
const GrBackendObject nv12TextureHandles[2], |
- const SkISize nv12Sizes[2], GrSurfaceOrigin); |
+ const SkISize nv12Sizes[2], GrSurfaceOrigin, |
+ sk_sp<SkColorSpace> = nullptr); |
static sk_sp<SkImage> MakeFromPicture(sk_sp<SkPicture>, const SkISize& dimensions, |
const SkMatrix*, const SkPaint*); |
@@ -421,14 +437,14 @@ public: |
static SkImage* NewFromRaster(const Info&, const void* pixels, size_t rowBytes, |
RasterReleaseProc, ReleaseContext); |
static SkImage* NewFromBitmap(const SkBitmap&); |
- static SkImage* NewFromGenerator(SkImageGenerator*, const SkIRect* subset = NULL); |
- static SkImage* NewFromEncoded(SkData* encoded, const SkIRect* subset = NULL); |
+ static SkImage* NewFromGenerator(SkImageGenerator*, const SkIRect* subset = nullptr); |
+ static SkImage* NewFromEncoded(SkData* encoded, const SkIRect* subset = nullptr); |
static SkImage* NewFromTexture(GrContext* ctx, const GrBackendTextureDesc& desc) { |
- return NewFromTexture(ctx, desc, kPremul_SkAlphaType, NULL, NULL); |
+ return NewFromTexture(ctx, desc, kPremul_SkAlphaType, nullptr, nullptr); |
} |
static SkImage* NewFromTexture(GrContext* ctx, const GrBackendTextureDesc& de, SkAlphaType at) { |
- return NewFromTexture(ctx, de, at, NULL, NULL); |
+ return NewFromTexture(ctx, de, at, nullptr, nullptr); |
} |
static SkImage* NewFromTexture(GrContext*, const GrBackendTextureDesc&, SkAlphaType, |
TextureReleaseProc, ReleaseContext); |