a9ca05ca5e
BUG=skia: GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2187613002 Review-Url: https://codereview.chromium.org/2187613002
37 lines
1.1 KiB
C++
37 lines
1.1 KiB
C++
/*
|
|
* Copyright 2016 Google Inc.
|
|
*
|
|
* Use of this source code is governed by a BSD-style license that can be
|
|
* found in the LICENSE file.
|
|
*/
|
|
|
|
#ifndef SkImageDeserializer_DEFINED
|
|
#define SkImageDeserializer_DEFINED
|
|
|
|
#include "SkRefCnt.h"
|
|
|
|
struct SkIRect;
|
|
class SkData;
|
|
class SkImage;
|
|
|
|
class SK_API SkImageDeserializer {
|
|
public:
|
|
virtual ~SkImageDeserializer() {}
|
|
|
|
/**
|
|
* Given a data containing serialized content, return an SkImage from it.
|
|
*
|
|
* @param data The data containing the encoded image. The subclass may ref this for later
|
|
* decoding, or read it and process it immediately.
|
|
* @param subset Optional rectangle represent the subset of the encoded data that is being
|
|
* requested to be turned into an image.
|
|
* @return The new image, or nullptr on failure.
|
|
*
|
|
* The default implementation is to call SkImage::MakeFromEncoded(...)
|
|
*/
|
|
virtual sk_sp<SkImage> makeFromData(SkData*, const SkIRect* subset);
|
|
virtual sk_sp<SkImage> makeFromMemory(const void* data, size_t length, const SkIRect* subset);
|
|
};
|
|
|
|
#endif
|