diff options
Diffstat (limited to 'include/codec/SkCodec.h')
-rw-r--r-- | include/codec/SkCodec.h | 31 |
1 files changed, 5 insertions, 26 deletions
diff --git a/include/codec/SkCodec.h b/include/codec/SkCodec.h index 7e7503acae..3855064f61 100644 --- a/include/codec/SkCodec.h +++ b/include/codec/SkCodec.h @@ -15,6 +15,7 @@ #include "SkSize.h" #include "SkStream.h" #include "SkTypes.h" +#include "SkYUVSizeInfo.h" class SkColorSpace; class SkData; @@ -285,28 +286,6 @@ public: */ Result getPixels(const SkImageInfo& info, void* pixels, size_t rowBytes); - struct YUVSizeInfo { - SkISize fYSize; - SkISize fUSize; - SkISize fVSize; - - /** - * While the widths of the Y, U, and V planes are not restricted, the - * implementation requires that the width of the memory allocated for - * each plane be a multiple of DCTSIZE (which is always 8). - * - * This struct allows us to inform the client how many "widthBytes" - * that we need. Note that we use the new idea of "widthBytes" - * because this idea is distinct from "rowBytes" (used elsewhere in - * Skia). "rowBytes" allow the last row of the allocation to not - * include any extra padding, while, in this case, every single row of - * the allocation must be at least "widthBytes". - */ - size_t fYWidthBytes; - size_t fUWidthBytes; - size_t fVWidthBytes; - }; - /** * If decoding to YUV is supported, this returns true. Otherwise, this * returns false and does not modify any of the parameters. @@ -316,7 +295,7 @@ public: * @param colorSpace Output parameter. If non-NULL this is set to kJPEG, * otherwise this is ignored. */ - bool queryYUV8(YUVSizeInfo* sizeInfo, SkYUVColorSpace* colorSpace) const { + bool queryYUV8(SkYUVSizeInfo* sizeInfo, SkYUVColorSpace* colorSpace) const { if (nullptr == sizeInfo) { return false; } @@ -334,7 +313,7 @@ public: * recommendation (but not smaller). * @param planes Memory for each of the Y, U, and V planes. */ - Result getYUV8Planes(const YUVSizeInfo& sizeInfo, void* planes[3]) { + Result getYUV8Planes(const SkYUVSizeInfo& sizeInfo, void* planes[3]) { if (nullptr == planes || nullptr == planes[0] || nullptr == planes[1] || nullptr == planes[2]) { return kInvalidInput; @@ -543,11 +522,11 @@ protected: SkPMColor ctable[], int* ctableCount, int* rowsDecoded) = 0; - virtual bool onQueryYUV8(YUVSizeInfo*, SkYUVColorSpace*) const { + virtual bool onQueryYUV8(SkYUVSizeInfo*, SkYUVColorSpace*) const { return false; } - virtual Result onGetYUV8Planes(const YUVSizeInfo&, void*[3] /*planes*/) { + virtual Result onGetYUV8Planes(const SkYUVSizeInfo&, void*[3] /*planes*/) { return kUnimplemented; } |