| Index: include/core/SkYUVSizeInfo.h
|
| diff --git a/include/core/SkYUVSizeInfo.h b/include/core/SkYUVSizeInfo.h
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..2c5a51d794b024e9e30caca73942b191c57d537b
|
| --- /dev/null
|
| +++ b/include/core/SkYUVSizeInfo.h
|
| @@ -0,0 +1,34 @@
|
| +/*
|
| + * 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 SkYUVSizeInfo_DEFINED
|
| +#define SkYUVSizeInfo_DEFINED
|
| +
|
| +struct SkYUVSizeInfo {
|
| + enum {
|
| + kY = 0,
|
| + kU = 1,
|
| + kV = 2,
|
| + };
|
| + SkISize fSizes[3];
|
| +
|
| + /**
|
| + * While the widths of the Y, U, and V planes are not restricted, the
|
| + * implementation often requires that the width of the memory allocated
|
| + * for each plane be a multiple of 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 fWidthBytes[3];
|
| +};
|
| +
|
| +#endif // SkYUVSizeInfo_DEFINED
|
|
|