#include "SkImagePriv.h"
#include "SkPixelRef.h"
-class SkImage_Generator : public SkImage_Base {
+class SkImage_Lazy : public SkImage_Base {
public:
- SkImage_Generator(SkImageCacherator::Validator* validator)
+ SkImage_Lazy(SkImageCacherator::Validator* validator)
: INHERITED(validator->fInfo.width(), validator->fInfo.height(), validator->fUniqueID)
, fCache(validator)
{}
///////////////////////////////////////////////////////////////////////////////
-bool SkImage_Generator::onReadPixels(const SkImageInfo& dstInfo, void* dstPixels, size_t dstRB,
- int srcX, int srcY, CachingHint chint) const {
+bool SkImage_Lazy::onReadPixels(const SkImageInfo& dstInfo, void* dstPixels, size_t dstRB,
+ int srcX, int srcY, CachingHint chint) const {
SkColorSpace* dstColorSpace = dstInfo.colorSpace();
SkBitmap bm;
if (kDisallow_CachingHint == chint) {
return false;
}
-SkData* SkImage_Generator::onRefEncoded(GrContext* ctx) const {
+SkData* SkImage_Lazy::onRefEncoded(GrContext* ctx) const {
return fCache.refEncoded(ctx);
}
-bool SkImage_Generator::getROPixels(SkBitmap* bitmap, SkColorSpace* dstColorSpace,
- CachingHint chint) const {
+bool SkImage_Lazy::getROPixels(SkBitmap* bitmap, SkColorSpace* dstColorSpace,
+ CachingHint chint) const {
return fCache.lockAsBitmap(nullptr, bitmap, this, dstColorSpace, chint);
}
#if SK_SUPPORT_GPU
-sk_sp<GrTextureProxy> SkImage_Generator::asTextureProxyRef(GrContext* context,
- const GrSamplerParams& params,
- SkColorSpace* dstColorSpace,
- sk_sp<SkColorSpace>* texColorSpace,
- SkScalar scaleAdjust[2]) const {
+sk_sp<GrTextureProxy> SkImage_Lazy::asTextureProxyRef(GrContext* context,
+ const GrSamplerParams& params,
+ SkColorSpace* dstColorSpace,
+ sk_sp<SkColorSpace>* texColorSpace,
+ SkScalar scaleAdjust[2]) const {
return fCache.lockAsTextureProxy(context, params, dstColorSpace,
texColorSpace, this, scaleAdjust);
}
#endif
-sk_sp<SkImage> SkImage_Generator::onMakeSubset(const SkIRect& subset) const {
+sk_sp<SkImage> SkImage_Lazy::onMakeSubset(const SkIRect& subset) const {
SkASSERT(fCache.info().bounds().contains(subset));
SkASSERT(fCache.info().bounds() != subset);
const SkIRect generatorSubset = subset.makeOffset(fCache.fOrigin.x(), fCache.fOrigin.y());
SkImageCacherator::Validator validator(fCache.fSharedGenerator, &generatorSubset);
- return validator ? sk_sp<SkImage>(new SkImage_Generator(&validator)) : nullptr;
+ return validator ? sk_sp<SkImage>(new SkImage_Lazy(&validator)) : nullptr;
}
-sk_sp<SkImage> SkImage_Generator::onMakeColorSpace(sk_sp<SkColorSpace> target) const {
+sk_sp<SkImage> SkImage_Lazy::onMakeColorSpace(sk_sp<SkColorSpace> target) const {
SkBitmap dst;
SkImageInfo dstInfo = fCache.info().makeColorSpace(target);
if (kIndex_8_SkColorType == dstInfo.colorType() ||
SkImageCacherator::Validator validator(
SkImageCacherator::SharedGenerator::Make(std::move(generator)), subset);
- return validator ? sk_make_sp<SkImage_Generator>(&validator) : nullptr;
+ return validator ? sk_make_sp<SkImage_Lazy>(&validator) : nullptr;
}