Flutter Engine
The Flutter Engine
|
Public Member Functions | |
SkWuffsCodec (SkEncodedInfo &&encodedInfo, std::unique_ptr< SkStream > stream, bool canSeek, std::unique_ptr< wuffs_gif__decoder, decltype(&sk_free)> dec, std::unique_ptr< uint8_t, decltype(&sk_free)> workbuf_ptr, size_t workbuf_len, wuffs_base__image_config imgcfg, wuffs_base__io_buffer iobuf) | |
const SkWuffsFrame * | frame (int i) const |
std::unique_ptr< SkStream > | getEncodedData () const override |
Public Member Functions inherited from SkCodec | |
virtual | ~SkCodec () |
SkImageInfo | getInfo () const |
SkISize | dimensions () const |
SkIRect | bounds () const |
const skcms_ICCProfile * | getICCProfile () const |
SkEncodedOrigin | getOrigin () const |
SkISize | getScaledDimensions (float desiredScale) const |
bool | getValidSubset (SkIRect *desiredSubset) const |
SkEncodedImageFormat | getEncodedFormat () const |
Result | getPixels (const SkImageInfo &info, void *pixels, size_t rowBytes, const Options *) |
Result | getPixels (const SkImageInfo &info, void *pixels, size_t rowBytes) |
Result | getPixels (const SkPixmap &pm, const Options *opts=nullptr) |
std::tuple< sk_sp< SkImage >, SkCodec::Result > | getImage (const SkImageInfo &info, const Options *opts=nullptr) |
std::tuple< sk_sp< SkImage >, SkCodec::Result > | getImage () |
bool | queryYUVAInfo (const SkYUVAPixmapInfo::SupportedDataTypes &supportedDataTypes, SkYUVAPixmapInfo *yuvaPixmapInfo) const |
Result | getYUVAPlanes (const SkYUVAPixmaps &yuvaPixmaps) |
Result | startIncrementalDecode (const SkImageInfo &dstInfo, void *dst, size_t rowBytes, const Options *) |
Result | startIncrementalDecode (const SkImageInfo &dstInfo, void *dst, size_t rowBytes) |
Result | incrementalDecode (int *rowsDecoded=nullptr) |
Result | startScanlineDecode (const SkImageInfo &dstInfo, const Options *options) |
Result | startScanlineDecode (const SkImageInfo &dstInfo) |
int | getScanlines (void *dst, int countLines, size_t rowBytes) |
bool | skipScanlines (int countLines) |
SkScanlineOrder | getScanlineOrder () const |
int | nextScanline () const |
int | outputScanline (int inputScanline) const |
int | getFrameCount () |
bool | getFrameInfo (int index, FrameInfo *info) const |
std::vector< FrameInfo > | getFrameInfo () |
int | getRepetitionCount () |
Private Member Functions | |
SkEncodedImageFormat | onGetEncodedFormat () const override |
Result | onGetPixels (const SkImageInfo &, void *, size_t, const Options &, int *) override |
const SkFrameHolder * | getFrameHolder () const override |
Result | onStartIncrementalDecode (const SkImageInfo &dstInfo, void *dst, size_t rowBytes, const SkCodec::Options &options) override |
Result | onIncrementalDecode (int *rowsDecoded) override |
int | onGetFrameCount () override |
bool | onGetFrameInfo (int, FrameInfo *) const override |
int | onGetRepetitionCount () override |
Additional Inherited Members | |
Public Types inherited from SkCodec | |
enum | Result { kSuccess , kIncompleteInput , kErrorInInput , kInvalidConversion , kInvalidScale , kInvalidParameters , kInvalidInput , kCouldNotRewind , kInternalError , kUnimplemented } |
enum class | SelectionPolicy { kPreferStillImage , kPreferAnimation } |
enum | ZeroInitialized { kYes_ZeroInitialized , kNo_ZeroInitialized } |
enum | SkScanlineOrder { kTopDown_SkScanlineOrder , kBottomUp_SkScanlineOrder } |
Static Public Member Functions inherited from SkCodec | |
static constexpr size_t | MinBufferedBytesNeeded () |
static const char * | ResultToString (Result) |
static std::unique_ptr< SkCodec > | MakeFromStream (std::unique_ptr< SkStream >, SkSpan< const SkCodecs::Decoder > decoders, Result *=nullptr, SkPngChunkReader *=nullptr, SelectionPolicy selectionPolicy=SelectionPolicy::kPreferStillImage) |
static std::unique_ptr< SkCodec > | MakeFromStream (std::unique_ptr< SkStream >, Result *=nullptr, SkPngChunkReader *=nullptr, SelectionPolicy selectionPolicy=SelectionPolicy::kPreferStillImage) |
static std::unique_ptr< SkCodec > | MakeFromData (sk_sp< SkData >, SkSpan< const SkCodecs::Decoder > decoders, SkPngChunkReader *=nullptr) |
static std::unique_ptr< SkCodec > | MakeFromData (sk_sp< SkData >, SkPngChunkReader *=nullptr) |
static void | Register (bool(*peek)(const void *, size_t), std::unique_ptr< SkCodec >(*make)(std::unique_ptr< SkStream >, SkCodec::Result *)) |
Static Public Attributes inherited from SkCodec | |
static constexpr int | kNoFrame = -1 |
static constexpr int | kRepetitionCountInfinite = -1 |
Protected Types inherited from SkCodec | |
using | XformFormat = skcms_PixelFormat |
Protected Member Functions inherited from SkScalingCodec | |
SkScalingCodec (SkEncodedInfo &&info, XformFormat srcFormat, std::unique_ptr< SkStream > stream, SkEncodedOrigin origin=kTopLeft_SkEncodedOrigin) | |
SkISize | onGetScaledDimensions (float desiredScale) const override |
bool | onDimensionsSupported (const SkISize &requested) override |
Protected Member Functions inherited from SkCodec | |
const SkEncodedInfo & | getEncodedInfo () const |
SkCodec (SkEncodedInfo &&, XformFormat srcFormat, std::unique_ptr< SkStream >, SkEncodedOrigin=kTopLeft_SkEncodedOrigin) | |
void | setSrcXformFormat (XformFormat pixelFormat) |
XformFormat | getSrcXformFormat () const |
virtual bool | onGetGainmapInfo (SkGainmapInfo *, std::unique_ptr< SkStream > *) |
virtual bool | onQueryYUVAInfo (const SkYUVAPixmapInfo::SupportedDataTypes &, SkYUVAPixmapInfo *) const |
virtual Result | onGetYUVAPlanes (const SkYUVAPixmaps &) |
virtual bool | onGetValidSubset (SkIRect *) const |
bool | rewindIfNeeded () |
virtual bool | onRewind () |
SkStream * | stream () |
virtual SkScanlineOrder | onGetScanlineOrder () const |
const SkImageInfo & | dstInfo () const |
const Options & | options () const |
int | currScanline () const |
virtual int | onOutputScanline (int inputScanline) const |
virtual bool | conversionSupported (const SkImageInfo &dst, bool srcIsOpaque, bool needsColorXform) |
virtual bool | usesColorXform () const |
void | applyColorXform (void *dst, const void *src, int count) const |
bool | colorXform () const |
bool | xformOnDecode () const |
Definition at line 237 of file SkWuffsCodec.cpp.
SkWuffsCodec::SkWuffsCodec | ( | SkEncodedInfo && | encodedInfo, |
std::unique_ptr< SkStream > | stream, | ||
bool | canSeek, | ||
std::unique_ptr< wuffs_gif__decoder, decltype(&sk_free)> | dec, | ||
std::unique_ptr< uint8_t, decltype(&sk_free)> | workbuf_ptr, | ||
size_t | workbuf_len, | ||
wuffs_base__image_config | imgcfg, | ||
wuffs_base__io_buffer | iobuf | ||
) |
Definition at line 380 of file SkWuffsCodec.cpp.
const SkWuffsFrame * SkWuffsCodec::frame | ( | int | i | ) | const |
Definition at line 426 of file SkWuffsCodec.cpp.
|
overridevirtual |
Return the underlying encoded data stream. This may be nullptr if the original stream could not be duplicated.
Reimplemented from SkCodec.
Definition at line 970 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
For multi-framed images, return the object with information about the frames.
Reimplemented from SkCodec.
Definition at line 449 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Implements SkCodec.
Definition at line 433 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Reimplemented from SkCodec.
Definition at line 780 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Reimplemented from SkCodec.
Definition at line 852 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
rowsDecoded | When the encoded image stream is incomplete, this function will return kIncompleteInput and rowsDecoded will be set to the number of scanlines that were successfully decoded. This will allow getPixels() to fill the uninitialized memory. |
Implements SkCodec.
Definition at line 437 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Reimplemented from SkCodec.
Definition at line 868 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Reimplemented from SkCodec.
Definition at line 610 of file SkWuffsCodec.cpp.
|
overrideprivatevirtual |
Reimplemented from SkCodec.
Definition at line 453 of file SkWuffsCodec.cpp.