#ifndef GrDataUtils_DEFINED
#define GrDataUtils_DEFINED
#include "include/core/SkColor.h"
#include "include/private/base/SkTArray.h"
#include <array>
#include <cstddef>
class GrCPixmap;
class GrImageInfo;
class GrPixmap;
struct SkISize;
class SkPixmap;
size_t GrComputeTightCombinedBufferSize(
size_t bytesPerPixel, SkISize baseDimensions,
skia_private::TArray<size_t>* individualMipOffsets, int mipLevelCount);
bool GrConvertPixels(const GrPixmap& dst, const GrCPixmap& src, bool flipY = false);
bool GrClearImage(const GrImageInfo& dstInfo, void* dst, size_t dstRB, std::array<float, 4> color);
#if defined(GPU_TEST_UTILS)
void GrTwoColorBC1Compress(const SkPixmap& pixmap, SkColor otherColor, char* dstPixels);
#endif
#endif